igniteui-webcomponents 6.1.2 → 6.2.1
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 +59 -0
- package/LICENSE +1 -1
- package/README.md +13 -1
- package/components/accordion/accordion.js +1 -4
- package/components/accordion/accordion.js.map +1 -1
- package/components/accordion/themes/accordion.base.css.js +1 -1
- package/components/accordion/themes/accordion.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.bootstrap.css.js +1 -1
- package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
- package/components/banner/themes/shared/banner.fluent.css.js +1 -1
- package/components/banner/themes/shared/banner.fluent.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/banner/themes/shared/banner.material.css.js +1 -1
- package/components/banner/themes/shared/banner.material.css.js.map +1 -1
- package/components/button/themes/button/button.base.css.js +1 -1
- package/components/button/themes/button/button.base.css.js.map +1 -1
- package/components/button/themes/button/shared/button.common.css.js +1 -1
- package/components/button/themes/button/shared/button.common.css.js.map +1 -1
- package/components/button/themes/button/shared/button.fluent.css.js +1 -1
- package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
- package/components/button/themes/button/shared/button.indigo.css.js +1 -1
- package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
- package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
- package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
- package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.common.css.js +1 -1
- package/components/button-group/themes/shared/button/button.common.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
- package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
- package/components/calendar/calendar.d.ts +1 -1
- package/components/calendar/days-view/days-view.js +1 -3
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/calendar/months-view/months-view.js +1 -3
- package/components/calendar/months-view/months-view.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/bootstrap/year-month-view.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/calendar.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/material/calendar.material.css.js +1 -1
- package/components/calendar/themes/shared/material/calendar.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/calendar/years-view/years-view.js +1 -3
- package/components/calendar/years-view/years-view.js.map +1 -1
- package/components/card/themes/card.actions.base.css.js +1 -1
- package/components/card/themes/card.actions.base.css.js.map +1 -1
- package/components/card/themes/card.content.base.css.js +1 -1
- package/components/card/themes/card.content.base.css.js.map +1 -1
- package/components/card/themes/card.header.base.css.js +1 -1
- package/components/card/themes/card.header.base.css.js.map +1 -1
- package/components/card/themes/content.js +7 -0
- package/components/card/themes/content.js.map +1 -1
- package/components/card/themes/shared/actions/card.actions.bootstrap.css.js +1 -1
- package/components/card/themes/shared/actions/card.actions.bootstrap.css.js.map +1 -1
- package/components/card/themes/shared/actions/card.actions.indigo.css.js +1 -1
- package/components/card/themes/shared/actions/card.actions.indigo.css.js.map +1 -1
- package/components/card/themes/shared/container/card.bootstrap.css.js +1 -1
- package/components/card/themes/shared/container/card.bootstrap.css.js.map +1 -1
- package/components/card/themes/shared/container/card.indigo.css.js +1 -1
- package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
- package/components/card/themes/shared/content/card.content.bootstrap.css.js +1 -1
- package/components/card/themes/shared/content/card.content.bootstrap.css.js.map +1 -1
- package/components/card/themes/shared/content/card.content.indigo.css.d.ts +1 -0
- package/components/card/themes/shared/content/card.content.indigo.css.js +3 -0
- package/components/card/themes/shared/content/card.content.indigo.css.js.map +1 -0
- package/components/card/themes/shared/header/card.header.fluent.css.js +1 -1
- package/components/card/themes/shared/header/card.header.fluent.css.js.map +1 -1
- package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
- package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
- package/components/carousel/carousel-indicator.d.ts +1 -1
- package/components/carousel/carousel-indicator.js.map +1 -1
- package/components/carousel/carousel-slide.d.ts +3 -3
- package/components/carousel/carousel-slide.js +7 -13
- package/components/carousel/carousel-slide.js.map +1 -1
- package/components/carousel/carousel.d.ts +39 -38
- package/components/carousel/carousel.js +160 -156
- 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/checkbox/checkbox-base.d.ts +3 -5
- package/components/checkbox/checkbox-base.js +15 -21
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/checkbox/checkbox.d.ts +3 -4
- package/components/checkbox/checkbox.js +18 -17
- package/components/checkbox/checkbox.js.map +1 -1
- package/components/checkbox/switch.d.ts +0 -1
- package/components/checkbox/switch.js +7 -10
- package/components/checkbox/switch.js.map +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js +1 -1
- package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/dark/switch/switch.fluent.css.js +1 -1
- package/components/checkbox/themes/dark/switch/switch.fluent.css.js.map +1 -1
- package/components/checkbox/themes/dark/switch/switch.indigo.css.js +1 -1
- package/components/checkbox/themes/dark/switch/switch.indigo.css.js.map +1 -1
- package/components/checkbox/themes/dark/switch/switch.material.css.js +1 -1
- package/components/checkbox/themes/dark/switch/switch.material.css.js.map +1 -1
- package/components/checkbox/themes/light/switch/switch.bootstrap.css.js +1 -1
- package/components/checkbox/themes/light/switch/switch.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/light/switch/switch.fluent.css.js +1 -1
- package/components/checkbox/themes/light/switch/switch.fluent.css.js.map +1 -1
- package/components/checkbox/themes/light/switch/switch.indigo.css.js +1 -1
- package/components/checkbox/themes/light/switch/switch.indigo.css.js.map +1 -1
- package/components/checkbox/themes/light/switch/switch.material.css.js +1 -1
- package/components/checkbox/themes/light/switch/switch.material.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.common.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.common.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/checkbox/checkbox.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.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.common.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.common.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/chip/chip.d.ts +11 -11
- package/components/chip/chip.js +61 -65
- package/components/chip/chip.js.map +1 -1
- package/components/chip/themes/chip.base.css.js +1 -1
- package/components/chip/themes/chip.base.css.js.map +1 -1
- package/components/chip/themes/shared/chip.indigo.css.js +1 -1
- package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
- package/components/combo/combo.d.ts +3 -3
- package/components/combo/combo.js +12 -6
- package/components/combo/combo.js.map +1 -1
- package/components/combo/controllers/navigation.js +1 -1
- package/components/combo/controllers/navigation.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/combo/themes/shared/combo.common.css.js +1 -1
- package/components/combo/themes/shared/combo.common.css.js.map +1 -1
- package/components/combo/themes/shared/combo.fluent.css.js +1 -1
- package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
- package/components/combo/themes/shared/combo.material.css.js +1 -1
- package/components/combo/themes/shared/combo.material.css.js.map +1 -1
- package/components/common/controllers/internals.d.ts +66 -2
- package/components/common/controllers/internals.js +21 -0
- package/components/common/controllers/internals.js.map +1 -1
- package/components/common/controllers/key-bindings.js +4 -3
- package/components/common/controllers/key-bindings.js.map +1 -1
- package/components/common/controllers/slot.d.ts +87 -0
- package/components/common/controllers/slot.js +75 -0
- package/components/common/controllers/slot.js.map +1 -0
- package/components/common/mixins/forms/associated.d.ts +1 -1
- package/components/common/mixins/forms/associated.js +91 -36
- package/components/common/mixins/forms/associated.js.map +1 -1
- package/components/common/mixins/forms/form-transformers.d.ts +21 -0
- package/components/common/mixins/forms/form-transformers.js +64 -0
- package/components/common/mixins/forms/form-transformers.js.map +1 -0
- package/components/common/mixins/forms/form-value.d.ts +7 -36
- package/components/common/mixins/forms/form-value.js +2 -64
- package/components/common/mixins/forms/form-value.js.map +1 -1
- package/components/common/mixins/forms/types.d.ts +19 -10
- package/components/common/mixins/forms/types.js +2 -1
- package/components/common/mixins/forms/types.js.map +1 -1
- package/components/common/util.d.ts +20 -0
- package/components/common/util.js +59 -1
- package/components/common/util.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +1 -3
- package/components/date-picker/date-picker.js +13 -15
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
- package/components/date-picker/themes/dark/date-picker.indigo.css.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-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.material.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.material.css.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 +2 -4
- package/components/date-range-picker/date-range-picker.js +19 -27
- package/components/date-range-picker/date-range-picker.js.map +1 -1
- 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/themes/dark/date-range-picker.indigo.css.js +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.material.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.material.css.js.map +1 -1
- package/components/date-time-input/date-time-input.d.ts +1 -2
- package/components/date-time-input/date-time-input.js +8 -8
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/dialog/dialog.d.ts +23 -25
- package/components/dialog/dialog.js +108 -115
- package/components/dialog/dialog.js.map +1 -1
- package/components/dialog/themes/dark/dialog.bootstrap.css.js +1 -1
- package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -1
- package/components/dialog/themes/dialog.base.css.js +1 -1
- package/components/dialog/themes/dialog.base.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
- package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
- package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
- package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
- package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-group.base.css.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/shared/dropdown.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
- package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js +1 -1
- package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js.map +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.common.css.js +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.common.css.js.map +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
- package/components/expansion-panel/expansion-panel.d.ts +12 -14
- package/components/expansion-panel/expansion-panel.js +43 -57
- package/components/expansion-panel/expansion-panel.js.map +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
- package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
- package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
- package/components/file-input/file-input.d.ts +1 -7
- package/components/file-input/file-input.js +13 -21
- package/components/file-input/file-input.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/file-input/themes/shared/file-input.material.css.js +1 -1
- package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
- package/components/input/input.d.ts +1 -8
- package/components/input/input.js +16 -23
- package/components/input/input.js.map +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/shared/input.common.css.js +1 -1
- package/components/input/themes/shared/input.common.css.js.map +1 -1
- package/components/input/themes/shared/input.fluent.css.js +1 -1
- package/components/input/themes/shared/input.fluent.css.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/header.base.css.js +1 -1
- package/components/list/themes/header.base.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/list/themes/shared/header/list-header.indigo.css.js +1 -1
- package/components/list/themes/shared/header/list-header.indigo.css.js.map +1 -1
- package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
- package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
- package/components/mask-input/mask-input-base.js +1 -0
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +2 -3
- package/components/mask-input/mask-input.js +5 -8
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/nav-drawer/nav-drawer-item.d.ts +3 -4
- package/components/nav-drawer/nav-drawer-item.js +15 -18
- package/components/nav-drawer/nav-drawer-item.js.map +1 -1
- package/components/nav-drawer/nav-drawer.d.ts +1 -2
- package/components/nav-drawer/nav-drawer.js +9 -11
- package/components/nav-drawer/nav-drawer.js.map +1 -1
- package/components/nav-drawer/themes/container.base.css.js +1 -1
- package/components/nav-drawer/themes/container.base.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js +1 -1
- package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/item/item.fluent.css.js +1 -1
- package/components/nav-drawer/themes/shared/item/item.fluent.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
- package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/item/item.material.css.js +1 -1
- package/components/nav-drawer/themes/shared/item/item.material.css.js.map +1 -1
- package/components/navbar/themes/navbar.base.css.js +1 -1
- package/components/navbar/themes/navbar.base.css.js.map +1 -1
- package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
- package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
- package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
- package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
- package/components/popover/popover.d.ts +17 -16
- package/components/popover/popover.js +81 -91
- package/components/popover/popover.js.map +1 -1
- package/components/progress/base.d.ts +8 -8
- package/components/progress/base.js +19 -23
- package/components/progress/base.js.map +1 -1
- package/components/progress/circular-gradient.js.map +1 -1
- package/components/progress/circular-progress.d.ts +3 -4
- package/components/progress/circular-progress.js +15 -18
- package/components/progress/circular-progress.js.map +1 -1
- package/components/progress/linear-progress.d.ts +1 -0
- package/components/progress/linear-progress.js +5 -1
- package/components/progress/linear-progress.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
- package/components/radio/radio.d.ts +3 -5
- package/components/radio/radio.js +33 -31
- package/components/radio/radio.js.map +1 -1
- package/components/radio/themes/dark/radio.fluent.css.js +1 -1
- package/components/radio/themes/dark/radio.fluent.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.common.css.js +1 -1
- package/components/radio/themes/shared/radio.common.css.js.map +1 -1
- package/components/radio/themes/shared/radio.fluent.css.js +1 -1
- package/components/radio/themes/shared/radio.fluent.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/themes/shared/radio.material.css.js +1 -1
- package/components/radio/themes/shared/radio.material.css.js.map +1 -1
- package/components/radio-group/radio-group.d.ts +4 -4
- package/components/radio-group/radio-group.js +24 -21
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/radio-group/themes/radio-group.base.css.js +1 -1
- package/components/radio-group/themes/radio-group.base.css.js.map +1 -1
- package/components/radio-group/themes/shared/radio-group.bootstrap.css.js +1 -1
- package/components/radio-group/themes/shared/radio-group.bootstrap.css.js.map +1 -1
- package/components/radio-group/themes/shared/radio-group.fluent.css.js +1 -1
- package/components/radio-group/themes/shared/radio-group.fluent.css.js.map +1 -1
- package/components/radio-group/themes/shared/radio-group.indigo.css.js +1 -1
- package/components/radio-group/themes/shared/radio-group.indigo.css.js.map +1 -1
- package/components/radio-group/themes/shared/radio-group.material.css.js +1 -1
- package/components/radio-group/themes/shared/radio-group.material.css.js.map +1 -1
- package/components/rating/rating.d.ts +1 -2
- package/components/rating/rating.js +4 -4
- package/components/rating/rating.js.map +1 -1
- package/components/rating/themes/rating.base.css.js +1 -1
- package/components/rating/themes/rating.base.css.js.map +1 -1
- package/components/rating/themes/shared/rating.indigo.css.js +1 -1
- package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
- package/components/resize-container/resize-container.d.ts +1 -1
- package/components/select/select.d.ts +35 -38
- package/components/select/select.js +138 -147
- package/components/select/select.js.map +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/light/select.bootstrap.css.js +1 -1
- package/components/select/themes/light/select.bootstrap.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/select/themes/shared/select.common.css.js +1 -1
- package/components/select/themes/shared/select.common.css.js.map +1 -1
- package/components/select/themes/shared/select.fluent.css.js +1 -1
- package/components/select/themes/shared/select.fluent.css.js.map +1 -1
- package/components/select/themes/shared/select.indigo.css.js +1 -1
- package/components/select/themes/shared/select.indigo.css.js.map +1 -1
- package/components/select/themes/shared/select.material.css.js +1 -1
- package/components/select/themes/shared/select.material.css.js.map +1 -1
- package/components/slider/slider-base.js +0 -1
- package/components/slider/slider-base.js.map +1 -1
- package/components/slider/slider-label.js.map +1 -1
- package/components/slider/slider.d.ts +1 -2
- package/components/slider/slider.js +5 -2
- package/components/slider/slider.js.map +1 -1
- package/components/slider/themes/shared/slider.common.css.js +1 -1
- package/components/slider/themes/shared/slider.common.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/shared/snackbar.indigo.css.js +1 -1
- package/components/snackbar/themes/shared/snackbar.indigo.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/stepper/step.d.ts +1 -1
- package/components/tabs/tabs.js +0 -1
- package/components/tabs/tabs.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/textarea/textarea.d.ts +14 -21
- package/components/textarea/textarea.js +66 -90
- 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/textarea/themes/textarea.base.css.js +1 -1
- package/components/textarea/themes/textarea.base.css.js.map +1 -1
- package/components/tile-manager/position.js +2 -1
- package/components/tile-manager/position.js.map +1 -1
- package/components/tile-manager/resize-state.js +1 -1
- package/components/tile-manager/resize-state.js.map +1 -1
- package/components/tile-manager/tile.d.ts +8 -12
- package/components/tile-manager/tile.js +16 -37
- package/components/tile-manager/tile.js.map +1 -1
- package/components/toast/themes/shared/toast.bootstrap.css.js +1 -1
- package/components/toast/themes/shared/toast.bootstrap.css.js.map +1 -1
- package/components/toast/themes/shared/toast.common.css.js +1 -1
- package/components/toast/themes/shared/toast.common.css.js.map +1 -1
- package/components/toast/themes/shared/toast.fluent.css.js +1 -1
- package/components/toast/themes/shared/toast.fluent.css.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/tooltip/themes/tooltip.base.css.js +1 -1
- package/components/tooltip/themes/tooltip.base.css.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/themes/shared/item.common.css.js +1 -1
- package/components/tree/themes/shared/item.common.css.js.map +1 -1
- package/components/tree/themes/shared/item.indigo.css.js +1 -1
- package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
- package/components/tree/themes/shared/item.material.css.js +1 -1
- package/components/tree/themes/shared/item.material.css.js.map +1 -1
- package/components/tree/tree.js +3 -1
- package/components/tree/tree.js.map +1 -1
- package/components/tree/tree.navigation.js +3 -3
- package/components/tree/tree.navigation.js.map +1 -1
- package/components/tree/tree.selection.js +6 -2
- package/components/tree/tree.selection.js.map +1 -1
- package/components/validation-container/validation-container.d.ts +2 -1
- package/components/validation-container/validation-container.js +19 -14
- package/components/validation-container/validation-container.js.map +1 -1
- package/custom-elements.json +9456 -6460
- package/igniteui-webcomponents.css-data.json +1 -1
- package/igniteui-webcomponents.html-data.json +1 -1
- package/package.json +1 -1
- package/themes/dark/bootstrap.css +1 -1
- package/themes/dark/fluent.css +1 -1
- package/themes/dark/indigo.css +1 -1
- package/themes/dark/material.css +1 -1
- package/themes/light/bootstrap.css +1 -1
- package/themes/light/fluent.css +1 -1
- package/themes/light/indigo.css +1 -1
- package/themes/light/material.css +1 -1
- package/web-types.json +2 -2
|
@@ -6,7 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { ContextProvider } from '@lit/context';
|
|
8
8
|
import { html, LitElement, nothing } from 'lit';
|
|
9
|
-
import { property, queryAll,
|
|
9
|
+
import { property, queryAll, state } from 'lit/decorators.js';
|
|
10
|
+
import { cache } from 'lit/directives/cache.js';
|
|
10
11
|
import { createRef, ref } from 'lit/directives/ref.js';
|
|
11
12
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
12
13
|
import { addThemingController } from '../../theming/theming-controller.js';
|
|
@@ -16,11 +17,12 @@ import { addGesturesController, } from '../common/controllers/gestures.js';
|
|
|
16
17
|
import { addInternalsController } from '../common/controllers/internals.js';
|
|
17
18
|
import { addKeybindings, arrowLeft, arrowRight, endKey, homeKey, } from '../common/controllers/key-bindings.js';
|
|
18
19
|
import { createMutationController, } from '../common/controllers/mutation-observer.js';
|
|
20
|
+
import { addSlotController, setSlots, } from '../common/controllers/slot.js';
|
|
19
21
|
import { watch } from '../common/decorators/watch.js';
|
|
20
22
|
import { registerComponent } from '../common/definitions/register.js';
|
|
21
23
|
import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
|
|
22
24
|
import { partMap } from '../common/part-map.js';
|
|
23
|
-
import { addSafeEventListener, asNumber,
|
|
25
|
+
import { addSafeEventListener, asNumber, findElementFromEventPath, first, formatString, isEmpty, isLTR, last, wrap, } from '../common/util.js';
|
|
24
26
|
import IgcIconComponent from '../icon/icon.js';
|
|
25
27
|
import IgcCarouselIndicatorComponent from './carousel-indicator.js';
|
|
26
28
|
import IgcCarouselIndicatorContainerComponent from './carousel-indicator-container.js';
|
|
@@ -28,40 +30,32 @@ import IgcCarouselSlideComponent from './carousel-slide.js';
|
|
|
28
30
|
import { styles } from './themes/carousel.base.css.js';
|
|
29
31
|
import { all } from './themes/container.js';
|
|
30
32
|
import { styles as shared } from './themes/shared/carousel.common.css.js';
|
|
33
|
+
let nextId = 1;
|
|
34
|
+
const Slots = setSlots('indicator', 'previous-button', 'next-button');
|
|
31
35
|
class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
32
36
|
static register() {
|
|
33
37
|
registerComponent(IgcCarouselComponent, IgcCarouselIndicatorComponent, IgcCarouselIndicatorContainerComponent, IgcCarouselSlideComponent, IgcIconComponent, IgcButtonComponent);
|
|
34
38
|
}
|
|
35
|
-
get
|
|
36
|
-
return this._projectedIndicators
|
|
39
|
+
get _hasProjectedIndicators() {
|
|
40
|
+
return !isEmpty(this._projectedIndicators);
|
|
37
41
|
}
|
|
38
|
-
get
|
|
42
|
+
get _showIndicatorsLabel() {
|
|
39
43
|
return this.total > this.maximumIndicatorsCount;
|
|
40
44
|
}
|
|
41
|
-
get
|
|
45
|
+
get _nextIndex() {
|
|
42
46
|
return wrap(0, this.total - 1, this.current + 1);
|
|
43
47
|
}
|
|
44
|
-
get
|
|
48
|
+
get _previousIndex() {
|
|
45
49
|
return wrap(0, this.total - 1, this.current - 1);
|
|
46
50
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (activeSlides.length <= 1) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
const idx = this.slides.indexOf(added.length ? last(added).node : last(attributes).node);
|
|
53
|
-
for (const [i, slide] of this.slides.entries()) {
|
|
54
|
-
if (slide.active && i !== idx) {
|
|
55
|
-
slide.active = false;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
this.activateSlide(this.slides[idx]);
|
|
51
|
+
get slides() {
|
|
52
|
+
return Array.from(this._slides);
|
|
59
53
|
}
|
|
60
54
|
get total() {
|
|
61
|
-
return this.
|
|
55
|
+
return this._slides.length;
|
|
62
56
|
}
|
|
63
57
|
get current() {
|
|
64
|
-
return Math.max(0, this.
|
|
58
|
+
return Math.max(0, this._slides.indexOf(this._activeSlide));
|
|
65
59
|
}
|
|
66
60
|
get isPlaying() {
|
|
67
61
|
return this._playing;
|
|
@@ -69,22 +63,30 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
69
63
|
get isPaused() {
|
|
70
64
|
return this._paused;
|
|
71
65
|
}
|
|
72
|
-
|
|
66
|
+
_contextChanged() {
|
|
73
67
|
this._context.setValue(this, true);
|
|
74
68
|
}
|
|
75
|
-
|
|
69
|
+
_intervalChange() {
|
|
76
70
|
if (!this.isPlaying) {
|
|
77
71
|
this._playing = true;
|
|
78
72
|
}
|
|
79
|
-
this.
|
|
73
|
+
this._restartInterval();
|
|
80
74
|
}
|
|
81
75
|
constructor() {
|
|
82
76
|
super();
|
|
83
|
-
this._carouselId = `igc-carousel-${
|
|
77
|
+
this._carouselId = `igc-carousel-${nextId++}`;
|
|
84
78
|
this._paused = false;
|
|
85
79
|
this._hasKeyboardInteractionOnIndicators = false;
|
|
86
80
|
this._hasPointerInteraction = false;
|
|
87
81
|
this._hasInnerFocus = false;
|
|
82
|
+
this._slides = [];
|
|
83
|
+
this._projectedIndicators = [];
|
|
84
|
+
this._playing = false;
|
|
85
|
+
this._slots = addSlotController(this, {
|
|
86
|
+
slots: Slots,
|
|
87
|
+
onChange: this._handleSlotChange,
|
|
88
|
+
initial: true,
|
|
89
|
+
});
|
|
88
90
|
this._context = new ContextProvider(this, {
|
|
89
91
|
context: carouselContext,
|
|
90
92
|
initialValue: this,
|
|
@@ -93,7 +95,6 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
93
95
|
this._indicatorsContainerRef = createRef();
|
|
94
96
|
this._prevButtonRef = createRef();
|
|
95
97
|
this._nextButtonRef = createRef();
|
|
96
|
-
this._playing = false;
|
|
97
98
|
this.disableLoop = false;
|
|
98
99
|
this.disablePauseOnInteraction = false;
|
|
99
100
|
this.hideNavigation = false;
|
|
@@ -111,34 +112,31 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
111
112
|
},
|
|
112
113
|
});
|
|
113
114
|
addThemingController(this, all);
|
|
114
|
-
addSafeEventListener(this, 'pointerenter', this.
|
|
115
|
-
addSafeEventListener(this, 'pointerleave', this.
|
|
116
|
-
addSafeEventListener(this, 'focusin', this.
|
|
117
|
-
addSafeEventListener(this, 'focusout', this.
|
|
115
|
+
addSafeEventListener(this, 'pointerenter', this._handlePointerInteraction);
|
|
116
|
+
addSafeEventListener(this, 'pointerleave', this._handlePointerInteraction);
|
|
117
|
+
addSafeEventListener(this, 'focusin', this._handleFocusInteraction);
|
|
118
|
+
addSafeEventListener(this, 'focusout', this._handleFocusInteraction);
|
|
118
119
|
addGesturesController(this, {
|
|
119
120
|
ref: this._carouselSlidesContainerRef,
|
|
120
121
|
touchOnly: true,
|
|
121
122
|
})
|
|
122
|
-
.set('swipe-left', this.
|
|
123
|
-
.set('swipe-right', this.
|
|
124
|
-
.set('swipe-up', this.
|
|
125
|
-
.set('swipe-down', this.
|
|
123
|
+
.set('swipe-left', this._handleHorizontalSwipe)
|
|
124
|
+
.set('swipe-right', this._handleHorizontalSwipe)
|
|
125
|
+
.set('swipe-up', this._handleVerticalSwipe)
|
|
126
|
+
.set('swipe-down', this._handleVerticalSwipe);
|
|
126
127
|
addKeybindings(this, {
|
|
127
128
|
ref: this._indicatorsContainerRef,
|
|
128
|
-
bindingDefaults: { preventDefault: true },
|
|
129
129
|
})
|
|
130
|
-
.set(arrowLeft, this.
|
|
131
|
-
.set(arrowRight, this.
|
|
132
|
-
.set(homeKey, this.
|
|
133
|
-
.set(endKey, this.
|
|
130
|
+
.set(arrowLeft, this._handleArrowLeft)
|
|
131
|
+
.set(arrowRight, this._handleArrowRight)
|
|
132
|
+
.set(homeKey, this._handleHomeKey)
|
|
133
|
+
.set(endKey, this._handleEndKey);
|
|
134
134
|
addKeybindings(this, {
|
|
135
135
|
ref: this._prevButtonRef,
|
|
136
|
-
|
|
137
|
-
}).setActivateHandler(this.handleNavigationInteractionPrevious);
|
|
136
|
+
}).setActivateHandler(this._handleNavigationInteractionPrevious);
|
|
138
137
|
addKeybindings(this, {
|
|
139
138
|
ref: this._nextButtonRef,
|
|
140
|
-
|
|
141
|
-
}).setActivateHandler(this.handleNavigationInteractionNext);
|
|
139
|
+
}).setActivateHandler(this._handleNavigationInteractionNext);
|
|
142
140
|
createMutationController(this, {
|
|
143
141
|
callback: this._observerCallback,
|
|
144
142
|
filter: [IgcCarouselSlideComponent.tagName],
|
|
@@ -149,64 +147,82 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
149
147
|
},
|
|
150
148
|
});
|
|
151
149
|
}
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
150
|
+
async firstUpdated() {
|
|
151
|
+
await this.updateComplete;
|
|
152
|
+
if (!isEmpty(this._slides)) {
|
|
153
|
+
this._activateSlide(this._slides.findLast((slide) => slide.active) ?? first(this._slides));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
_observerCallback({ changes: { added, attributes }, }) {
|
|
157
|
+
const activeSlides = this._slides.filter((slide) => slide.active);
|
|
158
|
+
if (activeSlides.length <= 1) {
|
|
159
|
+
return;
|
|
155
160
|
}
|
|
161
|
+
const idx = this._slides.indexOf(added.length ? last(added).node : last(attributes).node);
|
|
162
|
+
for (const [i, slide] of this._slides.entries()) {
|
|
163
|
+
if (slide.active && i !== idx) {
|
|
164
|
+
slide.active = false;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
this._activateSlide(this._slides[idx]);
|
|
156
168
|
}
|
|
157
|
-
|
|
158
|
-
|
|
169
|
+
_handleSlotChange(params) {
|
|
170
|
+
if (params.isDefault || params.isInitial) {
|
|
171
|
+
this._slides = this._slots.getAssignedElements('[default]', {
|
|
172
|
+
selector: IgcCarouselSlideComponent.tagName,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
if (params.slot === 'indicator') {
|
|
176
|
+
this._projectedIndicators = this._slots.getAssignedElements('indicator', {
|
|
177
|
+
selector: IgcCarouselIndicatorComponent.tagName,
|
|
178
|
+
});
|
|
179
|
+
}
|
|
159
180
|
}
|
|
160
|
-
|
|
181
|
+
_handlePointerInteraction(event) {
|
|
161
182
|
this._hasPointerInteraction = event.type === 'pointerenter';
|
|
162
183
|
if (!this._hasInnerFocus) {
|
|
163
|
-
this.
|
|
184
|
+
this._handlePauseOnInteraction();
|
|
164
185
|
}
|
|
165
186
|
}
|
|
166
|
-
|
|
187
|
+
_handleFocusInteraction(event) {
|
|
167
188
|
const node = event.relatedTarget;
|
|
168
189
|
if (this.contains(node)) {
|
|
169
190
|
return;
|
|
170
191
|
}
|
|
171
192
|
this._hasInnerFocus = event.type === 'focusin';
|
|
172
193
|
if (!this._hasPointerInteraction) {
|
|
173
|
-
this.
|
|
194
|
+
this._handlePauseOnInteraction();
|
|
174
195
|
}
|
|
175
196
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
this.
|
|
181
|
-
|
|
182
|
-
}
|
|
183
|
-
else {
|
|
184
|
-
this.play();
|
|
185
|
-
this.emitEvent('igcPlaying');
|
|
186
|
-
}
|
|
197
|
+
async _handleIndicatorClick(event) {
|
|
198
|
+
const indicator = findElementFromEventPath(IgcCarouselIndicatorComponent.tagName, event);
|
|
199
|
+
const index = this._hasProjectedIndicators
|
|
200
|
+
? this._projectedIndicators.indexOf(indicator)
|
|
201
|
+
: Array.from(this._defaultIndicators).indexOf(indicator);
|
|
202
|
+
this._handleInteraction(() => this.select(this._slides[index], index > this.current ? 'next' : 'prev'));
|
|
187
203
|
}
|
|
188
|
-
async
|
|
204
|
+
async _handleArrowLeft() {
|
|
189
205
|
this._hasKeyboardInteractionOnIndicators = true;
|
|
190
|
-
this.
|
|
206
|
+
this._handleInteraction(isLTR(this) ? this.prev : this.next);
|
|
191
207
|
}
|
|
192
|
-
async
|
|
208
|
+
async _handleArrowRight() {
|
|
193
209
|
this._hasKeyboardInteractionOnIndicators = true;
|
|
194
|
-
this.
|
|
210
|
+
this._handleInteraction(isLTR(this) ? this.next : this.prev);
|
|
195
211
|
}
|
|
196
|
-
async
|
|
212
|
+
async _handleHomeKey() {
|
|
197
213
|
this._hasKeyboardInteractionOnIndicators = true;
|
|
198
|
-
this.
|
|
214
|
+
this._handleInteraction(() => this.select(isLTR(this) ? first(this._slides) : last(this._slides)));
|
|
199
215
|
}
|
|
200
|
-
async
|
|
216
|
+
async _handleEndKey() {
|
|
201
217
|
this._hasKeyboardInteractionOnIndicators = true;
|
|
202
|
-
this.
|
|
218
|
+
this._handleInteraction(() => this.select(isLTR(this) ? last(this._slides) : first(this._slides)));
|
|
203
219
|
}
|
|
204
|
-
|
|
220
|
+
_handleVerticalSwipe({ data: { direction } }) {
|
|
205
221
|
if (this.vertical) {
|
|
206
|
-
this.
|
|
222
|
+
this._handleInteraction(direction === 'up' ? this.next : this.prev);
|
|
207
223
|
}
|
|
208
224
|
}
|
|
209
|
-
|
|
225
|
+
_handleHorizontalSwipe({ data: { direction } }) {
|
|
210
226
|
if (!this.vertical) {
|
|
211
227
|
const callback = () => {
|
|
212
228
|
if (isLTR(this)) {
|
|
@@ -214,68 +230,75 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
214
230
|
}
|
|
215
231
|
return direction === 'left' ? this.prev : this.next;
|
|
216
232
|
};
|
|
217
|
-
this.
|
|
233
|
+
this._handleInteraction(callback());
|
|
218
234
|
}
|
|
219
235
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
const index = this.hasProjectedIndicators
|
|
223
|
-
? this._projectedIndicators.indexOf(indicator)
|
|
224
|
-
: Array.from(this._defaultIndicators).indexOf(indicator);
|
|
225
|
-
this.handleInteraction(() => this.select(this.slides[index], index > this.current ? 'next' : 'prev'));
|
|
226
|
-
}
|
|
227
|
-
handleNavigationInteractionNext() {
|
|
228
|
-
this.handleInteraction(this.next);
|
|
236
|
+
_handleNavigationInteractionNext() {
|
|
237
|
+
this._handleInteraction(this.next);
|
|
229
238
|
}
|
|
230
|
-
|
|
231
|
-
this.
|
|
239
|
+
_handleNavigationInteractionPrevious() {
|
|
240
|
+
this._handleInteraction(this.prev);
|
|
232
241
|
}
|
|
233
|
-
async
|
|
242
|
+
async _handleInteraction(callback) {
|
|
234
243
|
if (this.interval) {
|
|
235
|
-
this.
|
|
244
|
+
this._resetInterval();
|
|
236
245
|
}
|
|
237
246
|
if (await callback.call(this)) {
|
|
238
247
|
this.emitEvent('igcSlideChanged', { detail: this.current });
|
|
239
248
|
}
|
|
240
249
|
if (this.interval) {
|
|
241
|
-
this.
|
|
250
|
+
this._restartInterval();
|
|
242
251
|
}
|
|
243
252
|
}
|
|
244
|
-
|
|
253
|
+
_handlePauseOnInteraction() {
|
|
254
|
+
if (!this.interval || this.disablePauseOnInteraction)
|
|
255
|
+
return;
|
|
256
|
+
if (this.isPlaying) {
|
|
257
|
+
this.pause();
|
|
258
|
+
this.emitEvent('igcPaused');
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
this.play();
|
|
262
|
+
this.emitEvent('igcPlaying');
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
_activateSlide(slide) {
|
|
245
266
|
if (this._activeSlide) {
|
|
246
267
|
this._activeSlide.active = false;
|
|
247
268
|
}
|
|
248
269
|
this._activeSlide = slide;
|
|
249
270
|
this._activeSlide.active = true;
|
|
250
271
|
if (this._hasKeyboardInteractionOnIndicators) {
|
|
251
|
-
this.
|
|
272
|
+
this._hasProjectedIndicators
|
|
252
273
|
? this._projectedIndicators[this.current].focus()
|
|
253
274
|
: this._defaultIndicators[this.current].focus();
|
|
254
275
|
this._hasKeyboardInteractionOnIndicators = false;
|
|
255
276
|
}
|
|
256
277
|
}
|
|
257
|
-
|
|
258
|
-
for (const [idx, slide] of this.
|
|
278
|
+
_updateProjectedIndicators() {
|
|
279
|
+
for (const [idx, slide] of this._slides.entries()) {
|
|
259
280
|
const indicator = this._projectedIndicators[idx];
|
|
260
281
|
indicator.active = slide.active;
|
|
261
282
|
indicator.index = idx;
|
|
262
|
-
|
|
283
|
+
}
|
|
284
|
+
if (this._activeSlide) {
|
|
285
|
+
this.setAttribute('aria-controls', this._activeSlide.id);
|
|
263
286
|
}
|
|
264
287
|
}
|
|
265
|
-
|
|
288
|
+
_resetInterval() {
|
|
266
289
|
if (this._lastInterval) {
|
|
267
290
|
clearInterval(this._lastInterval);
|
|
268
291
|
this._lastInterval = null;
|
|
269
292
|
}
|
|
270
293
|
}
|
|
271
|
-
|
|
272
|
-
this.
|
|
294
|
+
_restartInterval() {
|
|
295
|
+
this._resetInterval();
|
|
273
296
|
if (asNumber(this.interval) > 0) {
|
|
274
297
|
this._lastInterval = setInterval(() => {
|
|
275
298
|
if (this.isPlaying &&
|
|
276
299
|
this.total &&
|
|
277
|
-
!(this.disableLoop && this.
|
|
278
|
-
this.select(this.slides[this.
|
|
300
|
+
!(this.disableLoop && this._nextIndex === 0)) {
|
|
301
|
+
this.select(this.slides[this._nextIndex], 'next');
|
|
279
302
|
this.emitEvent('igcSlideChanged', { detail: this.current });
|
|
280
303
|
}
|
|
281
304
|
else {
|
|
@@ -284,18 +307,18 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
284
307
|
}, this.interval);
|
|
285
308
|
}
|
|
286
309
|
}
|
|
287
|
-
async
|
|
310
|
+
async _animateSlides(nextSlide, currentSlide, dir) {
|
|
288
311
|
if (dir === 'next') {
|
|
289
312
|
currentSlide.previous = true;
|
|
290
313
|
currentSlide.toggleAnimation('out');
|
|
291
|
-
this.
|
|
314
|
+
this._activateSlide(nextSlide);
|
|
292
315
|
await nextSlide.toggleAnimation('in');
|
|
293
316
|
currentSlide.previous = false;
|
|
294
317
|
}
|
|
295
318
|
else {
|
|
296
319
|
currentSlide.previous = true;
|
|
297
320
|
currentSlide.toggleAnimation('in', 'reverse');
|
|
298
|
-
this.
|
|
321
|
+
this._activateSlide(nextSlide);
|
|
299
322
|
await nextSlide.toggleAnimation('out', 'reverse');
|
|
300
323
|
currentSlide.previous = false;
|
|
301
324
|
}
|
|
@@ -304,49 +327,49 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
304
327
|
if (!this.isPlaying) {
|
|
305
328
|
this._paused = false;
|
|
306
329
|
this._playing = true;
|
|
307
|
-
this.
|
|
330
|
+
this._restartInterval();
|
|
308
331
|
}
|
|
309
332
|
}
|
|
310
333
|
pause() {
|
|
311
334
|
if (this.isPlaying) {
|
|
312
335
|
this._playing = false;
|
|
313
336
|
this._paused = true;
|
|
314
|
-
this.
|
|
337
|
+
this._resetInterval();
|
|
315
338
|
}
|
|
316
339
|
}
|
|
317
340
|
async next() {
|
|
318
|
-
if (this.disableLoop && this.
|
|
341
|
+
if (this.disableLoop && this._nextIndex === 0) {
|
|
319
342
|
this.pause();
|
|
320
343
|
return false;
|
|
321
344
|
}
|
|
322
|
-
return await this.select(this.
|
|
345
|
+
return await this.select(this._slides[this._nextIndex], 'next');
|
|
323
346
|
}
|
|
324
347
|
async prev() {
|
|
325
|
-
if (this.disableLoop && this.
|
|
348
|
+
if (this.disableLoop && this._previousIndex === this.total - 1) {
|
|
326
349
|
this.pause();
|
|
327
350
|
return false;
|
|
328
351
|
}
|
|
329
|
-
return await this.select(this.
|
|
352
|
+
return await this.select(this._slides[this._previousIndex], 'prev');
|
|
330
353
|
}
|
|
331
354
|
async select(slideOrIndex, animationDirection) {
|
|
332
355
|
let index;
|
|
333
356
|
let slide;
|
|
334
357
|
if (typeof slideOrIndex === 'number') {
|
|
335
358
|
index = slideOrIndex;
|
|
336
|
-
slide = this.
|
|
359
|
+
slide = this._slides.at(index);
|
|
337
360
|
}
|
|
338
361
|
else {
|
|
339
362
|
slide = slideOrIndex;
|
|
340
|
-
index = this.
|
|
363
|
+
index = this._slides.indexOf(slide);
|
|
341
364
|
}
|
|
342
365
|
if (index === this.current || index === -1 || !slide) {
|
|
343
366
|
return false;
|
|
344
367
|
}
|
|
345
368
|
const dir = animationDirection ?? (index > this.current ? 'next' : 'prev');
|
|
346
|
-
await this.
|
|
369
|
+
await this._animateSlides(slide, this._activeSlide, dir);
|
|
347
370
|
return true;
|
|
348
371
|
}
|
|
349
|
-
|
|
372
|
+
_renderNavigation() {
|
|
350
373
|
return html `
|
|
351
374
|
<igc-button
|
|
352
375
|
${ref(this._prevButtonRef)}
|
|
@@ -355,7 +378,7 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
355
378
|
aria-label="Previous slide"
|
|
356
379
|
aria-controls=${this._carouselId}
|
|
357
380
|
?disabled=${this.disableLoop && this.current === 0}
|
|
358
|
-
@click=${this.
|
|
381
|
+
@click=${this._handleNavigationInteractionPrevious}
|
|
359
382
|
>
|
|
360
383
|
<slot name="previous-button">
|
|
361
384
|
<igc-icon
|
|
@@ -365,6 +388,7 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
365
388
|
></igc-icon>
|
|
366
389
|
</slot>
|
|
367
390
|
</igc-button>
|
|
391
|
+
|
|
368
392
|
<igc-button
|
|
369
393
|
${ref(this._nextButtonRef)}
|
|
370
394
|
type="button"
|
|
@@ -372,7 +396,7 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
372
396
|
aria-label="Next slide"
|
|
373
397
|
aria-controls=${this._carouselId}
|
|
374
398
|
?disabled=${this.disableLoop && this.current === this.total - 1}
|
|
375
|
-
@click=${this.
|
|
399
|
+
@click=${this._handleNavigationInteractionNext}
|
|
376
400
|
>
|
|
377
401
|
<slot name="next-button">
|
|
378
402
|
<igc-icon
|
|
@@ -384,8 +408,8 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
384
408
|
</igc-button>
|
|
385
409
|
`;
|
|
386
410
|
}
|
|
387
|
-
*
|
|
388
|
-
for (const [i, slide] of this.
|
|
411
|
+
*_renderIndicators() {
|
|
412
|
+
for (const [i, slide] of this._slides.entries()) {
|
|
389
413
|
const forward = slide.active ? 'visible' : 'hidden';
|
|
390
414
|
const backward = slide.active ? 'hidden' : 'visible';
|
|
391
415
|
yield html `
|
|
@@ -407,7 +431,7 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
407
431
|
`;
|
|
408
432
|
}
|
|
409
433
|
}
|
|
410
|
-
|
|
434
|
+
_renderIndicatorContainer() {
|
|
411
435
|
const parts = {
|
|
412
436
|
indicators: true,
|
|
413
437
|
start: this.indicatorsOrientation === 'start',
|
|
@@ -419,20 +443,16 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
419
443
|
role="tablist"
|
|
420
444
|
part=${partMap(parts)}
|
|
421
445
|
>
|
|
422
|
-
<slot
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
>
|
|
427
|
-
${this.hasProjectedIndicators
|
|
428
|
-
? this.updateProjectedIndicators()
|
|
429
|
-
: this.renderIndicators()}
|
|
446
|
+
<slot name="indicator" @click=${this._handleIndicatorClick}>
|
|
447
|
+
${cache(this._hasProjectedIndicators
|
|
448
|
+
? this._updateProjectedIndicators()
|
|
449
|
+
: this._renderIndicators())}
|
|
430
450
|
</slot>
|
|
431
451
|
</div>
|
|
432
452
|
</igc-carousel-indicator-container>
|
|
433
453
|
`;
|
|
434
454
|
}
|
|
435
|
-
|
|
455
|
+
_renderLabel() {
|
|
436
456
|
const parts = {
|
|
437
457
|
label: true,
|
|
438
458
|
indicators: true,
|
|
@@ -446,21 +466,19 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
446
466
|
`;
|
|
447
467
|
}
|
|
448
468
|
render() {
|
|
469
|
+
const hasNoIndicators = this.hideIndicators || this._showIndicatorsLabel;
|
|
470
|
+
const hasLabel = !this.hideIndicators && this._showIndicatorsLabel;
|
|
449
471
|
return html `
|
|
450
472
|
<section>
|
|
451
|
-
${this.hideNavigation ? nothing : this.
|
|
452
|
-
${
|
|
453
|
-
|
|
454
|
-
: this.indicatorTemplate()}
|
|
455
|
-
${!this.hideIndicators && this.showIndicatorsLabel
|
|
456
|
-
? this.labelTemplate()
|
|
457
|
-
: nothing}
|
|
473
|
+
${cache(this.hideNavigation ? nothing : this._renderNavigation())}
|
|
474
|
+
${hasNoIndicators ? nothing : this._renderIndicatorContainer()}
|
|
475
|
+
${hasLabel ? this._renderLabel() : nothing}
|
|
458
476
|
<div
|
|
459
477
|
${ref(this._carouselSlidesContainerRef)}
|
|
460
478
|
id=${this._carouselId}
|
|
461
479
|
aria-live=${this.interval && this._playing ? 'off' : 'polite'}
|
|
462
480
|
>
|
|
463
|
-
<slot
|
|
481
|
+
<slot></slot>
|
|
464
482
|
</div>
|
|
465
483
|
</section>
|
|
466
484
|
`;
|
|
@@ -468,23 +486,16 @@ class IgcCarouselComponent extends EventEmitterMixin(LitElement) {
|
|
|
468
486
|
}
|
|
469
487
|
IgcCarouselComponent.styles = [styles, shared];
|
|
470
488
|
IgcCarouselComponent.tagName = 'igc-carousel';
|
|
471
|
-
IgcCarouselComponent.increment = createCounter();
|
|
472
489
|
export default IgcCarouselComponent;
|
|
473
|
-
__decorate([
|
|
474
|
-
queryAll(IgcCarouselIndicatorComponent.tagName)
|
|
475
|
-
], IgcCarouselComponent.prototype, "_defaultIndicators", void 0);
|
|
476
|
-
__decorate([
|
|
477
|
-
queryAssignedElements({
|
|
478
|
-
selector: IgcCarouselIndicatorComponent.tagName,
|
|
479
|
-
slot: 'indicator',
|
|
480
|
-
})
|
|
481
|
-
], IgcCarouselComponent.prototype, "_projectedIndicators", void 0);
|
|
482
490
|
__decorate([
|
|
483
491
|
state()
|
|
484
492
|
], IgcCarouselComponent.prototype, "_activeSlide", void 0);
|
|
485
493
|
__decorate([
|
|
486
494
|
state()
|
|
487
495
|
], IgcCarouselComponent.prototype, "_playing", void 0);
|
|
496
|
+
__decorate([
|
|
497
|
+
queryAll(IgcCarouselIndicatorComponent.tagName)
|
|
498
|
+
], IgcCarouselComponent.prototype, "_defaultIndicators", void 0);
|
|
488
499
|
__decorate([
|
|
489
500
|
property({ type: Boolean, reflect: true, attribute: 'disable-loop' })
|
|
490
501
|
], IgcCarouselComponent.prototype, "disableLoop", void 0);
|
|
@@ -505,7 +516,7 @@ __decorate([
|
|
|
505
516
|
property({ type: Boolean, reflect: true })
|
|
506
517
|
], IgcCarouselComponent.prototype, "vertical", void 0);
|
|
507
518
|
__decorate([
|
|
508
|
-
property({
|
|
519
|
+
property({ attribute: 'indicators-orientation' })
|
|
509
520
|
], IgcCarouselComponent.prototype, "indicatorsOrientation", void 0);
|
|
510
521
|
__decorate([
|
|
511
522
|
property({ attribute: 'indicators-label-format' })
|
|
@@ -514,27 +525,20 @@ __decorate([
|
|
|
514
525
|
property({ attribute: 'slides-label-format' })
|
|
515
526
|
], IgcCarouselComponent.prototype, "slidesLabelFormat", void 0);
|
|
516
527
|
__decorate([
|
|
517
|
-
property({ type: Number
|
|
528
|
+
property({ type: Number })
|
|
518
529
|
], IgcCarouselComponent.prototype, "interval", void 0);
|
|
519
530
|
__decorate([
|
|
520
|
-
property({
|
|
521
|
-
type: Number,
|
|
522
|
-
reflect: false,
|
|
523
|
-
attribute: 'maximum-indicators-count',
|
|
524
|
-
})
|
|
531
|
+
property({ type: Number, attribute: 'maximum-indicators-count' })
|
|
525
532
|
], IgcCarouselComponent.prototype, "maximumIndicatorsCount", void 0);
|
|
526
533
|
__decorate([
|
|
527
534
|
property({ attribute: 'animation-type' })
|
|
528
535
|
], IgcCarouselComponent.prototype, "animationType", void 0);
|
|
529
|
-
__decorate([
|
|
530
|
-
queryAssignedElements({ selector: IgcCarouselSlideComponent.tagName })
|
|
531
|
-
], IgcCarouselComponent.prototype, "slides", void 0);
|
|
532
536
|
__decorate([
|
|
533
537
|
watch('animationType'),
|
|
534
538
|
watch('slidesLabelFormat'),
|
|
535
539
|
watch('indicatorsLabelFormat')
|
|
536
|
-
], IgcCarouselComponent.prototype, "
|
|
540
|
+
], IgcCarouselComponent.prototype, "_contextChanged", null);
|
|
537
541
|
__decorate([
|
|
538
542
|
watch('interval')
|
|
539
|
-
], IgcCarouselComponent.prototype, "
|
|
543
|
+
], IgcCarouselComponent.prototype, "_intervalChange", null);
|
|
540
544
|
//# sourceMappingURL=carousel.js.map
|