igniteui-webcomponents 5.0.1 → 5.0.2
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 +12 -0
- package/README.md +3 -3
- package/components/accordion/accordion.d.ts +0 -2
- package/components/accordion/accordion.js +7 -14
- package/components/accordion/accordion.js.map +1 -1
- package/components/accordion/themes/accordion.base.css.js +1 -1
- package/components/accordion/themes/accordion.base.css.js.map +1 -1
- package/components/avatar/themes/avatar.base.css.js +1 -1
- package/components/avatar/themes/avatar.base.css.js.map +1 -1
- package/components/badge/themes/badge.base.css.js +1 -1
- package/components/badge/themes/badge.base.css.js.map +1 -1
- package/components/badge/themes/shared/badge.bootstrap.css.js +1 -1
- package/components/badge/themes/shared/badge.bootstrap.css.js.map +1 -1
- package/components/badge/themes/shared/badge.common.css.js +1 -1
- package/components/badge/themes/shared/badge.common.css.js.map +1 -1
- package/components/banner/themes/banner.base.css.js +1 -1
- package/components/banner/themes/banner.base.css.js.map +1 -1
- package/components/banner/themes/shared/banner.bootstrap.css.js +1 -1
- package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
- package/components/banner/themes/shared/banner.fluent.css.js +1 -1
- package/components/banner/themes/shared/banner.fluent.css.js.map +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
- package/components/banner/themes/shared/banner.material.css.js +1 -1
- package/components/banner/themes/shared/banner.material.css.js.map +1 -1
- package/components/button/themes/button/button.base.css.js +1 -1
- package/components/button/themes/button/button.base.css.js.map +1 -1
- package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
- package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
- package/components/button/themes/button/shared/button.common.css.js +1 -1
- package/components/button/themes/button/shared/button.common.css.js.map +1 -1
- package/components/button/themes/button/shared/button.fluent.css.js +1 -1
- package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
- package/components/button/themes/button/shared/button.indigo.css.js +1 -1
- package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
- package/components/button/themes/button/shared/button.material.css.js +1 -1
- package/components/button/themes/button/shared/button.material.css.js.map +1 -1
- package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
- package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
- package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
- package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
- package/components/button-group/themes/button.base.css.js +1 -1
- package/components/button-group/themes/button.base.css.js.map +1 -1
- package/components/button-group/themes/group.base.css.js +1 -1
- package/components/button-group/themes/group.base.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
- package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.fluent.css.js +1 -1
- package/components/button-group/themes/shared/button/button.fluent.css.js.map +1 -1
- package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
- package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
- package/components/button-group/themes/shared/group/group.common.css.js +1 -1
- package/components/button-group/themes/shared/group/group.common.css.js.map +1 -1
- package/components/calendar/calendar.d.ts +3 -2
- package/components/calendar/calendar.js +10 -9
- package/components/calendar/calendar.js.map +1 -1
- package/components/calendar/themes/calendar.base.css.js +1 -1
- package/components/calendar/themes/calendar.base.css.js.map +1 -1
- package/components/calendar/themes/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/days-view.base.css.js +1 -1
- package/components/calendar/themes/days-view.base.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/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/calendar.fluent.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/material/calendar.material.css.js +1 -1
- package/components/calendar/themes/shared/material/calendar.material.css.js.map +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
- package/components/calendar/themes/shared/material/year-month-view.material.css.js +1 -1
- package/components/calendar/themes/shared/material/year-month-view.material.css.js.map +1 -1
- package/components/calendar/themes/year-month-view.base.css.js +1 -1
- package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
- package/components/card/themes/card.actions.base.css.js +1 -1
- package/components/card/themes/card.actions.base.css.js.map +1 -1
- package/components/card/themes/card.content.base.css.js +1 -1
- package/components/card/themes/card.content.base.css.js.map +1 -1
- package/components/card/themes/card.header.base.css.js +1 -1
- package/components/card/themes/card.header.base.css.js.map +1 -1
- package/components/card/themes/card.media.base.css.js +1 -1
- package/components/card/themes/card.media.base.css.js.map +1 -1
- package/components/card/themes/container.base.css.js +1 -1
- package/components/card/themes/container.base.css.js.map +1 -1
- package/components/card/themes/shared/container/card.common.css.js +1 -1
- package/components/card/themes/shared/container/card.common.css.js.map +1 -1
- package/components/card/themes/shared/container/card.fluent.css.js +1 -1
- package/components/card/themes/shared/container/card.fluent.css.js.map +1 -1
- package/components/card/themes/shared/container/card.indigo.css.js +1 -1
- package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
- package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
- package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
- package/components/checkbox/checkbox-base.d.ts +2 -3
- package/components/checkbox/checkbox-base.js +6 -10
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/checkbox/themes/checkbox.base.css.js +1 -1
- package/components/checkbox/themes/checkbox.base.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
- package/components/checkbox/themes/switch.base.css.js +1 -1
- package/components/checkbox/themes/switch.base.css.js.map +1 -1
- package/components/chip/chip.d.ts +1 -1
- package/components/chip/themes/chip.base.css.js +1 -1
- package/components/chip/themes/chip.base.css.js.map +1 -1
- package/components/combo/combo.d.ts +3 -4
- package/components/combo/combo.js +11 -23
- package/components/combo/combo.js.map +1 -1
- package/components/combo/themes/combo-header.base.css.js +1 -1
- package/components/combo/themes/combo-header.base.css.js.map +1 -1
- package/components/combo/themes/combo-item.base.css.js +1 -1
- package/components/combo/themes/combo-item.base.css.js.map +1 -1
- package/components/combo/themes/combo.base.css.js +1 -1
- package/components/combo/themes/combo.base.css.js.map +1 -1
- package/components/combo/themes/dark/combo.indigo.css.js +1 -1
- package/components/combo/themes/dark/combo.indigo.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/shared/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
- package/components/combo/themes/shared/combo.common.css.js +1 -1
- package/components/combo/themes/shared/combo.common.css.js.map +1 -1
- package/components/combo/themes/shared/combo.fluent.css.js +1 -1
- package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
- package/components/combo/themes/shared/combo.material.css.js +1 -1
- package/components/combo/themes/shared/combo.material.css.js.map +1 -1
- package/components/common/controllers/key-bindings.d.ts +3 -3
- package/components/common/controllers/key-bindings.js +48 -49
- package/components/common/controllers/key-bindings.js.map +1 -1
- package/components/common/mixins/combo-box.d.ts +2 -2
- package/components/common/mixins/forms/associated-required.d.ts +13 -0
- package/components/common/mixins/forms/associated-required.js +47 -0
- package/components/common/mixins/forms/associated-required.js.map +1 -0
- package/components/common/mixins/forms/associated.d.ts +11 -0
- package/components/common/mixins/{form-associated.js → forms/associated.js} +102 -57
- package/components/common/mixins/forms/associated.js.map +1 -0
- package/components/common/mixins/forms/types.d.ts +125 -0
- package/components/common/mixins/forms/types.js +2 -0
- package/components/common/mixins/forms/types.js.map +1 -0
- package/components/date-picker/date-picker.d.ts +6 -3
- package/components/date-picker/date-picker.js +30 -24
- 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/light/date-picker.shared.css.js +1 -1
- package/components/date-picker/themes/light/date-picker.shared.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.indigo.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
- package/components/date-time-input/date-time-input.js +5 -6
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/dialog/dialog.d.ts +1 -1
- package/components/dialog/themes/dialog.base.css.js +1 -1
- package/components/dialog/themes/dialog.base.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
- package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
- package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
- package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
- package/components/divider/themes/divider.base.css.js +1 -1
- package/components/divider/themes/divider.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-group.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown-header.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-header.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown.base.css.js +1 -1
- package/components/dropdown/themes/dropdown.base.css.js.map +1 -1
- package/components/dropdown/themes/shared/dropdown.fluent.css.js +1 -1
- package/components/dropdown/themes/shared/dropdown.fluent.css.js.map +1 -1
- package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
- package/components/dropdown/themes/shared/dropdown.material.css.js +1 -1
- package/components/dropdown/themes/shared/dropdown.material.css.js.map +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
- package/components/expansion-panel/expansion-panel.d.ts +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
- package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
- package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
- package/components/icon/registry/default-map.d.ts +1 -1
- package/components/icon/themes/icon.base.css.js +1 -1
- package/components/icon/themes/icon.base.css.js.map +1 -1
- package/components/input/input-base.d.ts +2 -2
- package/components/input/input-base.js +1 -1
- package/components/input/input-base.js.map +1 -1
- package/components/input/input.d.ts +0 -2
- package/components/input/input.js +4 -10
- package/components/input/input.js.map +1 -1
- package/components/input/themes/input.base.css.js +1 -1
- package/components/input/themes/input.base.css.js.map +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/shared/input.common.css.js +1 -1
- package/components/input/themes/shared/input.common.css.js.map +1 -1
- package/components/input/themes/shared/input.fluent.css.js +1 -1
- package/components/input/themes/shared/input.fluent.css.js.map +1 -1
- package/components/input/themes/shared/input.indigo.css.js +1 -1
- package/components/input/themes/shared/input.indigo.css.js.map +1 -1
- package/components/input/themes/shared/input.material.css.js +1 -1
- package/components/input/themes/shared/input.material.css.js.map +1 -1
- package/components/list/themes/container.base.css.js +1 -1
- package/components/list/themes/container.base.css.js.map +1 -1
- package/components/list/themes/header.base.css.js +1 -1
- package/components/list/themes/header.base.css.js.map +1 -1
- package/components/list/themes/item.base.css.js +1 -1
- package/components/list/themes/item.base.css.js.map +1 -1
- package/components/list/themes/shared/item/list-item.common.css.js +1 -1
- package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
- package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
- package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +1 -2
- package/components/mask-input/mask-input.js +5 -10
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/nav-drawer/nav-drawer-item.d.ts +1 -1
- package/components/nav-drawer/nav-drawer.d.ts +1 -1
- package/components/nav-drawer/themes/container.base.css.js +1 -1
- package/components/nav-drawer/themes/container.base.css.js.map +1 -1
- package/components/nav-drawer/themes/header-item.base.css.js +1 -1
- package/components/nav-drawer/themes/header-item.base.css.js.map +1 -1
- package/components/nav-drawer/themes/item.base.css.js +1 -1
- package/components/nav-drawer/themes/item.base.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
- package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
- package/components/nav-drawer/themes/shared/item/item.indigo.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.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.indigo.css.js +1 -1
- package/components/navbar/themes/light/navbar.indigo.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/navbar/themes/navbar.base.css.js +1 -1
- package/components/navbar/themes/navbar.base.css.js.map +1 -1
- package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
- package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
- package/components/navbar/themes/shared/navbar.common.css.js +1 -1
- package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
- package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
- package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
- package/components/popover/themes/light/popover.base.css.js +1 -1
- package/components/popover/themes/light/popover.base.css.js.map +1 -1
- package/components/progress/base.d.ts +1 -1
- package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
- package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
- package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.common.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.common.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
- package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
- package/components/radio/radio.d.ts +4 -5
- package/components/radio/radio.js +24 -32
- package/components/radio/radio.js.map +1 -1
- package/components/radio/themes/radio.base.css.js +1 -1
- package/components/radio/themes/radio.base.css.js.map +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
- package/components/radio/themes/shared/radio.fluent.css.js +1 -1
- package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
- package/components/radio/themes/shared/radio.material.css.js +1 -1
- package/components/radio/themes/shared/radio.material.css.js.map +1 -1
- package/components/radio-group/radio-group.base.css.js +1 -1
- package/components/radio-group/radio-group.base.css.js.map +1 -1
- package/components/radio-group/radio-group.js +1 -1
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/rating/rating.d.ts +4 -3
- package/components/rating/rating.js +26 -25
- package/components/rating/rating.js.map +1 -1
- package/components/rating/themes/rating-symbol.base.css.js +1 -1
- package/components/rating/themes/rating-symbol.base.css.js.map +1 -1
- package/components/rating/themes/rating.base.css.js +1 -1
- package/components/rating/themes/rating.base.css.js.map +1 -1
- package/components/rating/themes/shared/rating.indigo.css.js +1 -1
- package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
- package/components/ripple/ripple.material.css.js +1 -1
- package/components/ripple/ripple.material.css.js.map +1 -1
- package/components/select/select.d.ts +2 -2
- package/components/select/select.js +4 -5
- package/components/select/select.js.map +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/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/select.base.css.js +1 -1
- package/components/select/themes/select.base.css.js.map +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/shared/select.common.css.js +1 -1
- package/components/select/themes/shared/select.common.css.js.map +1 -1
- package/components/select/themes/shared/select.fluent.css.js +1 -1
- package/components/select/themes/shared/select.fluent.css.js.map +1 -1
- package/components/select/themes/shared/select.indigo.css.js +1 -1
- package/components/select/themes/shared/select.indigo.css.js.map +1 -1
- package/components/select/themes/shared/select.material.css.js +1 -1
- package/components/select/themes/shared/select.material.css.js.map +1 -1
- package/components/slider/slider.d.ts +2 -1
- package/components/slider/slider.js +5 -2
- package/components/slider/slider.js.map +1 -1
- package/components/slider/themes/shared/slider.bootstrap.css.js +1 -1
- package/components/slider/themes/shared/slider.bootstrap.css.js.map +1 -1
- package/components/slider/themes/shared/slider.fluent.css.js +1 -1
- package/components/slider/themes/shared/slider.fluent.css.js.map +1 -1
- package/components/slider/themes/shared/slider.indigo.css.js +1 -1
- package/components/slider/themes/shared/slider.indigo.css.js.map +1 -1
- package/components/slider/themes/shared/slider.material.css.js +1 -1
- package/components/slider/themes/shared/slider.material.css.js.map +1 -1
- package/components/slider/themes/slider.base.css.js +1 -1
- package/components/slider/themes/slider.base.css.js.map +1 -1
- package/components/snackbar/themes/shared/snackbar.common.css.js +1 -1
- package/components/snackbar/themes/shared/snackbar.common.css.js.map +1 -1
- package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
- package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
- package/components/snackbar/themes/snackbar.base.css.js +1 -1
- package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
- package/components/stepper/themes/step/shared/step.bootstrap.css.js +1 -1
- package/components/stepper/themes/step/shared/step.bootstrap.css.js.map +1 -1
- package/components/stepper/themes/step/shared/step.common.css.js +1 -1
- package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
- package/components/stepper/themes/step/shared/step.fluent.css.js +1 -1
- package/components/stepper/themes/step/shared/step.fluent.css.js.map +1 -1
- package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
- package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
- package/components/stepper/themes/step/step.base.css.js +1 -1
- package/components/stepper/themes/step/step.base.css.js.map +1 -1
- package/components/stepper/themes/stepper/stepper.base.css.js +1 -1
- package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
- package/components/tabs/themes/tab-panel.base.css.js +1 -1
- package/components/tabs/themes/tab-panel.base.css.js.map +1 -1
- package/components/tabs/themes/tab.base.css.js +1 -1
- package/components/tabs/themes/tab.base.css.js.map +1 -1
- package/components/tabs/themes/tabs.base.css.js +1 -1
- package/components/tabs/themes/tabs.base.css.js.map +1 -1
- package/components/textarea/textarea.d.ts +1 -1
- package/components/textarea/textarea.js +4 -9
- package/components/textarea/textarea.js.map +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
- package/components/textarea/themes/textarea.base.css.js +1 -1
- package/components/textarea/themes/textarea.base.css.js.map +1 -1
- package/components/toast/themes/shared/toast.common.css.js +1 -1
- package/components/toast/themes/shared/toast.common.css.js.map +1 -1
- package/components/toast/themes/toast.base.css.js +1 -1
- package/components/toast/themes/toast.base.css.js.map +1 -1
- package/components/tree/themes/container.base.css.js +1 -1
- package/components/tree/themes/container.base.css.js.map +1 -1
- package/components/tree/themes/item.base.css.js +1 -1
- package/components/tree/themes/item.base.css.js.map +1 -1
- package/components/tree/themes/shared/item.common.css.js +1 -1
- package/components/tree/themes/shared/item.common.css.js.map +1 -1
- package/components/tree/themes/shared/item.indigo.css.js +1 -1
- package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
- package/components/tree/themes/shared/item.material.css.js +1 -1
- package/components/tree/themes/shared/item.material.css.js.map +1 -1
- package/custom-elements.json +5978 -2394
- package/igniteui-webcomponents.html-data.json +1 -1
- package/package.json +1 -1
- package/themes/dark/indigo.css +1 -1
- package/themes/light/indigo.css +1 -1
- package/web-types.json +1 -1
- package/components/common/mixins/form-associated-required.d.ts +0 -16
- package/components/common/mixins/form-associated-required.js +0 -29
- package/components/common/mixins/form-associated-required.js.map +0 -1
- package/components/common/mixins/form-associated.d.ts +0 -92
- package/components/common/mixins/form-associated.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"combo.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ssHAAssH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);display:block;padding:0;margin-top:.3125rem;color:var(--helper-text-color)}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)))}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none;height:var(--size)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(suffix){background:rgba(0,0,0,0)}[part=empty]{color:var(--empty-list-placeholder-color)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host([invalid]:focus-within) igc-input::part(input){height:calc(var(--size) - 0.25rem)}:host([invalid]:focus-within) igc-input::part(suffix){height:var(--size);margin-inline-end:-0.0625rem;margin-block-start:-0.125rem}:host([invalid]:focus-within) igc-input::part(prefix){margin-inline-start:-0.0625rem;margin-block-start:-0.125rem}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.
|
|
2
|
+
export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.25rem}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part="case-icon active"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius);outline:var(--border-width) solid var(--border-color);padding:.1875rem}[part=list-wrapper] igc-input{--ig-theme: indigo;--ig-size: var(--ig-size-medium)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:hover) [part~=toggle-icon],:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:hover) [part~=toggle-icon] igc-icon,:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:hover) [part~=clear-icon],:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:hover) [part~=clear-icon] igc-icon,:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;
|
|
3
3
|
//# sourceMappingURL=combo.indigo.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"combo.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,swGAAswG,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.25rem}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=\"case-icon active\"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius);outline:var(--border-width) solid var(--border-color);padding:.1875rem}[part=list-wrapper] igc-input{--ig-theme: indigo;--ig-size: var(--ig-size-medium)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:hover) [part~=toggle-icon],:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:hover) [part~=toggle-icon] igc-icon,:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:hover) [part~=clear-icon],:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:hover) [part~=clear-icon] igc-icon,:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part="toggle-icon filled"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-
|
|
2
|
+
export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part="toggle-icon filled"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{color:var(--toggle-button-foreground-filled);background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;
|
|
3
3
|
//# sourceMappingURL=combo.material.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo.material.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"combo.material.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,i+HAAi+H,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=\"toggle-icon filled\"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{color:var(--toggle-button-foreground-filled);background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;\n"]}
|
|
@@ -125,20 +125,20 @@ declare class KeyBindingController implements ReactiveController {
|
|
|
125
125
|
* Checks and executes any event modifiers that are present in the matched binding.
|
|
126
126
|
*/
|
|
127
127
|
private eventModifiersMatch;
|
|
128
|
-
private keysMatch;
|
|
129
128
|
private bindingMatches;
|
|
129
|
+
private shouldSkip;
|
|
130
130
|
handleEvent(event: KeyboardEvent): void;
|
|
131
131
|
/**
|
|
132
132
|
* Registers a keybinding handler.
|
|
133
133
|
*/
|
|
134
|
-
set(key: string | string[],
|
|
134
|
+
set(key: string | string[], handler: KeyBindingHandler, options?: KeyBindingOptions): this;
|
|
135
135
|
/**
|
|
136
136
|
* Register a handler function which is called when the target receives a key
|
|
137
137
|
* which "activates" it.
|
|
138
138
|
*
|
|
139
139
|
* In the browser context this is usually either an Enter and/or Space keypress.
|
|
140
140
|
*/
|
|
141
|
-
setActivateHandler(
|
|
141
|
+
setActivateHandler(handler: KeyBindingHandler, options?: KeyBindingOptions): this;
|
|
142
142
|
hostConnected(): void;
|
|
143
143
|
hostDisconnected(): void;
|
|
144
144
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { findElementFromEventPath } from '../util.js';
|
|
2
2
|
export const arrowLeft = 'ArrowLeft';
|
|
3
3
|
export const arrowRight = 'ArrowRight';
|
|
4
4
|
export const arrowUp = 'ArrowUp';
|
|
@@ -15,16 +15,16 @@ export const altKey = 'Alt';
|
|
|
15
15
|
export const ctrlKey = 'Ctrl';
|
|
16
16
|
export const metaKey = 'Meta';
|
|
17
17
|
export const shiftKey = 'Shift';
|
|
18
|
-
const
|
|
18
|
+
const Modifiers = new Map([altKey, ctrlKey, metaKey, shiftKey].map((key) => {
|
|
19
|
+
const mod = key.toLowerCase();
|
|
20
|
+
return key === ctrlKey ? ['control', mod] : [mod, mod];
|
|
21
|
+
}));
|
|
19
22
|
const defaultOptions = {
|
|
20
23
|
skip: ['input', 'textarea', 'select'],
|
|
21
24
|
};
|
|
22
25
|
function normalizeKeys(keys) {
|
|
23
26
|
return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());
|
|
24
27
|
}
|
|
25
|
-
function isModifier(key) {
|
|
26
|
-
return __modifiers.has(key);
|
|
27
|
-
}
|
|
28
28
|
function isKeydown(event) {
|
|
29
29
|
return event.type === 'keydown';
|
|
30
30
|
}
|
|
@@ -45,10 +45,16 @@ function isKeydownRepeatTrigger(triggers) {
|
|
|
45
45
|
export function parseKeys(keys) {
|
|
46
46
|
const parsed = normalizeKeys(keys);
|
|
47
47
|
return {
|
|
48
|
-
keys: parsed.filter((key) => !
|
|
49
|
-
modifiers: parsed.filter((key) =>
|
|
48
|
+
keys: parsed.filter((key) => !Modifiers.has(key)),
|
|
49
|
+
modifiers: parsed.filter((key) => Modifiers.has(key)),
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
|
+
function createCombinationKey(keys, modifiers) {
|
|
53
|
+
return Array.from(Modifiers.values())
|
|
54
|
+
.filter((mod) => modifiers.includes(mod))
|
|
55
|
+
.concat(keys)
|
|
56
|
+
.join('+');
|
|
57
|
+
}
|
|
52
58
|
class KeyBindingController {
|
|
53
59
|
get _element() {
|
|
54
60
|
if (this._observedElement) {
|
|
@@ -69,7 +75,7 @@ class KeyBindingController {
|
|
|
69
75
|
};
|
|
70
76
|
}
|
|
71
77
|
constructor(host, options) {
|
|
72
|
-
this.bindings = new
|
|
78
|
+
this.bindings = new Map();
|
|
73
79
|
this.pressedKeys = new Set();
|
|
74
80
|
this._host = host;
|
|
75
81
|
this._ref = options?.ref;
|
|
@@ -84,16 +90,8 @@ class KeyBindingController {
|
|
|
84
90
|
event.stopPropagation();
|
|
85
91
|
}
|
|
86
92
|
}
|
|
87
|
-
keysMatch(binding, event) {
|
|
88
|
-
const modifiers = binding.modifiers ?? [];
|
|
89
|
-
return (binding.keys.every((key) => this.pressedKeys.has(key)) &&
|
|
90
|
-
modifiers.every((mod) => !!event[`${mod}Key`]));
|
|
91
|
-
}
|
|
92
93
|
bindingMatches(binding, event) {
|
|
93
94
|
const triggers = binding.options?.triggers ?? ['keydown'];
|
|
94
|
-
if (!this.keysMatch(binding, event)) {
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
95
|
if (isKeydown(event) && isKeydownTrigger(triggers)) {
|
|
98
96
|
return true;
|
|
99
97
|
}
|
|
@@ -102,52 +100,53 @@ class KeyBindingController {
|
|
|
102
100
|
}
|
|
103
101
|
return false;
|
|
104
102
|
}
|
|
105
|
-
|
|
106
|
-
const key = event.key.toLowerCase();
|
|
107
|
-
const path = event.composedPath();
|
|
103
|
+
shouldSkip(event) {
|
|
108
104
|
const skip = this._options?.skip;
|
|
109
|
-
if (!
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
if (skip) {
|
|
113
|
-
const shouldSkip = Array.isArray(skip)
|
|
114
|
-
? path.some((target) => isElement(target) &&
|
|
115
|
-
skip.some((selector) => target.matches(selector)))
|
|
116
|
-
: skip.call(this._host, event.target, event);
|
|
117
|
-
if (shouldSkip) {
|
|
118
|
-
return;
|
|
119
|
-
}
|
|
105
|
+
if (!findElementFromEventPath((e) => e === this._element, event)) {
|
|
106
|
+
return true;
|
|
120
107
|
}
|
|
121
|
-
if (
|
|
122
|
-
|
|
108
|
+
if (!skip) {
|
|
109
|
+
return false;
|
|
123
110
|
}
|
|
124
|
-
|
|
125
|
-
|
|
111
|
+
return Array.isArray(skip)
|
|
112
|
+
? findElementFromEventPath(skip.join(), event)
|
|
113
|
+
: skip.call(this._host, event.target, event);
|
|
114
|
+
}
|
|
115
|
+
handleEvent(event) {
|
|
116
|
+
if (this.shouldSkip(event)) {
|
|
117
|
+
return;
|
|
126
118
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
119
|
+
const key = event.key.toLowerCase();
|
|
120
|
+
Modifiers.has(key) ? this.pressedKeys.clear() : this.pressedKeys.add(key);
|
|
121
|
+
const pendingKeys = Array.from(this.pressedKeys);
|
|
122
|
+
const modifiers = Array.from(Modifiers.values()).filter((mod) => event[`${mod}Key`]);
|
|
123
|
+
const binding = this.bindings.get(createCombinationKey(pendingKeys, modifiers));
|
|
124
|
+
if (binding && this.bindingMatches(binding, event)) {
|
|
125
|
+
this.eventModifiersMatch(binding, event);
|
|
126
|
+
binding.handler.call(this._host, event);
|
|
127
|
+
if (isKeydownRepeatTrigger(binding.options?.triggers)) {
|
|
128
|
+
this.pressedKeys.delete(key);
|
|
134
129
|
}
|
|
135
130
|
}
|
|
136
|
-
if (isKeyup(event) && !
|
|
131
|
+
if (isKeyup(event) && !Modifiers.has(key)) {
|
|
137
132
|
this.pressedKeys.delete(key);
|
|
138
133
|
}
|
|
139
134
|
}
|
|
140
|
-
set(key,
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
135
|
+
set(key, handler, options) {
|
|
136
|
+
const { keys, modifiers } = parseKeys(key);
|
|
137
|
+
const combination = createCombinationKey(keys, modifiers);
|
|
138
|
+
const _options = { ...this._options?.bindingDefaults, ...options };
|
|
139
|
+
this.bindings.set(combination, {
|
|
140
|
+
keys,
|
|
141
|
+
handler,
|
|
142
|
+
options: _options,
|
|
143
|
+
modifiers,
|
|
145
144
|
});
|
|
146
145
|
return this;
|
|
147
146
|
}
|
|
148
|
-
setActivateHandler(
|
|
147
|
+
setActivateHandler(handler, options) {
|
|
149
148
|
for (const key of [enterKey, spaceBar]) {
|
|
150
|
-
this.set(key,
|
|
149
|
+
this.set(key, handler, options);
|
|
151
150
|
}
|
|
152
151
|
return this;
|
|
153
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-bindings.js","sourceRoot":"","sources":["../../../../src/components/common/controllers/key-bindings.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { isElement } from '../util.js';\n\n/* Common keys */\nexport const arrowLeft = 'ArrowLeft' as const;\nexport const arrowRight = 'ArrowRight' as const;\nexport const arrowUp = 'ArrowUp' as const;\nexport const arrowDown = 'ArrowDown' as const;\nexport const enterKey = 'Enter' as const;\nexport const spaceBar = ' ' as const;\nexport const escapeKey = 'Escape' as const;\nexport const homeKey = 'Home' as const;\nexport const endKey = 'End' as const;\nexport const pageUpKey = 'PageUp' as const;\nexport const pageDownKey = 'PageDown' as const;\nexport const tabKey = 'Tab' as const;\n\n/* Modifiers */\nexport const altKey = 'Alt' as const;\nexport const ctrlKey = 'Ctrl' as const;\nexport const metaKey = 'Meta' as const;\nexport const shiftKey = 'Shift' as const;\n\n/* Types */\nexport type KeyBindingHandler = (event: KeyboardEvent) => void;\nexport type KeyBindingObserverCleanup = { unsubscribe: () => void };\n\n/**\n * Whether the current event should be ignored by the controller.\n *\n * @param node - The event target\n * @param event - The event object\n *\n * When `true` is returned, the current event is ignored.\n */\nexport type KeyBindingSkipCallback = (\n node: Element,\n event: KeyboardEvent\n) => boolean;\n\n/**\n * The event type which will trigger the bound handler.\n *\n * @remarks\n * `keydownRepeat` is similar to `keydown` with the exception\n * that after the handler is invoked the pressed state of the key is reset\n * in the controller.\n */\nexport type KeyBindingTrigger = 'keydown' | 'keyup' | 'keydownRepeat';\n\n/**\n * Configuration object for the controller.\n * @ignore\n */\nexport interface KeyBindingControllerOptions {\n /**\n * By default, the controller listens for keypress events in the context of the host element.\n * If you pass a `ref`, you can limit the observation to a certain DOM part of the host scope.\n */\n ref?: Ref;\n /**\n * Option to ignore key press events.\n *\n * If passed an array of CSS selectors, it will ignore key presses originating from elements in the event composed path\n * that match one of the selectors.\n * Otherwise you can pass a {@link KeyBindingSkipCallback} function.\n *\n * Defaults to `['input', 'textarea', 'select']`.\n *\n * @example\n * ```ts\n * {\n * // Skip events originating from elements with `readonly` attribute\n * skip: ['[readonly]']\n * }\n * ...\n * {\n * // Same as above but with a callback\n * skip: (node: Element) => node.hasAttribute('readonly')\n * }\n * ```\n */\n skip?: string[] | KeyBindingSkipCallback;\n /**\n * A set of KeyBindingOptions configuration which is applied to every handler\n * that is added to the controller.\n *\n * Any additional KeyBindingOptions values passed when `set` is called\n * will be merged with `bindingDefaults`.\n */\n bindingDefaults?: KeyBindingOptions;\n}\n\n/**\n * Configuration object for customizing the behavior of\n * the registered handler.\n */\nexport interface KeyBindingOptions {\n /**\n * The event type(s) on which the handler will be invoked.\n *\n * Defaults to `keydown` if not set.\n */\n triggers?: KeyBindingTrigger[];\n /**\n * Whether to call `preventDefault` on the target event before the handler is invoked.\n */\n preventDefault?: boolean;\n /**\n * Whether to call `stopPropagation` on the target event before the handler is invoked.\n */\n stopPropagation?: boolean;\n}\n\ninterface KeyBinding {\n keys: string[];\n handler: KeyBindingHandler;\n options?: KeyBindingOptions;\n modifiers?: string[];\n}\n\nconst __modifiers = new Set<string>(\n [altKey, ctrlKey, metaKey, shiftKey].map((key) => key.toLowerCase())\n);\n\nconst defaultOptions: KeyBindingControllerOptions = {\n skip: ['input', 'textarea', 'select'],\n};\n\nfunction normalizeKeys(keys: string | string[]) {\n return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());\n}\n\nfunction isModifier(key: string) {\n return __modifiers.has(key);\n}\n\nfunction isKeydown(event: Event) {\n return event.type === 'keydown';\n}\n\nfunction isKeyup(event: Event) {\n return event.type === 'keyup';\n}\n\nfunction isKeydownTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers\n ? triggers.includes('keydown') || isKeydownRepeatTrigger(triggers)\n : false;\n}\n\nfunction isKeyupTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keyup') : false;\n}\n\nfunction isKeydownRepeatTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keydownRepeat') : false;\n}\n\nexport function parseKeys(keys: string | string[]) {\n const parsed = normalizeKeys(keys);\n return {\n keys: parsed.filter((key) => !isModifier(key)),\n modifiers: parsed.filter((key) => isModifier(key)),\n };\n}\n\nclass KeyBindingController implements ReactiveController {\n protected _host: ReactiveControllerHost & Element;\n protected _ref?: Ref;\n protected _observedElement?: Element;\n protected _options?: KeyBindingControllerOptions;\n private bindings = new Set<KeyBinding>();\n private pressedKeys = new Set<string>();\n\n protected get _element() {\n if (this._observedElement) {\n return this._observedElement;\n }\n return this._ref ? this._ref.value : this._host;\n }\n\n /**\n * Sets the controller to listen for keyboard events on an arbitrary `element` in the page context.\n * All the configuration and event handlers are applied as well.\n *\n * Returns an object with an `unsubscribe` function which should be called when the observing of keyboard\n * events on the `element` should cease.\n */\n public observeElement(element: Element): KeyBindingObserverCleanup {\n element.addEventListener('keydown', this);\n element.addEventListener('keyup', this);\n this._observedElement = element;\n\n return {\n unsubscribe: () => {\n this._observedElement?.removeEventListener('keydown', this);\n this._observedElement?.removeEventListener('keyup', this);\n this._observedElement = undefined;\n },\n };\n }\n\n constructor(\n host: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n ) {\n this._host = host;\n this._ref = options?.ref;\n this._options = { ...defaultOptions, ...options };\n host.addController(this);\n }\n\n /**\n * Checks and executes any event modifiers that are present in the matched binding.\n */\n private eventModifiersMatch(binding: KeyBinding, event: KeyboardEvent) {\n if (binding.options?.preventDefault) {\n event.preventDefault();\n }\n\n if (binding.options?.stopPropagation) {\n event.stopPropagation();\n }\n }\n\n private keysMatch(binding: KeyBinding, event: KeyboardEvent) {\n const modifiers = binding.modifiers ?? [];\n return (\n binding.keys.every((key) => this.pressedKeys.has(key)) &&\n modifiers.every((mod) => !!event[`${mod}Key` as keyof KeyboardEvent])\n );\n }\n\n private bindingMatches(binding: KeyBinding, event: KeyboardEvent) {\n const triggers = binding.options?.triggers ?? ['keydown'];\n\n if (!this.keysMatch(binding, event)) {\n return false;\n }\n\n if (isKeydown(event) && isKeydownTrigger(triggers)) {\n return true;\n }\n\n if (isKeyup(event) && isKeyupTrigger(triggers)) {\n return true;\n }\n\n return false;\n }\n\n public handleEvent(event: KeyboardEvent) {\n const key = event.key.toLowerCase();\n const path = event.composedPath();\n const skip = this._options?.skip;\n\n if (!this._element || !path.includes(this._element)) {\n return;\n }\n\n if (skip) {\n const shouldSkip = Array.isArray(skip)\n ? path.some(\n (target) =>\n isElement(target) &&\n skip.some((selector) => target.matches(selector))\n )\n : skip.call(this._host, event.target as Element, event);\n\n if (shouldSkip) {\n return;\n }\n }\n\n if (isModifier(key)) {\n this.pressedKeys.clear();\n }\n\n if (isKeydown(event) && !isModifier(key)) {\n this.pressedKeys.add(key);\n }\n\n for (const binding of this.bindings) {\n if (this.bindingMatches(binding, event)) {\n this.eventModifiersMatch(binding, event);\n\n binding.handler.call(this._host, event);\n\n if (isKeydownRepeatTrigger(binding.options?.triggers)) {\n this.pressedKeys.delete(key);\n }\n }\n }\n\n if (isKeyup(event) && !isModifier(key)) {\n this.pressedKeys.delete(key);\n }\n }\n\n /**\n * Registers a keybinding handler.\n */\n public set(\n key: string | string[],\n fn: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n this.bindings.add({\n ...parseKeys(key),\n handler: fn,\n options: { ...this._options?.bindingDefaults, ...options },\n });\n\n return this;\n }\n\n /**\n * Register a handler function which is called when the target receives a key\n * which \"activates\" it.\n *\n * In the browser context this is usually either an Enter and/or Space keypress.\n */\n public setActivateHandler(\n fn: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n for (const key of [enterKey, spaceBar]) {\n this.set(key, fn, options);\n }\n\n return this;\n }\n\n public hostConnected(): void {\n this._host.addEventListener('keyup', this);\n this._host.addEventListener('keydown', this);\n }\n\n public hostDisconnected(): void {\n this._host.removeEventListener('keyup', this);\n this._host.removeEventListener('keydown', this);\n }\n}\n\n/**\n * Creates a keybinding controller and adds to it to the passed `element`\n * with the provided `options`.\n */\nexport function addKeybindings(\n element: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n) {\n return new KeyBindingController(element, options);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"key-bindings.js","sourceRoot":"","sources":["../../../../src/components/common/controllers/key-bindings.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { findElementFromEventPath } from '../util.js';\n\n/* Common keys */\nexport const arrowLeft = 'ArrowLeft' as const;\nexport const arrowRight = 'ArrowRight' as const;\nexport const arrowUp = 'ArrowUp' as const;\nexport const arrowDown = 'ArrowDown' as const;\nexport const enterKey = 'Enter' as const;\nexport const spaceBar = ' ' as const;\nexport const escapeKey = 'Escape' as const;\nexport const homeKey = 'Home' as const;\nexport const endKey = 'End' as const;\nexport const pageUpKey = 'PageUp' as const;\nexport const pageDownKey = 'PageDown' as const;\nexport const tabKey = 'Tab' as const;\n\n/* Modifiers */\nexport const altKey = 'Alt' as const;\nexport const ctrlKey = 'Ctrl' as const;\nexport const metaKey = 'Meta' as const;\nexport const shiftKey = 'Shift' as const;\n\n/* Types */\nexport type KeyBindingHandler = (event: KeyboardEvent) => void;\nexport type KeyBindingObserverCleanup = { unsubscribe: () => void };\n\n/**\n * Whether the current event should be ignored by the controller.\n *\n * @param node - The event target\n * @param event - The event object\n *\n * When `true` is returned, the current event is ignored.\n */\nexport type KeyBindingSkipCallback = (\n node: Element,\n event: KeyboardEvent\n) => boolean;\n\n/**\n * The event type which will trigger the bound handler.\n *\n * @remarks\n * `keydownRepeat` is similar to `keydown` with the exception\n * that after the handler is invoked the pressed state of the key is reset\n * in the controller.\n */\nexport type KeyBindingTrigger = 'keydown' | 'keyup' | 'keydownRepeat';\n\n/**\n * Configuration object for the controller.\n * @ignore\n */\nexport interface KeyBindingControllerOptions {\n /**\n * By default, the controller listens for keypress events in the context of the host element.\n * If you pass a `ref`, you can limit the observation to a certain DOM part of the host scope.\n */\n ref?: Ref;\n /**\n * Option to ignore key press events.\n *\n * If passed an array of CSS selectors, it will ignore key presses originating from elements in the event composed path\n * that match one of the selectors.\n * Otherwise you can pass a {@link KeyBindingSkipCallback} function.\n *\n * Defaults to `['input', 'textarea', 'select']`.\n *\n * @example\n * ```ts\n * {\n * // Skip events originating from elements with `readonly` attribute\n * skip: ['[readonly]']\n * }\n * ...\n * {\n * // Same as above but with a callback\n * skip: (node: Element) => node.hasAttribute('readonly')\n * }\n * ```\n */\n skip?: string[] | KeyBindingSkipCallback;\n /**\n * A set of KeyBindingOptions configuration which is applied to every handler\n * that is added to the controller.\n *\n * Any additional KeyBindingOptions values passed when `set` is called\n * will be merged with `bindingDefaults`.\n */\n bindingDefaults?: KeyBindingOptions;\n}\n\n/**\n * Configuration object for customizing the behavior of\n * the registered handler.\n */\nexport interface KeyBindingOptions {\n /**\n * The event type(s) on which the handler will be invoked.\n *\n * Defaults to `keydown` if not set.\n */\n triggers?: KeyBindingTrigger[];\n /**\n * Whether to call `preventDefault` on the target event before the handler is invoked.\n */\n preventDefault?: boolean;\n /**\n * Whether to call `stopPropagation` on the target event before the handler is invoked.\n */\n stopPropagation?: boolean;\n}\n\ninterface KeyBinding {\n keys: string[];\n handler: KeyBindingHandler;\n options?: KeyBindingOptions;\n modifiers?: string[];\n}\n\nconst Modifiers: Map<string, string> = new Map(\n [altKey, ctrlKey, metaKey, shiftKey].map((key) => {\n const mod = key.toLowerCase();\n return key === ctrlKey ? ['control', mod] : [mod, mod];\n })\n);\n\nconst defaultOptions: KeyBindingControllerOptions = {\n skip: ['input', 'textarea', 'select'],\n};\n\nfunction normalizeKeys(keys: string | string[]) {\n return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());\n}\n\nfunction isKeydown(event: Event) {\n return event.type === 'keydown';\n}\n\nfunction isKeyup(event: Event) {\n return event.type === 'keyup';\n}\n\nfunction isKeydownTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers\n ? triggers.includes('keydown') || isKeydownRepeatTrigger(triggers)\n : false;\n}\n\nfunction isKeyupTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keyup') : false;\n}\n\nfunction isKeydownRepeatTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keydownRepeat') : false;\n}\n\nexport function parseKeys(keys: string | string[]) {\n const parsed = normalizeKeys(keys);\n return {\n keys: parsed.filter((key) => !Modifiers.has(key)),\n modifiers: parsed.filter((key) => Modifiers.has(key)),\n };\n}\n\nfunction createCombinationKey(keys: string[], modifiers: string[]) {\n return Array.from(Modifiers.values())\n .filter((mod) => modifiers.includes(mod))\n .concat(keys)\n .join('+');\n}\n\nclass KeyBindingController implements ReactiveController {\n protected _host: ReactiveControllerHost & Element;\n protected _ref?: Ref;\n protected _observedElement?: Element;\n protected _options?: KeyBindingControllerOptions;\n private bindings = new Map<string, KeyBinding>();\n private pressedKeys = new Set<string>();\n\n protected get _element() {\n if (this._observedElement) {\n return this._observedElement;\n }\n return this._ref ? this._ref.value : this._host;\n }\n\n /**\n * Sets the controller to listen for keyboard events on an arbitrary `element` in the page context.\n * All the configuration and event handlers are applied as well.\n *\n * Returns an object with an `unsubscribe` function which should be called when the observing of keyboard\n * events on the `element` should cease.\n */\n public observeElement(element: Element): KeyBindingObserverCleanup {\n element.addEventListener('keydown', this);\n element.addEventListener('keyup', this);\n this._observedElement = element;\n\n return {\n unsubscribe: () => {\n this._observedElement?.removeEventListener('keydown', this);\n this._observedElement?.removeEventListener('keyup', this);\n this._observedElement = undefined;\n },\n };\n }\n\n constructor(\n host: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n ) {\n this._host = host;\n this._ref = options?.ref;\n this._options = { ...defaultOptions, ...options };\n host.addController(this);\n }\n\n /**\n * Checks and executes any event modifiers that are present in the matched binding.\n */\n private eventModifiersMatch(binding: KeyBinding, event: KeyboardEvent) {\n if (binding.options?.preventDefault) {\n event.preventDefault();\n }\n\n if (binding.options?.stopPropagation) {\n event.stopPropagation();\n }\n }\n\n private bindingMatches(binding: KeyBinding, event: KeyboardEvent) {\n const triggers = binding.options?.triggers ?? ['keydown'];\n\n if (isKeydown(event) && isKeydownTrigger(triggers)) {\n return true;\n }\n\n if (isKeyup(event) && isKeyupTrigger(triggers)) {\n return true;\n }\n\n return false;\n }\n\n private shouldSkip(event: KeyboardEvent) {\n const skip = this._options?.skip;\n\n if (!findElementFromEventPath((e) => e === this._element, event)) {\n return true;\n }\n\n if (!skip) {\n return false;\n }\n\n return Array.isArray(skip)\n ? findElementFromEventPath(skip.join(), event)\n : skip.call(this._host, event.target as Element, event);\n }\n\n public handleEvent(event: KeyboardEvent) {\n if (this.shouldSkip(event)) {\n return;\n }\n\n const key = event.key.toLowerCase();\n Modifiers.has(key) ? this.pressedKeys.clear() : this.pressedKeys.add(key);\n\n const pendingKeys = Array.from(this.pressedKeys);\n const modifiers = Array.from(Modifiers.values()).filter(\n (mod) => event[`${mod}Key` as keyof KeyboardEvent]\n );\n\n const binding = this.bindings.get(\n createCombinationKey(pendingKeys, modifiers)\n );\n\n if (binding && this.bindingMatches(binding, event)) {\n this.eventModifiersMatch(binding, event);\n binding.handler.call(this._host, event);\n\n if (isKeydownRepeatTrigger(binding.options?.triggers)) {\n this.pressedKeys.delete(key);\n }\n }\n\n if (isKeyup(event) && !Modifiers.has(key)) {\n this.pressedKeys.delete(key);\n }\n }\n\n /**\n * Registers a keybinding handler.\n */\n public set(\n key: string | string[],\n handler: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n const { keys, modifiers } = parseKeys(key);\n const combination = createCombinationKey(keys, modifiers);\n const _options = { ...this._options?.bindingDefaults, ...options };\n\n this.bindings.set(combination, {\n keys,\n handler,\n options: _options,\n modifiers,\n });\n\n return this;\n }\n\n /**\n * Register a handler function which is called when the target receives a key\n * which \"activates\" it.\n *\n * In the browser context this is usually either an Enter and/or Space keypress.\n */\n public setActivateHandler(\n handler: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n for (const key of [enterKey, spaceBar]) {\n this.set(key, handler, options);\n }\n\n return this;\n }\n\n public hostConnected(): void {\n this._host.addEventListener('keyup', this);\n this._host.addEventListener('keydown', this);\n }\n\n public hostDisconnected(): void {\n this._host.removeEventListener('keyup', this);\n this._host.removeEventListener('keydown', this);\n }\n}\n\n/**\n * Creates a keybinding controller and adds to it to the passed `element`\n * with the provided `options`.\n */\nexport function addKeybindings(\n element: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n) {\n return new KeyBindingController(element, options);\n}\n"]}
|
|
@@ -38,10 +38,10 @@ export declare abstract class IgcBaseComboBoxLikeComponent extends LitElement {
|
|
|
38
38
|
/** Toggles the open state of the component. */
|
|
39
39
|
toggle(): Promise<boolean>;
|
|
40
40
|
}
|
|
41
|
-
export declare function getItems<T extends HTMLElement>(root: Node, tagName: string): Generator<T, any,
|
|
41
|
+
export declare function getItems<T extends HTMLElement>(root: Node, tagName: string): Generator<T, any, any>;
|
|
42
42
|
export declare function getActiveItems<T extends HTMLElement & {
|
|
43
43
|
disabled: boolean;
|
|
44
|
-
}>(root: Node, tagName: string): Generator<T, any,
|
|
44
|
+
}>(root: Node, tagName: string): Generator<T, any, any>;
|
|
45
45
|
export declare function getNextActiveItem<T extends HTMLElement & {
|
|
46
46
|
disabled: boolean;
|
|
47
47
|
}>(items: T[], from: T): T;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { LitElement } from 'lit';
|
|
2
|
+
import type { Constructor } from '../constructor.js';
|
|
3
|
+
import type { FormAssociatedCheckboxElementInterface, FormAssociatedElementInterface, FormRequiredInterface } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Mixes the passed class into a form associated custom element with an
|
|
6
|
+
* additional `required` attribute.
|
|
7
|
+
*/
|
|
8
|
+
export declare function FormAssociatedRequiredMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormRequiredInterface & FormAssociatedElementInterface> & T;
|
|
9
|
+
/**
|
|
10
|
+
* Mixes the passed class into a form associated custom element with an
|
|
11
|
+
* additional `required` attribute.
|
|
12
|
+
*/
|
|
13
|
+
export declare function FormAssociatedCheckboxRequiredMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormRequiredInterface & FormAssociatedCheckboxElementInterface> & T;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { property } from 'lit/decorators.js';
|
|
8
|
+
import { FormAssociatedCheckboxMixin, FormAssociatedMixin, } from './associated.js';
|
|
9
|
+
export function FormAssociatedRequiredMixin(base) {
|
|
10
|
+
class FormAssociatedRequiredElement extends FormAssociatedMixin(base) {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this._required = false;
|
|
14
|
+
}
|
|
15
|
+
set required(value) {
|
|
16
|
+
this._required = Boolean(value);
|
|
17
|
+
this._validate();
|
|
18
|
+
}
|
|
19
|
+
get required() {
|
|
20
|
+
return this._required;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
__decorate([
|
|
24
|
+
property({ type: Boolean, reflect: true })
|
|
25
|
+
], FormAssociatedRequiredElement.prototype, "required", null);
|
|
26
|
+
return FormAssociatedRequiredElement;
|
|
27
|
+
}
|
|
28
|
+
export function FormAssociatedCheckboxRequiredMixin(base) {
|
|
29
|
+
class FormAssociatedRequiredElement extends FormAssociatedCheckboxMixin(base) {
|
|
30
|
+
constructor() {
|
|
31
|
+
super(...arguments);
|
|
32
|
+
this._required = false;
|
|
33
|
+
}
|
|
34
|
+
set required(value) {
|
|
35
|
+
this._required = Boolean(value);
|
|
36
|
+
this._validate();
|
|
37
|
+
}
|
|
38
|
+
get required() {
|
|
39
|
+
return this._required;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
__decorate([
|
|
43
|
+
property({ type: Boolean, reflect: true })
|
|
44
|
+
], FormAssociatedRequiredElement.prototype, "required", null);
|
|
45
|
+
return FormAssociatedRequiredElement;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=associated-required.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"associated-required.js","sourceRoot":"","sources":["../../../../../src/components/common/mixins/forms/associated-required.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAWzB,MAAM,UAAU,2BAA2B,CACzC,IAAO;IAEP,MAAM,6BAA8B,SAAQ,mBAAmB,CAAC,IAAI,CAAC;QAArE;;YACY,cAAS,GAAG,KAAK,CAAC;QAgB9B,CAAC;QARC,IAAW,QAAQ,CAAC,KAAc;YAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAED,IAAW,QAAQ;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;KACF;IARC;QADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iEAI1C;IAOH,OAAO,6BAGJ,CAAC;AACN,CAAC;AAMD,MAAM,UAAU,mCAAmC,CAEjD,IAAO;IACP,MAAM,6BAA8B,SAAQ,2BAA2B,CACrE,IAAI,CACL;QAFD;;YAGY,cAAS,GAAG,KAAK,CAAC;QAgB9B,CAAC;QARC,IAAW,QAAQ,CAAC,KAAc;YAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAED,IAAW,QAAQ;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;KACF;IARC;QADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iEAI1C;IAOH,OAAO,6BAGJ,CAAC;AACN,CAAC","sourcesContent":["import type { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport type { Constructor } from '../constructor.js';\nimport {\n FormAssociatedCheckboxMixin,\n FormAssociatedMixin,\n} from './associated.js';\nimport type {\n FormAssociatedCheckboxElementInterface,\n FormAssociatedElementInterface,\n FormRequiredInterface,\n} from './types.js';\n\n/**\n * Mixes the passed class into a form associated custom element with an\n * additional `required` attribute.\n */\nexport function FormAssociatedRequiredMixin<T extends Constructor<LitElement>>(\n base: T\n) {\n class FormAssociatedRequiredElement extends FormAssociatedMixin(base) {\n protected _required = false;\n\n /**\n * When set, makes the component a required field for validation.\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public set required(value: boolean) {\n this._required = Boolean(value);\n this._validate();\n }\n\n public get required(): boolean {\n return this._required;\n }\n }\n\n return FormAssociatedRequiredElement as unknown as Constructor<\n FormRequiredInterface & FormAssociatedElementInterface\n > &\n T;\n}\n\n/**\n * Mixes the passed class into a form associated custom element with an\n * additional `required` attribute.\n */\nexport function FormAssociatedCheckboxRequiredMixin<\n T extends Constructor<LitElement>,\n>(base: T) {\n class FormAssociatedRequiredElement extends FormAssociatedCheckboxMixin(\n base\n ) {\n protected _required = false;\n\n /**\n * When set, makes the component a required field for validation.\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public set required(value: boolean) {\n this._required = Boolean(value);\n this._validate();\n }\n\n public get required(): boolean {\n return this._required;\n }\n }\n\n return FormAssociatedRequiredElement as unknown as Constructor<\n FormRequiredInterface & FormAssociatedCheckboxElementInterface\n > &\n T;\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { LitElement } from 'lit';
|
|
2
|
+
import type { Constructor } from '../constructor.js';
|
|
3
|
+
import type { FormAssociatedCheckboxElementInterface, FormAssociatedElementInterface } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Mixes the passed in class and turns it into a form associated custom element.
|
|
6
|
+
*/
|
|
7
|
+
export declare function FormAssociatedMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormAssociatedElementInterface> & T;
|
|
8
|
+
/**
|
|
9
|
+
* Mixes the passed in class and turns it into a form associated custom element.
|
|
10
|
+
*/
|
|
11
|
+
export declare function FormAssociatedCheckboxMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormAssociatedCheckboxElementInterface> & T;
|