igniteui-webcomponents 7.3.1 → 7.4.0
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/CHANGELOG.md +72 -1
- package/animations/easings.d.ts +21 -31
- package/animations/easings.js +21 -34
- package/animations/easings.js.map +1 -1
- package/animations/player.d.ts +8 -16
- package/animations/player.js +5 -8
- package/animations/player.js.map +1 -1
- package/animations/view-transition.d.ts +10 -10
- package/animations/view-transition.js +26 -37
- package/animations/view-transition.js.map +1 -1
- package/components/avatar/themes/avatar.base.css.js +1 -1
- package/components/avatar/themes/avatar.base.css.js.map +1 -1
- package/components/badge/themes/badge.base.css.js +1 -1
- package/components/badge/themes/badge.base.css.js.map +1 -1
- package/components/banner/themes/banner.base.css.js +1 -1
- package/components/banner/themes/banner.base.css.js.map +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
- package/components/breadcrumb/breadcrumb.d.ts +74 -0
- package/components/breadcrumb/breadcrumb.js +107 -0
- package/components/breadcrumb/breadcrumb.js.map +1 -0
- package/components/breadcrumb/breadcrumbs.d.ts +60 -0
- package/components/breadcrumb/breadcrumbs.js +50 -0
- package/components/breadcrumb/breadcrumbs.js.map +1 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.d.ts +1 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.js +3 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.js.map +1 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.d.ts +1 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.js +3 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/themes.d.ts +2 -0
- package/components/breadcrumb/themes/themes.js +50 -0
- package/components/breadcrumb/themes/themes.js.map +1 -0
- package/components/button/button.d.ts +0 -2
- package/components/button/button.js.map +1 -1
- package/components/button-group/button-group.d.ts +42 -12
- package/components/button-group/button-group.js +82 -34
- package/components/button-group/button-group.js.map +1 -1
- package/components/button-group/toggle-button.d.ts +6 -1
- package/components/button-group/toggle-button.js +28 -2
- package/components/button-group/toggle-button.js.map +1 -1
- package/components/calendar/base.d.ts +7 -2
- package/components/calendar/base.js +10 -4
- package/components/calendar/base.js.map +1 -1
- package/components/calendar/calendar.d.ts +6 -3
- package/components/calendar/calendar.js +41 -14
- package/components/calendar/calendar.js.map +1 -1
- package/components/calendar/days-view/days-view.d.ts +5 -8
- package/components/calendar/days-view/days-view.js +7 -16
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/calendar/helpers.d.ts +13 -0
- package/components/calendar/helpers.js +15 -0
- package/components/calendar/helpers.js.map +1 -1
- package/components/calendar/themes/calendar.base.css.js +1 -1
- package/components/calendar/themes/calendar.base.css.js.map +1 -1
- package/components/calendar/themes/days-view.base.css.js +1 -1
- package/components/calendar/themes/days-view.base.css.js.map +1 -1
- package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
- package/components/calendar/themes/year-month-view.base.css.js +1 -1
- package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
- package/components/card/themes/container.base.css.js +1 -1
- package/components/card/themes/container.base.css.js.map +1 -1
- package/components/carousel/carousel-indicator.js +1 -0
- package/components/carousel/carousel-indicator.js.map +1 -1
- package/components/carousel/carousel-slide.d.ts +1 -1
- package/components/carousel/carousel-slide.js.map +1 -1
- package/components/carousel/carousel.d.ts +3 -3
- package/components/carousel/carousel.js.map +1 -1
- package/components/carousel/themes/carousel.base.css.js +1 -1
- package/components/carousel/themes/carousel.base.css.js.map +1 -1
- package/components/carousel/themes/shared/carousel.indigo.css.js +1 -1
- package/components/carousel/themes/shared/carousel.indigo.css.js.map +1 -1
- package/components/chat/chat-input.d.ts +1 -2
- package/components/chat/chat-input.js +1 -1
- package/components/chat/chat-input.js.map +1 -1
- package/components/chat/chat-state.d.ts +8 -9
- package/components/chat/chat-state.js.map +1 -1
- package/components/chat/chat.d.ts +1 -3
- package/components/chat/chat.js +2 -2
- package/components/chat/chat.js.map +1 -1
- package/components/chat/message-attachments.d.ts +6 -15
- package/components/chat/message-attachments.js.map +1 -1
- package/components/chat/themes/chat.base.css.js +1 -1
- package/components/chat/themes/chat.base.css.js.map +1 -1
- package/components/chat/themes/message.base.css.js +1 -1
- package/components/chat/themes/message.base.css.js.map +1 -1
- package/components/chat/utils.d.ts +0 -1
- package/components/chat/utils.js +1 -1
- package/components/chat/utils.js.map +1 -1
- package/components/checkbox/checkbox-base.d.ts +1 -1
- package/components/checkbox/checkbox.js +1 -1
- package/components/checkbox/checkbox.js.map +1 -1
- package/components/checkbox/themes/checkbox.base.css.js +1 -1
- package/components/checkbox/themes/checkbox.base.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
- package/components/checkbox/themes/switch.base.css.js +1 -1
- package/components/checkbox/themes/switch.base.css.js.map +1 -1
- package/components/chip/chip.d.ts +2 -2
- package/components/chip/chip.js.map +1 -1
- package/components/color-picker/color-picker.d.ts +35 -34
- package/components/color-picker/color-picker.js +9 -4
- package/components/color-picker/color-picker.js.map +1 -1
- package/components/color-picker/common.d.ts +0 -2
- package/components/color-picker/common.js +2 -2
- package/components/color-picker/common.js.map +1 -1
- package/components/color-picker/converters.js.map +1 -1
- package/components/color-picker/picker-canvas.js.map +1 -1
- package/components/color-picker/themes/color-picker.base.css.js +1 -1
- package/components/color-picker/themes/color-picker.base.css.js.map +1 -1
- package/components/combo/combo.d.ts +18 -20
- package/components/combo/combo.js +8 -2
- package/components/combo/combo.js.map +1 -1
- package/components/combo/controllers/data.d.ts +7 -10
- package/components/combo/controllers/data.js.map +1 -1
- package/components/combo/themes/combo-item.base.css.js +1 -1
- package/components/combo/themes/combo-item.base.css.js.map +1 -1
- package/components/combo/themes/combo.base.css.js +1 -1
- package/components/combo/themes/combo.base.css.js.map +1 -1
- package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
- package/components/date-picker/date-picker.base.d.ts +33 -29
- package/components/date-picker/date-picker.base.js +15 -4
- package/components/date-picker/date-picker.base.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +1 -1
- package/components/date-picker/date-picker.js +5 -3
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/date-picker.base.css.js +1 -1
- package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
- package/components/date-range-picker/date-range-input.d.ts +0 -2
- package/components/date-range-picker/date-range-input.js +0 -6
- package/components/date-range-picker/date-range-input.js.map +1 -1
- package/components/date-range-picker/date-range-picker.base.css.js +1 -1
- package/components/date-range-picker/date-range-picker.base.css.js.map +1 -1
- package/components/date-range-picker/date-range-picker.d.ts +22 -31
- package/components/date-range-picker/date-range-picker.js +7 -7
- package/components/date-range-picker/date-range-picker.js.map +1 -1
- package/components/date-range-picker/i18n.d.ts +21 -0
- package/components/date-range-picker/i18n.js +10 -0
- package/components/date-range-picker/i18n.js.map +1 -0
- package/components/date-range-picker/predefined-ranges-area.base.css.js +1 -1
- package/components/date-range-picker/predefined-ranges-area.base.css.js.map +1 -1
- package/components/date-range-picker/predefined-ranges-area.d.ts +3 -3
- package/components/date-range-picker/predefined-ranges-area.js +2 -5
- package/components/date-range-picker/predefined-ranges-area.js.map +1 -1
- package/components/date-range-picker/validators.d.ts +0 -4
- package/components/date-range-picker/validators.js +4 -4
- package/components/date-range-picker/validators.js.map +1 -1
- package/components/date-time-input/date-time-input.base.d.ts +39 -37
- package/components/date-time-input/date-time-input.base.js +6 -0
- package/components/date-time-input/date-time-input.base.js.map +1 -1
- package/components/date-time-input/date-time-input.d.ts +1 -11
- package/components/date-time-input/date-time-input.js +0 -6
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/date-time-input/datetime-mask-parser.d.ts +0 -10
- package/components/date-time-input/datetime-mask-parser.js +1 -1
- package/components/date-time-input/datetime-mask-parser.js.map +1 -1
- package/components/dialog/dialog.js.map +1 -1
- package/components/divider/themes/divider.base.css.js +1 -1
- package/components/divider/themes/divider.base.css.js.map +1 -1
- package/components/dropdown/dropdown-group.d.ts +2 -10
- package/components/dropdown/dropdown-group.js +2 -27
- package/components/dropdown/dropdown-group.js.map +1 -1
- package/components/dropdown/dropdown.d.ts +17 -23
- package/components/dropdown/dropdown.js +5 -17
- package/components/dropdown/dropdown.js.map +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown.base.css.js +1 -1
- package/components/dropdown/themes/dropdown.base.css.js.map +1 -1
- package/components/file-input/file-input.d.ts +2 -2
- package/components/file-input/file-input.js.map +1 -1
- package/components/file-input/themes/file-input.base.css.js +1 -1
- package/components/file-input/themes/file-input.base.css.js.map +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
- package/components/icon/icon.d.ts +1 -1
- package/components/icon/icon.registry.d.ts +6 -6
- package/components/icon/icon.registry.js.map +1 -1
- package/components/input/input.d.ts +3 -3
- package/components/input/input.js.map +1 -1
- package/components/input/themes/shared/input.indigo.css.js +1 -1
- package/components/input/themes/shared/input.indigo.css.js.map +1 -1
- package/components/input/themes/shared/input.material.css.js +1 -1
- package/components/input/themes/shared/input.material.css.js.map +1 -1
- package/components/list/themes/item.base.css.js +1 -1
- package/components/list/themes/item.base.css.js.map +1 -1
- package/components/mask-input/mask-history.d.ts +22 -18
- package/components/mask-input/mask-history.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +1 -1
- package/components/mask-input/mask-parser.d.ts +11 -13
- package/components/mask-input/mask-parser.js.map +1 -1
- package/components/nav-drawer/themes/item.base.css.js +1 -1
- package/components/nav-drawer/themes/item.base.css.js.map +1 -1
- package/components/popover/popover.d.ts +45 -34
- package/components/popover/popover.js +54 -122
- package/components/popover/popover.js.map +1 -1
- package/components/popover/position/arrow.d.ts +19 -0
- package/components/popover/position/arrow.js +33 -0
- package/components/popover/position/arrow.js.map +1 -0
- package/components/popover/position/floating.d.ts +40 -0
- package/components/popover/position/floating.js +146 -0
- package/components/popover/position/floating.js.map +1 -0
- package/components/popover/position/native.d.ts +45 -0
- package/components/popover/position/native.js +158 -0
- package/components/popover/position/native.js.map +1 -0
- package/components/popover/position/strategy.d.ts +37 -0
- package/components/popover/position/strategy.js +21 -0
- package/components/popover/position/strategy.js.map +1 -0
- package/components/popover/position/types.d.ts +26 -0
- package/components/popover/position/types.js +15 -0
- package/components/popover/position/types.js.map +1 -0
- package/components/popover/themes/light/popover.base.css.js +1 -1
- package/components/popover/themes/light/popover.base.css.js.map +1 -1
- package/components/progress/circular-progress.d.ts +0 -5
- package/components/progress/circular-progress.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.d.ts +1 -0
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js +3 -0
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js.map +1 -0
- package/components/progress/themes/linear/themes.js +3 -2
- package/components/progress/themes/linear/themes.js.map +1 -1
- package/components/qr-code/qr-code.d.ts +29 -2
- package/components/qr-code/qr-code.js +56 -13
- package/components/qr-code/qr-code.js.map +1 -1
- package/components/qr-code/renderer/export.d.ts +28 -0
- package/components/qr-code/renderer/export.js +120 -0
- package/components/qr-code/renderer/export.js.map +1 -0
- package/components/qr-code/types.d.ts +26 -0
- package/components/qr-code/types.js.map +1 -1
- package/components/radio/radio.d.ts +4 -4
- package/components/radio/radio.js +17 -14
- package/components/radio/radio.js.map +1 -1
- package/components/radio/themes/radio.base.css.js +1 -1
- package/components/radio/themes/radio.base.css.js.map +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/rating/rating.d.ts +6 -6
- package/components/rating/rating.js.map +1 -1
- package/components/select/select-group.d.ts +5 -10
- package/components/select/select-group.js +10 -34
- package/components/select/select-group.js.map +1 -1
- package/components/select/select.d.ts +12 -20
- package/components/select/select.js +4 -14
- package/components/select/select.js.map +1 -1
- package/components/select/themes/select.base.css.js +1 -1
- package/components/select/themes/select.base.css.js.map +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
- package/components/slider/themes/shared/slider.material.css.js +1 -1
- package/components/slider/themes/shared/slider.material.css.js.map +1 -1
- package/components/slider/themes/slider.base.css.js +1 -1
- package/components/slider/themes/slider.base.css.js.map +1 -1
- package/components/snackbar/themes/snackbar.base.css.js +1 -1
- package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
- package/components/splitter/splitter.d.ts +6 -6
- package/components/splitter/splitter.js.map +1 -1
- package/components/splitter/themes/splitter.base.css.js +1 -1
- package/components/splitter/themes/splitter.base.css.js.map +1 -1
- package/components/stepper/themes/step/step.base.css.js +1 -1
- package/components/stepper/themes/step/step.base.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.fluent.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.fluent.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.material.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.material.css.js.map +1 -1
- package/components/tabs/themes/tab.base.css.js +1 -1
- package/components/tabs/themes/tab.base.css.js.map +1 -1
- package/components/textarea/textarea.d.ts +1 -1
- package/components/textarea/textarea.js.map +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
- package/components/tile-manager/themes/tile.base.css.js +1 -1
- package/components/tile-manager/themes/tile.base.css.js.map +1 -1
- package/components/tile-manager/tile-manager.d.ts +6 -7
- package/components/tile-manager/tile-manager.js.map +1 -1
- package/components/tile-manager/tile.d.ts +3 -3
- package/components/tile-manager/tile.js.map +1 -1
- package/components/toast/themes/toast.base.css.js +1 -1
- package/components/toast/themes/toast.base.css.js.map +1 -1
- package/components/toast/toast.d.ts +0 -2
- package/components/toast/toast.js.map +1 -1
- package/components/tooltip/controller.js.map +1 -1
- package/components/tooltip/service.js +4 -5
- package/components/tooltip/service.js.map +1 -1
- package/components/tooltip/themes/tooltip.base.css.js +1 -1
- package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
- package/components/tooltip/tooltip.d.ts +34 -13
- package/components/tooltip/tooltip.js +8 -4
- package/components/tooltip/tooltip.js.map +1 -1
- package/components/tree/themes/item.base.css.js +1 -1
- package/components/tree/themes/item.base.css.js.map +1 -1
- package/components/tree/tree-item.d.ts +6 -6
- package/components/tree/tree-item.js.map +1 -1
- package/components/tree/tree.navigation.d.ts +5 -6
- package/components/tree/tree.navigation.js.map +1 -1
- package/components/tree/tree.selection.js.map +1 -1
- package/components/types.d.ts +1 -1
- package/components/types.js.map +1 -1
- package/components/validation-container/themes/validator.base.css.js +1 -1
- package/components/validation-container/themes/validator.base.css.js.map +1 -1
- package/components/validation-container/validation-container.d.ts +10 -12
- package/components/validation-container/validation-container.js +14 -17
- package/components/validation-container/validation-container.js.map +1 -1
- package/components/virtualization/engine.d.ts +5 -5
- package/components/virtualization/engine.js.map +1 -1
- package/components/virtualization/virtualization.d.ts +61 -63
- package/components/virtualization/virtualization.js +6 -5
- package/components/virtualization/virtualization.js.map +1 -1
- package/custom-elements.json +16769 -19698
- package/igniteui-webcomponents.css-data.json +2 -2
- package/igniteui-webcomponents.html-data.json +1 -1
- package/index.d.ts +3 -1
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internals/abort-handler.d.ts +13 -25
- package/internals/abort-handler.js +4 -6
- package/internals/abort-handler.js.map +1 -1
- package/internals/context.d.ts +13 -7
- package/internals/context.js +2 -1
- package/internals/context.js.map +1 -1
- package/internals/controllers/adopt-styles.d.ts +19 -20
- package/internals/controllers/adopt-styles.js +3 -8
- package/internals/controllers/adopt-styles.js.map +1 -1
- package/internals/controllers/aria-projection.d.ts +56 -55
- package/internals/controllers/aria-projection.js +14 -15
- package/internals/controllers/aria-projection.js.map +1 -1
- package/internals/controllers/async-consumer.js.map +1 -1
- package/internals/controllers/command.d.ts +15 -30
- package/internals/controllers/command.js +2 -7
- package/internals/controllers/command.js.map +1 -1
- package/internals/controllers/context-provider.d.ts +7 -13
- package/internals/controllers/context-provider.js.map +1 -1
- package/internals/controllers/focus-ring.d.ts +10 -30
- package/internals/controllers/focus-ring.js +6 -12
- package/internals/controllers/focus-ring.js.map +1 -1
- package/internals/controllers/fullscreen.d.ts +7 -23
- package/internals/controllers/fullscreen.js +3 -9
- package/internals/controllers/fullscreen.js.map +1 -1
- package/internals/controllers/gestures.d.ts +10 -29
- package/internals/controllers/gestures.js +1 -3
- package/internals/controllers/gestures.js.map +1 -1
- package/internals/controllers/group.d.ts +13 -30
- package/internals/controllers/group.js.map +1 -1
- package/internals/controllers/host-listeners.d.ts +28 -0
- package/internals/controllers/host-listeners.js +27 -0
- package/internals/controllers/host-listeners.js.map +1 -0
- package/internals/controllers/id-resolver.d.ts +8 -9
- package/internals/controllers/id-resolver.js +6 -14
- package/internals/controllers/id-resolver.js.map +1 -1
- package/internals/controllers/internals.d.ts +53 -104
- package/internals/controllers/internals.js +40 -13
- package/internals/controllers/internals.js.map +1 -1
- package/internals/controllers/key-bindings.d.ts +61 -158
- package/internals/controllers/key-bindings.js +68 -67
- package/internals/controllers/key-bindings.js.map +1 -1
- package/internals/controllers/keys.d.ts +32 -0
- package/internals/controllers/keys.js +20 -0
- package/internals/controllers/keys.js.map +1 -0
- package/internals/controllers/mutation-observer.d.ts +14 -37
- package/internals/controllers/mutation-observer.js +1 -1
- package/internals/controllers/mutation-observer.js.map +1 -1
- package/internals/controllers/resize-observer.d.ts +9 -19
- package/internals/controllers/resize-observer.js.map +1 -1
- package/internals/controllers/root-click.d.ts +11 -42
- package/internals/controllers/root-click.js +4 -6
- package/internals/controllers/root-click.js.map +1 -1
- package/internals/controllers/roving-focus.d.ts +16 -35
- package/internals/controllers/roving-focus.js.map +1 -1
- package/internals/controllers/slot.d.ts +25 -54
- package/internals/controllers/slot.js +6 -6
- package/internals/controllers/slot.js.map +1 -1
- package/internals/controllers/toggle.d.ts +44 -48
- package/internals/controllers/toggle.js.map +1 -1
- package/internals/date/compare.js.map +1 -1
- package/internals/date/converters.d.ts +10 -7
- package/internals/date/converters.js.map +1 -1
- package/internals/date/model.d.ts +9 -16
- package/internals/date/model.js +22 -25
- package/internals/date/model.js.map +1 -1
- package/internals/decorators/blazorAdditionalDependencies.d.ts +4 -2
- package/internals/decorators/blazorAdditionalDependencies.js.map +1 -1
- package/internals/decorators/blazorDeepImport.d.ts +1 -3
- package/internals/decorators/blazorDeepImport.js.map +1 -1
- package/internals/decorators/blazorInclude.d.ts +3 -2
- package/internals/decorators/blazorInclude.js.map +1 -1
- package/internals/decorators/blazorIndirectRender.d.ts +1 -3
- package/internals/decorators/blazorIndirectRender.js.map +1 -1
- package/internals/decorators/blazorSuppressComponent.d.ts +1 -3
- package/internals/decorators/blazorSuppressComponent.js.map +1 -1
- package/internals/decorators/coerced-property.d.ts +14 -20
- package/internals/decorators/coerced-property.js.map +1 -1
- package/internals/decorators/shadow-options.d.ts +2 -5
- package/internals/decorators/shadow-options.js.map +1 -1
- package/internals/definitions/defineAllComponents.js +6 -0
- package/internals/definitions/defineAllComponents.js.map +1 -1
- package/internals/directives/drag.d.ts +51 -81
- package/internals/directives/drag.js +27 -89
- package/internals/directives/drag.js.map +1 -1
- package/internals/directives/pointer-operation.d.ts +75 -0
- package/internals/directives/pointer-operation.js +92 -0
- package/internals/directives/pointer-operation.js.map +1 -0
- package/internals/directives/resize.d.ts +36 -64
- package/internals/directives/resize.js +18 -85
- package/internals/directives/resize.js.map +1 -1
- package/internals/i18n/EN/calendar.resources.d.ts +8 -2
- package/internals/i18n/EN/calendar.resources.js +2 -2
- package/internals/i18n/EN/calendar.resources.js.map +1 -1
- package/internals/i18n/EN/chat.resources.d.ts +8 -2
- package/internals/i18n/EN/chat.resources.js +3 -10
- package/internals/i18n/EN/chat.resources.js.map +1 -1
- package/internals/i18n/EN/date-picker.resources.d.ts +6 -4
- package/internals/i18n/EN/date-picker.resources.js +1 -7
- package/internals/i18n/EN/date-picker.resources.js.map +1 -1
- package/internals/i18n/EN/date-range-picker.resources.d.ts +9 -2
- package/internals/i18n/EN/date-range-picker.resources.js +2 -2
- package/internals/i18n/EN/date-range-picker.resources.js.map +1 -1
- package/internals/i18n/i18n-controller.d.ts +44 -46
- package/internals/i18n/i18n-controller.js +46 -33
- package/internals/i18n/i18n-controller.js.map +1 -1
- package/internals/i18n/utils.d.ts +9 -4
- package/internals/i18n/utils.js +4 -27
- package/internals/i18n/utils.js.map +1 -1
- package/internals/mixins/alert.d.ts +10 -25
- package/internals/mixins/alert.js.map +1 -1
- package/internals/mixins/combo-box.d.ts +21 -11
- package/internals/mixins/combo-box.js +16 -22
- package/internals/mixins/combo-box.js.map +1 -1
- package/internals/mixins/event-emitter.js +9 -11
- package/internals/mixins/event-emitter.js.map +1 -1
- package/internals/mixins/forms/associated-required.d.ts +4 -4
- package/internals/mixins/forms/associated-required.js.map +1 -1
- package/internals/mixins/forms/associated.d.ts +4 -2
- package/internals/mixins/forms/associated.js +8 -19
- package/internals/mixins/forms/associated.js.map +1 -1
- package/internals/mixins/forms/form-transformers.js.map +1 -1
- package/internals/mixins/forms/types.d.ts +24 -80
- package/internals/mixins/forms/types.js.map +1 -1
- package/internals/mixins/group.d.ts +18 -0
- package/internals/mixins/group.js +37 -0
- package/internals/mixins/group.js.map +1 -0
- package/internals/mixins/i18n.d.ts +10 -16
- package/internals/mixins/i18n.js.map +1 -1
- package/internals/mixins/mask-behavior.d.ts +8 -22
- package/internals/mixins/mask-behavior.js +1 -2
- package/internals/mixins/mask-behavior.js.map +1 -1
- package/internals/mixins/option.d.ts +1 -2
- package/internals/mixins/option.js +2 -1
- package/internals/mixins/option.js.map +1 -1
- package/internals/part-map.d.ts +4 -2
- package/internals/part-map.js +1 -1
- package/internals/part-map.js.map +1 -1
- package/internals/templates/input-shell.d.ts +8 -17
- package/internals/templates/input-shell.js +4 -1
- package/internals/templates/input-shell.js.map +1 -1
- package/internals/templates/masked-input.d.ts +7 -8
- package/internals/templates/masked-input.js.map +1 -1
- package/internals/templates/slotted-icon.d.ts +7 -12
- package/internals/templates/slotted-icon.js.map +1 -1
- package/internals/templates/toggle-shell.d.ts +6 -7
- package/internals/templates/toggle-shell.js.map +1 -1
- package/internals/timing.d.ts +5 -14
- package/internals/timing.js.map +1 -1
- package/internals/utils/arrays.d.ts +21 -21
- package/internals/utils/arrays.js +14 -0
- package/internals/utils/arrays.js.map +1 -1
- package/internals/utils/dom.d.ts +51 -39
- package/internals/utils/dom.js +1 -2
- package/internals/utils/dom.js.map +1 -1
- package/internals/utils/events.d.ts +29 -16
- package/internals/utils/events.js +9 -1
- package/internals/utils/events.js.map +1 -1
- package/internals/utils/lit.d.ts +5 -2
- package/internals/utils/lit.js.map +1 -1
- package/internals/utils/math.d.ts +8 -6
- package/internals/utils/math.js.map +1 -1
- package/internals/utils/objects.d.ts +3 -20
- package/internals/utils/objects.js +1 -39
- package/internals/utils/objects.js.map +1 -1
- package/internals/utils/strings.d.ts +9 -11
- package/internals/utils/strings.js.map +1 -1
- package/internals/utils/types.d.ts +16 -3
- package/internals/utils/types.js +3 -0
- package/internals/utils/types.js.map +1 -1
- package/internals/validators.d.ts +9 -8
- package/internals/validators.js +12 -6
- package/internals/validators.js.map +1 -1
- package/package.json +1 -1
- package/skills/README.md +3 -0
- package/skills/igniteui-wc-figma-to-app/SKILL.md +907 -0
- package/skills/igniteui-wc-figma-to-app/references/asset-extraction.md +363 -0
- package/skills/igniteui-wc-figma-to-app/references/design-token-bridge.md +407 -0
- package/skills/igniteui-wc-figma-to-app/references/figma-component-map.md +325 -0
- package/skills/igniteui-wc-figma-to-app/references/mcp-setup.md +409 -0
- package/skills/igniteui-wc-figma-to-app/references/validation-patterns.md +376 -0
- package/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +21 -0
- package/skills/igniteui-wc-integrate-with-framework/SKILL.md +4 -3
- package/skills/igniteui-wc-integrate-with-framework/references/vanilla-js.md +14 -0
- package/skills/igniteui-wc-migrate-grid-lite-to-premium/SKILL.md +12 -2
- package/theming/config.d.ts +14 -5
- package/theming/config.js +38 -18
- package/theming/config.js.map +1 -1
- package/theming/context.d.ts +1 -23
- package/theming/context.js.map +1 -1
- package/theming/theming-controller.d.ts +2 -32
- package/theming/theming-controller.js +15 -21
- package/theming/theming-controller.js.map +1 -1
- package/theming/theming-event.d.ts +0 -7
- package/theming/theming-event.js +0 -13
- package/theming/theming-event.js.map +1 -1
- package/theming/types.d.ts +1 -8
- package/theming/types.js.map +1 -1
- package/web-types.json +3 -3
- package/animations/presets/slide/index.d.ts +0 -3
- package/animations/presets/slide/index.js +0 -16
- package/animations/presets/slide/index.js.map +0 -1
- package/internals/controllers/root-scroll.d.ts +0 -31
- package/internals/controllers/root-scroll.js +0 -71
- package/internals/controllers/root-scroll.js.map +0 -1
- package/theming/utils.d.ts +0 -11
- package/theming/utils.js +0 -20
- package/theming/utils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"part-map.js","sourceRoot":"","sources":["../../src/internals/part-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAEL,SAAS,EAET,SAAS,EAET,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAM1B,MAAM,gBAAiB,SAAQ,SAAS;IAGtC,YAAY,QAAkB;QAC5B,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhB,IACE,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS;YACpC,QAAQ,CAAC,IAAI,KAAK,MAAM;YACvB,QAAQ,CAAC,OAAO,EAAE,MAAiB,GAAG,CAAC,EACxC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,
|
|
1
|
+
{"version":3,"file":"part-map.js","sourceRoot":"","sources":["../../src/internals/part-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAEL,SAAS,EAET,SAAS,EAET,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAM1B,MAAM,gBAAiB,SAAQ,SAAS;IAGtC,YAAY,QAAkB;QAC5B,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhB,IACE,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS;YACpC,QAAQ,CAAC,IAAI,KAAK,MAAM;YACvB,QAAQ,CAAC,OAAO,EAAE,MAAiB,GAAG,CAAC,EACxC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,yFAAyF,CAC1F,CAAC;QACJ,CAAC;IACH,CAAC;IAEe,MAAM,CAAC,WAAwB;QAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;aAC5B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;aACjC,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAEe,MAAM,CACpB,IAAmB,EACnB,CAAC,WAAW,CAA4B;QAExC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAEnC,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;YAEhC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACvC,IAAI,CAAC,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAQD,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,CAAC","sourcesContent":["import { noChange } from 'lit';\nimport {\n type AttributePart,\n Directive,\n type DirectiveParameters,\n directive,\n type PartInfo,\n PartType,\n} from 'lit/directive.js';\n\nexport interface PartMapInfo {\n readonly [name: string]: boolean | null | undefined;\n}\n\nclass PartMapDirective extends Directive {\n private _previousParts?: Set<string>;\n\n constructor(partInfo: PartInfo) {\n super(partInfo);\n\n if (\n partInfo.type !== PartType.ATTRIBUTE ||\n partInfo.name !== 'part' ||\n (partInfo.strings?.length as number) > 0\n ) {\n throw new Error(\n 'partMap() can only be used in the `part` attribute, and must be the only binding in it.'\n );\n }\n }\n\n public override render(partMapInfo: PartMapInfo): string {\n return Object.keys(partMapInfo)\n .filter((key) => partMapInfo[key])\n .join(' ');\n }\n\n public override update(\n part: AttributePart,\n [partMapInfo]: DirectiveParameters<this>\n ) {\n const partList = part.element.part;\n\n if (this._previousParts === undefined) {\n this._previousParts = new Set();\n\n for (const name in partMapInfo) {\n if (partMapInfo[name]) {\n partList.add(name);\n this._previousParts.add(name);\n }\n }\n\n return this.render(partMapInfo);\n }\n\n for (const name of this._previousParts) {\n if (!(name in partMapInfo) || !partMapInfo[name]) {\n partList.remove(name);\n this._previousParts.delete(name);\n }\n }\n\n for (const name in partMapInfo) {\n const value = !!partMapInfo[name];\n if (value && !this._previousParts.has(name)) {\n partList.add(name);\n this._previousParts.add(name);\n }\n }\n\n return noChange;\n }\n}\n\n/**\n * Sets the `part` attribute of an element from a map of part names, like the\n * Lit {@link https://lit.dev/docs/templates/directives/#classmap | `classMap`}\n * and {@link https://lit.dev/docs/templates/directives/#stylemap | `styleMap`}\n * directives.\n */\nexport const partMap = directive(PartMapDirective);\nexport type { PartMapDirective };\n"]}
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import { nothing, type TemplateResult } from 'lit';
|
|
2
2
|
import type { SlotController } from '../controllers/slot.js';
|
|
3
3
|
import type { IgcFormControl } from '../mixins/forms/types.js';
|
|
4
|
-
/** Returns a unique id for native input
|
|
4
|
+
/** Returns a unique id for a native input element. */
|
|
5
5
|
export declare const nextInputId: () => string;
|
|
6
|
-
/**
|
|
7
|
-
* Resolves the shared container part names of an input-like component based
|
|
8
|
-
* on its current slotted and filled state.
|
|
9
|
-
* Used to apply conditional styling via CSS parts.
|
|
10
|
-
*/
|
|
6
|
+
/** Returns the shared container part names of an input-like component. */
|
|
11
7
|
export declare function resolveInputPartNames(slots: Pick<SlotController<'prefix' | 'suffix'>, 'hasAssignedElements'>, base: string, filled: boolean): Record<string, boolean>;
|
|
12
8
|
export interface InputShellOptions {
|
|
13
9
|
/** Active theme name. The `material` theme uses the notch layout. */
|
|
@@ -20,23 +16,18 @@ export interface InputShellOptions {
|
|
|
20
16
|
containerParts: Record<string, boolean>;
|
|
21
17
|
/** Renders the native `<input>` element. */
|
|
22
18
|
renderInput: () => TemplateResult;
|
|
23
|
-
/**
|
|
19
|
+
/** Renders extra parts inside the container, as `igc-file-input` needs. */
|
|
24
20
|
renderFileParts?: () => TemplateResult | typeof nothing;
|
|
25
|
-
/**
|
|
26
|
-
* Container part names contributed only by the material notch layout
|
|
27
|
-
* (e.g. the `placeholder` part of `igc-textarea`).
|
|
28
|
-
*/
|
|
21
|
+
/** Container part names that only the material notch layout adds. */
|
|
29
22
|
materialParts?: Record<string, boolean>;
|
|
30
23
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* of `containerParts`. Off by default, so the wrappers always render.
|
|
24
|
+
* Hides the prefix and suffix wrappers whose `containerParts` entry is
|
|
25
|
+
* false. Off by default, so the wrappers always render.
|
|
34
26
|
*/
|
|
35
27
|
hideEmptyAffixes?: boolean;
|
|
36
28
|
}
|
|
37
29
|
/**
|
|
38
|
-
* Renders the
|
|
39
|
-
*
|
|
40
|
-
* material notch and the standard flow.
|
|
30
|
+
* Renders the label, prefix, suffix and validation container around the input
|
|
31
|
+
* template of a leaf component, in the notch or the standard layout.
|
|
41
32
|
*/
|
|
42
33
|
export declare function renderInputShell(host: IgcFormControl, { containerParts, materialParts, hideEmptyAffixes, renderFileParts, renderInput, theme, label, labelId, }: InputShellOptions): TemplateResult;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { html, nothing } from 'lit';
|
|
2
2
|
import IgcValidationContainerComponent from '../../components/validation-container/validation-container.js';
|
|
3
3
|
import { partMap } from '../part-map.js';
|
|
4
|
+
import { stopPropagation } from '../utils/events.js';
|
|
4
5
|
import { createIdGenerator } from '../utils/strings.js';
|
|
5
6
|
export const nextInputId = createIdGenerator('input');
|
|
6
7
|
export function resolveInputPartNames(slots, base, filled) {
|
|
@@ -17,7 +18,9 @@ export function resolveInputPartNames(slots, base, filled) {
|
|
|
17
18
|
}
|
|
18
19
|
function renderLabel(forId, label) {
|
|
19
20
|
return label
|
|
20
|
-
? html `<label part="label" for=${forId}
|
|
21
|
+
? html `<label part="label" for=${forId} @click=${stopPropagation}
|
|
22
|
+
>${label}</label
|
|
23
|
+
>`
|
|
21
24
|
: nothing;
|
|
22
25
|
}
|
|
23
26
|
function renderAffix(name, hidden) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-shell.js","sourceRoot":"","sources":["../../../src/internals/templates/input-shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACzD,OAAO,+BAA+B,MAAM,+DAA+D,CAAC;AAG5G,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"input-shell.js","sourceRoot":"","sources":["../../../src/internals/templates/input-shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACzD,OAAO,+BAA+B,MAAM,+DAA+D,CAAC;AAG5G,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAGtD,MAAM,UAAU,qBAAqB,CACnC,KAAuE,EACvE,IAAY,EACZ,MAAe;IAEf,OAAO;QACL,CAAC,IAAI,CAAC,EAAE,IAAI;QACZ,QAAQ,EAAE,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE;YAC5C,QAAQ,EAAE,+BAA+B;SAC1C,CAAC;QACF,QAAQ,EAAE,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE;YAC5C,QAAQ,EAAE,+BAA+B;SAC1C,CAAC;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAkCD,SAAS,WAAW,CAAC,KAAa,EAAE,KAAa;IAC/C,OAAO,KAAK;QACV,CAAC,CAAC,IAAI,CAAA,2BAA2B,KAAK,WAAW,eAAe;WACzD,KAAK;QACR;QACJ,CAAC,CAAC,OAAO,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,IAAyB,EAAE,MAAe;IAC7D,OAAO,IAAI,CAAA,aAAa,IAAI,YAAY,MAAM;iBAC/B,IAAI;SACZ,CAAC;AACV,CAAC;AAMD,MAAM,UAAU,gBAAgB,CAC9B,IAAoB,EACpB,EACE,cAAc,EACd,aAAa,EACb,gBAAgB,GAAG,KAAK,EACxB,eAAe,EACf,WAAW,EACX,KAAK,EACL,KAAK,EACL,OAAO,GACW;IAEpB,MAAM,SAAS,GAAG,+BAA+B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC;IACzD,MAAM,MAAM,GAAG,WAAW,CACxB,QAAQ,EACR,gBAAgB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAC7C,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CACxB,QAAQ,EACR,gBAAgB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAC7C,CAAC;IAEF,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,IAAI,CAAA;;eAEA,OAAO,CAAC;YACb,GAAG,cAAc;YACjB,GAAG,aAAa;YAChB,QAAQ,EAAE,CAAC,CAAC,KAAK;SAClB,CAAC;;4BAEkB,MAAM;UACxB,KAAK,GAAG,SAAS;4BACC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;;0BAE7B,MAAM;;QAExB,SAAS;KACZ,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAA;MACP,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;gBACjB,OAAO,CAAC,cAAc,CAAC;QAC/B,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM;;MAErC,SAAS;GACZ,CAAC;AACJ,CAAC","sourcesContent":["import { html, nothing, type TemplateResult } from 'lit';\nimport IgcValidationContainerComponent from '../../components/validation-container/validation-container.js';\nimport type { SlotController } from '../controllers/slot.js';\nimport type { IgcFormControl } from '../mixins/forms/types.js';\nimport { partMap } from '../part-map.js';\nimport { stopPropagation } from '../utils/events.js';\nimport { createIdGenerator } from '../utils/strings.js';\n\n/** Returns a unique id for a native input element. */\nexport const nextInputId = createIdGenerator('input');\n\n/** Returns the shared container part names of an input-like component. */\nexport function resolveInputPartNames(\n slots: Pick<SlotController<'prefix' | 'suffix'>, 'hasAssignedElements'>,\n base: string,\n filled: boolean\n): Record<string, boolean> {\n return {\n [base]: true,\n prefixed: slots.hasAssignedElements('prefix', {\n selector: '[slot=\"prefix\"]:not([hidden])',\n }),\n suffixed: slots.hasAssignedElements('suffix', {\n selector: '[slot=\"suffix\"]:not([hidden])',\n }),\n filled,\n };\n}\n\nexport interface InputShellOptions {\n /** Active theme name. The `material` theme uses the notch layout. */\n theme: string;\n /** The label text. Empty string skips label rendering. */\n label: string;\n /** The id of the input element used by the label `for` attribute. */\n labelId: string;\n /** Resolved part-name map for the container element. */\n containerParts: Record<string, boolean>;\n /** Renders the native `<input>` element. */\n renderInput: () => TemplateResult;\n /** Renders extra parts inside the container, as `igc-file-input` needs. */\n renderFileParts?: () => TemplateResult | typeof nothing;\n /** Container part names that only the material notch layout adds. */\n materialParts?: Record<string, boolean>;\n /**\n * Hides the prefix and suffix wrappers whose `containerParts` entry is\n * false. Off by default, so the wrappers always render.\n */\n hideEmptyAffixes?: boolean;\n}\n\n/**\n * Renders the label of the input.\n *\n * @remarks\n * A label click reaches the host twice: the label click, then the synthetic\n * click that label activation sends to the input. That double-fires a\n * consumer click handler and breaks the toggles of `igc-combo` and\n * `igc-select`. The label therefore keeps its own click inside the shadow\n * root; activation is a default action, so focus still moves to the input.\n */\nfunction renderLabel(forId: string, label: string) {\n return label\n ? html`<label part=\"label\" for=${forId} @click=${stopPropagation}\n >${label}</label\n >`\n : nothing;\n}\n\nfunction renderAffix(name: 'prefix' | 'suffix', hidden: boolean) {\n return html`<div part=${name} ?hidden=${hidden}>\n <slot name=${name}></slot>\n </div>`;\n}\n\n/**\n * Renders the label, prefix, suffix and validation container around the input\n * template of a leaf component, in the notch or the standard layout.\n */\nexport function renderInputShell(\n host: IgcFormControl,\n {\n containerParts,\n materialParts,\n hideEmptyAffixes = false,\n renderFileParts,\n renderInput,\n theme,\n label,\n labelId,\n }: InputShellOptions\n): TemplateResult {\n const validator = IgcValidationContainerComponent.create(host);\n const input = renderInput.call(host);\n const fileParts = renderFileParts?.call(host) ?? nothing;\n const prefix = renderAffix(\n 'prefix',\n hideEmptyAffixes && !containerParts.prefixed\n );\n const suffix = renderAffix(\n 'suffix',\n hideEmptyAffixes && !containerParts.suffixed\n );\n\n if (theme === 'material') {\n return html`\n <div\n part=${partMap({\n ...containerParts,\n ...materialParts,\n labelled: !!label,\n })}\n >\n <div part=\"start\">${prefix}</div>\n ${input}${fileParts}\n <div part=\"notch\">${renderLabel(labelId, label)}</div>\n <div part=\"filler\"></div>\n <div part=\"end\">${suffix}</div>\n </div>\n ${validator}\n `;\n }\n\n return html`\n ${renderLabel(labelId, label)}\n <div part=${partMap(containerParts)}>\n ${prefix}${fileParts}${input}${suffix}\n </div>\n ${validator}\n `;\n}\n"]}
|
|
@@ -9,7 +9,7 @@ export interface MaskedInputOptions {
|
|
|
9
9
|
name?: string;
|
|
10
10
|
/** Current value to render through `live()`. */
|
|
11
11
|
value: string;
|
|
12
|
-
/**
|
|
12
|
+
/** The resolved placeholder text. The caller defines an empty string. */
|
|
13
13
|
placeholder: string;
|
|
14
14
|
readOnly: boolean;
|
|
15
15
|
disabled: boolean;
|
|
@@ -18,17 +18,17 @@ export interface MaskedInputOptions {
|
|
|
18
18
|
/** When provided, sets the `tabindex` attribute. */
|
|
19
19
|
tabindex?: number;
|
|
20
20
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
21
|
+
* The projected host state merged with the editor bindings. See
|
|
22
|
+
* `AriaTargetController.resolveBindings`.
|
|
23
23
|
*/
|
|
24
24
|
aria: ResolvedARIABindings;
|
|
25
25
|
onInput: (event: InputEvent) => void;
|
|
26
|
-
/**
|
|
26
|
+
/** Owns `historyUndo` and `historyRedo` through `beforeinput`. */
|
|
27
27
|
onBeforeInput: (event: InputEvent) => void;
|
|
28
28
|
onFocus: (event: FocusEvent) => void;
|
|
29
29
|
onBlur: (event: FocusEvent) => void;
|
|
30
30
|
onClick: () => void;
|
|
31
|
-
/**
|
|
31
|
+
/** Captures the selection on `keydown`, `cut` and `dragstart`. */
|
|
32
32
|
onSetMaskSelection: (event: Event) => void;
|
|
33
33
|
onCompositionStart: () => void;
|
|
34
34
|
onCompositionEnd: (event: CompositionEvent) => void;
|
|
@@ -38,8 +38,7 @@ export interface MaskedInputOptions {
|
|
|
38
38
|
onDragLeave?: () => void;
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
* Renders the native `<input>`
|
|
42
|
-
*
|
|
43
|
-
* Centralizes mask event wiring so leaves only describe their extras.
|
|
41
|
+
* Renders the native `<input>` of the mask-driven components, with the mask
|
|
42
|
+
* event bindings, so a leaf component describes only its extras.
|
|
44
43
|
*/
|
|
45
44
|
export declare function renderMaskedNativeInput(opts: MaskedInputOptions): TemplateResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masked-input.js","sourceRoot":"","sources":["../../../src/internals/templates/masked-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EACL,YAAY,GAEb,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"masked-input.js","sourceRoot":"","sources":["../../../src/internals/templates/masked-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EACL,YAAY,GAEb,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAgDzC,MAAM,UAAU,uBAAuB,CACrC,IAAwB;IAExB,OAAO,IAAI,CAAA;;WAEF,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;;aAEhB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;aACvB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;eAClB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;qBACV,IAAI,CAAC,WAAW;kBACnB,IAAI,CAAC,QAAQ;kBACb,IAAI,CAAC,QAAQ;mBACZ,IAAI,CAAC,SAAS;kBACf,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;iBAC1B,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;QACrD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;eAChB,IAAI,CAAC,OAAO;qBACN,IAAI,CAAC,aAAa;eACxB,IAAI,CAAC,OAAO;cACb,IAAI,CAAC,MAAM;eACV,IAAI,CAAC,OAAO;iBACV,IAAI,CAAC,kBAAkB;aAC3B,IAAI,CAAC,kBAAkB;mBACjB,IAAI,CAAC,kBAAkB;0BAChB,IAAI,CAAC,kBAAkB;wBACzB,IAAI,CAAC,gBAAgB;gBAC7B,IAAI,CAAC,QAAQ;eACd,IAAI,CAAC,OAAO;mBACR,IAAI,CAAC,WAAW;mBAChB,IAAI,CAAC,WAAW;;GAEhC,CAAC;AACJ,CAAC","sourcesContent":["import { html, type TemplateResult } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport {\n ariaBindings,\n type ResolvedARIABindings,\n} from '../controllers/aria-projection.js';\nimport { partMap } from '../part-map.js';\nimport { bindIf } from '../utils/lit.js';\n\nexport interface MaskedInputOptions {\n /** Optional id for the native input element. */\n id?: string;\n /** Resolved part-name map applied to the input. */\n partNames: Record<string, boolean>;\n /** The form-associated name attribute. */\n name?: string;\n /** Current value to render through `live()`. */\n value: string;\n /** The resolved placeholder text. The caller defines an empty string. */\n placeholder: string;\n readOnly: boolean;\n disabled: boolean;\n autofocus?: boolean;\n inputMode?: string;\n /** When provided, sets the `tabindex` attribute. */\n tabindex?: number;\n /**\n * The projected host state merged with the editor bindings. See\n * `AriaTargetController.resolveBindings`.\n */\n aria: ResolvedARIABindings;\n\n // Required mask handlers\n onInput: (event: InputEvent) => void;\n /** Owns `historyUndo` and `historyRedo` through `beforeinput`. */\n onBeforeInput: (event: InputEvent) => void;\n onFocus: (event: FocusEvent) => void;\n onBlur: (event: FocusEvent) => void;\n onClick: () => void;\n /** Captures the selection on `keydown`, `cut` and `dragstart`. */\n onSetMaskSelection: (event: Event) => void;\n onCompositionStart: () => void;\n onCompositionEnd: (event: CompositionEvent) => void;\n\n // Optional handlers\n onChange?: () => void;\n onWheel?: (event: WheelEvent) => void;\n onDragEnter?: () => void;\n onDragLeave?: () => void;\n}\n\n/**\n * Renders the native `<input>` of the mask-driven components, with the mask\n * event bindings, so a leaf component describes only its extras.\n */\nexport function renderMaskedNativeInput(\n opts: MaskedInputOptions\n): TemplateResult {\n return html`\n <input\n id=${ifDefined(opts.id)}\n type=\"text\"\n part=${partMap(opts.partNames)}\n name=${ifDefined(opts.name)}\n .value=${live(opts.value)}\n .placeholder=${opts.placeholder}\n ?readonly=${opts.readOnly}\n ?disabled=${opts.disabled}\n ?autofocus=${opts.autofocus}\n inputmode=${ifDefined(opts.inputMode)}\n tabindex=${bindIf(opts.tabindex != null, opts.tabindex)}\n ${ariaBindings(opts.aria)}\n @input=${opts.onInput}\n @beforeinput=${opts.onBeforeInput}\n @focus=${opts.onFocus}\n @blur=${opts.onBlur}\n @click=${opts.onClick}\n @keydown=${opts.onSetMaskSelection}\n @cut=${opts.onSetMaskSelection}\n @dragstart=${opts.onSetMaskSelection}\n @compositionstart=${opts.onCompositionStart}\n @compositionend=${opts.onCompositionEnd}\n @change=${opts.onChange}\n @wheel=${opts.onWheel}\n @dragenter=${opts.onDragEnter}\n @dragleave=${opts.onDragLeave}\n />\n `;\n}\n"]}
|
|
@@ -3,30 +3,25 @@ import '../../components/icon/icon.js';
|
|
|
3
3
|
export interface SlottedIconOptions {
|
|
4
4
|
/** The name of the slot that overrides the default icon. */
|
|
5
5
|
slot: string;
|
|
6
|
-
/** The registry name of the default icon
|
|
6
|
+
/** The registry name of the default icon in the fallback content. */
|
|
7
7
|
icon: string;
|
|
8
8
|
/** Controls the `hidden` attribute of the slot element. */
|
|
9
9
|
hidden?: boolean;
|
|
10
10
|
/** The `title` of the default icon. */
|
|
11
11
|
title?: string;
|
|
12
|
-
/**
|
|
13
|
-
* The accessible label of the default icon. When set, the icon is exposed
|
|
14
|
-
* to the accessibility tree with that label instead of being `aria-hidden`.
|
|
15
|
-
*/
|
|
12
|
+
/** The accessible label of the default icon. Suppresses `aria-hidden`. */
|
|
16
13
|
label?: string;
|
|
17
14
|
/**
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* accessibility tree.
|
|
15
|
+
* Adds `aria-hidden="true"` to a default icon that has no label. Pass
|
|
16
|
+
* `false` when an ancestor already hides the icon.
|
|
21
17
|
*
|
|
22
18
|
* @default true
|
|
23
19
|
*/
|
|
24
20
|
ariaHidden?: boolean;
|
|
25
21
|
}
|
|
26
22
|
/**
|
|
27
|
-
* Renders a named slot with a default icon from the
|
|
28
|
-
* fallback content
|
|
29
|
-
*
|
|
30
|
-
* event handlers, and must register the icon component themselves.
|
|
23
|
+
* Renders a named slot with a default icon from the `default` collection as
|
|
24
|
+
* the fallback content. The caller owns the wrapping element and registers
|
|
25
|
+
* the icon component.
|
|
31
26
|
*/
|
|
32
27
|
export declare function renderSlottedIcon(options: SlottedIconOptions): TemplateResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slotted-icon.js","sourceRoot":"","sources":["../../../src/internals/templates/slotted-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAGzD,OAAO,+BAA+B,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"slotted-icon.js","sourceRoot":"","sources":["../../../src/internals/templates/slotted-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAGzD,OAAO,+BAA+B,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AA2BzC,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;IAExE,OAAO,IAAI,CAAA;iBACI,OAAO,CAAC,IAAI,YAAY,OAAO,CAAC,MAAM,IAAI,KAAK;;eAEjD,OAAO,CAAC,IAAI;;gBAEX,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;qBACnB,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;sBACvB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;;;GAG7C,CAAC;AACJ,CAAC","sourcesContent":["import { html, type TemplateResult } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n// Satisfies the lit-analyzer element resolution for `igc-icon`. No side\n// effects; the consuming components register the icon.\nimport '../../components/icon/icon.js';\nimport { bindIf } from '../utils/lit.js';\n\nexport interface SlottedIconOptions {\n /** The name of the slot that overrides the default icon. */\n slot: string;\n /** The registry name of the default icon in the fallback content. */\n icon: string;\n /** Controls the `hidden` attribute of the slot element. */\n hidden?: boolean;\n /** The `title` of the default icon. */\n title?: string;\n /** The accessible label of the default icon. Suppresses `aria-hidden`. */\n label?: string;\n /**\n * Adds `aria-hidden=\"true\"` to a default icon that has no label. Pass\n * `false` when an ancestor already hides the icon.\n *\n * @default true\n */\n ariaHidden?: boolean;\n}\n\n/**\n * Renders a named slot with a default icon from the `default` collection as\n * the fallback content. The caller owns the wrapping element and registers\n * the icon component.\n */\nexport function renderSlottedIcon(options: SlottedIconOptions): TemplateResult {\n const ariaHidden = options.label ? false : (options.ariaHidden ?? true);\n\n return html`\n <slot name=${options.slot} ?hidden=${options.hidden ?? false}>\n <igc-icon\n name=${options.icon}\n collection=\"default\"\n title=${ifDefined(options.title)}\n aria-label=${ifDefined(options.label)}\n aria-hidden=${bindIf(ariaHidden, 'true')}\n ></igc-icon>\n </slot>\n `;\n}\n"]}
|
|
@@ -2,7 +2,7 @@ import { type TemplateResult } from 'lit';
|
|
|
2
2
|
export interface ToggleShellOptions {
|
|
3
3
|
/** The type of the native input element. */
|
|
4
4
|
type: 'checkbox' | 'radio';
|
|
5
|
-
/** The id of the native input; the
|
|
5
|
+
/** The id of the native input; the `for` target of the wrapping label. */
|
|
6
6
|
inputId: string;
|
|
7
7
|
/** The id of the label span, the fallback `aria-labelledby` target. */
|
|
8
8
|
labelId: string;
|
|
@@ -23,8 +23,8 @@ export interface ToggleShellOptions {
|
|
|
23
23
|
required: boolean;
|
|
24
24
|
disabled: boolean;
|
|
25
25
|
/**
|
|
26
|
-
*
|
|
27
|
-
*
|
|
26
|
+
* The current indeterminate state, rendered through `live()`. Defaults to
|
|
27
|
+
* `false`, and `live()` then writes nothing.
|
|
28
28
|
*/
|
|
29
29
|
indeterminate?: boolean;
|
|
30
30
|
/** When provided, sets the `tabindex` attribute. */
|
|
@@ -38,9 +38,8 @@ export interface ToggleShellOptions {
|
|
|
38
38
|
onBlur?: () => void;
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
* Renders the
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* and control indicator.
|
|
41
|
+
* Renders the native input and its wrapping label for a toggle control, with
|
|
42
|
+
* the input bindings, so a leaf component describes only its part maps and
|
|
43
|
+
* its control indicator.
|
|
45
44
|
*/
|
|
46
45
|
export declare function renderToggleShell(options: ToggleShellOptions): TemplateResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-shell.js","sourceRoot":"","sources":["../../../src/internals/templates/toggle-shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"toggle-shell.js","sourceRoot":"","sources":["../../../src/internals/templates/toggle-shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AA+CzC,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,OAAO,IAAI,CAAA;kBACK,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,OAAO,CAAC,OAAO;;aAEtD,OAAO,CAAC,OAAO;eACb,OAAO,CAAC,IAAI;eACZ,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;gBACtB,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;oBACpB,OAAO,CAAC,QAAQ;oBAChB,OAAO,CAAC,QAAQ;mBACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;yBACf,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,KAAK,CAAC;mBAC1C,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC;0BAC3C,OAAO,CAAC,cAAc;2BACrB,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC;mBAC1C,OAAO,CAAC,SAAS;iBACnB,OAAO,CAAC,OAAO;gBAChB,OAAO,CAAC,MAAM,IAAI,OAAO;;mBAEtB,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;WACrC,OAAO,CAAC,aAAa,EAAE;;;aAGrB,OAAO,CAAC,OAAO;eACb,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;kBACxB,OAAO,CAAC,SAAS;;;;;GAKhC,CAAC;AACJ,CAAC","sourcesContent":["import { html, nothing, type TemplateResult } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { partMap } from '../part-map.js';\nimport { bindIf } from '../utils/lit.js';\n\nexport interface ToggleShellOptions {\n /** The type of the native input element. */\n type: 'checkbox' | 'radio';\n /** The id of the native input; the `for` target of the wrapping label. */\n inputId: string;\n /** The id of the label span, the fallback `aria-labelledby` target. */\n labelId: string;\n /** Resolved part-name map for the wrapping label element. */\n baseParts: Record<string, boolean>;\n /** Resolved part-name map for the control span. */\n controlParts: Record<string, boolean>;\n /** Resolved part-name map for the label span. */\n labelParts: Record<string, boolean>;\n /** Renders the control indicator inside the control span. */\n renderControl: () => TemplateResult;\n /** Current checked state rendered through `live()`. */\n checked: boolean;\n /** Hides the label span when the default slot has no assigned content. */\n hideLabel: boolean;\n name?: string;\n value?: string;\n required: boolean;\n disabled: boolean;\n /**\n * The current indeterminate state, rendered through `live()`. Defaults to\n * `false`, and `live()` then writes nothing.\n */\n indeterminate?: boolean;\n /** When provided, sets the `tabindex` attribute. */\n tabindex?: number;\n /** Resolved `aria-labelledby` target - an external id or `labelId`. */\n ariaLabelledBy: string;\n /** When provided, sets the `aria-describedby` attribute. */\n ariaDescribedBy?: string;\n\n onClick: (event: PointerEvent) => void;\n onKeyDown: (event: KeyboardEvent) => void;\n onBlur?: () => void;\n}\n\n/**\n * Renders the native input and its wrapping label for a toggle control, with\n * the input bindings, so a leaf component describes only its part maps and\n * its control indicator.\n */\nexport function renderToggleShell(options: ToggleShellOptions): TemplateResult {\n return html`\n <label part=${partMap(options.baseParts)} for=${options.inputId}>\n <input\n id=${options.inputId}\n type=${options.type}\n name=${ifDefined(options.name)}\n value=${ifDefined(options.value)}\n ?required=${options.required}\n ?disabled=${options.disabled}\n .checked=${live(options.checked)}\n .indeterminate=${live(options.indeterminate ?? false)}\n tabindex=${bindIf(options.tabindex != null, options.tabindex)}\n aria-labelledby=${options.ariaLabelledBy}\n aria-describedby=${ifDefined(options.ariaDescribedBy)}\n @keydown=${options.onKeyDown}\n @click=${options.onClick}\n @blur=${options.onBlur ?? nothing}\n />\n <span part=${partMap(options.controlParts)}\n >${options.renderControl()}</span\n >\n <span\n id=${options.labelId}\n part=${partMap(options.labelParts)}\n ?hidden=${options.hideLabel}\n >\n <slot></slot>\n </span>\n </label>\n `;\n}\n"]}
|
package/internals/timing.d.ts
CHANGED
|
@@ -1,24 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A restartable timeout handle. See {@link createTimer}.
|
|
3
|
-
*/
|
|
1
|
+
/** A restartable timeout handle. See {@link createTimer}. */
|
|
4
2
|
export type Timer = {
|
|
5
3
|
/** Whether the timer is currently armed. */
|
|
6
4
|
readonly active: boolean;
|
|
7
|
-
/**
|
|
8
|
-
* (Re)arms the timer, canceling a previously armed run.
|
|
9
|
-
*
|
|
10
|
-
* When `delay` is omitted, the default delay of the timer is used.
|
|
11
|
-
*/
|
|
5
|
+
/** Arms the timer, cancels an armed run, and defaults `delay`. */
|
|
12
6
|
start(delay?: number): void;
|
|
13
|
-
/** Cancels the armed run, if
|
|
7
|
+
/** Cancels the armed run, if there is one. */
|
|
14
8
|
stop(): void;
|
|
15
9
|
};
|
|
16
10
|
/**
|
|
17
|
-
* Creates a restartable timeout around `callback`.
|
|
18
|
-
*
|
|
19
|
-
* Every `start` supersedes the previous one, so the callback runs at most once,
|
|
20
|
-
* `delay` milliseconds after the most recent `start` - the recurring
|
|
21
|
-
* "clear the stored handle, then set it again" bookkeeping is kept in one place.
|
|
11
|
+
* Creates a restartable timeout around `callback`. The callback runs one time
|
|
12
|
+
* at most, `delay` milliseconds after the most recent `start` call.
|
|
22
13
|
*
|
|
23
14
|
* @example
|
|
24
15
|
* ```typescript
|
package/internals/timing.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timing.js","sourceRoot":"","sources":["../../src/internals/timing.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"timing.js","sourceRoot":"","sources":["../../src/internals/timing.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,WAAW,CAAC,QAAoB,EAAE,YAAY,GAAG,CAAC;IAChE,IAAI,MAAiD,CAAC;IAEtD,OAAO;QACL,IAAI,MAAM;YACR,OAAO,MAAM,KAAK,SAAS,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,KAAK,GAAG,YAAY;YACxB,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE;gBACvB,MAAM,GAAG,SAAS,CAAC;gBACnB,QAAQ,EAAE,CAAC;YACb,CAAC,EAAE,KAAK,CAAC,CAAC;QACZ,CAAC;QACD,IAAI;YACF,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM,GAAG,SAAS,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** A restartable timeout handle. See {@link createTimer}. */\nexport type Timer = {\n /** Whether the timer is currently armed. */\n readonly active: boolean;\n /** Arms the timer, cancels an armed run, and defaults `delay`. */\n start(delay?: number): void;\n /** Cancels the armed run, if there is one. */\n stop(): void;\n};\n\n/**\n * Creates a restartable timeout around `callback`. The callback runs one time\n * at most, `delay` milliseconds after the most recent `start` call.\n *\n * @example\n * ```typescript\n * const timer = createTimer(() => this.hideTooltip(), 500);\n *\n * timer.start(); // arms the timer with the default delay\n * timer.start(1000); // supersedes the run above\n * timer.stop(); // cancels it altogether\n * ```\n */\nexport function createTimer(callback: () => void, defaultDelay = 0): Timer {\n let handle: ReturnType<typeof setTimeout> | undefined;\n\n return {\n get active(): boolean {\n return handle !== undefined;\n },\n start(delay = defaultDelay): void {\n clearTimeout(handle);\n handle = setTimeout(() => {\n handle = undefined;\n callback();\n }, delay);\n },\n stop(): void {\n clearTimeout(handle);\n handle = undefined;\n },\n };\n}\n"]}
|
|
@@ -1,36 +1,23 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns the first element of the given array.
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* Assumes a non-empty array - for an empty one it returns `undefined`
|
|
6
|
-
* typed as `T`.
|
|
7
|
-
*/
|
|
1
|
+
/** Returns the first element, typed as `T` even for an empty array. */
|
|
8
2
|
export declare function firstOf<T>(arr: T[]): T;
|
|
9
|
-
/**
|
|
10
|
-
* Returns the last element of the given array.
|
|
11
|
-
*
|
|
12
|
-
* @remarks
|
|
13
|
-
* Assumes a non-empty array - for an empty one it returns `undefined`
|
|
14
|
-
* typed as `T`.
|
|
15
|
-
*/
|
|
3
|
+
/** Returns the last element, typed as `T` even for an empty array. */
|
|
16
4
|
export declare function lastOf<T>(arr: T[]): T;
|
|
17
5
|
/**
|
|
18
|
-
* Splits an array into chunks of
|
|
6
|
+
* Splits an array into chunks of the given size.
|
|
19
7
|
*
|
|
20
8
|
* @example
|
|
21
9
|
* ```typescript
|
|
22
10
|
* [...chunk([1, 2, 3, 4, 5], 2)]; // [[1, 2], [3, 4], [5]]
|
|
23
11
|
* ```
|
|
24
12
|
*
|
|
25
|
-
* @throws If the `size` parameter is not a safe integer greater than or
|
|
13
|
+
* @throws If the `size` parameter is not a safe integer greater than or
|
|
14
|
+
* equal to 1.
|
|
26
15
|
*/
|
|
27
16
|
export declare function chunk<T>(arr: T[], size: number): Generator<T[]>;
|
|
28
|
-
/**
|
|
29
|
-
* Returns whether a given collection is empty.
|
|
30
|
-
*/
|
|
17
|
+
/** Returns whether a given collection is empty. */
|
|
31
18
|
export declare function isEmpty<T, U extends object>(x: ArrayLike<T> | Set<T> | Map<U, T>): boolean;
|
|
32
19
|
/**
|
|
33
|
-
*
|
|
20
|
+
* Returns the given value as an array. An empty value gives an empty array.
|
|
34
21
|
*
|
|
35
22
|
* @example
|
|
36
23
|
* ```typescript
|
|
@@ -41,7 +28,20 @@ export declare function isEmpty<T, U extends object>(x: ArrayLike<T> | Set<T> |
|
|
|
41
28
|
*/
|
|
42
29
|
export declare function asArray<T>(value?: T | T[]): T[];
|
|
43
30
|
/**
|
|
44
|
-
*
|
|
31
|
+
* Returns whether two collections hold the same items, in the same order and
|
|
32
|
+
* by identity. Two empty values match; an empty value differs from a
|
|
33
|
+
* collection.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* sameItems([a, b], [a, b]); // true
|
|
38
|
+
* sameItems([a, b], [b, a]); // false
|
|
39
|
+
* sameItems(null, undefined); // true
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare function sameItems<T>(a: ArrayLike<T> | null | undefined, b: ArrayLike<T> | null | undefined): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Splits an array in two with a predicate: matching items first.
|
|
45
45
|
*
|
|
46
46
|
* @example
|
|
47
47
|
* ```typescript
|
|
@@ -20,6 +20,20 @@ export function asArray(value) {
|
|
|
20
20
|
return [];
|
|
21
21
|
return Array.isArray(value) ? value : [value];
|
|
22
22
|
}
|
|
23
|
+
export function sameItems(a, b) {
|
|
24
|
+
if (a == null || b == null) {
|
|
25
|
+
return a == null && b == null;
|
|
26
|
+
}
|
|
27
|
+
if (a.length !== b.length) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
for (let i = 0; i < a.length; i++) {
|
|
31
|
+
if (a[i] !== b[i]) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
23
37
|
export function partition(array, isTruthy) {
|
|
24
38
|
const truthy = [];
|
|
25
39
|
const falsy = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/internals/utils/arrays.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/internals/utils/arrays.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,OAAO,CAAI,GAAQ;IACjC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAM,CAAC;AACxB,CAAC;AAGD,MAAM,UAAU,MAAM,CAAI,GAAQ;IAChC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAM,CAAC;AACzB,CAAC;AAaD,MAAM,SAAS,CAAC,CAAC,KAAK,CAAI,GAAQ,EAAE,IAAY;IAC9C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1C,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAGD,MAAM,UAAU,OAAO,CACrB,CAAoC;IAEpC,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;AACnD,CAAC;AAYD,MAAM,UAAU,OAAO,CAAI,KAAe;IACxC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAcD,MAAM,UAAU,SAAS,CACvB,CAAkC,EAClC,CAAkC;IAElC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAYD,MAAM,UAAU,SAAS,CACvB,KAAU,EACV,QAA+B;IAE/B,MAAM,MAAM,GAAQ,EAAE,CAAC;IACvB,MAAM,KAAK,GAAQ,EAAE,CAAC;IAEtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC","sourcesContent":["/** Returns the first element, typed as `T` even for an empty array. */\nexport function firstOf<T>(arr: T[]) {\n return arr.at(0) as T;\n}\n\n/** Returns the last element, typed as `T` even for an empty array. */\nexport function lastOf<T>(arr: T[]) {\n return arr.at(-1) as T;\n}\n\n/**\n * Splits an array into chunks of the given size.\n *\n * @example\n * ```typescript\n * [...chunk([1, 2, 3, 4, 5], 2)]; // [[1, 2], [3, 4], [5]]\n * ```\n *\n * @throws If the `size` parameter is not a safe integer greater than or\n * equal to 1.\n */\nexport function* chunk<T>(arr: T[], size: number): Generator<T[]> {\n if (!Number.isSafeInteger(size) || size < 1) {\n throw new Error('size must be an integer >= 1');\n }\n\n for (let i = 0; i < arr.length; i += size) {\n yield arr.slice(i, i + size);\n }\n}\n\n/** Returns whether a given collection is empty. */\nexport function isEmpty<T, U extends object>(\n x: ArrayLike<T> | Set<T> | Map<U, T>\n): boolean {\n return 'length' in x ? x.length < 1 : x.size < 1;\n}\n\n/**\n * Returns the given value as an array. An empty value gives an empty array.\n *\n * @example\n * ```typescript\n * asArray(5); // [5]\n * asArray([1, 2, 3]); // [1, 2, 3]\n * asArray(undefined); // []\n * ```\n */\nexport function asArray<T>(value?: T | T[]): T[] {\n if (value == null) return [];\n return Array.isArray(value) ? value : [value];\n}\n\n/**\n * Returns whether two collections hold the same items, in the same order and\n * by identity. Two empty values match; an empty value differs from a\n * collection.\n *\n * @example\n * ```typescript\n * sameItems([a, b], [a, b]); // true\n * sameItems([a, b], [b, a]); // false\n * sameItems(null, undefined); // true\n * ```\n */\nexport function sameItems<T>(\n a: ArrayLike<T> | null | undefined,\n b: ArrayLike<T> | null | undefined\n): boolean {\n if (a == null || b == null) {\n return a == null && b == null;\n }\n\n if (a.length !== b.length) {\n return false;\n }\n\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Splits an array in two with a predicate: matching items first.\n *\n * @example\n * ```typescript\n * const [evens, odds] = partition([1, 2, 3, 4], x => x % 2 === 0);\n * console.log(evens); // [2, 4]\n * console.log(odds); // [1, 3]\n * ```\n */\nexport function partition<T>(\n array: T[],\n isTruthy: (value: T) => boolean\n): [truthy: T[], falsy: T[]] {\n const truthy: T[] = [];\n const falsy: T[] = [];\n\n for (const item of array) {\n (isTruthy(item) ? truthy : falsy).push(item);\n }\n\n return [truthy, falsy];\n}\n"]}
|