igniteui-webcomponents 4.11.0 → 5.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +79 -0
- package/README.md +168 -110
- package/components/accordion/accordion.d.ts +2 -2
- package/components/accordion/accordion.js +25 -35
- package/components/accordion/accordion.js.map +1 -1
- package/components/avatar/avatar.d.ts +1 -3
- package/components/avatar/avatar.js +1 -3
- package/components/avatar/avatar.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/badge.d.ts +2 -1
- package/components/badge/badge.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/button/button-base.d.ts +3 -4
- package/components/button/button-base.js +1 -9
- package/components/button/button-base.js.map +1 -1
- package/components/button/button.d.ts +3 -7
- package/components/button/button.js +4 -5
- package/components/button/button.js.map +1 -1
- package/components/button/icon-button.d.ts +2 -2
- package/components/button/icon-button.js +0 -3
- package/components/button/icon-button.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/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-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/calendar/base.d.ts +65 -0
- package/components/calendar/base.js +150 -0
- package/components/calendar/base.js.map +1 -0
- package/components/calendar/calendar.d.ts +113 -61
- package/components/calendar/calendar.js +417 -514
- package/components/calendar/calendar.js.map +1 -1
- package/components/calendar/days-view/days-view.d.ts +43 -46
- package/components/calendar/days-view/days-view.js +269 -340
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/calendar/helpers.d.ts +30 -0
- package/components/calendar/helpers.js +99 -0
- package/components/calendar/helpers.js.map +1 -0
- package/components/calendar/model.d.ts +55 -0
- package/components/calendar/model.js +94 -0
- package/components/calendar/model.js.map +1 -0
- package/components/calendar/months-view/months-view.d.ts +12 -12
- package/components/calendar/months-view/months-view.js +72 -79
- package/components/calendar/months-view/months-view.js.map +1 -1
- package/components/calendar/themes/calendar.base.css.js +1 -1
- package/components/calendar/themes/calendar.base.css.js.map +1 -1
- package/components/calendar/types.d.ts +16 -0
- package/components/calendar/types.js +10 -0
- package/components/calendar/types.js.map +1 -0
- package/components/calendar/years-view/years-view.d.ts +13 -12
- package/components/calendar/years-view/years-view.js +58 -73
- package/components/calendar/years-view/years-view.js.map +1 -1
- package/components/card/themes/card.actions.base.css.js +1 -1
- package/components/card/themes/card.actions.base.css.js.map +1 -1
- package/components/card/themes/card.content.base.css.js +1 -1
- package/components/card/themes/card.content.base.css.js.map +1 -1
- package/components/card/themes/card.header.base.css.js +1 -1
- package/components/card/themes/card.header.base.css.js.map +1 -1
- package/components/card/themes/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/checkbox/checkbox-base.d.ts +8 -5
- package/components/checkbox/checkbox-base.js +8 -15
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/checkbox/checkbox.d.ts +2 -4
- package/components/checkbox/checkbox.js.map +1 -1
- package/components/checkbox/switch.d.ts +1 -3
- package/components/checkbox/switch.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/switch.base.css.js +1 -1
- package/components/checkbox/themes/switch.base.css.js.map +1 -1
- package/components/checkbox/validators.d.ts +3 -0
- package/components/checkbox/validators.js +5 -0
- package/components/checkbox/validators.js.map +1 -0
- package/components/chip/chip.d.ts +4 -3
- package/components/chip/chip.js +11 -19
- package/components/chip/chip.js.map +1 -1
- package/components/chip/themes/chip.base.css.js +1 -1
- package/components/chip/themes/chip.base.css.js.map +1 -1
- package/components/chip/themes/shared/chip.common.css.js +1 -1
- package/components/chip/themes/shared/chip.common.css.js.map +1 -1
- package/components/combo/combo.d.ts +36 -54
- package/components/combo/combo.js +36 -59
- 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/types.d.ts +2 -2
- package/components/combo/types.js.map +1 -1
- package/components/combo/validators.d.ts +3 -0
- package/components/combo/validators.js +9 -0
- package/components/combo/validators.js.map +1 -0
- package/components/common/controllers/key-bindings.d.ts +1 -0
- package/components/common/controllers/key-bindings.js.map +1 -1
- package/components/common/controllers/mutation-observer.d.ts +1 -0
- package/components/common/controllers/mutation-observer.js.map +1 -1
- package/components/common/controllers/root-click.d.ts +4 -2
- package/components/common/controllers/root-click.js +13 -7
- package/components/common/controllers/root-click.js.map +1 -1
- package/components/common/definitions/defineAllComponents.js +0 -2
- package/components/common/definitions/defineAllComponents.js.map +1 -1
- package/components/common/localization/intl-formatters.d.ts +17 -0
- package/components/common/localization/intl-formatters.js +46 -0
- package/components/common/localization/intl-formatters.js.map +1 -0
- package/components/common/mixins/alert.d.ts +3 -3
- package/components/common/mixins/alert.js +6 -4
- package/components/common/mixins/alert.js.map +1 -1
- package/components/common/mixins/combo-box.d.ts +4 -3
- package/components/common/mixins/combo-box.js +16 -10
- package/components/common/mixins/combo-box.js.map +1 -1
- package/components/common/mixins/form-associated.d.ts +1 -1
- package/components/common/mixins/form-associated.js +4 -2
- package/components/common/mixins/form-associated.js.map +1 -1
- package/components/common/util.d.ts +26 -0
- package/components/common/util.js +34 -0
- package/components/common/util.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +7 -10
- package/components/date-picker/date-picker.js +16 -33
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/date-picker.base.css.js +1 -1
- package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
- package/components/date-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/validators.d.ts +3 -0
- package/components/date-picker/validators.js +15 -0
- package/components/date-picker/validators.js.map +1 -0
- package/components/date-time-input/date-time-input.d.ts +3 -22
- package/components/date-time-input/date-time-input.js +8 -36
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/date-time-input/date-util.js +3 -1
- package/components/date-time-input/date-util.js.map +1 -1
- package/components/date-time-input/validators.d.ts +3 -0
- package/components/date-time-input/validators.js +18 -0
- package/components/date-time-input/validators.js.map +1 -0
- package/components/dialog/dialog.d.ts +12 -25
- package/components/dialog/dialog.js +55 -77
- package/components/dialog/dialog.js.map +1 -1
- package/components/dialog/themes/dialog.base.css.js +1 -1
- package/components/dialog/themes/dialog.base.css.js.map +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js +1 -1
- package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
- package/components/divider/divider.js.map +1 -1
- package/components/divider/themes/divider.base.css.js +1 -1
- package/components/divider/themes/divider.base.css.js.map +1 -1
- package/components/dropdown/dropdown-group.d.ts +1 -1
- package/components/dropdown/dropdown-group.js +5 -3
- package/components/dropdown/dropdown-group.js.map +1 -1
- package/components/dropdown/dropdown.d.ts +4 -11
- package/components/dropdown/dropdown.js +10 -23
- package/components/dropdown/dropdown.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/expansion-panel/expansion-panel.d.ts +10 -10
- package/components/expansion-panel/expansion-panel.js +39 -39
- package/components/expansion-panel/expansion-panel.js.map +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
- package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
- package/components/icon/icon-references.d.ts +28 -0
- package/components/icon/icon-references.js +151 -0
- package/components/icon/icon-references.js.map +1 -0
- package/components/icon/icon-state.broadcast.d.ts +10 -0
- package/components/icon/icon-state.broadcast.js +36 -0
- package/components/icon/icon-state.broadcast.js.map +1 -0
- package/components/icon/icon.d.ts +3 -3
- package/components/icon/icon.js +13 -7
- package/components/icon/icon.js.map +1 -1
- package/components/icon/icon.registry.d.ts +14 -14
- package/components/icon/icon.registry.js +70 -26
- package/components/icon/icon.registry.js.map +1 -1
- package/components/icon/internal-icons-lib.d.ts +2 -2
- package/components/icon/internal-icons-lib.js +2 -2
- package/components/icon/internal-icons-lib.js.map +1 -1
- package/components/icon/registry/default-map.d.ts +12 -0
- package/components/icon/registry/default-map.js +31 -0
- package/components/icon/registry/default-map.js.map +1 -0
- package/components/icon/registry/parser.d.ts +6 -0
- package/components/icon/registry/parser.js +21 -0
- package/components/icon/registry/parser.js.map +1 -0
- package/components/icon/registry/types.d.ts +34 -0
- package/components/icon/registry/types.js +7 -0
- package/components/icon/registry/types.js.map +1 -0
- 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 +8 -21
- package/components/input/input-base.js +12 -41
- package/components/input/input-base.js.map +1 -1
- package/components/input/input.d.ts +3 -29
- package/components/input/input.js +4 -78
- 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/validators.d.ts +4 -0
- package/components/input/validators.js +30 -0
- package/components/input/validators.js.map +1 -0
- package/components/list/list.d.ts +1 -3
- package/components/list/list.js +1 -2
- package/components/list/list.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/mask-input/mask-input-base.d.ts +3 -2
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +1 -4
- package/components/mask-input/mask-input.js +7 -17
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/mask-input/validators.d.ts +3 -0
- package/components/mask-input/validators.js +11 -0
- package/components/mask-input/validators.js.map +1 -0
- package/components/nav-drawer/nav-drawer-item.d.ts +1 -5
- package/components/nav-drawer/nav-drawer-item.js +9 -10
- package/components/nav-drawer/nav-drawer-item.js.map +1 -1
- package/components/nav-drawer/nav-drawer.d.ts +4 -3
- package/components/nav-drawer/nav-drawer.js +18 -7
- package/components/nav-drawer/nav-drawer.js.map +1 -1
- package/components/nav-drawer/themes/container.base.css.js +1 -1
- package/components/nav-drawer/themes/container.base.css.js.map +1 -1
- package/components/nav-drawer/themes/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/navbar/themes/navbar.base.css.js +1 -1
- package/components/navbar/themes/navbar.base.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 +2 -1
- package/components/progress/base.js.map +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/linear/linear.progress.base.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
- package/components/radio/radio.d.ts +9 -9
- package/components/radio/radio.js +17 -31
- 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/validators.d.ts +3 -0
- package/components/radio/validators.js +13 -0
- package/components/radio/validators.js.map +1 -0
- 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.map +1 -1
- package/components/rating/rating.d.ts +1 -9
- package/components/rating/rating.js +6 -16
- 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/ripple/ripple.material.css.js +1 -1
- package/components/ripple/ripple.material.css.js.map +1 -1
- package/components/select/select.d.ts +5 -33
- package/components/select/select.js +23 -66
- package/components/select/select.js.map +1 -1
- package/components/select/themes/select.base.css.js +1 -1
- package/components/select/themes/select.base.css.js.map +1 -1
- package/components/select/validators.d.ts +3 -0
- package/components/select/validators.js +5 -0
- package/components/select/validators.js.map +1 -0
- package/components/slider/range-slider.d.ts +0 -16
- package/components/slider/range-slider.js +0 -18
- package/components/slider/range-slider.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/snackbar.js +3 -7
- package/components/snackbar/snackbar.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/animations.d.ts +7 -1
- package/components/stepper/animations.js +63 -15
- package/components/stepper/animations.js.map +1 -1
- package/components/stepper/step.d.ts +3 -1
- package/components/stepper/step.js +17 -6
- package/components/stepper/step.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/stepper/themes/stepper/stepper.bootstrap.css.js +1 -1
- package/components/stepper/themes/stepper/stepper.bootstrap.css.js.map +1 -1
- package/components/stepper/themes/stepper/stepper.fluent.css.js +1 -1
- package/components/stepper/themes/stepper/stepper.fluent.css.js.map +1 -1
- package/components/stepper/themes/stepper/stepper.indigo.css.js +1 -1
- package/components/stepper/themes/stepper/stepper.indigo.css.js.map +1 -1
- package/components/tabs/tabs.js +2 -3
- package/components/tabs/tabs.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 +13 -16
- package/components/textarea/textarea.js +10 -12
- package/components/textarea/textarea.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/textarea/validators.d.ts +3 -0
- package/components/textarea/validators.js +7 -0
- package/components/textarea/validators.js.map +1 -0
- 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/tree-item.d.ts +4 -4
- package/components/tree/tree-item.js +11 -23
- package/components/tree/tree-item.js.map +1 -1
- package/components/tree/tree.d.ts +3 -4
- package/components/tree/tree.js +1 -37
- package/components/tree/tree.js.map +1 -1
- package/components/types.d.ts +3 -0
- package/components/types.js +2 -0
- package/components/types.js.map +1 -0
- package/custom-elements.json +30656 -31315
- package/igniteui-webcomponents.css-data.json +5 -928
- package/igniteui-webcomponents.html-data.json +4 -2699
- package/index.d.ts +5 -4
- package/index.js +2 -3
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/theming/config.js +3 -3
- package/theming/config.js.map +1 -1
- package/theming/theming-controller.d.ts +4 -6
- package/theming/theming-controller.js +30 -34
- package/theming/theming-controller.js.map +1 -1
- package/theming/theming-decorator.d.ts +29 -11
- package/theming/theming-decorator.js +21 -7
- package/theming/theming-decorator.js.map +1 -1
- package/theming/theming-event.js.map +1 -1
- package/theming/types.d.ts +5 -0
- package/theming/types.js.map +1 -1
- package/theming/utils.d.ts +1 -1
- package/theming/utils.js +8 -8
- package/theming/utils.js.map +1 -1
- package/web-types.json +12 -7621
- package/components/calendar/common/calendar-base.d.ts +0 -40
- package/components/calendar/common/calendar-base.js +0 -118
- package/components/calendar/common/calendar-base.js.map +0 -1
- package/components/calendar/common/calendar.model.d.ts +0 -128
- package/components/calendar/common/calendar.model.js +0 -246
- package/components/calendar/common/calendar.model.js.map +0 -1
- package/components/calendar/common/utils.d.ts +0 -12
- package/components/calendar/common/utils.js +0 -54
- package/components/calendar/common/utils.js.map +0 -1
- package/components/common/decorators/alternateName.d.ts +0 -7
- package/components/common/decorators/alternateName.js +0 -4
- package/components/common/decorators/alternateName.js.map +0 -1
- package/components/common/decorators/blazorSuppress.d.ts +0 -5
- package/components/common/decorators/blazorSuppress.js +0 -4
- package/components/common/decorators/blazorSuppress.js.map +0 -1
- package/components/common/decorators/blazorTwoWayBind.d.ts +0 -7
- package/components/common/decorators/blazorTwoWayBind.js +0 -4
- package/components/common/decorators/blazorTwoWayBind.js.map +0 -1
- package/components/common/mixins/sizable.d.ts +0 -13
- package/components/common/mixins/sizable.js +0 -27
- package/components/common/mixins/sizable.js.map +0 -1
- package/components/form/form.d.ts +0 -48
- package/components/form/form.js +0 -158
- package/components/form/form.js.map +0 -1
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Indicates an alternate member name that can be used for a member due to collisions in a wrapping API.
|
|
3
|
-
* @param propName an alternate member name to use.
|
|
4
|
-
* @param _allWeb indicates that the original name is used for all modern web rather than just web components.
|
|
5
|
-
* @returns a function that does nothing, given that this decorator is for static analysis only.
|
|
6
|
-
*/
|
|
7
|
-
export declare function alternateName(_alternateName: string, _allWeb?: boolean): (_descriptor: any, _memberName: string) => any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alternateName.js","sourceRoot":"","sources":["../../../../src/components/common/decorators/alternateName.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,aAAa,CAAC,cAAsB,EAAE,OAAO,GAAG,KAAK;IACnE,OAAO,CAAC,WAAgB,EAAE,WAAmB,EAAO,EAAE,GAAE,CAAC,CAAC;AAC5D,CAAC","sourcesContent":["/**\n * Indicates an alternate member name that can be used for a member due to collisions in a wrapping API.\n * @param propName an alternate member name to use.\n * @param _allWeb indicates that the original name is used for all modern web rather than just web components.\n * @returns a function that does nothing, given that this decorator is for static analysis only.\n */\nexport function alternateName(_alternateName: string, _allWeb = false) {\n return (_descriptor: any, _memberName: string): any => {};\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blazorSuppress.js","sourceRoot":"","sources":["../../../../src/components/common/decorators/blazorSuppress.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,cAAc;IAC5B,OAAO,CAAC,WAAgB,EAAE,WAAmB,EAAO,EAAE,GAAE,CAAC,CAAC;AAC5D,CAAC","sourcesContent":["/**\n * Indicates a member should be suppressed in the Blazor API.\n * @returns a function that does nothing, given that this decorator is for static analysis only.\n */\nexport function blazorSuppress() {\n return (_descriptor: any, _memberName: string): any => {};\n}\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Indicates that a property will be updated from the inside, paired with an event, so can be used for bidirectional binding.
|
|
3
|
-
* @param _eventName the name of the event that will be fired when the value changes.
|
|
4
|
-
* @param _argsPath indicated the path to the updated value withing the event arguments.
|
|
5
|
-
* @returns a function that does nothing, given that this decorator is for static analysis only.
|
|
6
|
-
*/
|
|
7
|
-
export declare function blazorTwoWayBind(_eventName: string, _argsPath: string): (_descriptor: any, _memberName: string) => any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blazorTwoWayBind.js","sourceRoot":"","sources":["../../../../src/components/common/decorators/blazorTwoWayBind.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,SAAiB;IACpE,OAAO,CAAC,WAAgB,EAAE,WAAmB,EAAO,EAAE,GAAE,CAAC,CAAC;AAC5D,CAAC","sourcesContent":["/**\n * Indicates that a property will be updated from the inside, paired with an event, so can be used for bidirectional binding.\n * @param _eventName the name of the event that will be fired when the value changes.\n * @param _argsPath indicated the path to the updated value withing the event arguments.\n * @returns a function that does nothing, given that this decorator is for static analysis only.\n */\nexport function blazorTwoWayBind(_eventName: string, _argsPath: string) {\n return (_descriptor: any, _memberName: string): any => {};\n}\n"]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { LitElement } from 'lit';
|
|
2
|
-
import type { Constructor } from './constructor.js';
|
|
3
|
-
export declare class SizableInterface {
|
|
4
|
-
/**
|
|
5
|
-
* Determines the size of the component.
|
|
6
|
-
* @attr
|
|
7
|
-
* @type {"small" | "medium" | "large"}
|
|
8
|
-
*
|
|
9
|
-
* @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.
|
|
10
|
-
*/
|
|
11
|
-
size: 'small' | 'medium' | 'large';
|
|
12
|
-
}
|
|
13
|
-
export declare const SizableMixin: <T extends Constructor<LitElement>>(superClass: T) => Constructor<SizableInterface> & T;
|
|
@@ -1,27 +0,0 @@
|
|
|
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 { watch } from '../decorators/watch.js';
|
|
9
|
-
export const SizableMixin = (superClass) => {
|
|
10
|
-
class SizableElement extends superClass {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
this.size = 'large';
|
|
14
|
-
}
|
|
15
|
-
updateSize() {
|
|
16
|
-
this.style.setProperty('--component-size', `var(--ig-size, var(--ig-size-${this.size}))`);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
__decorate([
|
|
20
|
-
property({ reflect: true })
|
|
21
|
-
], SizableElement.prototype, "size", void 0);
|
|
22
|
-
__decorate([
|
|
23
|
-
watch('size')
|
|
24
|
-
], SizableElement.prototype, "updateSize", null);
|
|
25
|
-
return SizableElement;
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=sizable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sizable.js","sourceRoot":"","sources":["../../../../src/components/common/mixins/sizable.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAc/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,UAAa,EACb,EAAE;IACF,MAAM,cAAe,SAAQ,UAAU;QAAvC;;YASS,SAAI,GAAiC,OAAO,CAAC;QAStD,CAAC;QANW,UAAU;YAClB,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,kBAAkB,EAClB,gCAAgC,IAAI,CAAC,IAAI,IAAI,CAC9C,CAAC;QACJ,CAAC;KACF;IATQ;QADN,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDACwB;IAG1C;QADT,KAAK,CAAC,MAAM,CAAC;oDAMb;IAEH,OAAO,cAAmD,CAAC;AAC7D,CAAC,CAAC","sourcesContent":["import type { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { watch } from '../decorators/watch.js';\nimport type { Constructor } from './constructor.js';\n\nexport declare class SizableInterface {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n public size: 'small' | 'medium' | 'large';\n}\n\nexport const SizableMixin = <T extends Constructor<LitElement>>(\n superClass: T\n) => {\n class SizableElement extends superClass {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n @property({ reflect: true })\n public size: 'small' | 'medium' | 'large' = 'large';\n\n @watch('size')\n protected updateSize() {\n this.style.setProperty(\n '--component-size',\n `var(--ig-size, var(--ig-size-${this.size}))`\n );\n }\n }\n return SizableElement as Constructor<SizableInterface> & T;\n};\n"]}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
import type { Constructor } from '../common/mixins/constructor.js';
|
|
3
|
-
export interface IgcFormEventMap {
|
|
4
|
-
igcSubmit: CustomEvent<FormData>;
|
|
5
|
-
igcReset: CustomEvent;
|
|
6
|
-
}
|
|
7
|
-
declare const IgcFormComponent_base: Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcFormEventMap>> & Constructor<LitElement>;
|
|
8
|
-
/**
|
|
9
|
-
* The form is a component used to collect user input from
|
|
10
|
-
* interactive controls.
|
|
11
|
-
*
|
|
12
|
-
* @element igc-form
|
|
13
|
-
*
|
|
14
|
-
* @slot - Default slot for the form.
|
|
15
|
-
*
|
|
16
|
-
* @fires igcSubmit - Emitted when the form is submitted.
|
|
17
|
-
* @fires igcReset - Emitted when the form is reset.
|
|
18
|
-
*
|
|
19
|
-
* @deprecated since version 4.4.0. Use the native `<form>` element instead.
|
|
20
|
-
*/
|
|
21
|
-
export default class IgcFormComponent extends IgcFormComponent_base {
|
|
22
|
-
static readonly tagName = "igc-form";
|
|
23
|
-
static styles: import("lit").CSSResult;
|
|
24
|
-
static register(): void;
|
|
25
|
-
private _controlsWithChecked;
|
|
26
|
-
private _controlsWithValue;
|
|
27
|
-
private _controlsThatSubmit;
|
|
28
|
-
/** Specifies if form data validation should be skipped on submit. */
|
|
29
|
-
novalidate: boolean;
|
|
30
|
-
constructor();
|
|
31
|
-
/** Submits the form. */
|
|
32
|
-
submit(): boolean;
|
|
33
|
-
/** Resets the form. */
|
|
34
|
-
reset(): void;
|
|
35
|
-
private getFormElements;
|
|
36
|
-
/** Retrieves the data from the form in the format of a FormData object. */
|
|
37
|
-
getFormData(): FormData;
|
|
38
|
-
/** Checks for validity of the form. */
|
|
39
|
-
reportValidity(): boolean;
|
|
40
|
-
private handleClick;
|
|
41
|
-
protected render(): import("lit-html").TemplateResult<1>;
|
|
42
|
-
}
|
|
43
|
-
declare global {
|
|
44
|
-
interface HTMLElementTagNameMap {
|
|
45
|
-
'igc-form': IgcFormComponent;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
export {};
|
package/components/form/form.js
DELETED
|
@@ -1,158 +0,0 @@
|
|
|
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 { LitElement, css, html } from 'lit';
|
|
8
|
-
import { property } from 'lit/decorators.js';
|
|
9
|
-
import { alternateName } from '../common/decorators/alternateName.js';
|
|
10
|
-
import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
|
|
11
|
-
import { registerComponent } from '../common/definitions/register.js';
|
|
12
|
-
import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
|
|
13
|
-
class IgcFormComponent extends EventEmitterMixin(LitElement) {
|
|
14
|
-
static register() {
|
|
15
|
-
registerComponent(IgcFormComponent);
|
|
16
|
-
}
|
|
17
|
-
constructor() {
|
|
18
|
-
super();
|
|
19
|
-
this._controlsWithChecked = [
|
|
20
|
-
'input',
|
|
21
|
-
'radio',
|
|
22
|
-
'igc-radio',
|
|
23
|
-
'igc-switch',
|
|
24
|
-
'igc-checkbox',
|
|
25
|
-
];
|
|
26
|
-
this._controlsWithValue = [
|
|
27
|
-
'input',
|
|
28
|
-
'igc-input',
|
|
29
|
-
'igc-mask-input',
|
|
30
|
-
'textarea',
|
|
31
|
-
'igc-rating',
|
|
32
|
-
'igc-select',
|
|
33
|
-
'igc-combo',
|
|
34
|
-
'igc-date-time-input',
|
|
35
|
-
];
|
|
36
|
-
this._controlsThatSubmit = [
|
|
37
|
-
'input',
|
|
38
|
-
'button',
|
|
39
|
-
'igc-button',
|
|
40
|
-
'igc-icon-button',
|
|
41
|
-
];
|
|
42
|
-
this.novalidate = false;
|
|
43
|
-
this.addEventListener('click', this.handleClick);
|
|
44
|
-
}
|
|
45
|
-
submit() {
|
|
46
|
-
const formData = this.getFormData();
|
|
47
|
-
if (!this.novalidate && !this.reportValidity()) {
|
|
48
|
-
return false;
|
|
49
|
-
}
|
|
50
|
-
this.emitEvent('igcSubmit', { detail: formData });
|
|
51
|
-
return true;
|
|
52
|
-
}
|
|
53
|
-
reset() {
|
|
54
|
-
const formElements = this.getFormElements();
|
|
55
|
-
formElements.forEach((element) => {
|
|
56
|
-
const tagName = element.tagName.toLowerCase();
|
|
57
|
-
if (tagName === 'select') {
|
|
58
|
-
for (let i = 0; i < element.options.length; i++) {
|
|
59
|
-
const option = element.options[i];
|
|
60
|
-
option.selected = option.defaultSelected;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
else if ((tagName === 'input' &&
|
|
64
|
-
(element.type === 'checkbox' || element.type === 'radio')) ||
|
|
65
|
-
(tagName !== 'input' && this._controlsWithChecked.includes(tagName))) {
|
|
66
|
-
element.checked = element.hasAttribute('checked');
|
|
67
|
-
}
|
|
68
|
-
else if (tagName === 'igc-input' ||
|
|
69
|
-
tagName === 'igc-rating' ||
|
|
70
|
-
tagName === 'igc-mask-input' ||
|
|
71
|
-
tagName === 'igc-date-time-input') {
|
|
72
|
-
element.value = element.getAttribute('value');
|
|
73
|
-
}
|
|
74
|
-
else if (this._controlsWithValue.includes(tagName)) {
|
|
75
|
-
element.value = element.defaultValue;
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
this.emitEvent('igcReset');
|
|
79
|
-
}
|
|
80
|
-
getFormElements() {
|
|
81
|
-
const slot = this.shadowRoot?.querySelector('slot');
|
|
82
|
-
const assignedElements = slot?.assignedElements({ flatten: true });
|
|
83
|
-
const formElements = [];
|
|
84
|
-
assignedElements?.forEach((element) => {
|
|
85
|
-
if (!element.disabled) {
|
|
86
|
-
formElements.push(element);
|
|
87
|
-
}
|
|
88
|
-
const children = Array.from(element.getElementsByTagName('*')).filter((element) => !element.disabled);
|
|
89
|
-
formElements.push(...children);
|
|
90
|
-
});
|
|
91
|
-
return formElements;
|
|
92
|
-
}
|
|
93
|
-
getFormData() {
|
|
94
|
-
const formData = new FormData();
|
|
95
|
-
const formElements = this.getFormElements();
|
|
96
|
-
formElements.forEach((element) => {
|
|
97
|
-
const tagName = element.tagName.toLowerCase();
|
|
98
|
-
if (tagName === 'select') {
|
|
99
|
-
for (let i = 0; i < element.options.length; i++) {
|
|
100
|
-
const option = element.options[i];
|
|
101
|
-
if (option.selected) {
|
|
102
|
-
formData.append(element.name, option.value);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else if (this._controlsWithChecked.includes(tagName) &&
|
|
107
|
-
element.checked) {
|
|
108
|
-
formData.append(element.name, element.value || 'on');
|
|
109
|
-
}
|
|
110
|
-
else if (this._controlsWithValue.includes(tagName) &&
|
|
111
|
-
element.type !== 'checkbox' &&
|
|
112
|
-
element.type !== 'radio' &&
|
|
113
|
-
element.type !== 'submit') {
|
|
114
|
-
formData.append(element.name, element.value);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
return formData;
|
|
118
|
-
}
|
|
119
|
-
reportValidity() {
|
|
120
|
-
const formElements = this.getFormElements();
|
|
121
|
-
return !formElements.some((element) => typeof element.reportValidity === 'function' &&
|
|
122
|
-
element.reportValidity() === false);
|
|
123
|
-
}
|
|
124
|
-
handleClick(event) {
|
|
125
|
-
const targetElement = event.target;
|
|
126
|
-
if (this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase()) &&
|
|
127
|
-
targetElement.type?.toLowerCase() === 'submit') {
|
|
128
|
-
this.submit();
|
|
129
|
-
}
|
|
130
|
-
else if (targetElement.type?.toLowerCase() === 'reset') {
|
|
131
|
-
this.reset();
|
|
132
|
-
}
|
|
133
|
-
return true;
|
|
134
|
-
}
|
|
135
|
-
render() {
|
|
136
|
-
return html `<slot></slot>`;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
IgcFormComponent.tagName = 'igc-form';
|
|
140
|
-
IgcFormComponent.styles = css `
|
|
141
|
-
:host {
|
|
142
|
-
display: block;
|
|
143
|
-
}
|
|
144
|
-
`;
|
|
145
|
-
export default IgcFormComponent;
|
|
146
|
-
__decorate([
|
|
147
|
-
property({ type: Boolean, reflect: true })
|
|
148
|
-
], IgcFormComponent.prototype, "novalidate", void 0);
|
|
149
|
-
__decorate([
|
|
150
|
-
alternateName('performSubmit')
|
|
151
|
-
], IgcFormComponent.prototype, "submit", null);
|
|
152
|
-
__decorate([
|
|
153
|
-
alternateName('performReset')
|
|
154
|
-
], IgcFormComponent.prototype, "reset", null);
|
|
155
|
-
__decorate([
|
|
156
|
-
blazorSuppress()
|
|
157
|
-
], IgcFormComponent.prototype, "getFormData", null);
|
|
158
|
-
//# sourceMappingURL=form.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../../src/components/form/form.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, css, html } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { alternateName } from '../common/decorators/alternateName.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\n\nexport interface IgcFormEventMap {\n igcSubmit: CustomEvent<FormData>;\n igcReset: CustomEvent;\n}\n\n/**\n * The form is a component used to collect user input from\n * interactive controls.\n *\n * @element igc-form\n *\n * @slot - Default slot for the form.\n *\n * @fires igcSubmit - Emitted when the form is submitted.\n * @fires igcReset - Emitted when the form is reset.\n *\n * @deprecated since version 4.4.0. Use the native `<form>` element instead.\n */\nexport default class IgcFormComponent extends EventEmitterMixin<\n IgcFormEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-form';\n\n public static styles = css`\n :host {\n display: block;\n }\n `;\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcFormComponent);\n }\n\n private _controlsWithChecked = [\n 'input',\n 'radio',\n 'igc-radio',\n 'igc-switch',\n 'igc-checkbox',\n ];\n private _controlsWithValue = [\n 'input',\n 'igc-input',\n 'igc-mask-input',\n 'textarea',\n 'igc-rating',\n 'igc-select',\n 'igc-combo',\n 'igc-date-time-input',\n ];\n private _controlsThatSubmit = [\n 'input',\n 'button',\n 'igc-button',\n 'igc-icon-button',\n ];\n\n /** Specifies if form data validation should be skipped on submit. */\n @property({ type: Boolean, reflect: true }) public novalidate = false;\n\n constructor() {\n super();\n\n this.addEventListener('click', this.handleClick);\n }\n\n /** Submits the form. */\n @alternateName('performSubmit')\n public submit(): boolean {\n const formData = this.getFormData();\n if (!this.novalidate && !this.reportValidity()) {\n return false;\n }\n\n this.emitEvent('igcSubmit', { detail: formData });\n return true;\n }\n\n /** Resets the form. */\n @alternateName('performReset')\n public reset() {\n const formElements = this.getFormElements();\n formElements.forEach((element) => {\n const tagName = element.tagName.toLowerCase();\n if (tagName === 'select') {\n for (let i = 0; i < element.options.length; i++) {\n const option = element.options[i];\n option.selected = option.defaultSelected;\n }\n } else if (\n (tagName === 'input' &&\n (element.type === 'checkbox' || element.type === 'radio')) ||\n (tagName !== 'input' && this._controlsWithChecked.includes(tagName))\n ) {\n element.checked = element.hasAttribute('checked');\n } else if (\n tagName === 'igc-input' ||\n tagName === 'igc-rating' ||\n tagName === 'igc-mask-input' ||\n tagName === 'igc-date-time-input'\n ) {\n element.value = element.getAttribute('value');\n } else if (this._controlsWithValue.includes(tagName)) {\n element.value = element.defaultValue;\n }\n });\n\n this.emitEvent('igcReset');\n }\n\n private getFormElements(): any[] {\n const slot = this.shadowRoot?.querySelector('slot');\n const assignedElements = slot?.assignedElements({ flatten: true });\n const formElements: any[] = [];\n assignedElements?.forEach((element: any) => {\n if (!element.disabled) {\n formElements.push(element);\n }\n const children = Array.from(element.getElementsByTagName('*')).filter(\n (element: any) => !element.disabled\n );\n formElements.push(...children);\n });\n\n return formElements;\n }\n\n //suppressing in blazor for now due to an issue, bringing it back later\n /** Retrieves the data from the form in the format of a FormData object. */\n @blazorSuppress()\n public getFormData() {\n const formData = new FormData();\n\n const formElements = this.getFormElements();\n formElements.forEach((element) => {\n const tagName = element.tagName.toLowerCase();\n if (tagName === 'select') {\n for (let i = 0; i < element.options.length; i++) {\n const option = element.options[i];\n if (option.selected) {\n formData.append(element.name, option.value);\n }\n }\n } else if (\n this._controlsWithChecked.includes(tagName) &&\n element.checked\n ) {\n formData.append(element.name, element.value || 'on');\n } else if (\n this._controlsWithValue.includes(tagName) &&\n element.type !== 'checkbox' &&\n element.type !== 'radio' &&\n element.type !== 'submit'\n ) {\n formData.append(element.name, element.value);\n }\n });\n\n return formData;\n }\n\n /** Checks for validity of the form. */\n public reportValidity(): boolean {\n const formElements = this.getFormElements();\n return !formElements.some(\n (element) =>\n typeof element.reportValidity === 'function' &&\n element.reportValidity() === false\n );\n }\n\n private handleClick(event: MouseEvent) {\n const targetElement: any = event.target as HTMLElement;\n if (\n this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase()) &&\n targetElement.type?.toLowerCase() === 'submit'\n ) {\n this.submit();\n } else if (targetElement.type?.toLowerCase() === 'reset') {\n this.reset();\n }\n\n return true;\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-form': IgcFormComponent;\n }\n}\n"]}
|