igniteui-webcomponents 6.5.1 → 7.0.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 +51 -1
- package/README.md +3 -5
- package/components/avatar/themes/dark/avatar.bootstrap.css.js +1 -1
- package/components/avatar/themes/dark/avatar.bootstrap.css.js.map +1 -1
- package/components/avatar/themes/dark/avatar.fluent.css.js +1 -1
- package/components/avatar/themes/dark/avatar.fluent.css.js.map +1 -1
- package/components/avatar/themes/dark/avatar.indigo.css.js +1 -1
- package/components/avatar/themes/dark/avatar.indigo.css.js.map +1 -1
- package/components/avatar/themes/dark/avatar.material.css.js +1 -1
- package/components/avatar/themes/dark/avatar.material.css.js.map +1 -1
- package/components/avatar/themes/light/avatar.bootstrap.css.js +1 -1
- package/components/avatar/themes/light/avatar.bootstrap.css.js.map +1 -1
- package/components/avatar/themes/light/avatar.fluent.css.js +1 -1
- package/components/avatar/themes/light/avatar.fluent.css.js.map +1 -1
- package/components/avatar/themes/light/avatar.indigo.css.js +1 -1
- package/components/avatar/themes/light/avatar.indigo.css.js.map +1 -1
- package/components/avatar/themes/light/avatar.material.css.js +1 -1
- package/components/avatar/themes/light/avatar.material.css.js.map +1 -1
- package/components/avatar/themes/light/avatar.shared.css.js +1 -1
- package/components/avatar/themes/light/avatar.shared.css.js.map +1 -1
- package/components/badge/badge.d.ts +26 -9
- package/components/badge/badge.js +12 -11
- package/components/badge/badge.js.map +1 -1
- package/components/badge/themes/dark/badge.bootstrap.css.js +1 -1
- package/components/badge/themes/dark/badge.bootstrap.css.js.map +1 -1
- package/components/badge/themes/dark/badge.fluent.css.js +1 -1
- package/components/badge/themes/dark/badge.fluent.css.js.map +1 -1
- package/components/badge/themes/dark/badge.indigo.css.js +1 -1
- package/components/badge/themes/dark/badge.indigo.css.js.map +1 -1
- package/components/badge/themes/dark/badge.material.css.js +1 -1
- package/components/badge/themes/dark/badge.material.css.js.map +1 -1
- package/components/badge/themes/light/badge.bootstrap.css.js +1 -1
- package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
- package/components/badge/themes/light/badge.fluent.css.js +1 -1
- package/components/badge/themes/light/badge.fluent.css.js.map +1 -1
- package/components/badge/themes/light/badge.indigo.css.js +1 -1
- package/components/badge/themes/light/badge.indigo.css.js.map +1 -1
- package/components/badge/themes/light/badge.material.css.js +1 -1
- package/components/badge/themes/light/badge.material.css.js.map +1 -1
- package/components/badge/themes/light/badge.shared.css.js +1 -1
- package/components/badge/themes/light/badge.shared.css.js.map +1 -1
- package/components/banner/themes/dark/banner.bootstrap.css.js +1 -1
- package/components/banner/themes/dark/banner.bootstrap.css.js.map +1 -1
- package/components/banner/themes/dark/banner.fluent.css.js +1 -1
- package/components/banner/themes/dark/banner.fluent.css.js.map +1 -1
- package/components/banner/themes/dark/banner.indigo.css.js +1 -1
- package/components/banner/themes/dark/banner.indigo.css.js.map +1 -1
- package/components/banner/themes/dark/banner.material.css.js +1 -1
- package/components/banner/themes/dark/banner.material.css.js.map +1 -1
- package/components/banner/themes/light/banner.bootstrap.css.js +1 -1
- package/components/banner/themes/light/banner.bootstrap.css.js.map +1 -1
- package/components/banner/themes/light/banner.fluent.css.js +1 -1
- package/components/banner/themes/light/banner.fluent.css.js.map +1 -1
- package/components/banner/themes/light/banner.indigo.css.js +1 -1
- package/components/banner/themes/light/banner.indigo.css.js.map +1 -1
- package/components/banner/themes/light/banner.material.css.js +1 -1
- package/components/banner/themes/light/banner.material.css.js.map +1 -1
- package/components/button/themes/button/dark/button.bootstrap.css.js +1 -1
- package/components/button/themes/button/dark/button.bootstrap.css.js.map +1 -1
- package/components/button/themes/button/dark/button.fluent.css.js +1 -1
- package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
- package/components/button/themes/button/dark/button.indigo.css.js +1 -1
- package/components/button/themes/button/dark/button.indigo.css.js.map +1 -1
- package/components/button/themes/button/dark/button.material.css.js +1 -1
- package/components/button/themes/button/dark/button.material.css.js.map +1 -1
- package/components/button/themes/button/light/button.bootstrap.css.js +1 -1
- package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
- package/components/button/themes/button/light/button.fluent.css.js +1 -1
- package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
- package/components/button/themes/button/light/button.indigo.css.js +1 -1
- package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
- package/components/button/themes/button/light/button.material.css.js +1 -1
- package/components/button/themes/button/light/button.material.css.js.map +1 -1
- package/components/button/themes/button/light/button.shared.css.js +1 -1
- package/components/button/themes/button/light/button.shared.css.js.map +1 -1
- package/components/button/themes/icon-button/dark/icon-button.bootstrap.css.js +1 -1
- package/components/button/themes/icon-button/dark/icon-button.bootstrap.css.js.map +1 -1
- package/components/button/themes/icon-button/dark/icon-button.fluent.css.js +1 -1
- package/components/button/themes/icon-button/dark/icon-button.fluent.css.js.map +1 -1
- package/components/button/themes/icon-button/dark/icon-button.indigo.css.js +1 -1
- package/components/button/themes/icon-button/dark/icon-button.indigo.css.js.map +1 -1
- package/components/button/themes/icon-button/dark/icon-button.material.css.js +1 -1
- package/components/button/themes/icon-button/dark/icon-button.material.css.js.map +1 -1
- package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +1 -1
- package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
- package/components/button/themes/icon-button/light/icon-button.fluent.css.js +1 -1
- package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
- package/components/button/themes/icon-button/light/icon-button.indigo.css.js +1 -1
- package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
- package/components/button/themes/icon-button/light/icon-button.material.css.js +1 -1
- package/components/button/themes/icon-button/light/icon-button.material.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.common.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.common.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/dark/button-group.bootstrap.css.js +1 -1
- package/components/button-group/themes/dark/button-group.bootstrap.css.js.map +1 -1
- package/components/button-group/themes/dark/button-group.fluent.css.js +1 -1
- package/components/button-group/themes/dark/button-group.fluent.css.js.map +1 -1
- package/components/button-group/themes/dark/button-group.indigo.css.js +1 -1
- package/components/button-group/themes/dark/button-group.indigo.css.js.map +1 -1
- package/components/button-group/themes/dark/button-group.material.css.js +1 -1
- package/components/button-group/themes/dark/button-group.material.css.js.map +1 -1
- package/components/button-group/themes/dark/button-group.shared.css.js +1 -1
- package/components/button-group/themes/dark/button-group.shared.css.js.map +1 -1
- package/components/button-group/themes/light/button-group.bootstrap.css.js +1 -1
- package/components/button-group/themes/light/button-group.bootstrap.css.js.map +1 -1
- package/components/button-group/themes/light/button-group.fluent.css.js +1 -1
- package/components/button-group/themes/light/button-group.fluent.css.js.map +1 -1
- package/components/button-group/themes/light/button-group.indigo.css.js +1 -1
- package/components/button-group/themes/light/button-group.indigo.css.js.map +1 -1
- package/components/button-group/themes/light/button-group.material.css.js +1 -1
- package/components/button-group/themes/light/button-group.material.css.js.map +1 -1
- package/components/button-group/themes/light/button-group.shared.css.js +1 -1
- package/components/button-group/themes/light/button-group.shared.css.js.map +1 -1
- package/components/calendar/helpers.d.ts +12 -1
- package/components/calendar/helpers.js +33 -5
- package/components/calendar/helpers.js.map +1 -1
- package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
- package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
- package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
- package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
- package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
- package/components/calendar/themes/dark/calendar.material.css.js +1 -1
- package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
- package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
- package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
- package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
- package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
- package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
- package/components/calendar/themes/light/calendar.material.css.js +1 -1
- package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
- package/components/calendar/themes/light/calendar.shared.css.js +1 -1
- package/components/calendar/themes/light/calendar.shared.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/card/card.actions.d.ts +20 -6
- package/components/card/card.actions.js.map +1 -1
- package/components/card/card.content.d.ts +12 -2
- package/components/card/card.content.js.map +1 -1
- package/components/card/card.d.ts +27 -4
- package/components/card/card.header.d.ts +20 -6
- package/components/card/card.header.js.map +1 -1
- package/components/card/card.js.map +1 -1
- package/components/card/card.media.d.ts +14 -2
- package/components/card/card.media.js +1 -1
- package/components/card/card.media.js.map +1 -1
- package/components/card/themes/dark/card.bootstrap.css.js +1 -1
- package/components/card/themes/dark/card.bootstrap.css.js.map +1 -1
- package/components/card/themes/dark/card.fluent.css.js +1 -1
- package/components/card/themes/dark/card.fluent.css.js.map +1 -1
- package/components/card/themes/dark/card.indigo.css.js +1 -1
- package/components/card/themes/dark/card.indigo.css.js.map +1 -1
- package/components/card/themes/dark/card.material.css.js +1 -1
- package/components/card/themes/dark/card.material.css.js.map +1 -1
- package/components/card/themes/dark/card.shared.css.js +1 -1
- package/components/card/themes/dark/card.shared.css.js.map +1 -1
- package/components/card/themes/light/container/card.bootstrap.css.js +1 -1
- package/components/card/themes/light/container/card.bootstrap.css.js.map +1 -1
- package/components/card/themes/light/container/card.fluent.css.js +1 -1
- package/components/card/themes/light/container/card.fluent.css.js.map +1 -1
- package/components/card/themes/light/container/card.indigo.css.js +1 -1
- package/components/card/themes/light/container/card.indigo.css.js.map +1 -1
- package/components/card/themes/light/container/card.material.css.js +1 -1
- package/components/card/themes/light/container/card.material.css.js.map +1 -1
- package/components/card/themes/light/container/card.shared.css.js +1 -1
- package/components/card/themes/light/container/card.shared.css.js.map +1 -1
- package/components/carousel/carousel-slide.d.ts +2 -1
- package/components/carousel/carousel-slide.js +16 -16
- package/components/carousel/carousel-slide.js.map +1 -1
- package/components/carousel/carousel.d.ts +1 -0
- package/components/carousel/carousel.js +5 -1
- package/components/carousel/carousel.js.map +1 -1
- package/components/carousel/themes/dark/carousel.bootstrap.css.js +1 -1
- package/components/carousel/themes/dark/carousel.bootstrap.css.js.map +1 -1
- package/components/carousel/themes/dark/carousel.fluent.css.js +1 -1
- package/components/carousel/themes/dark/carousel.fluent.css.js.map +1 -1
- package/components/carousel/themes/dark/carousel.indigo.css.js +1 -1
- package/components/carousel/themes/dark/carousel.indigo.css.js.map +1 -1
- package/components/carousel/themes/dark/carousel.material.css.js +1 -1
- package/components/carousel/themes/dark/carousel.material.css.js.map +1 -1
- package/components/carousel/themes/dark/carousel.shared.css.js +1 -1
- package/components/carousel/themes/dark/carousel.shared.css.js.map +1 -1
- package/components/carousel/themes/light/carousel.bootstrap.css.js +1 -1
- package/components/carousel/themes/light/carousel.bootstrap.css.js.map +1 -1
- package/components/carousel/themes/light/carousel.fluent.css.js +1 -1
- package/components/carousel/themes/light/carousel.fluent.css.js.map +1 -1
- package/components/carousel/themes/light/carousel.indigo.css.js +1 -1
- package/components/carousel/themes/light/carousel.indigo.css.js.map +1 -1
- package/components/carousel/themes/light/carousel.material.css.js +1 -1
- package/components/carousel/themes/light/carousel.material.css.js.map +1 -1
- package/components/carousel/themes/light/carousel.shared.css.js +1 -1
- package/components/carousel/themes/light/carousel.shared.css.js.map +1 -1
- package/components/chat/chat-input.d.ts +3 -1
- package/components/chat/chat-input.js +15 -4
- package/components/chat/chat-input.js.map +1 -1
- package/components/chat/chat-message.d.ts +3 -1
- package/components/chat/chat-message.js +15 -5
- package/components/chat/chat-message.js.map +1 -1
- package/components/chat/chat.js +1 -3
- package/components/chat/chat.js.map +1 -1
- package/components/chat/themes/dark/chat.bootstrap.css.js +1 -1
- package/components/chat/themes/dark/chat.bootstrap.css.js.map +1 -1
- package/components/chat/themes/dark/chat.fluent.css.js +1 -1
- package/components/chat/themes/dark/chat.fluent.css.js.map +1 -1
- package/components/chat/themes/dark/chat.indigo.css.js +1 -1
- package/components/chat/themes/dark/chat.indigo.css.js.map +1 -1
- package/components/chat/themes/dark/chat.material.css.js +1 -1
- package/components/chat/themes/dark/chat.material.css.js.map +1 -1
- package/components/chat/themes/dark/chat.shared.css.js +1 -1
- package/components/chat/themes/dark/chat.shared.css.js.map +1 -1
- package/components/chat/themes/light/chat.bootstrap.css.js +1 -1
- package/components/chat/themes/light/chat.bootstrap.css.js.map +1 -1
- package/components/chat/themes/light/chat.fluent.css.js +1 -1
- package/components/chat/themes/light/chat.fluent.css.js.map +1 -1
- package/components/chat/themes/light/chat.indigo.css.js +1 -1
- package/components/chat/themes/light/chat.indigo.css.js.map +1 -1
- package/components/chat/themes/light/chat.material.css.js +1 -1
- package/components/chat/themes/light/chat.material.css.js.map +1 -1
- package/components/chat/themes/light/chat.shared.css.js +1 -1
- package/components/chat/themes/light/chat.shared.css.js.map +1 -1
- package/components/chat/types.d.ts +0 -8
- package/components/chat/types.js.map +1 -1
- package/components/chat/utils.d.ts +0 -13
- package/components/chat/utils.js +0 -41
- package/components/chat/utils.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/checkbox/checkbox.indigo.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.indigo.css.js.map +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.material.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.material.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/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.indigo.css.js +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.indigo.css.js.map +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.material.css.js +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.material.css.js.map +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.shared.css.js +1 -1
- package/components/checkbox/themes/light/checkbox/checkbox.shared.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/light/switch/switch.shared.css.js +1 -1
- package/components/checkbox/themes/light/switch/switch.shared.css.js.map +1 -1
- package/components/chip/themes/dark/chip.bootstrap.css.js +1 -1
- package/components/chip/themes/dark/chip.bootstrap.css.js.map +1 -1
- package/components/chip/themes/dark/chip.fluent.css.js +1 -1
- package/components/chip/themes/dark/chip.fluent.css.js.map +1 -1
- package/components/chip/themes/dark/chip.indigo.css.js +1 -1
- package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
- package/components/chip/themes/dark/chip.material.css.js +1 -1
- package/components/chip/themes/dark/chip.material.css.js.map +1 -1
- package/components/chip/themes/light/chip.bootstrap.css.js +1 -1
- package/components/chip/themes/light/chip.bootstrap.css.js.map +1 -1
- package/components/chip/themes/light/chip.fluent.css.js +1 -1
- package/components/chip/themes/light/chip.fluent.css.js.map +1 -1
- package/components/chip/themes/light/chip.indigo.css.js +1 -1
- package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
- package/components/chip/themes/light/chip.material.css.js +1 -1
- package/components/chip/themes/light/chip.material.css.js.map +1 -1
- package/components/chip/themes/light/chip.shared.css.js +1 -1
- package/components/chip/themes/light/chip.shared.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/dark/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/dark/combo.bootstrap.css.js.map +1 -1
- package/components/combo/themes/dark/combo.fluent.css.js +1 -1
- package/components/combo/themes/dark/combo.fluent.css.js.map +1 -1
- package/components/combo/themes/dark/combo.indigo.css.js +1 -1
- package/components/combo/themes/dark/combo.indigo.css.js.map +1 -1
- package/components/combo/themes/dark/combo.material.css.js +1 -1
- package/components/combo/themes/dark/combo.material.css.js.map +1 -1
- package/components/combo/themes/light/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -1
- package/components/combo/themes/light/combo.fluent.css.js +1 -1
- package/components/combo/themes/light/combo.fluent.css.js.map +1 -1
- package/components/combo/themes/light/combo.indigo.css.js +1 -1
- package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
- package/components/combo/themes/light/combo.material.css.js +1 -1
- package/components/combo/themes/light/combo.material.css.js.map +1 -1
- package/components/combo/themes/light/combo.shared.css.js +1 -1
- package/components/combo/themes/light/combo.shared.css.js.map +1 -1
- package/components/common/controllers/adopt-styles.d.ts +124 -0
- package/components/common/controllers/adopt-styles.js +75 -0
- package/components/common/controllers/adopt-styles.js.map +1 -0
- package/components/common/i18n/i18n-controller.d.ts +8 -0
- package/components/common/i18n/i18n-controller.js +37 -2
- package/components/common/i18n/i18n-controller.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +1 -1
- package/components/date-picker/date-picker.js +2 -3
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +1 -1
- package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -1
- package/components/date-picker/themes/dark/date-picker.fluent.css.js +1 -1
- package/components/date-picker/themes/dark/date-picker.fluent.css.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/dark/date-picker.material.css.js +1 -1
- package/components/date-picker/themes/dark/date-picker.material.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/light/date-picker.bootstrap.css.js +1 -1
- package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -1
- package/components/date-picker/themes/light/date-picker.fluent.css.js +1 -1
- package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -1
- package/components/date-picker/themes/light/date-picker.indigo.css.js +1 -1
- package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -1
- package/components/date-picker/themes/light/date-picker.material.css.js +1 -1
- package/components/date-picker/themes/light/date-picker.material.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/themes.js +0 -7
- package/components/date-picker/themes/themes.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.js +5 -9
- package/components/date-range-picker/date-range-picker.js.map +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js.map +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.fluent.css.js +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.fluent.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/dark/date-range-picker.material.css.js +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.material.css.js.map +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js.map +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js.map +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js.map +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.material.css.js +1 -1
- package/components/date-range-picker/themes/light/date-range-picker.material.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/themes.js +0 -7
- package/components/date-range-picker/themes/themes.js.map +1 -1
- package/components/date-time-input/date-part.d.ts +102 -0
- package/components/date-time-input/date-part.js +256 -0
- package/components/date-time-input/date-part.js.map +1 -0
- package/components/date-time-input/date-time-input.d.ts +112 -42
- package/components/date-time-input/date-time-input.js +211 -286
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/date-time-input/datetime-mask-parser.d.ts +139 -0
- package/components/date-time-input/datetime-mask-parser.js +230 -0
- package/components/date-time-input/datetime-mask-parser.js.map +1 -0
- package/components/date-time-input/validators.js +3 -3
- package/components/date-time-input/validators.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/dark/dialog.fluent.css.js +1 -1
- package/components/dialog/themes/dark/dialog.fluent.css.js.map +1 -1
- package/components/dialog/themes/dark/dialog.indigo.css.js +1 -1
- package/components/dialog/themes/dark/dialog.indigo.css.js.map +1 -1
- package/components/dialog/themes/dark/dialog.material.css.js +1 -1
- package/components/dialog/themes/dark/dialog.material.css.js.map +1 -1
- package/components/dialog/themes/dark/dialog.shared.css.js +1 -1
- package/components/dialog/themes/dark/dialog.shared.css.js.map +1 -1
- package/components/dialog/themes/light/dialog.bootstrap.css.js +1 -1
- package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -1
- package/components/dialog/themes/light/dialog.fluent.css.js +1 -1
- package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
- package/components/dialog/themes/light/dialog.indigo.css.js +1 -1
- package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -1
- package/components/dialog/themes/light/dialog.material.css.js +1 -1
- package/components/dialog/themes/light/dialog.material.css.js.map +1 -1
- package/components/dialog/themes/light/dialog.shared.css.js +1 -1
- package/components/dialog/themes/light/dialog.shared.css.js.map +1 -1
- package/components/divider/themes/dark/divider.bootstrap.css.js +1 -1
- package/components/divider/themes/dark/divider.bootstrap.css.js.map +1 -1
- package/components/divider/themes/dark/divider.fluent.css.js +1 -1
- package/components/divider/themes/dark/divider.fluent.css.js.map +1 -1
- package/components/divider/themes/dark/divider.indigo.css.js +1 -1
- package/components/divider/themes/dark/divider.indigo.css.js.map +1 -1
- package/components/divider/themes/dark/divider.material.css.js +1 -1
- package/components/divider/themes/dark/divider.material.css.js.map +1 -1
- package/components/divider/themes/light/divider.bootstrap.css.js +1 -1
- package/components/divider/themes/light/divider.bootstrap.css.js.map +1 -1
- package/components/divider/themes/light/divider.fluent.css.js +1 -1
- package/components/divider/themes/light/divider.fluent.css.js.map +1 -1
- package/components/divider/themes/light/divider.indigo.css.js +1 -1
- package/components/divider/themes/light/divider.indigo.css.js.map +1 -1
- package/components/divider/themes/light/divider.material.css.js +1 -1
- package/components/divider/themes/light/divider.material.css.js.map +1 -1
- package/components/divider/themes/light/divider.shared.css.js +1 -1
- package/components/divider/themes/light/divider.shared.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.indigo.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.indigo.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.material.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.material.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.shared.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.shared.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.indigo.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.material.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.material.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.shared.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.shared.css.js.map +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.bootstrap.css.js +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.bootstrap.css.js.map +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.fluent.css.js +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.fluent.css.js.map +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.indigo.css.js +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.indigo.css.js.map +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.material.css.js +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.material.css.js.map +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.shared.css.js +1 -1
- package/components/expansion-panel/themes/dark/expansion-panel.shared.css.js.map +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.material.css.js +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.material.css.js.map +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.shared.css.js +1 -1
- package/components/expansion-panel/themes/light/expansion-panel.shared.css.js.map +1 -1
- package/components/file-input/themes/dark/file-input.bootstrap.css.js +1 -1
- package/components/file-input/themes/dark/file-input.bootstrap.css.js.map +1 -1
- package/components/file-input/themes/dark/file-input.fluent.css.js +1 -1
- package/components/file-input/themes/dark/file-input.fluent.css.js.map +1 -1
- package/components/file-input/themes/dark/file-input.indigo.css.js +1 -1
- package/components/file-input/themes/dark/file-input.indigo.css.js.map +1 -1
- package/components/file-input/themes/dark/file-input.material.css.js +1 -1
- package/components/file-input/themes/dark/file-input.material.css.js.map +1 -1
- package/components/file-input/themes/light/file-input.bootstrap.css.js +1 -1
- package/components/file-input/themes/light/file-input.bootstrap.css.js.map +1 -1
- package/components/file-input/themes/light/file-input.fluent.css.js +1 -1
- package/components/file-input/themes/light/file-input.fluent.css.js.map +1 -1
- package/components/file-input/themes/light/file-input.indigo.css.js +1 -1
- package/components/file-input/themes/light/file-input.indigo.css.js.map +1 -1
- package/components/file-input/themes/light/file-input.material.css.js +1 -1
- package/components/file-input/themes/light/file-input.material.css.js.map +1 -1
- package/components/file-input/themes/light/file-input.shared.css.js +1 -1
- package/components/file-input/themes/light/file-input.shared.css.js.map +1 -1
- package/components/icon/icon-references.d.ts +1 -1
- package/components/icon/icon-references.js +2 -2
- package/components/icon/icon-references.js.map +1 -1
- package/components/icon/icon-state.broadcast.d.ts +34 -10
- package/components/icon/icon-state.broadcast.js +37 -27
- package/components/icon/icon-state.broadcast.js.map +1 -1
- package/components/icon/icon.d.ts +83 -12
- package/components/icon/icon.js +30 -34
- package/components/icon/icon.js.map +1 -1
- package/components/icon/icon.registry.d.ts +218 -10
- package/components/icon/icon.registry.js +58 -46
- package/components/icon/icon.registry.js.map +1 -1
- package/components/icon/registry/default-map.d.ts +86 -11
- package/components/icon/registry/default-map.js +14 -23
- package/components/icon/registry/default-map.js.map +1 -1
- package/components/icon/themes/dark/icon.bootstrap.css.js +1 -1
- package/components/icon/themes/dark/icon.bootstrap.css.js.map +1 -1
- package/components/icon/themes/dark/icon.fluent.css.js +1 -1
- package/components/icon/themes/dark/icon.fluent.css.js.map +1 -1
- package/components/icon/themes/dark/icon.indigo.css.js +1 -1
- package/components/icon/themes/dark/icon.indigo.css.js.map +1 -1
- package/components/icon/themes/dark/icon.material.css.js +1 -1
- package/components/icon/themes/dark/icon.material.css.js.map +1 -1
- package/components/icon/themes/light/icon.bootstrap.css.js +1 -1
- package/components/icon/themes/light/icon.bootstrap.css.js.map +1 -1
- package/components/icon/themes/light/icon.fluent.css.js +1 -1
- package/components/icon/themes/light/icon.fluent.css.js.map +1 -1
- package/components/icon/themes/light/icon.indigo.css.js +1 -1
- package/components/icon/themes/light/icon.indigo.css.js.map +1 -1
- package/components/icon/themes/light/icon.material.css.js +1 -1
- package/components/icon/themes/light/icon.material.css.js.map +1 -1
- package/components/icon/themes/light/icon.shared.css.js +1 -1
- package/components/icon/themes/light/icon.shared.css.js.map +1 -1
- package/components/input/themes/dark/input.bootstrap.css.js +1 -1
- package/components/input/themes/dark/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/dark/input.fluent.css.js +1 -1
- package/components/input/themes/dark/input.fluent.css.js.map +1 -1
- package/components/input/themes/dark/input.indigo.css.js +1 -1
- package/components/input/themes/dark/input.indigo.css.js.map +1 -1
- package/components/input/themes/dark/input.material.css.js +1 -1
- package/components/input/themes/dark/input.material.css.js.map +1 -1
- package/components/input/themes/light/input.bootstrap.css.js +1 -1
- package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/light/input.fluent.css.js +1 -1
- package/components/input/themes/light/input.fluent.css.js.map +1 -1
- package/components/input/themes/light/input.indigo.css.js +1 -1
- package/components/input/themes/light/input.indigo.css.js.map +1 -1
- package/components/input/themes/light/input.material.css.js +1 -1
- package/components/input/themes/light/input.material.css.js.map +1 -1
- package/components/input/themes/light/input.shared.css.js +1 -1
- package/components/input/themes/light/input.shared.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/list/themes/dark/container/list.bootstrap.css.js +1 -1
- package/components/list/themes/dark/container/list.bootstrap.css.js.map +1 -1
- package/components/list/themes/dark/container/list.fluent.css.js +1 -1
- package/components/list/themes/dark/container/list.fluent.css.js.map +1 -1
- package/components/list/themes/dark/container/list.indigo.css.js +1 -1
- package/components/list/themes/dark/container/list.indigo.css.js.map +1 -1
- package/components/list/themes/dark/container/list.material.css.js +1 -1
- package/components/list/themes/dark/container/list.material.css.js.map +1 -1
- package/components/list/themes/dark/container/list.shared.css.js +1 -1
- package/components/list/themes/dark/container/list.shared.css.js.map +1 -1
- package/components/list/themes/light/container/list.bootstrap.css.js +1 -1
- package/components/list/themes/light/container/list.bootstrap.css.js.map +1 -1
- package/components/list/themes/light/container/list.fluent.css.js +1 -1
- package/components/list/themes/light/container/list.fluent.css.js.map +1 -1
- package/components/list/themes/light/container/list.indigo.css.js +1 -1
- package/components/list/themes/light/container/list.indigo.css.js.map +1 -1
- package/components/list/themes/light/container/list.material.css.js +1 -1
- package/components/list/themes/light/container/list.material.css.js.map +1 -1
- package/components/list/themes/light/container/list.shared.css.js +1 -1
- package/components/list/themes/light/container/list.shared.css.js.map +1 -1
- package/components/mask-input/mask-input-base.d.ts +2 -0
- package/components/mask-input/mask-input-base.js +3 -0
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/mask-input/mask-input.js +1 -1
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.bootstrap.css.js +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.bootstrap.css.js.map +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js.map +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.indigo.css.js +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.material.css.js +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.material.css.js.map +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js +1 -1
- package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js.map +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js.map +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js.map +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js +1 -1
- package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js.map +1 -1
- package/components/navbar/themes/dark/navbar.bootstrap.css.js +1 -1
- package/components/navbar/themes/dark/navbar.bootstrap.css.js.map +1 -1
- package/components/navbar/themes/dark/navbar.fluent.css.js +1 -1
- package/components/navbar/themes/dark/navbar.fluent.css.js.map +1 -1
- package/components/navbar/themes/dark/navbar.indigo.css.js +1 -1
- package/components/navbar/themes/dark/navbar.indigo.css.js.map +1 -1
- package/components/navbar/themes/dark/navbar.material.css.js +1 -1
- package/components/navbar/themes/dark/navbar.material.css.js.map +1 -1
- package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
- package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
- package/components/navbar/themes/light/navbar.fluent.css.js +1 -1
- package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
- package/components/navbar/themes/light/navbar.indigo.css.js +1 -1
- package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
- package/components/navbar/themes/light/navbar.material.css.js +1 -1
- package/components/navbar/themes/light/navbar.material.css.js.map +1 -1
- package/components/navbar/themes/light/navbar.shared.css.js +1 -1
- package/components/navbar/themes/light/navbar.shared.css.js.map +1 -1
- 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/themes/circular/dark/circular.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/circular/dark/circular.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/circular/dark/circular.progress.fluent.css.js +1 -1
- package/components/progress/themes/circular/dark/circular.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/circular/dark/circular.progress.indigo.css.js +1 -1
- package/components/progress/themes/circular/dark/circular.progress.indigo.css.js.map +1 -1
- package/components/progress/themes/circular/dark/circular.progress.material.css.js +1 -1
- package/components/progress/themes/circular/dark/circular.progress.material.css.js.map +1 -1
- package/components/progress/themes/circular/dark/circular.progress.shared.css.js +1 -1
- package/components/progress/themes/circular/dark/circular.progress.shared.css.js.map +1 -1
- package/components/progress/themes/circular/light/circular.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/circular/light/circular.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/circular/light/circular.progress.fluent.css.js +1 -1
- package/components/progress/themes/circular/light/circular.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/circular/light/circular.progress.indigo.css.js +1 -1
- package/components/progress/themes/circular/light/circular.progress.indigo.css.js.map +1 -1
- package/components/progress/themes/circular/light/circular.progress.material.css.js +1 -1
- package/components/progress/themes/circular/light/circular.progress.material.css.js.map +1 -1
- package/components/progress/themes/circular/light/circular.progress.shared.css.js +1 -1
- package/components/progress/themes/circular/light/circular.progress.shared.css.js.map +1 -1
- package/components/progress/themes/linear/dark/linear.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/linear/dark/linear.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/linear/dark/linear.progress.fluent.css.js +1 -1
- package/components/progress/themes/linear/dark/linear.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/linear/dark/linear.progress.indigo.css.js +1 -1
- package/components/progress/themes/linear/dark/linear.progress.indigo.css.js.map +1 -1
- package/components/progress/themes/linear/dark/linear.progress.material.css.js +1 -1
- package/components/progress/themes/linear/dark/linear.progress.material.css.js.map +1 -1
- package/components/progress/themes/linear/dark/linear.progress.shared.css.js +1 -1
- package/components/progress/themes/linear/dark/linear.progress.shared.css.js.map +1 -1
- package/components/progress/themes/linear/light/linear.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/linear/light/linear.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/linear/light/linear.progress.fluent.css.js +1 -1
- package/components/progress/themes/linear/light/linear.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/linear/light/linear.progress.indigo.css.js +1 -1
- package/components/progress/themes/linear/light/linear.progress.indigo.css.js.map +1 -1
- package/components/progress/themes/linear/light/linear.progress.material.css.js +1 -1
- package/components/progress/themes/linear/light/linear.progress.material.css.js.map +1 -1
- package/components/progress/themes/linear/light/linear.progress.shared.css.js +1 -1
- package/components/progress/themes/linear/light/linear.progress.shared.css.js.map +1 -1
- package/components/radio/themes/dark/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/dark/radio.bootstrap.css.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/dark/radio.indigo.css.js +1 -1
- package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
- package/components/radio/themes/dark/radio.material.css.js +1 -1
- package/components/radio/themes/dark/radio.material.css.js.map +1 -1
- package/components/radio/themes/light/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
- package/components/radio/themes/light/radio.fluent.css.js +1 -1
- package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
- package/components/radio/themes/light/radio.indigo.css.js +1 -1
- package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
- package/components/radio/themes/light/radio.material.css.js +1 -1
- package/components/radio/themes/light/radio.material.css.js.map +1 -1
- package/components/radio/themes/light/radio.shared.css.js +1 -1
- package/components/radio/themes/light/radio.shared.css.js.map +1 -1
- package/components/radio-group/themes/dark/radio-group.bootstrap.css.js +1 -1
- package/components/radio-group/themes/dark/radio-group.bootstrap.css.js.map +1 -1
- package/components/radio-group/themes/dark/radio-group.fluent.css.js +1 -1
- package/components/radio-group/themes/dark/radio-group.fluent.css.js.map +1 -1
- package/components/radio-group/themes/dark/radio-group.indigo.css.js +1 -1
- package/components/radio-group/themes/dark/radio-group.indigo.css.js.map +1 -1
- package/components/radio-group/themes/dark/radio-group.material.css.js +1 -1
- package/components/radio-group/themes/dark/radio-group.material.css.js.map +1 -1
- package/components/radio-group/themes/light/radio-group.bootstrap.css.js +1 -1
- package/components/radio-group/themes/light/radio-group.bootstrap.css.js.map +1 -1
- package/components/radio-group/themes/light/radio-group.fluent.css.js +1 -1
- package/components/radio-group/themes/light/radio-group.fluent.css.js.map +1 -1
- package/components/radio-group/themes/light/radio-group.indigo.css.js +1 -1
- package/components/radio-group/themes/light/radio-group.indigo.css.js.map +1 -1
- package/components/radio-group/themes/light/radio-group.material.css.js +1 -1
- package/components/radio-group/themes/light/radio-group.material.css.js.map +1 -1
- package/components/radio-group/themes/light/radio-group.shared.css.js +1 -1
- package/components/radio-group/themes/light/radio-group.shared.css.js.map +1 -1
- package/components/rating/themes/dark/rating.bootstrap.css.js +1 -1
- package/components/rating/themes/dark/rating.bootstrap.css.js.map +1 -1
- package/components/rating/themes/dark/rating.fluent.css.js +1 -1
- package/components/rating/themes/dark/rating.fluent.css.js.map +1 -1
- package/components/rating/themes/dark/rating.indigo.css.js +1 -1
- package/components/rating/themes/dark/rating.indigo.css.js.map +1 -1
- package/components/rating/themes/dark/rating.material.css.js +1 -1
- package/components/rating/themes/dark/rating.material.css.js.map +1 -1
- package/components/rating/themes/light/rating.bootstrap.css.js +1 -1
- package/components/rating/themes/light/rating.bootstrap.css.js.map +1 -1
- package/components/rating/themes/light/rating.fluent.css.js +1 -1
- package/components/rating/themes/light/rating.fluent.css.js.map +1 -1
- package/components/rating/themes/light/rating.indigo.css.js +1 -1
- package/components/rating/themes/light/rating.indigo.css.js.map +1 -1
- package/components/rating/themes/light/rating.material.css.js +1 -1
- package/components/rating/themes/light/rating.material.css.js.map +1 -1
- package/components/rating/themes/light/rating.shared.css.js +1 -1
- package/components/rating/themes/light/rating.shared.css.js.map +1 -1
- package/components/resize-container/themes/dark/resize-indicator.bootstrap.css.js +1 -1
- package/components/resize-container/themes/dark/resize-indicator.bootstrap.css.js.map +1 -1
- package/components/resize-container/themes/dark/resize-indicator.fluent.css.js +1 -1
- package/components/resize-container/themes/dark/resize-indicator.fluent.css.js.map +1 -1
- package/components/resize-container/themes/dark/resize-indicator.indigo.css.js +1 -1
- package/components/resize-container/themes/dark/resize-indicator.indigo.css.js.map +1 -1
- package/components/resize-container/themes/dark/resize-indicator.material.css.js +1 -1
- package/components/resize-container/themes/dark/resize-indicator.material.css.js.map +1 -1
- package/components/resize-container/themes/dark/resize-indicator.shared.css.js +1 -1
- package/components/resize-container/themes/dark/resize-indicator.shared.css.js.map +1 -1
- package/components/resize-container/themes/light/resize-indicator.bootstrap.css.js +1 -1
- package/components/resize-container/themes/light/resize-indicator.bootstrap.css.js.map +1 -1
- package/components/resize-container/themes/light/resize-indicator.fluent.css.js +1 -1
- package/components/resize-container/themes/light/resize-indicator.fluent.css.js.map +1 -1
- package/components/resize-container/themes/light/resize-indicator.indigo.css.js +1 -1
- package/components/resize-container/themes/light/resize-indicator.indigo.css.js.map +1 -1
- package/components/resize-container/themes/light/resize-indicator.material.css.js +1 -1
- package/components/resize-container/themes/light/resize-indicator.material.css.js.map +1 -1
- package/components/resize-container/themes/light/resize-indicator.shared.css.js +1 -1
- package/components/resize-container/themes/light/resize-indicator.shared.css.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/dark/select.fluent.css.js +1 -1
- package/components/select/themes/dark/select.fluent.css.js.map +1 -1
- package/components/select/themes/dark/select.indigo.css.js +1 -1
- package/components/select/themes/dark/select.indigo.css.js.map +1 -1
- package/components/select/themes/dark/select.material.css.js +1 -1
- package/components/select/themes/dark/select.material.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/light/select.fluent.css.js +1 -1
- package/components/select/themes/light/select.fluent.css.js.map +1 -1
- package/components/select/themes/light/select.indigo.css.js +1 -1
- package/components/select/themes/light/select.indigo.css.js.map +1 -1
- package/components/select/themes/light/select.material.css.js +1 -1
- package/components/select/themes/light/select.material.css.js.map +1 -1
- package/components/select/themes/light/select.shared.css.js +1 -1
- package/components/select/themes/light/select.shared.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/slider/themes/dark/slider.bootstrap.css.js +1 -1
- package/components/slider/themes/dark/slider.bootstrap.css.js.map +1 -1
- package/components/slider/themes/dark/slider.fluent.css.js +1 -1
- package/components/slider/themes/dark/slider.fluent.css.js.map +1 -1
- package/components/slider/themes/dark/slider.indigo.css.js +1 -1
- package/components/slider/themes/dark/slider.indigo.css.js.map +1 -1
- package/components/slider/themes/dark/slider.material.css.js +1 -1
- package/components/slider/themes/dark/slider.material.css.js.map +1 -1
- package/components/slider/themes/light/slider.bootstrap.css.js +1 -1
- package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
- package/components/slider/themes/light/slider.fluent.css.js +1 -1
- package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
- package/components/slider/themes/light/slider.indigo.css.js +1 -1
- package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
- package/components/slider/themes/light/slider.material.css.js +1 -1
- package/components/slider/themes/light/slider.material.css.js.map +1 -1
- package/components/slider/themes/light/slider.shared.css.js +1 -1
- package/components/slider/themes/light/slider.shared.css.js.map +1 -1
- package/components/snackbar/themes/dark/snackbar.bootstrap.css.js +1 -1
- package/components/snackbar/themes/dark/snackbar.bootstrap.css.js.map +1 -1
- package/components/snackbar/themes/dark/snackbar.fluent.css.js +1 -1
- package/components/snackbar/themes/dark/snackbar.fluent.css.js.map +1 -1
- package/components/snackbar/themes/dark/snackbar.indigo.css.js +1 -1
- package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -1
- package/components/snackbar/themes/dark/snackbar.material.css.js +1 -1
- package/components/snackbar/themes/dark/snackbar.material.css.js.map +1 -1
- package/components/snackbar/themes/light/snackbar.bootstrap.css.js +1 -1
- package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
- package/components/snackbar/themes/light/snackbar.fluent.css.js +1 -1
- package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
- package/components/snackbar/themes/light/snackbar.indigo.css.js +1 -1
- package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
- package/components/snackbar/themes/light/snackbar.material.css.js +1 -1
- package/components/snackbar/themes/light/snackbar.material.css.js.map +1 -1
- package/components/snackbar/themes/light/snackbar.shared.css.js +1 -1
- package/components/snackbar/themes/light/snackbar.shared.css.js.map +1 -1
- package/components/stepper/themes/step/dark/step.bootstrap.css.js +1 -1
- package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -1
- package/components/stepper/themes/step/dark/step.fluent.css.js +1 -1
- package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -1
- package/components/stepper/themes/step/dark/step.indigo.css.js +1 -1
- package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -1
- package/components/stepper/themes/step/dark/step.material.css.js +1 -1
- package/components/stepper/themes/step/dark/step.material.css.js.map +1 -1
- package/components/stepper/themes/step/dark/step.shared.css.js +1 -1
- package/components/stepper/themes/step/dark/step.shared.css.js.map +1 -1
- package/components/stepper/themes/step/light/step.bootstrap.css.js +1 -1
- package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -1
- package/components/stepper/themes/step/light/step.fluent.css.js +1 -1
- package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -1
- package/components/stepper/themes/step/light/step.indigo.css.js +1 -1
- package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -1
- package/components/stepper/themes/step/light/step.material.css.js +1 -1
- package/components/stepper/themes/step/light/step.material.css.js.map +1 -1
- package/components/stepper/themes/step/light/step.shared.css.js +1 -1
- package/components/stepper/themes/step/light/step.shared.css.js.map +1 -1
- package/components/tabs/themes/dark/tab.bootstrap.css.js +1 -1
- package/components/tabs/themes/dark/tab.bootstrap.css.js.map +1 -1
- package/components/tabs/themes/dark/tab.fluent.css.js +1 -1
- package/components/tabs/themes/dark/tab.fluent.css.js.map +1 -1
- package/components/tabs/themes/dark/tab.indigo.css.js +1 -1
- package/components/tabs/themes/dark/tab.indigo.css.js.map +1 -1
- package/components/tabs/themes/dark/tab.material.css.js +1 -1
- package/components/tabs/themes/dark/tab.material.css.js.map +1 -1
- package/components/tabs/themes/dark/tab.shared.css.js +1 -1
- package/components/tabs/themes/dark/tab.shared.css.js.map +1 -1
- package/components/tabs/themes/light/tab.bootstrap.css.js +1 -1
- package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
- package/components/tabs/themes/light/tab.fluent.css.js +1 -1
- package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
- package/components/tabs/themes/light/tab.indigo.css.js +1 -1
- package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
- package/components/tabs/themes/light/tab.material.css.js +1 -1
- package/components/tabs/themes/light/tab.material.css.js.map +1 -1
- package/components/tabs/themes/light/tab.shared.css.js +1 -1
- package/components/tabs/themes/light/tab.shared.css.js.map +1 -1
- package/components/textarea/themes/dark/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/dark/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/dark/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/dark/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/dark/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/dark/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/dark/textarea.material.css.js +1 -1
- package/components/textarea/themes/dark/textarea.material.css.js.map +1 -1
- package/components/textarea/themes/light/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/light/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/light/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/light/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/light/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/light/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/light/textarea.material.css.js +1 -1
- package/components/textarea/themes/light/textarea.material.css.js.map +1 -1
- package/components/textarea/themes/light/textarea.shared.css.js +1 -1
- package/components/textarea/themes/light/textarea.shared.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/themes/dark/tile-manager.bootstrap.css.js +1 -1
- package/components/tile-manager/themes/dark/tile-manager.bootstrap.css.js.map +1 -1
- package/components/tile-manager/themes/dark/tile-manager.fluent.css.js +1 -1
- package/components/tile-manager/themes/dark/tile-manager.fluent.css.js.map +1 -1
- package/components/tile-manager/themes/dark/tile-manager.indigo.css.js +1 -1
- package/components/tile-manager/themes/dark/tile-manager.indigo.css.js.map +1 -1
- package/components/tile-manager/themes/dark/tile-manager.material.css.js +1 -1
- package/components/tile-manager/themes/dark/tile-manager.material.css.js.map +1 -1
- package/components/tile-manager/themes/dark/tile-manager.shared.css.js +1 -1
- package/components/tile-manager/themes/dark/tile-manager.shared.css.js.map +1 -1
- package/components/tile-manager/themes/light/tile-manager.bootstrap.css.js +1 -1
- package/components/tile-manager/themes/light/tile-manager.bootstrap.css.js.map +1 -1
- package/components/tile-manager/themes/light/tile-manager.fluent.css.js +1 -1
- package/components/tile-manager/themes/light/tile-manager.fluent.css.js.map +1 -1
- package/components/tile-manager/themes/light/tile-manager.indigo.css.js +1 -1
- package/components/tile-manager/themes/light/tile-manager.indigo.css.js.map +1 -1
- package/components/tile-manager/themes/light/tile-manager.material.css.js +1 -1
- package/components/tile-manager/themes/light/tile-manager.material.css.js.map +1 -1
- package/components/tile-manager/themes/light/tile-manager.shared.css.js +1 -1
- package/components/tile-manager/themes/light/tile-manager.shared.css.js.map +1 -1
- package/components/toast/themes/dark/toast.bootstrap.css.js +1 -1
- package/components/toast/themes/dark/toast.bootstrap.css.js.map +1 -1
- package/components/toast/themes/dark/toast.fluent.css.js +1 -1
- package/components/toast/themes/dark/toast.fluent.css.js.map +1 -1
- package/components/toast/themes/dark/toast.indigo.css.js +1 -1
- package/components/toast/themes/dark/toast.indigo.css.js.map +1 -1
- package/components/toast/themes/dark/toast.material.css.js +1 -1
- package/components/toast/themes/dark/toast.material.css.js.map +1 -1
- package/components/toast/themes/dark/toast.shared.css.js +1 -1
- package/components/toast/themes/dark/toast.shared.css.js.map +1 -1
- package/components/toast/themes/light/toast.bootstrap.css.js +1 -1
- package/components/toast/themes/light/toast.bootstrap.css.js.map +1 -1
- package/components/toast/themes/light/toast.fluent.css.js +1 -1
- package/components/toast/themes/light/toast.fluent.css.js.map +1 -1
- package/components/toast/themes/light/toast.indigo.css.js +1 -1
- package/components/toast/themes/light/toast.indigo.css.js.map +1 -1
- package/components/toast/themes/light/toast.material.css.js +1 -1
- package/components/toast/themes/light/toast.material.css.js.map +1 -1
- package/components/toast/themes/light/toast.shared.css.js +1 -1
- package/components/toast/themes/light/toast.shared.css.js.map +1 -1
- package/components/tooltip/themes/dark/tooltip.bootstrap.css.js +1 -1
- package/components/tooltip/themes/dark/tooltip.bootstrap.css.js.map +1 -1
- package/components/tooltip/themes/dark/tooltip.fluent.css.js +1 -1
- package/components/tooltip/themes/dark/tooltip.fluent.css.js.map +1 -1
- package/components/tooltip/themes/dark/tooltip.indigo.css.js +1 -1
- package/components/tooltip/themes/dark/tooltip.indigo.css.js.map +1 -1
- package/components/tooltip/themes/dark/tooltip.material.css.js +1 -1
- package/components/tooltip/themes/dark/tooltip.material.css.js.map +1 -1
- package/components/tooltip/themes/light/tooltip.bootstrap.css.js +1 -1
- package/components/tooltip/themes/light/tooltip.bootstrap.css.js.map +1 -1
- package/components/tooltip/themes/light/tooltip.fluent.css.js +1 -1
- package/components/tooltip/themes/light/tooltip.fluent.css.js.map +1 -1
- package/components/tooltip/themes/light/tooltip.indigo.css.js +1 -1
- package/components/tooltip/themes/light/tooltip.indigo.css.js.map +1 -1
- package/components/tooltip/themes/light/tooltip.material.css.js +1 -1
- package/components/tooltip/themes/light/tooltip.material.css.js.map +1 -1
- package/components/tooltip/themes/light/tooltip.shared.css.js +1 -1
- package/components/tooltip/themes/light/tooltip.shared.css.js.map +1 -1
- package/components/tooltip/tooltip.d.ts +0 -12
- package/components/tooltip/tooltip.js +3 -10
- package/components/tooltip/tooltip.js.map +1 -1
- package/components/tree/themes/dark/container.bootstrap.css.js +1 -1
- package/components/tree/themes/dark/container.bootstrap.css.js.map +1 -1
- package/components/tree/themes/dark/container.fluent.css.js +1 -1
- package/components/tree/themes/dark/container.fluent.css.js.map +1 -1
- package/components/tree/themes/dark/container.indigo.css.js +1 -1
- package/components/tree/themes/dark/container.indigo.css.js.map +1 -1
- package/components/tree/themes/dark/container.material.css.js +1 -1
- package/components/tree/themes/dark/container.material.css.js.map +1 -1
- package/components/tree/themes/dark/container.shared.css.js +1 -1
- package/components/tree/themes/dark/container.shared.css.js.map +1 -1
- package/components/tree/themes/light/container.bootstrap.css.js +1 -1
- package/components/tree/themes/light/container.bootstrap.css.js.map +1 -1
- package/components/tree/themes/light/container.fluent.css.js +1 -1
- package/components/tree/themes/light/container.fluent.css.js.map +1 -1
- package/components/tree/themes/light/container.indigo.css.js +1 -1
- package/components/tree/themes/light/container.indigo.css.js.map +1 -1
- package/components/tree/themes/light/container.material.css.js +1 -1
- package/components/tree/themes/light/container.material.css.js.map +1 -1
- package/components/tree/themes/light/container.shared.css.js +1 -1
- package/components/tree/themes/light/container.shared.css.js.map +1 -1
- package/custom-elements.json +1493 -1130
- package/igniteui-webcomponents.css-data.json +1 -1
- package/igniteui-webcomponents.html-data.json +1 -1
- package/index.d.ts +3 -2
- package/index.js +2 -1
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/skills/README.md +65 -0
- package/skills/igniteui-wc-choose-components/SKILL.md +358 -0
- package/skills/igniteui-wc-customize-component-theme/SKILL.md +615 -0
- package/skills/igniteui-wc-integrate-with-framework/SKILL.md +112 -0
- package/skills/igniteui-wc-integrate-with-framework/references/angular.md +185 -0
- package/skills/igniteui-wc-integrate-with-framework/references/react.md +116 -0
- package/skills/igniteui-wc-integrate-with-framework/references/vanilla-js.md +118 -0
- package/skills/igniteui-wc-integrate-with-framework/references/vue.md +181 -0
- package/skills/igniteui-wc-optimize-bundle-size/SKILL.md +709 -0
- 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
- package/components/date-picker/themes/light/date-picker.shared.css.d.ts +0 -1
- package/components/date-picker/themes/light/date-picker.shared.css.js +0 -3
- package/components/date-picker/themes/light/date-picker.shared.css.js.map +0 -1
- package/components/date-range-picker/themes/light/date-range-picker.shared.css.d.ts +0 -1
- package/components/date-range-picker/themes/light/date-range-picker.shared.css.js +0 -3
- package/components/date-range-picker/themes/light/date-range-picker.shared.css.js.map +0 -1
- package/components/date-time-input/date-util.d.ts +0 -99
- package/components/date-time-input/date-util.js +0 -391
- package/components/date-time-input/date-util.js.map +0 -1
|
@@ -1,45 +1,55 @@
|
|
|
1
1
|
import { createIconDefaultMap } from './registry/default-map.js';
|
|
2
2
|
import { ActionType } from './registry/types.js';
|
|
3
3
|
export class IconsStateBroadcast {
|
|
4
|
-
static { this.
|
|
5
|
-
constructor(
|
|
6
|
-
this.
|
|
7
|
-
this.
|
|
8
|
-
this.
|
|
9
|
-
globalThis.addEventListener('pageshow',
|
|
10
|
-
globalThis.addEventListener('pagehide',
|
|
4
|
+
static { this._origin = 'igniteui-webcomponents'; }
|
|
5
|
+
constructor(iconsCollection, iconReferences) {
|
|
6
|
+
this._channel = null;
|
|
7
|
+
this._iconsCollection = iconsCollection;
|
|
8
|
+
this._iconReferences = iconReferences;
|
|
9
|
+
globalThis.addEventListener('pageshow', this);
|
|
10
|
+
globalThis.addEventListener('pagehide', this);
|
|
11
|
+
this._create();
|
|
11
12
|
}
|
|
12
13
|
send(data) {
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
this._channel?.postMessage(data);
|
|
15
|
+
}
|
|
16
|
+
handleEvent(event) {
|
|
17
|
+
switch (event.type) {
|
|
18
|
+
case 'message':
|
|
19
|
+
this._syncState(event);
|
|
20
|
+
break;
|
|
21
|
+
case 'pageshow':
|
|
22
|
+
this._create();
|
|
23
|
+
break;
|
|
24
|
+
case 'pagehide':
|
|
25
|
+
this._dispose();
|
|
26
|
+
break;
|
|
15
27
|
}
|
|
16
28
|
}
|
|
17
|
-
|
|
18
|
-
if (
|
|
19
|
-
|
|
29
|
+
_syncState({ data: { actionType, origin }, }) {
|
|
30
|
+
if (actionType !== ActionType.SyncState ||
|
|
31
|
+
origin === IconsStateBroadcast._origin) {
|
|
20
32
|
return;
|
|
21
33
|
}
|
|
22
34
|
this.send({
|
|
23
35
|
actionType: ActionType.SyncState,
|
|
24
|
-
collections: this.
|
|
25
|
-
references: this.
|
|
26
|
-
origin: IconsStateBroadcast.
|
|
36
|
+
collections: this._getUserSetCollection(this._iconsCollection),
|
|
37
|
+
references: this._getUserRefsCollection(this._iconReferences),
|
|
38
|
+
origin: IconsStateBroadcast._origin,
|
|
27
39
|
});
|
|
28
40
|
}
|
|
29
|
-
|
|
30
|
-
if (!this.
|
|
31
|
-
this.
|
|
32
|
-
this.
|
|
41
|
+
_create() {
|
|
42
|
+
if (!this._channel) {
|
|
43
|
+
this._channel = new BroadcastChannel('ignite-ui-icon-channel');
|
|
44
|
+
this._channel.addEventListener('message', this);
|
|
33
45
|
}
|
|
34
46
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
this.channel = null;
|
|
40
|
-
}
|
|
47
|
+
_dispose() {
|
|
48
|
+
this._channel?.removeEventListener('message', this);
|
|
49
|
+
this._channel?.close();
|
|
50
|
+
this._channel = null;
|
|
41
51
|
}
|
|
42
|
-
|
|
52
|
+
_getUserRefsCollection(collections) {
|
|
43
53
|
const userSetIcons = createIconDefaultMap();
|
|
44
54
|
for (const [collectionKey, collection] of collections.entries()) {
|
|
45
55
|
for (const [iconKey, icon] of collection.entries()) {
|
|
@@ -50,7 +60,7 @@ export class IconsStateBroadcast {
|
|
|
50
60
|
}
|
|
51
61
|
return userSetIcons;
|
|
52
62
|
}
|
|
53
|
-
|
|
63
|
+
_getUserSetCollection(collections) {
|
|
54
64
|
const userSetIcons = createIconDefaultMap();
|
|
55
65
|
for (const [collectionKey, collection] of collections.entries()) {
|
|
56
66
|
if (collectionKey === 'internal') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-state.broadcast.js","sourceRoot":"","sources":["../../../src/components/icon/icon-state.broadcast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAOjE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"icon-state.broadcast.js","sourceRoot":"","sources":["../../../src/components/icon/icon-state.broadcast.ts"],"names":[],"mappings":"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","sourcesContent":["import { createIconDefaultMap } from './registry/default-map.js';\nimport type {\n BroadcastIconsChangeMessage,\n IconMeta,\n IconsCollection,\n SvgIcon,\n} from './registry/types.js';\nimport { ActionType } from './registry/types.js';\n\ntype IconBroadcastEvent =\n | MessageEvent<BroadcastIconsChangeMessage>\n | PageTransitionEvent;\n\n/**\n * Manages cross-context synchronization of icon state using the BroadcastChannel API.\n *\n * @remarks\n * This class enables icon registry state to be shared between different browsing contexts\n * (e.g., iframes, tabs) within the same origin. It specifically handles synchronization\n * with Angular elements that may be running in separate contexts.\n *\n * The broadcast channel is automatically created on page show and disposed on page hide\n * to properly handle bfcache (back/forward cache) scenarios.\n */\nexport class IconsStateBroadcast {\n private static readonly _origin = 'igniteui-webcomponents';\n\n private readonly _iconsCollection: IconsCollection<SvgIcon>;\n private readonly _iconReferences: IconsCollection<IconMeta>;\n\n private _channel: BroadcastChannel | null = null;\n\n /**\n * Creates an instance of IconsStateBroadcast.\n *\n * @param iconsCollection - The collection of registered SVG icons.\n * @param iconReferences - The collection of icon references/aliases.\n */\n constructor(\n iconsCollection: IconsCollection<SvgIcon>,\n iconReferences: IconsCollection<IconMeta>\n ) {\n this._iconsCollection = iconsCollection;\n this._iconReferences = iconReferences;\n\n globalThis.addEventListener('pageshow', this);\n globalThis.addEventListener('pagehide', this);\n\n this._create();\n }\n\n /**\n * Sends a message to other browsing contexts via the broadcast channel.\n */\n public send(data: BroadcastIconsChangeMessage): void {\n this._channel?.postMessage(data);\n }\n\n /** @internal */\n public handleEvent(event: IconBroadcastEvent): void {\n switch (event.type) {\n case 'message':\n this._syncState(event as MessageEvent<BroadcastIconsChangeMessage>);\n break;\n case 'pageshow':\n this._create();\n break;\n case 'pagehide':\n this._dispose();\n break;\n }\n }\n\n private _syncState({\n data: { actionType, origin },\n }: MessageEvent<BroadcastIconsChangeMessage>): void {\n // no need to sync with other wc icon services, just with angular elements\n if (\n actionType !== ActionType.SyncState ||\n origin === IconsStateBroadcast._origin\n ) {\n return;\n }\n\n this.send({\n actionType: ActionType.SyncState,\n collections: this._getUserSetCollection(this._iconsCollection),\n references: this._getUserRefsCollection(this._iconReferences),\n origin: IconsStateBroadcast._origin,\n });\n }\n\n private _create(): void {\n if (!this._channel) {\n this._channel = new BroadcastChannel('ignite-ui-icon-channel');\n this._channel.addEventListener('message', this);\n }\n }\n\n private _dispose(): void {\n this._channel?.removeEventListener('message', this);\n this._channel?.close();\n this._channel = null;\n }\n\n private _getUserRefsCollection(\n collections: IconsCollection<IconMeta>\n ): IconsCollection<IconMeta> {\n const userSetIcons = createIconDefaultMap<string, IconMeta>();\n\n for (const [collectionKey, collection] of collections.entries()) {\n for (const [iconKey, icon] of collection.entries()) {\n if (icon.external) {\n userSetIcons.getOrCreate(collectionKey).set(iconKey, icon);\n }\n }\n }\n\n return userSetIcons;\n }\n\n private _getUserSetCollection(\n collections: IconsCollection<SvgIcon>\n ): IconsCollection<SvgIcon> {\n const userSetIcons = createIconDefaultMap<string, SvgIcon>();\n\n for (const [collectionKey, collection] of collections.entries()) {\n if (collectionKey === 'internal') {\n continue;\n }\n for (const [iconKey, icon] of collection.entries()) {\n userSetIcons.getOrCreate(collectionKey).set(iconKey, icon);\n }\n }\n\n return userSetIcons;\n }\n}\n"]}
|
|
@@ -1,41 +1,112 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
1
|
+
import { LitElement, type PropertyValues } from 'lit';
|
|
2
2
|
import type { IconMeta } from './registry/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* The icon component allows visualizing collections of pre-registered SVG icons.
|
|
5
5
|
*
|
|
6
6
|
* @element igc-icon
|
|
7
7
|
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* The icon component renders SVG icons from registered icon collections. Icons can be:
|
|
10
|
+
* - Loaded from the internal collection (built-in icons)
|
|
11
|
+
* - Registered dynamically using `registerIcon` or `registerIconFromText`
|
|
12
|
+
* - Referenced by aliases that resolve differently based on the active theme
|
|
8
13
|
*
|
|
14
|
+
* Icons automatically adapt to the current theme when used within an `igc-theme-provider`.
|
|
15
|
+
* The component subscribes to the icon registry and updates automatically when icons
|
|
16
|
+
* are registered or references are updated.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```html
|
|
20
|
+
* <!-- Use a built-in icon -->
|
|
21
|
+
* <igc-icon name="star"></igc-icon>
|
|
22
|
+
*
|
|
23
|
+
* <!-- Use an icon from a specific collection -->
|
|
24
|
+
* <igc-icon name="search" collection="material"></igc-icon>
|
|
25
|
+
*
|
|
26
|
+
* <!-- Mirror the icon for RTL layouts -->
|
|
27
|
+
* <igc-icon name="arrow-forward" mirrored></igc-icon>
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* // Register a custom icon
|
|
33
|
+
* import { registerIconFromText } from 'igniteui-webcomponents';
|
|
34
|
+
*
|
|
35
|
+
* const customIconSvg = '<svg viewBox="0 0 24 24">...</svg>';
|
|
36
|
+
* registerIconFromText('custom-icon', customIconSvg, 'my-collection');
|
|
37
|
+
* ```
|
|
9
38
|
*/
|
|
10
39
|
export default class IgcIconComponent extends LitElement {
|
|
11
40
|
static readonly tagName = "igc-icon";
|
|
12
41
|
static styles: import("lit").CSSResult[];
|
|
13
42
|
static register(): void;
|
|
14
43
|
private readonly _internals;
|
|
15
|
-
private
|
|
44
|
+
private readonly _theming;
|
|
45
|
+
private _boundIconLoaded?;
|
|
46
|
+
private _svg;
|
|
16
47
|
/**
|
|
17
48
|
* The name of the icon glyph to draw.
|
|
18
|
-
*
|
|
49
|
+
*
|
|
50
|
+
* @attr name
|
|
51
|
+
*
|
|
52
|
+
* @remarks
|
|
53
|
+
* The icon name can be:
|
|
54
|
+
* - A direct reference to a registered icon in the specified collection
|
|
55
|
+
* - An alias that resolves to different icons based on the current theme
|
|
56
|
+
*
|
|
57
|
+
* When the icon name or collection changes, the component automatically
|
|
58
|
+
* fetches and renders the new icon.
|
|
19
59
|
*/
|
|
20
60
|
name: string;
|
|
21
61
|
/**
|
|
22
62
|
* The name of the registered collection for look up of icons.
|
|
23
|
-
*
|
|
24
|
-
* @attr
|
|
63
|
+
*
|
|
64
|
+
* @attr collection
|
|
65
|
+
* @default "default"
|
|
66
|
+
*
|
|
67
|
+
* @remarks
|
|
68
|
+
* Collections allow organizing icons into logical groups. The "default"
|
|
69
|
+
* collection is used for most icons.
|
|
70
|
+
* Custom collections can be created by registering icons with a specific collection name.
|
|
25
71
|
*/
|
|
26
72
|
collection: string;
|
|
27
73
|
/**
|
|
28
|
-
* Whether to flip the icon. Useful for RTL layouts.
|
|
29
|
-
*
|
|
74
|
+
* Whether to flip the icon horizontally. Useful for RTL (right-to-left) layouts.
|
|
75
|
+
*
|
|
76
|
+
* @attr mirrored
|
|
77
|
+
* @default false
|
|
78
|
+
*
|
|
79
|
+
* @remarks
|
|
80
|
+
* When true, the icon is flipped horizontally using CSS transform.
|
|
81
|
+
* This is particularly useful for directional icons (arrows, chevrons)
|
|
82
|
+
* in right-to-left language contexts.
|
|
30
83
|
*/
|
|
31
84
|
mirrored: boolean;
|
|
32
|
-
|
|
85
|
+
/** @internal */
|
|
33
86
|
connectedCallback(): void;
|
|
87
|
+
/** @internal */
|
|
34
88
|
disconnectedCallback(): void;
|
|
35
|
-
protected
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
89
|
+
protected update(props: PropertyValues<this>): void;
|
|
90
|
+
/**
|
|
91
|
+
* Callback invoked when an icon is registered or updated in the registry.
|
|
92
|
+
* Re-fetches the icon if it matches this component's name and collection.
|
|
93
|
+
*
|
|
94
|
+
* @param name - The name of the registered icon
|
|
95
|
+
* @param collection - The collection of the registered icon
|
|
96
|
+
*/
|
|
97
|
+
private _iconLoaded;
|
|
98
|
+
/**
|
|
99
|
+
* Fetches and updates the icon from the registry.
|
|
100
|
+
*
|
|
101
|
+
* @remarks
|
|
102
|
+
* This method:
|
|
103
|
+
* 1. Resolves the icon reference based on the current theme
|
|
104
|
+
* 2. Retrieves the SVG content from the registry
|
|
105
|
+
* 3. Updates the component's rendered SVG
|
|
106
|
+
* 4. Sets the appropriate ARIA label from the icon's title
|
|
107
|
+
*
|
|
108
|
+
*/
|
|
109
|
+
private _getIcon;
|
|
39
110
|
protected render(): import("lit-html").TemplateResult<1>;
|
|
40
111
|
protected registerIcon(name: string, url: string, collection?: string): Promise<void>;
|
|
41
112
|
protected registerIconFromText(name: string, iconText: string, collection?: string): void;
|
package/components/icon/icon.js
CHANGED
|
@@ -10,60 +10,60 @@ import { unsafeSVG } from 'lit/directives/unsafe-svg.js';
|
|
|
10
10
|
import { addThemingController } from '../../theming/theming-controller.js';
|
|
11
11
|
import { addInternalsController } from '../common/controllers/internals.js';
|
|
12
12
|
import { blazorInclude } from '../common/decorators/blazorInclude.js';
|
|
13
|
-
import { watch } from '../common/decorators/watch.js';
|
|
14
13
|
import { registerComponent } from '../common/definitions/register.js';
|
|
15
14
|
import { getIconRegistry, registerIcon as registerIcon_impl, registerIconFromText as registerIconFromText_impl, setIconRef as setIconRef_impl, } from './icon.registry.js';
|
|
16
15
|
import { styles } from './themes/icon.base.css.js';
|
|
17
16
|
import { styles as shared } from './themes/shared/icon.common.css.js';
|
|
18
17
|
import { all } from './themes/themes.js';
|
|
19
18
|
export default class IgcIconComponent extends LitElement {
|
|
20
|
-
static { this.tagName = 'igc-icon'; }
|
|
21
|
-
static { this.styles = [styles, shared]; }
|
|
22
|
-
static register() {
|
|
23
|
-
registerComponent(IgcIconComponent);
|
|
24
|
-
}
|
|
25
19
|
constructor() {
|
|
26
|
-
super();
|
|
20
|
+
super(...arguments);
|
|
27
21
|
this._internals = addInternalsController(this, {
|
|
28
22
|
initialARIA: { role: 'img' },
|
|
29
23
|
});
|
|
30
|
-
this.
|
|
24
|
+
this._theming = addThemingController(this, all, {
|
|
25
|
+
themeChange: this._getIcon,
|
|
26
|
+
});
|
|
27
|
+
this._svg = '';
|
|
31
28
|
this.name = '';
|
|
32
29
|
this.collection = 'default';
|
|
33
30
|
this.mirrored = false;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
addThemingController(this, all, {
|
|
40
|
-
themeChange: this._themeChangedCallback,
|
|
41
|
-
});
|
|
31
|
+
}
|
|
32
|
+
static { this.tagName = 'igc-icon'; }
|
|
33
|
+
static { this.styles = [styles, shared]; }
|
|
34
|
+
static register() {
|
|
35
|
+
registerComponent(IgcIconComponent);
|
|
42
36
|
}
|
|
43
37
|
connectedCallback() {
|
|
44
38
|
super.connectedCallback();
|
|
45
|
-
|
|
39
|
+
this._boundIconLoaded = this._iconLoaded.bind(this);
|
|
40
|
+
getIconRegistry().subscribe(this._boundIconLoaded);
|
|
46
41
|
}
|
|
47
42
|
disconnectedCallback() {
|
|
48
|
-
|
|
43
|
+
if (this._boundIconLoaded) {
|
|
44
|
+
getIconRegistry().unsubscribe(this._boundIconLoaded);
|
|
45
|
+
}
|
|
49
46
|
super.disconnectedCallback();
|
|
50
47
|
}
|
|
51
|
-
|
|
52
|
-
if (
|
|
53
|
-
this.
|
|
48
|
+
update(props) {
|
|
49
|
+
if (props.has('name') || props.has('collection')) {
|
|
50
|
+
this._getIcon();
|
|
54
51
|
}
|
|
52
|
+
super.update(props);
|
|
55
53
|
}
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
_iconLoaded(name, collection) {
|
|
55
|
+
if (this.name === name && this.collection === collection) {
|
|
56
|
+
this._getIcon();
|
|
57
|
+
}
|
|
58
58
|
}
|
|
59
|
-
|
|
60
|
-
const { name, collection } = getIconRegistry().getIconRef(this.name, this.collection);
|
|
61
|
-
const { svg, title } = getIconRegistry().get(name, collection) ?? {};
|
|
62
|
-
this.
|
|
63
|
-
this._internals.setARIA({ ariaLabel: title
|
|
59
|
+
_getIcon() {
|
|
60
|
+
const { name, collection } = getIconRegistry().getIconRef(this.name, this.collection, this._theming.theme);
|
|
61
|
+
const { svg = '', title = null } = getIconRegistry().get(name, collection) ?? {};
|
|
62
|
+
this._svg = svg;
|
|
63
|
+
this._internals.setARIA({ ariaLabel: title });
|
|
64
64
|
}
|
|
65
65
|
render() {
|
|
66
|
-
return html `${unsafeSVG(this.
|
|
66
|
+
return html `${unsafeSVG(this._svg)}`;
|
|
67
67
|
}
|
|
68
68
|
async registerIcon(name, url, collection = 'default') {
|
|
69
69
|
await registerIcon_impl(name, url, collection);
|
|
@@ -77,7 +77,7 @@ export default class IgcIconComponent extends LitElement {
|
|
|
77
77
|
}
|
|
78
78
|
__decorate([
|
|
79
79
|
state()
|
|
80
|
-
], IgcIconComponent.prototype, "
|
|
80
|
+
], IgcIconComponent.prototype, "_svg", void 0);
|
|
81
81
|
__decorate([
|
|
82
82
|
property()
|
|
83
83
|
], IgcIconComponent.prototype, "name", void 0);
|
|
@@ -87,10 +87,6 @@ __decorate([
|
|
|
87
87
|
__decorate([
|
|
88
88
|
property({ type: Boolean, reflect: true })
|
|
89
89
|
], IgcIconComponent.prototype, "mirrored", void 0);
|
|
90
|
-
__decorate([
|
|
91
|
-
watch('name'),
|
|
92
|
-
watch('collection')
|
|
93
|
-
], IgcIconComponent.prototype, "iconChanged", null);
|
|
94
90
|
__decorate([
|
|
95
91
|
blazorInclude()
|
|
96
92
|
], IgcIconComponent.prototype, "registerIcon", null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../../src/components/icon/icon.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../../src/components/icon/icon.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, type PropertyValues } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\n\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport { blazorInclude } from '../common/decorators/blazorInclude.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n getIconRegistry,\n registerIcon as registerIcon_impl,\n registerIconFromText as registerIconFromText_impl,\n setIconRef as setIconRef_impl,\n} from './icon.registry.js';\nimport type { IconCallback, IconMeta } from './registry/types.js';\nimport { styles } from './themes/icon.base.css.js';\nimport { styles as shared } from './themes/shared/icon.common.css.js';\nimport { all } from './themes/themes.js';\n\n/**\n * The icon component allows visualizing collections of pre-registered SVG icons.\n *\n * @element igc-icon\n *\n * @remarks\n * The icon component renders SVG icons from registered icon collections. Icons can be:\n * - Loaded from the internal collection (built-in icons)\n * - Registered dynamically using `registerIcon` or `registerIconFromText`\n * - Referenced by aliases that resolve differently based on the active theme\n *\n * Icons automatically adapt to the current theme when used within an `igc-theme-provider`.\n * The component subscribes to the icon registry and updates automatically when icons\n * are registered or references are updated.\n *\n * @example\n * ```html\n * <!-- Use a built-in icon -->\n * <igc-icon name=\"star\"></igc-icon>\n *\n * <!-- Use an icon from a specific collection -->\n * <igc-icon name=\"search\" collection=\"material\"></igc-icon>\n *\n * <!-- Mirror the icon for RTL layouts -->\n * <igc-icon name=\"arrow-forward\" mirrored></igc-icon>\n * ```\n *\n * @example\n * ```typescript\n * // Register a custom icon\n * import { registerIconFromText } from 'igniteui-webcomponents';\n *\n * const customIconSvg = '<svg viewBox=\"0 0 24 24\">...</svg>';\n * registerIconFromText('custom-icon', customIconSvg, 'my-collection');\n * ```\n */\nexport default class IgcIconComponent extends LitElement {\n public static readonly tagName = 'igc-icon';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcIconComponent);\n }\n\n private readonly _internals = addInternalsController(this, {\n initialARIA: { role: 'img' },\n });\n\n private readonly _theming = addThemingController(this, all, {\n themeChange: this._getIcon,\n });\n\n private _boundIconLoaded?: IconCallback;\n\n @state()\n private _svg = '';\n\n /* alternateName: iconName */\n /**\n * The name of the icon glyph to draw.\n *\n * @attr name\n *\n * @remarks\n * The icon name can be:\n * - A direct reference to a registered icon in the specified collection\n * - An alias that resolves to different icons based on the current theme\n *\n * When the icon name or collection changes, the component automatically\n * fetches and renders the new icon.\n */\n @property()\n public name = '';\n\n /**\n * The name of the registered collection for look up of icons.\n *\n * @attr collection\n * @default \"default\"\n *\n * @remarks\n * Collections allow organizing icons into logical groups. The \"default\"\n * collection is used for most icons.\n * Custom collections can be created by registering icons with a specific collection name.\n */\n @property()\n public collection = 'default';\n\n /**\n * Whether to flip the icon horizontally. Useful for RTL (right-to-left) layouts.\n *\n * @attr mirrored\n * @default false\n *\n * @remarks\n * When true, the icon is flipped horizontally using CSS transform.\n * This is particularly useful for directional icons (arrows, chevrons)\n * in right-to-left language contexts.\n */\n @property({ type: Boolean, reflect: true })\n public mirrored = false;\n\n /** @internal */\n public override connectedCallback(): void {\n super.connectedCallback();\n this._boundIconLoaded = this._iconLoaded.bind(this);\n getIconRegistry().subscribe(this._boundIconLoaded);\n }\n\n /** @internal */\n public override disconnectedCallback(): void {\n if (this._boundIconLoaded) {\n getIconRegistry().unsubscribe(this._boundIconLoaded);\n }\n super.disconnectedCallback();\n }\n\n protected override update(props: PropertyValues<this>): void {\n if (props.has('name') || props.has('collection')) {\n this._getIcon();\n }\n\n super.update(props);\n }\n\n /**\n * Callback invoked when an icon is registered or updated in the registry.\n * Re-fetches the icon if it matches this component's name and collection.\n *\n * @param name - The name of the registered icon\n * @param collection - The collection of the registered icon\n */\n private _iconLoaded(name: string, collection: string): void {\n if (this.name === name && this.collection === collection) {\n this._getIcon();\n }\n }\n\n /**\n * Fetches and updates the icon from the registry.\n *\n * @remarks\n * This method:\n * 1. Resolves the icon reference based on the current theme\n * 2. Retrieves the SVG content from the registry\n * 3. Updates the component's rendered SVG\n * 4. Sets the appropriate ARIA label from the icon's title\n *\n */\n private _getIcon(): void {\n const { name, collection } = getIconRegistry().getIconRef(\n this.name,\n this.collection,\n this._theming.theme\n );\n const { svg = '', title = null } =\n getIconRegistry().get(name, collection) ?? {};\n\n this._svg = svg;\n this._internals.setARIA({ ariaLabel: title });\n }\n\n protected override render() {\n return html`${unsafeSVG(this._svg)}`;\n }\n\n /* c8 ignore next 8 */\n @blazorInclude()\n protected async registerIcon(\n name: string,\n url: string,\n collection = 'default'\n ) {\n await registerIcon_impl(name, url, collection);\n }\n\n /* c8 ignore next 8 */\n @blazorInclude()\n protected registerIconFromText(\n name: string,\n iconText: string,\n collection = 'default'\n ) {\n registerIconFromText_impl(name, iconText, collection);\n }\n\n /* c8 ignore next 4 */\n @blazorInclude()\n protected setIconRef(name: string, collection: string, icon: IconMeta) {\n setIconRef_impl(name, collection, icon);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-icon': IgcIconComponent;\n }\n}\n"]}
|
|
@@ -1,24 +1,232 @@
|
|
|
1
1
|
import type { Theme } from '../../theming/types.js';
|
|
2
2
|
import type { IconCallback, IconMeta, IconReferencePair, SvgIcon } from './registry/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Global singleton registry for managing SVG icons and their references.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* The IconsRegistry class handles:
|
|
8
|
+
* - Registration and storage of SVG icons in collections
|
|
9
|
+
* - Icon reference/alias management with theme-based resolution
|
|
10
|
+
* - Notification of icon changes to subscribed components
|
|
11
|
+
* - Cross-context synchronization via BroadcastChannel
|
|
12
|
+
* - Batched notifications for performance optimization
|
|
13
|
+
*
|
|
14
|
+
* This is a singleton managed via Symbol.for to ensure a single instance
|
|
15
|
+
* across the entire application, even with multiple bundle instances.
|
|
16
|
+
*
|
|
17
|
+
* @internal This class is not directly exposed. Use the exported functions instead.
|
|
18
|
+
*/
|
|
3
19
|
declare class IconsRegistry {
|
|
4
|
-
|
|
5
|
-
private
|
|
6
|
-
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
private
|
|
10
|
-
|
|
20
|
+
/** Set of callbacks subscribed to icon change notifications */
|
|
21
|
+
private readonly _listeners;
|
|
22
|
+
/** Set of pending icon:collection keys awaiting notification */
|
|
23
|
+
private readonly _pendingNotifications;
|
|
24
|
+
/** Map of icon references/aliases by collection and name */
|
|
25
|
+
private readonly _references;
|
|
26
|
+
/** Map of registered SVG icons by collection and name */
|
|
27
|
+
private readonly _collections;
|
|
28
|
+
/** Parser for converting SVG text to icon metadata */
|
|
29
|
+
private readonly _svgIconParser;
|
|
30
|
+
/** Broadcast channel manager for cross-context synchronization */
|
|
31
|
+
private readonly _broadcast;
|
|
32
|
+
/** Flag indicating if a notification microtask is scheduled */
|
|
33
|
+
private _notificationScheduled;
|
|
34
|
+
/**
|
|
35
|
+
* Registers an SVG icon in the registry.
|
|
36
|
+
*
|
|
37
|
+
* @param name - The unique name for the icon within its collection
|
|
38
|
+
* @param iconText - The SVG markup as a string
|
|
39
|
+
* @param collection - The collection to register the icon in (default: 'default')
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
* This method:
|
|
43
|
+
* 1. Parses the SVG text into icon metadata
|
|
44
|
+
* 2. Stores the icon in the specified collection
|
|
45
|
+
* 3. Broadcasts the registration to other contexts
|
|
46
|
+
* 4. Notifies subscribed components (batched)
|
|
47
|
+
*
|
|
48
|
+
* @throws Will throw if the SVG text is malformed
|
|
49
|
+
*/
|
|
11
50
|
register(name: string, iconText: string, collection?: string): void;
|
|
51
|
+
/**
|
|
52
|
+
* Subscribes a callback to icon change notifications.
|
|
53
|
+
*
|
|
54
|
+
* @param callback - Function to call when icons are registered or updated
|
|
55
|
+
*
|
|
56
|
+
* @remarks
|
|
57
|
+
* The callback receives the icon name and collection when changes occur.
|
|
58
|
+
* Notifications are batched using microtasks for performance.
|
|
59
|
+
*/
|
|
12
60
|
subscribe(callback: IconCallback): void;
|
|
61
|
+
/**
|
|
62
|
+
* Unsubscribes a callback from icon change notifications.
|
|
63
|
+
*
|
|
64
|
+
* @param callback - The previously subscribed callback to remove
|
|
65
|
+
*/
|
|
13
66
|
unsubscribe(callback: IconCallback): void;
|
|
14
|
-
|
|
67
|
+
/**
|
|
68
|
+
* Sets an icon reference/alias.
|
|
69
|
+
*
|
|
70
|
+
* @param options - Configuration for the icon reference
|
|
71
|
+
*
|
|
72
|
+
* @remarks
|
|
73
|
+
* Icon references allow icons to be aliased with different names.
|
|
74
|
+
* They can be:
|
|
75
|
+
* - User-set (external: true) - higher priority, synced across contexts
|
|
76
|
+
* - System-set (external: false) - used internally, not synced
|
|
77
|
+
*
|
|
78
|
+
* When overwrite is true, the reference is stored and subscribers are notified.
|
|
79
|
+
* When external is true, the reference is broadcast to other contexts.
|
|
80
|
+
*/
|
|
15
81
|
setIconRef(options: IconReferencePair): void;
|
|
16
|
-
|
|
82
|
+
/**
|
|
83
|
+
* Gets the icon reference, resolving aliases based on the provided theme.
|
|
84
|
+
*
|
|
85
|
+
* @param name - The icon name or alias
|
|
86
|
+
* @param collection - The collection name
|
|
87
|
+
* @param theme - The theme to use for resolving aliases
|
|
88
|
+
* @returns The resolved icon metadata (without the internal 'external' flag)
|
|
89
|
+
*/
|
|
90
|
+
getIconRef(name: string, collection: string, theme?: Theme): IconMeta;
|
|
91
|
+
/**
|
|
92
|
+
* Retrieves an icon from the registry.
|
|
93
|
+
*
|
|
94
|
+
* @param name - The icon name
|
|
95
|
+
* @param collection - The collection name (default: 'default')
|
|
96
|
+
* @returns The SVG icon metadata, or undefined if not found
|
|
97
|
+
*
|
|
98
|
+
* @remarks
|
|
99
|
+
* Use `getIconRef` first to resolve aliases before calling this method.
|
|
100
|
+
*/
|
|
17
101
|
get(name: string, collection?: string): SvgIcon | undefined;
|
|
18
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Schedules a batched notification for icon changes.
|
|
104
|
+
*
|
|
105
|
+
* @param name - The icon name that changed
|
|
106
|
+
* @param collection - The collection name
|
|
107
|
+
*
|
|
108
|
+
* @remarks
|
|
109
|
+
* Notifications are batched in a microtask queue to avoid excessive
|
|
110
|
+
* listener calls when multiple icons are registered synchronously.
|
|
111
|
+
* Duplicate icon:collection pairs are automatically deduplicated.
|
|
112
|
+
*
|
|
113
|
+
* @internal
|
|
114
|
+
*/
|
|
115
|
+
private _notifyAll;
|
|
116
|
+
/**
|
|
117
|
+
* Flushes pending notifications to all subscribed listeners.
|
|
118
|
+
*
|
|
119
|
+
* @remarks
|
|
120
|
+
* This method is called as a microtask after icons are registered.
|
|
121
|
+
* It processes all pending icon:collection pairs and notifies listeners.
|
|
122
|
+
*
|
|
123
|
+
* @internal
|
|
124
|
+
*/
|
|
125
|
+
private _flushNotifications;
|
|
19
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Gets the global icon registry singleton instance.
|
|
129
|
+
*
|
|
130
|
+
* @returns The IconsRegistry singleton
|
|
131
|
+
*
|
|
132
|
+
* @remarks
|
|
133
|
+
* This function ensures only one instance of the registry exists globally,
|
|
134
|
+
* even across multiple bundle instances. The registry is stored on globalThis
|
|
135
|
+
* using a well-known Symbol.
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* const registry = getIconRegistry();
|
|
140
|
+
* registry.subscribe((name, collection) => {
|
|
141
|
+
* console.log(`Icon ${name} changed in ${collection}`);
|
|
142
|
+
* });
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
20
145
|
export declare function getIconRegistry(): IconsRegistry;
|
|
146
|
+
/**
|
|
147
|
+
* Registers an icon by fetching it from a URL.
|
|
148
|
+
*
|
|
149
|
+
* @param name - The unique name for the icon
|
|
150
|
+
* @param url - The URL to fetch the SVG icon from
|
|
151
|
+
* @param collection - The collection to register the icon in (default: 'default')
|
|
152
|
+
*
|
|
153
|
+
* @returns A promise that resolves when the icon is registered
|
|
154
|
+
*
|
|
155
|
+
* @throws If the HTTP request fails or returns a non-OK status
|
|
156
|
+
*
|
|
157
|
+
* @remarks
|
|
158
|
+
* This function fetches SVG content from the provided URL and registers it
|
|
159
|
+
* in the icon registry. The icon becomes immediately available to all icon
|
|
160
|
+
* components in the application.
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* // Register an icon from a URL
|
|
165
|
+
* await registerIcon('custom-icon', '/assets/icons/custom.svg');
|
|
166
|
+
*
|
|
167
|
+
* // Use in HTML
|
|
168
|
+
* // <igc-icon name="custom-icon"></igc-icon>
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
21
171
|
export declare function registerIcon(name: string, url: string, collection?: string): Promise<void>;
|
|
172
|
+
/**
|
|
173
|
+
* Registers an icon from SVG text content.
|
|
174
|
+
*
|
|
175
|
+
* @param name - The unique name for the icon
|
|
176
|
+
* @param iconText - The SVG markup as a string
|
|
177
|
+
* @param collection - The collection to register the icon in (default: 'default')
|
|
178
|
+
*
|
|
179
|
+
* @throws If the SVG text is malformed or doesn't contain an SVG element
|
|
180
|
+
*
|
|
181
|
+
* @remarks
|
|
182
|
+
* This is the preferred method for registering icons when you have the SVG
|
|
183
|
+
* content directly (e.g., from a bundled asset or inline string). The icon
|
|
184
|
+
* becomes immediately available to all icon components.
|
|
185
|
+
*
|
|
186
|
+
* The SVG text is parsed to extract viewBox, title, and other metadata.
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* const iconSvg = '<svg viewBox="0 0 24 24"><path d="..."/></svg>';
|
|
191
|
+
* registerIconFromText('my-icon', iconSvg, 'custom');
|
|
192
|
+
*
|
|
193
|
+
* // Use in HTML
|
|
194
|
+
* // <igc-icon name="my-icon" collection="custom"></igc-icon>
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
22
197
|
export declare function registerIconFromText(name: string, iconText: string, collection?: string): void;
|
|
198
|
+
/**
|
|
199
|
+
* Sets an icon reference/alias that points to another icon.
|
|
200
|
+
*
|
|
201
|
+
* @param name - The alias name
|
|
202
|
+
* @param collection - The collection for the alias
|
|
203
|
+
* @param icon - The target icon metadata (name and collection)
|
|
204
|
+
*
|
|
205
|
+
* @remarks
|
|
206
|
+
* Icon references allow you to create aliases that point to other icons.
|
|
207
|
+
* This is useful for:
|
|
208
|
+
* - Creating semantic names (e.g., 'close' → 'x')
|
|
209
|
+
* - Overriding default icon mappings
|
|
210
|
+
* - Providing fallbacks for missing icons
|
|
211
|
+
*
|
|
212
|
+
* User-set references are marked as external and have higher priority than
|
|
213
|
+
* theme-based aliases. They are also synchronized across browsing contexts.
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* ```typescript
|
|
217
|
+
* // Register target icon
|
|
218
|
+
* registerIconFromText('x-mark', '<svg>...</svg>');
|
|
219
|
+
*
|
|
220
|
+
* // Create an alias
|
|
221
|
+
* setIconRef('close', 'default', {
|
|
222
|
+
* name: 'x-mark',
|
|
223
|
+
* collection: 'default'
|
|
224
|
+
* });
|
|
225
|
+
*
|
|
226
|
+
* // Both work the same way:
|
|
227
|
+
* // <igc-icon name="close"></igc-icon>
|
|
228
|
+
* // <igc-icon name="x-mark"></igc-icon>
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
23
231
|
export declare function setIconRef(name: string, collection: string, icon: IconMeta): void;
|
|
24
232
|
export {};
|