@refinitiv-ui/elements 5.0.0-beta.3 → 5.0.0-dev.204
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 +325 -73
- package/README.md +13 -2
- package/lib/accordion/custom-elements.json +0 -13
- package/lib/accordion/custom-elements.md +18 -0
- package/lib/accordion/index.d.ts +13 -10
- package/lib/accordion/index.js +15 -18
- package/lib/appstate-bar/custom-elements.json +1 -1
- package/lib/appstate-bar/custom-elements.md +22 -0
- package/lib/appstate-bar/index.d.ts +15 -6
- package/lib/appstate-bar/index.js +17 -11
- package/lib/autosuggest/custom-elements.json +24 -4
- package/lib/autosuggest/custom-elements.md +54 -0
- package/lib/autosuggest/helpers/types.d.ts +22 -1
- package/lib/autosuggest/helpers/types.js +0 -1
- package/lib/autosuggest/helpers/utils.d.ts +2 -2
- package/lib/autosuggest/helpers/utils.js +1 -3
- package/lib/autosuggest/index.d.ts +21 -9
- package/lib/autosuggest/index.js +45 -31
- package/lib/button/custom-elements.json +3 -3
- package/lib/button/custom-elements.md +23 -0
- package/lib/button/index.d.ts +27 -20
- package/lib/button/index.js +92 -74
- package/lib/button/themes/halo/dark/index.js +1 -1
- package/lib/button/themes/halo/light/index.js +1 -1
- package/lib/button/themes/solar/charcoal/index.js +1 -1
- package/lib/button/themes/solar/pearl/index.js +1 -1
- package/lib/button-bar/custom-elements.md +9 -0
- package/lib/button-bar/index.d.ts +60 -4
- package/lib/button-bar/index.js +164 -19
- package/lib/calendar/constants.d.ts +26 -0
- package/lib/calendar/constants.js +28 -0
- package/lib/calendar/custom-elements.json +8 -6
- package/lib/calendar/custom-elements.md +35 -0
- package/lib/calendar/index.d.ts +119 -21
- package/lib/calendar/index.js +512 -157
- package/lib/calendar/locales.d.ts +1 -31
- package/lib/calendar/locales.js +3 -107
- package/lib/calendar/themes/halo/dark/index.js +1 -1
- package/lib/calendar/themes/halo/light/index.js +1 -1
- package/lib/calendar/themes/solar/charcoal/index.js +1 -1
- package/lib/calendar/themes/solar/pearl/index.js +1 -1
- package/lib/calendar/types.d.ts +12 -13
- package/lib/calendar/types.js +1 -7
- package/lib/calendar/utils.d.ts +31 -1
- package/lib/calendar/utils.js +105 -3
- package/lib/canvas/custom-elements.json +9 -7
- package/lib/canvas/custom-elements.md +27 -0
- package/lib/canvas/index.d.ts +14 -6
- package/lib/canvas/index.js +17 -12
- package/lib/card/custom-elements.json +21 -9
- package/lib/card/custom-elements.md +24 -0
- package/lib/card/helpers/types.d.ts +1 -1
- package/lib/card/helpers/types.js +0 -1
- package/lib/card/index.d.ts +67 -20
- package/lib/card/index.js +132 -35
- package/lib/card/themes/halo/dark/index.js +1 -1
- package/lib/card/themes/halo/light/index.js +1 -1
- package/lib/card/themes/solar/charcoal/index.js +1 -1
- package/lib/card/themes/solar/pearl/index.js +1 -1
- package/lib/chart/custom-elements.json +3 -3
- package/lib/chart/custom-elements.md +16 -0
- package/lib/chart/helpers/index.d.ts +2 -0
- package/lib/chart/helpers/index.js +2 -0
- package/lib/chart/helpers/legend.d.ts +2 -2
- package/lib/chart/helpers/legend.js +2 -3
- package/lib/chart/helpers/merge.d.ts +15 -0
- package/lib/chart/helpers/merge.js +28 -0
- package/lib/chart/helpers/types.d.ts +40 -12
- package/lib/chart/helpers/types.js +0 -1
- package/lib/chart/index.d.ts +34 -26
- package/lib/chart/index.js +58 -55
- package/lib/chart/plugins/doughnut-center-label.js +4 -5
- package/lib/checkbox/custom-elements.json +4 -4
- package/lib/checkbox/custom-elements.md +18 -0
- package/lib/checkbox/index.d.ts +29 -14
- package/lib/checkbox/index.js +65 -34
- package/lib/checkbox/themes/halo/dark/index.js +1 -1
- package/lib/checkbox/themes/halo/light/index.js +1 -1
- package/lib/clock/custom-elements.json +21 -4
- package/lib/clock/custom-elements.md +28 -0
- package/lib/clock/index.d.ts +25 -6
- package/lib/clock/index.js +44 -18
- package/lib/clock/themes/halo/dark/index.js +1 -1
- package/lib/clock/themes/halo/light/index.js +1 -1
- package/lib/clock/themes/solar/charcoal/index.js +1 -1
- package/lib/clock/themes/solar/pearl/index.js +1 -1
- package/lib/clock/utils/TickManager.js +2 -3
- package/lib/clock/utils/timestamps.js +0 -1
- package/lib/collapse/custom-elements.md +27 -0
- package/lib/collapse/index.d.ts +15 -8
- package/lib/collapse/index.js +18 -13
- package/lib/color-dialog/custom-elements.json +29 -16
- package/lib/color-dialog/custom-elements.md +39 -0
- package/lib/color-dialog/elements/color-palettes.d.ts +13 -6
- package/lib/color-dialog/elements/color-palettes.js +16 -13
- package/lib/color-dialog/elements/grayscale-palettes.d.ts +13 -6
- package/lib/color-dialog/elements/grayscale-palettes.js +17 -13
- package/lib/color-dialog/elements/palettes.d.ts +15 -3
- package/lib/color-dialog/elements/palettes.js +65 -45
- package/lib/color-dialog/helpers/color-helpers.d.ts +7 -53
- package/lib/color-dialog/helpers/color-helpers.js +12 -110
- package/lib/color-dialog/helpers/value-model.d.ts +1 -1
- package/lib/color-dialog/helpers/value-model.js +18 -17
- package/lib/color-dialog/index.d.ts +27 -20
- package/lib/color-dialog/index.js +54 -45
- package/lib/combo-box/custom-elements.json +51 -17
- package/lib/combo-box/custom-elements.md +42 -0
- package/lib/combo-box/helpers/filter.d.ts +4 -4
- package/lib/combo-box/helpers/filter.js +0 -1
- package/lib/combo-box/helpers/keyboard-event.js +0 -1
- package/lib/combo-box/helpers/renderer.d.ts +8 -0
- package/lib/combo-box/helpers/renderer.js +24 -0
- package/lib/combo-box/helpers/types.d.ts +2 -2
- package/lib/combo-box/helpers/types.js +0 -1
- package/lib/combo-box/index.d.ts +63 -32
- package/lib/combo-box/index.js +102 -60
- package/lib/combo-box/themes/halo/dark/index.js +2 -3
- package/lib/combo-box/themes/halo/light/index.js +2 -3
- package/lib/combo-box/themes/solar/charcoal/index.js +2 -3
- package/lib/combo-box/themes/solar/pearl/index.js +2 -3
- package/lib/counter/custom-elements.json +39 -0
- package/lib/counter/custom-elements.md +11 -0
- package/lib/counter/index.d.ts +91 -0
- package/lib/counter/index.js +154 -0
- package/lib/counter/themes/halo/dark/index.js +3 -0
- package/lib/counter/themes/halo/light/index.js +3 -0
- package/lib/counter/themes/solar/charcoal/index.js +3 -0
- package/lib/counter/themes/solar/pearl/index.js +3 -0
- package/lib/counter/utils.d.ts +13 -0
- package/lib/counter/utils.js +52 -0
- package/lib/datetime-picker/custom-elements.json +53 -24
- package/lib/datetime-picker/custom-elements.md +57 -0
- package/lib/datetime-picker/index.d.ts +34 -16
- package/lib/datetime-picker/index.js +56 -38
- package/lib/datetime-picker/locales.d.ts +1 -1
- package/lib/datetime-picker/locales.js +12 -2
- package/lib/datetime-picker/themes/solar/charcoal/index.js +1 -1
- package/lib/datetime-picker/themes/solar/pearl/index.js +1 -1
- package/lib/datetime-picker/types.d.ts +1 -1
- package/lib/datetime-picker/types.js +0 -1
- package/lib/datetime-picker/utils.js +1 -2
- package/lib/dialog/custom-elements.json +34 -12
- package/lib/dialog/custom-elements.md +47 -0
- package/lib/dialog/draggable-element.js +25 -16
- package/lib/dialog/index.d.ts +25 -21
- package/lib/dialog/index.js +36 -32
- package/lib/email-field/custom-elements.json +81 -94
- package/lib/email-field/custom-elements.md +37 -0
- package/lib/email-field/index.d.ts +47 -112
- package/lib/email-field/index.js +48 -241
- package/lib/email-field/themes/halo/dark/index.js +1 -1
- package/lib/email-field/themes/halo/light/index.js +1 -1
- package/lib/email-field/themes/solar/charcoal/index.js +1 -1
- package/lib/email-field/themes/solar/pearl/index.js +1 -1
- package/lib/events.d.ts +121 -0
- package/lib/events.js +1 -0
- package/lib/flag/custom-elements.md +10 -0
- package/lib/flag/index.d.ts +14 -5
- package/lib/flag/index.js +19 -12
- package/lib/flag/utils/FlagLoader.d.ts +1 -1
- package/lib/flag/utils/FlagLoader.js +1 -2
- package/lib/header/custom-elements.md +18 -0
- package/lib/header/index.d.ts +10 -3
- package/lib/header/index.js +12 -8
- package/lib/heatmap/custom-elements.json +13 -0
- package/lib/heatmap/custom-elements.md +26 -0
- package/lib/heatmap/helpers/color.d.ts +1 -1
- package/lib/heatmap/helpers/color.js +1 -2
- package/lib/heatmap/helpers/text.d.ts +1 -1
- package/lib/heatmap/helpers/text.js +0 -1
- package/lib/heatmap/helpers/track.js +2 -3
- package/lib/heatmap/helpers/types.js +0 -1
- package/lib/heatmap/index.d.ts +32 -13
- package/lib/heatmap/index.js +61 -35
- package/lib/icon/custom-elements.json +6 -4
- package/lib/icon/custom-elements.md +8 -0
- package/lib/icon/index.d.ts +17 -7
- package/lib/icon/index.js +36 -18
- package/lib/icon/utils/IconLoader.d.ts +6 -1
- package/lib/icon/utils/IconLoader.js +24 -18
- package/lib/index.d.ts +2 -0
- package/lib/index.js +2 -1
- package/lib/interactive-chart/custom-elements.json +5 -11
- package/lib/interactive-chart/custom-elements.md +31 -0
- package/lib/interactive-chart/helpers/merge.d.ts +15 -0
- package/lib/interactive-chart/helpers/merge.js +28 -0
- package/lib/interactive-chart/helpers/types.d.ts +10 -9
- package/lib/interactive-chart/helpers/types.js +6 -2
- package/lib/interactive-chart/index.d.ts +37 -18
- package/lib/interactive-chart/index.js +61 -51
- package/lib/item/custom-elements.json +4 -4
- package/lib/item/custom-elements.md +29 -0
- package/lib/item/helpers/types.d.ts +1 -1
- package/lib/item/helpers/types.js +0 -1
- package/lib/item/index.d.ts +26 -9
- package/lib/item/index.js +43 -16
- package/lib/label/custom-elements.json +7 -16
- package/lib/label/custom-elements.md +11 -0
- package/lib/label/index.d.ts +41 -73
- package/lib/label/index.js +150 -187
- package/lib/layout/custom-elements.md +26 -0
- package/lib/layout/index.d.ts +11 -4
- package/lib/layout/index.js +13 -9
- package/lib/led-gauge/custom-elements.json +4 -4
- package/lib/led-gauge/custom-elements.md +17 -0
- package/lib/led-gauge/index.d.ts +13 -5
- package/lib/led-gauge/index.js +16 -11
- package/lib/list/custom-elements.json +37 -5
- package/lib/list/custom-elements.md +33 -0
- package/lib/list/extensible-function.js +2 -1
- package/lib/list/helpers/list-renderer.d.ts +2 -2
- package/lib/list/helpers/list-renderer.js +4 -3
- package/lib/list/helpers/types.d.ts +2 -2
- package/lib/list/helpers/types.js +0 -1
- package/lib/list/index.d.ts +47 -12
- package/lib/list/index.js +100 -39
- package/lib/list/renderer.d.ts +2 -2
- package/lib/list/renderer.js +1 -2
- package/lib/loader/custom-elements.md +5 -0
- package/lib/loader/index.d.ts +8 -1
- package/lib/loader/index.js +11 -8
- package/lib/multi-input/custom-elements.json +7 -6
- package/lib/multi-input/custom-elements.md +43 -0
- package/lib/multi-input/helpers/types.d.ts +1 -1
- package/lib/multi-input/helpers/types.js +0 -1
- package/lib/multi-input/index.d.ts +19 -8
- package/lib/multi-input/index.js +28 -18
- package/lib/multi-input/themes/solar/charcoal/index.js +1 -1
- package/lib/multi-input/themes/solar/pearl/index.js +1 -1
- package/lib/notification/custom-elements.md +26 -0
- package/lib/notification/elements/notification-tray.d.ts +10 -4
- package/lib/notification/elements/notification-tray.js +15 -11
- package/lib/notification/elements/notification.d.ts +19 -7
- package/lib/notification/elements/notification.js +25 -13
- package/lib/notification/helpers/status.d.ts +1 -1
- package/lib/notification/helpers/status.js +1 -2
- package/lib/notification/helpers/types.d.ts +1 -1
- package/lib/notification/helpers/types.js +0 -1
- package/lib/notification/index.d.ts +2 -2
- package/lib/notification/index.js +2 -3
- package/lib/number-field/custom-elements.json +99 -54
- package/lib/number-field/custom-elements.md +42 -0
- package/lib/number-field/index.d.ts +104 -52
- package/lib/number-field/index.js +129 -88
- package/lib/number-field/themes/halo/dark/index.js +1 -1
- package/lib/number-field/themes/halo/light/index.js +1 -1
- package/lib/number-field/themes/solar/charcoal/index.js +1 -1
- package/lib/number-field/themes/solar/pearl/index.js +1 -1
- package/lib/overlay/custom-elements.json +26 -13
- package/lib/overlay/custom-elements.md +54 -0
- package/lib/overlay/elements/overlay-backdrop.d.ts +12 -5
- package/lib/overlay/elements/overlay-backdrop.js +13 -9
- package/lib/overlay/elements/overlay-viewport.d.ts +11 -4
- package/lib/overlay/elements/overlay-viewport.js +12 -9
- package/lib/overlay/elements/overlay.d.ts +18 -6
- package/lib/overlay/elements/overlay.js +35 -28
- package/lib/overlay/helpers/functions.js +0 -1
- package/lib/overlay/helpers/types.js +0 -1
- package/lib/overlay/index.d.ts +2 -2
- package/lib/overlay/index.js +1 -2
- package/lib/overlay/managers/backdrop-manager.d.ts +2 -2
- package/lib/overlay/managers/backdrop-manager.js +2 -3
- package/lib/overlay/managers/close-manager.d.ts +1 -1
- package/lib/overlay/managers/close-manager.js +1 -2
- package/lib/overlay/managers/focus-manager.d.ts +1 -1
- package/lib/overlay/managers/focus-manager.js +3 -5
- package/lib/overlay/managers/interaction-lock-manager.js +2 -3
- package/lib/overlay/managers/viewport-manager.d.ts +3 -3
- package/lib/overlay/managers/viewport-manager.js +6 -3
- package/lib/overlay/managers/zindex-manager.d.ts +1 -1
- package/lib/overlay/managers/zindex-manager.js +1 -4
- package/lib/overlay-menu/custom-elements.json +126 -12
- package/lib/overlay-menu/custom-elements.md +44 -0
- package/lib/overlay-menu/helpers/types.d.ts +3 -3
- package/lib/overlay-menu/helpers/types.js +0 -1
- package/lib/overlay-menu/index.d.ts +44 -12
- package/lib/overlay-menu/index.js +66 -35
- package/lib/overlay-menu/managers/menu-manager.d.ts +2 -2
- package/lib/overlay-menu/managers/menu-manager.js +8 -8
- package/lib/pagination/custom-elements.json +16 -33
- package/lib/pagination/custom-elements.md +26 -0
- package/lib/pagination/index.d.ts +156 -81
- package/lib/pagination/index.js +373 -214
- package/lib/pagination/themes/halo/dark/index.js +1 -1
- package/lib/pagination/themes/halo/light/index.js +1 -1
- package/lib/pagination/themes/solar/charcoal/index.js +1 -1
- package/lib/pagination/themes/solar/pearl/index.js +1 -1
- package/lib/panel/custom-elements.md +11 -0
- package/lib/panel/index.d.ts +11 -4
- package/lib/panel/index.js +13 -9
- package/lib/password-field/custom-elements.json +62 -67
- package/lib/password-field/custom-elements.md +39 -0
- package/lib/password-field/index.d.ts +46 -90
- package/lib/password-field/index.js +52 -190
- package/lib/password-field/themes/halo/dark/index.js +1 -1
- package/lib/password-field/themes/halo/light/index.js +1 -1
- package/lib/password-field/themes/solar/charcoal/index.js +1 -1
- package/lib/password-field/themes/solar/pearl/index.js +1 -1
- package/lib/pill/custom-elements.json +9 -7
- package/lib/pill/custom-elements.md +22 -0
- package/lib/pill/index.d.ts +15 -7
- package/lib/pill/index.js +21 -27
- package/lib/pill/themes/halo/dark/index.js +1 -1
- package/lib/pill/themes/halo/light/index.js +1 -1
- package/lib/progress-bar/custom-elements.md +18 -0
- package/lib/progress-bar/index.d.ts +11 -15
- package/lib/progress-bar/index.js +14 -25
- package/lib/radio-button/custom-elements.json +4 -4
- package/lib/radio-button/custom-elements.md +19 -0
- package/lib/radio-button/index.d.ts +33 -9
- package/lib/radio-button/index.js +97 -24
- package/lib/radio-button/radio-button-registry.d.ts +3 -2
- package/lib/radio-button/radio-button-registry.js +57 -5
- package/lib/radio-button/themes/halo/dark/index.js +1 -1
- package/lib/radio-button/themes/halo/light/index.js +1 -1
- package/lib/rating/custom-elements.md +17 -0
- package/lib/rating/index.d.ts +11 -4
- package/lib/rating/index.js +16 -10
- package/lib/search-field/custom-elements.json +70 -74
- package/lib/search-field/custom-elements.md +41 -0
- package/lib/search-field/index.d.ts +47 -97
- package/lib/search-field/index.js +50 -212
- package/lib/search-field/themes/halo/dark/index.js +1 -1
- package/lib/search-field/themes/halo/light/index.js +1 -1
- package/lib/search-field/themes/solar/charcoal/index.js +1 -1
- package/lib/search-field/themes/solar/pearl/index.js +1 -1
- package/lib/select/custom-elements.json +5 -4
- package/lib/select/custom-elements.md +24 -0
- package/lib/select/helpers/types.d.ts +1 -1
- package/lib/select/helpers/types.js +0 -1
- package/lib/select/index.d.ts +26 -11
- package/lib/select/index.js +93 -52
- package/lib/select/themes/halo/dark/index.js +1 -1
- package/lib/select/themes/halo/light/index.js +1 -1
- package/lib/sidebar-layout/custom-elements.json +2 -6
- package/lib/sidebar-layout/custom-elements.md +21 -0
- package/lib/sidebar-layout/index.d.ts +15 -7
- package/lib/sidebar-layout/index.js +16 -10
- package/lib/slider/custom-elements.json +4 -4
- package/lib/slider/custom-elements.md +28 -0
- package/lib/slider/index.d.ts +18 -5
- package/lib/slider/index.js +69 -16
- package/lib/sparkline/custom-elements.json +4 -4
- package/lib/sparkline/custom-elements.md +16 -0
- package/lib/sparkline/index.d.ts +14 -5
- package/lib/sparkline/index.js +17 -10
- package/lib/swing-gauge/const.d.ts +22 -0
- package/lib/swing-gauge/const.js +26 -0
- package/lib/swing-gauge/custom-elements.json +51 -22
- package/lib/swing-gauge/custom-elements.md +17 -0
- package/lib/swing-gauge/helpers.d.ts +8 -0
- package/lib/swing-gauge/helpers.js +105 -0
- package/lib/swing-gauge/index.d.ts +220 -72
- package/lib/swing-gauge/index.js +648 -168
- package/lib/swing-gauge/themes/halo/dark/index.js +1 -1
- package/lib/swing-gauge/themes/halo/light/index.js +1 -1
- package/lib/swing-gauge/themes/solar/charcoal/index.js +1 -1
- package/lib/swing-gauge/themes/solar/pearl/index.js +1 -1
- package/lib/swing-gauge/types.d.ts +34 -0
- package/lib/swing-gauge/types.js +1 -0
- package/lib/tab/custom-elements.json +10 -21
- package/lib/tab/custom-elements.md +22 -0
- package/lib/tab/index.d.ts +19 -14
- package/lib/tab/index.js +31 -40
- package/lib/tab/themes/halo/dark/index.js +1 -1
- package/lib/tab/themes/halo/light/index.js +1 -1
- package/lib/tab/themes/solar/charcoal/index.js +1 -1
- package/lib/tab/themes/solar/pearl/index.js +1 -1
- package/lib/tab-bar/custom-elements.json +0 -6
- package/lib/tab-bar/custom-elements.md +11 -0
- package/lib/tab-bar/helpers/animate.d.ts +1 -1
- package/lib/tab-bar/helpers/animate.js +5 -2
- package/lib/tab-bar/index.d.ts +12 -5
- package/lib/tab-bar/index.js +18 -21
- package/lib/tab-bar/themes/solar/charcoal/index.js +1 -1
- package/lib/tab-bar/themes/solar/pearl/index.js +1 -1
- package/lib/text-field/custom-elements.json +78 -89
- package/lib/text-field/custom-elements.md +35 -0
- package/lib/text-field/index.d.ts +67 -80
- package/lib/text-field/index.js +106 -157
- package/lib/text-field/themes/halo/dark/index.js +1 -1
- package/lib/text-field/themes/halo/light/index.js +1 -1
- package/lib/text-field/themes/solar/charcoal/index.js +1 -1
- package/lib/text-field/themes/solar/pearl/index.js +1 -1
- package/lib/time-picker/custom-elements.json +6 -8
- package/lib/time-picker/custom-elements.md +28 -0
- package/lib/time-picker/index.d.ts +105 -65
- package/lib/time-picker/index.js +297 -169
- package/lib/time-picker/themes/solar/charcoal/index.js +1 -1
- package/lib/time-picker/themes/solar/pearl/index.js +1 -1
- package/lib/toggle/custom-elements.json +4 -4
- package/lib/toggle/custom-elements.md +19 -0
- package/lib/toggle/index.d.ts +22 -5
- package/lib/toggle/index.js +58 -13
- package/lib/toggle/themes/halo/dark/index.js +1 -1
- package/lib/toggle/themes/halo/light/index.js +1 -1
- package/lib/toggle/themes/solar/charcoal/index.js +1 -1
- package/lib/toggle/themes/solar/pearl/index.js +1 -1
- package/lib/tooltip/custom-elements.md +14 -0
- package/lib/tooltip/elements/title-tooltip.js +2 -3
- package/lib/tooltip/elements/tooltip-element.d.ts +2 -3
- package/lib/tooltip/elements/tooltip-element.js +0 -2
- package/lib/tooltip/helpers/overflow-tooltip.d.ts +1 -1
- package/lib/tooltip/helpers/overflow-tooltip.js +1 -2
- package/lib/tooltip/helpers/renderer.d.ts +1 -1
- package/lib/tooltip/helpers/renderer.js +0 -1
- package/lib/tooltip/helpers/types.d.ts +1 -1
- package/lib/tooltip/helpers/types.js +0 -1
- package/lib/tooltip/index.d.ts +18 -11
- package/lib/tooltip/index.js +27 -23
- package/lib/tooltip/managers/tooltip-manager.d.ts +2 -2
- package/lib/tooltip/managers/tooltip-manager.js +17 -11
- package/lib/tornado-chart/custom-elements.md +18 -0
- package/lib/tornado-chart/elements/tornado-chart.d.ts +12 -5
- package/lib/tornado-chart/elements/tornado-chart.js +15 -11
- package/lib/tornado-chart/elements/tornado-item.d.ts +13 -6
- package/lib/tornado-chart/elements/tornado-item.js +17 -12
- package/lib/tornado-chart/index.d.ts +2 -2
- package/lib/tornado-chart/index.js +2 -3
- package/lib/tree/custom-elements.json +30 -2
- package/lib/tree/custom-elements.md +32 -0
- package/lib/tree/elements/tree-item.d.ts +53 -5
- package/lib/tree/elements/tree-item.js +114 -34
- package/lib/tree/elements/tree.d.ts +65 -20
- package/lib/tree/elements/tree.js +151 -34
- package/lib/tree/helpers/filter.d.ts +8 -0
- package/lib/tree/helpers/filter.js +33 -0
- package/lib/tree/helpers/renderer.d.ts +2 -2
- package/lib/tree/helpers/renderer.js +4 -4
- package/lib/tree/helpers/types.d.ts +13 -1
- package/lib/tree/helpers/types.js +0 -1
- package/lib/tree/index.d.ts +4 -4
- package/lib/tree/index.js +3 -4
- package/lib/tree/managers/tree-manager.d.ts +22 -10
- package/lib/tree/managers/tree-manager.js +56 -41
- package/lib/tree/themes/halo/dark/index.js +1 -1
- package/lib/tree/themes/halo/light/index.js +1 -1
- package/lib/tree/themes/solar/charcoal/index.js +1 -1
- package/lib/tree/themes/solar/pearl/index.js +1 -1
- package/lib/tree-select/custom-elements.json +14 -5
- package/lib/tree-select/custom-elements.md +26 -0
- package/lib/tree-select/helpers/types.d.ts +2 -2
- package/lib/tree-select/helpers/types.js +0 -1
- package/lib/tree-select/index.d.ts +55 -27
- package/lib/tree-select/index.js +107 -45
- package/lib/tree-select/themes/halo/dark/index.js +3 -2
- package/lib/tree-select/themes/halo/light/index.js +3 -2
- package/lib/tree-select/themes/solar/charcoal/index.js +3 -2
- package/lib/tree-select/themes/solar/pearl/index.js +3 -2
- package/lib/version.d.ts +1 -0
- package/lib/version.js +1 -0
- package/package.json +601 -25
- package/lib/accordion/index.js.map +0 -1
- package/lib/appstate-bar/index.js.map +0 -1
- package/lib/autosuggest/helpers/const.d.ts +0 -2
- package/lib/autosuggest/helpers/const.js +0 -4
- package/lib/autosuggest/helpers/const.js.map +0 -1
- package/lib/autosuggest/helpers/types.js.map +0 -1
- package/lib/autosuggest/helpers/utils.js.map +0 -1
- package/lib/autosuggest/index.js.map +0 -1
- package/lib/button/index.js.map +0 -1
- package/lib/button-bar/index.js.map +0 -1
- package/lib/calendar/index.js.map +0 -1
- package/lib/calendar/locales.js.map +0 -1
- package/lib/calendar/types.js.map +0 -1
- package/lib/calendar/utils.js.map +0 -1
- package/lib/canvas/index.js.map +0 -1
- package/lib/card/helpers/types.js.map +0 -1
- package/lib/card/index.js.map +0 -1
- package/lib/chart/helpers/legend.js.map +0 -1
- package/lib/chart/helpers/types.js.map +0 -1
- package/lib/chart/index.js.map +0 -1
- package/lib/chart/plugins/doughnut-center-label.js.map +0 -1
- package/lib/checkbox/index.js.map +0 -1
- package/lib/clock/index.js.map +0 -1
- package/lib/clock/utils/TickManager.js.map +0 -1
- package/lib/clock/utils/timestamps.js.map +0 -1
- package/lib/collapse/index.js.map +0 -1
- package/lib/color-dialog/elements/color-palettes.js.map +0 -1
- package/lib/color-dialog/elements/grayscale-palettes.js.map +0 -1
- package/lib/color-dialog/elements/palettes.js.map +0 -1
- package/lib/color-dialog/helpers/color-helpers.js.map +0 -1
- package/lib/color-dialog/helpers/value-model.js.map +0 -1
- package/lib/color-dialog/index.js.map +0 -1
- package/lib/combo-box/helpers/filter.js.map +0 -1
- package/lib/combo-box/helpers/keyboard-event.js.map +0 -1
- package/lib/combo-box/helpers/types.js.map +0 -1
- package/lib/combo-box/index.js.map +0 -1
- package/lib/datetime-picker/index.js.map +0 -1
- package/lib/datetime-picker/locales.js.map +0 -1
- package/lib/datetime-picker/types.js.map +0 -1
- package/lib/datetime-picker/utils.js.map +0 -1
- package/lib/dialog/draggable-element.js.map +0 -1
- package/lib/dialog/index.js.map +0 -1
- package/lib/email-field/index.js.map +0 -1
- package/lib/flag/index.js.map +0 -1
- package/lib/flag/utils/FlagLoader.js.map +0 -1
- package/lib/header/index.js.map +0 -1
- package/lib/heatmap/helpers/color.js.map +0 -1
- package/lib/heatmap/helpers/text.js.map +0 -1
- package/lib/heatmap/helpers/track.js.map +0 -1
- package/lib/heatmap/helpers/types.js.map +0 -1
- package/lib/heatmap/index.js.map +0 -1
- package/lib/icon/index.js.map +0 -1
- package/lib/icon/utils/IconLoader.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/interactive-chart/helpers/types.js.map +0 -1
- package/lib/interactive-chart/index.js.map +0 -1
- package/lib/item/helpers/types.js.map +0 -1
- package/lib/item/index.js.map +0 -1
- package/lib/label/helpers/text.d.ts +0 -35
- package/lib/label/helpers/text.js +0 -57
- package/lib/label/helpers/text.js.map +0 -1
- package/lib/label/index.js.map +0 -1
- package/lib/layout/index.js.map +0 -1
- package/lib/led-gauge/index.js.map +0 -1
- package/lib/list/extensible-function.js.map +0 -1
- package/lib/list/helpers/list-renderer.js.map +0 -1
- package/lib/list/helpers/types.js.map +0 -1
- package/lib/list/index.js.map +0 -1
- package/lib/list/renderer.js.map +0 -1
- package/lib/loader/index.js.map +0 -1
- package/lib/multi-input/helpers/types.js.map +0 -1
- package/lib/multi-input/index.js.map +0 -1
- package/lib/notification/elements/notification-tray.js.map +0 -1
- package/lib/notification/elements/notification.js.map +0 -1
- package/lib/notification/helpers/status.js.map +0 -1
- package/lib/notification/helpers/types.js.map +0 -1
- package/lib/notification/index.js.map +0 -1
- package/lib/number-field/index.js.map +0 -1
- package/lib/overlay/elements/overlay-backdrop.js.map +0 -1
- package/lib/overlay/elements/overlay-viewport.js.map +0 -1
- package/lib/overlay/elements/overlay.js.map +0 -1
- package/lib/overlay/helpers/functions.js.map +0 -1
- package/lib/overlay/helpers/types.js.map +0 -1
- package/lib/overlay/index.js.map +0 -1
- package/lib/overlay/managers/backdrop-manager.js.map +0 -1
- package/lib/overlay/managers/close-manager.js.map +0 -1
- package/lib/overlay/managers/focus-manager.js.map +0 -1
- package/lib/overlay/managers/interaction-lock-manager.js.map +0 -1
- package/lib/overlay/managers/viewport-manager.js.map +0 -1
- package/lib/overlay/managers/zindex-manager.js.map +0 -1
- package/lib/overlay-menu/helpers/types.js.map +0 -1
- package/lib/overlay-menu/helpers/uuid.d.ts +0 -7
- package/lib/overlay-menu/helpers/uuid.js +0 -14
- package/lib/overlay-menu/helpers/uuid.js.map +0 -1
- package/lib/overlay-menu/index.js.map +0 -1
- package/lib/overlay-menu/managers/menu-manager.js.map +0 -1
- package/lib/pagination/helpers/types.d.ts +0 -9
- package/lib/pagination/helpers/types.js +0 -2
- package/lib/pagination/helpers/types.js.map +0 -1
- package/lib/pagination/index.js.map +0 -1
- package/lib/panel/index.js.map +0 -1
- package/lib/password-field/index.js.map +0 -1
- package/lib/pill/index.js.map +0 -1
- package/lib/progress-bar/index.js.map +0 -1
- package/lib/radio-button/index.js.map +0 -1
- package/lib/radio-button/radio-button-registry.js.map +0 -1
- package/lib/rating/index.js.map +0 -1
- package/lib/search-field/index.js.map +0 -1
- package/lib/select/helpers/types.js.map +0 -1
- package/lib/select/index.js.map +0 -1
- package/lib/sidebar-layout/index.js.map +0 -1
- package/lib/slider/index.js.map +0 -1
- package/lib/sparkline/index.js.map +0 -1
- package/lib/swing-gauge/helpers/canvas.d.ts +0 -8
- package/lib/swing-gauge/helpers/canvas.js +0 -115
- package/lib/swing-gauge/helpers/canvas.js.map +0 -1
- package/lib/swing-gauge/helpers/types.d.ts +0 -33
- package/lib/swing-gauge/helpers/types.js +0 -2
- package/lib/swing-gauge/helpers/types.js.map +0 -1
- package/lib/swing-gauge/index.js.map +0 -1
- package/lib/tab/index.js.map +0 -1
- package/lib/tab-bar/helpers/animate.js.map +0 -1
- package/lib/tab-bar/index.js.map +0 -1
- package/lib/text-field/index.js.map +0 -1
- package/lib/time-picker/index.js.map +0 -1
- package/lib/toggle/index.js.map +0 -1
- package/lib/tooltip/elements/title-tooltip.js.map +0 -1
- package/lib/tooltip/elements/tooltip-element.js.map +0 -1
- package/lib/tooltip/helpers/overflow-tooltip.js.map +0 -1
- package/lib/tooltip/helpers/renderer.js.map +0 -1
- package/lib/tooltip/helpers/types.js.map +0 -1
- package/lib/tooltip/index.js.map +0 -1
- package/lib/tooltip/managers/tooltip-manager.js.map +0 -1
- package/lib/tornado-chart/elements/tornado-chart.js.map +0 -1
- package/lib/tornado-chart/elements/tornado-item.js.map +0 -1
- package/lib/tornado-chart/index.js.map +0 -1
- package/lib/tree/elements/tree-item.js.map +0 -1
- package/lib/tree/elements/tree.js.map +0 -1
- package/lib/tree/helpers/renderer.js.map +0 -1
- package/lib/tree/helpers/types.js.map +0 -1
- package/lib/tree/index.js.map +0 -1
- package/lib/tree/managers/tree-manager.js.map +0 -1
- package/lib/tree-select/helpers/types.js.map +0 -1
- package/lib/tree-select/index.js.map +0 -1
package/lib/list/index.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import '../item';
|
|
10
|
-
import { ListRenderer } from './helpers/list-renderer';
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { ControlElement, css, html, WarningNotice } from '@refinitiv-ui/core';
|
|
3
|
+
import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
|
|
4
|
+
import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
|
|
5
|
+
import { VERSION } from '../version.js';
|
|
6
|
+
import { CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
|
|
7
|
+
import { ListRenderer } from './helpers/list-renderer.js';
|
|
8
|
+
import '../item/index.js';
|
|
11
9
|
export { ListRenderer };
|
|
12
10
|
/**
|
|
13
11
|
* Key direction
|
|
@@ -20,10 +18,12 @@ var Direction;
|
|
|
20
18
|
const valueFormatWarning = new WarningNotice('The specified \'values\' format does not conform to the required format.');
|
|
21
19
|
/**
|
|
22
20
|
* Provides listing and immutable selection
|
|
21
|
+
* @fires value-changed - Dispatched when value changes
|
|
23
22
|
*/
|
|
24
23
|
let List = class List extends ControlElement {
|
|
25
24
|
constructor() {
|
|
26
25
|
super(...arguments);
|
|
26
|
+
this.defaultRole = 'listbox';
|
|
27
27
|
/**
|
|
28
28
|
* Used to timestamp renders.
|
|
29
29
|
* This enables diff checking against item updates,
|
|
@@ -35,7 +35,7 @@ let List = class List extends ControlElement {
|
|
|
35
35
|
* @returns Update promise.
|
|
36
36
|
*/
|
|
37
37
|
this.modificationUpdate = () => {
|
|
38
|
-
|
|
38
|
+
this.requestUpdate();
|
|
39
39
|
};
|
|
40
40
|
/**
|
|
41
41
|
* Item map; used to link element nodes to data items.
|
|
@@ -67,15 +67,27 @@ let List = class List extends ControlElement {
|
|
|
67
67
|
* Disable selections
|
|
68
68
|
*/
|
|
69
69
|
this.stateless = false;
|
|
70
|
+
/**
|
|
71
|
+
* Aria indicating that list supports multiple selection
|
|
72
|
+
*/
|
|
73
|
+
this.ariaMultiselectable = 'false';
|
|
70
74
|
/**
|
|
71
75
|
* Allow multiple selections
|
|
72
76
|
*/
|
|
73
77
|
this.multiple = false;
|
|
74
78
|
this._data = null;
|
|
75
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* Element version number
|
|
82
|
+
* @returns version number
|
|
83
|
+
*/
|
|
84
|
+
static get version() {
|
|
85
|
+
return VERSION;
|
|
86
|
+
}
|
|
76
87
|
/**
|
|
77
88
|
* The data object, used to render the list.
|
|
78
89
|
* @type {ListData}
|
|
90
|
+
* @default null
|
|
79
91
|
*/
|
|
80
92
|
get data() {
|
|
81
93
|
return this._data;
|
|
@@ -99,11 +111,12 @@ let List = class List extends ControlElement {
|
|
|
99
111
|
);
|
|
100
112
|
this.clearMaps();
|
|
101
113
|
this._data = value;
|
|
102
|
-
|
|
114
|
+
this.requestUpdate('data', oldValue);
|
|
103
115
|
}
|
|
104
116
|
/**
|
|
105
117
|
* Returns the first selected item value.
|
|
106
118
|
* Use `values` when multiple selection mode is enabled.
|
|
119
|
+
* @default -
|
|
107
120
|
*/
|
|
108
121
|
get value() {
|
|
109
122
|
return this.values[0] || '';
|
|
@@ -116,12 +129,14 @@ let List = class List extends ControlElement {
|
|
|
116
129
|
if (item) {
|
|
117
130
|
this.composer.setItemPropertyValue(item, 'selected', true);
|
|
118
131
|
}
|
|
119
|
-
|
|
132
|
+
this.requestUpdate('value', oldValue);
|
|
120
133
|
}
|
|
121
134
|
}
|
|
122
135
|
/**
|
|
123
136
|
* Returns a values collection of the currently
|
|
124
137
|
* selected item values
|
|
138
|
+
* @type {string[]}
|
|
139
|
+
* @default []
|
|
125
140
|
* @readonly
|
|
126
141
|
*/
|
|
127
142
|
get values() {
|
|
@@ -148,7 +163,7 @@ let List = class List extends ControlElement {
|
|
|
148
163
|
matches.forEach((match) => this.composer.setItemPropertyValue(match, 'selected', true));
|
|
149
164
|
return !this.multiple; // Only set the fist value if multiple is not enabled
|
|
150
165
|
});
|
|
151
|
-
|
|
166
|
+
this.requestUpdate('values', oldValue);
|
|
152
167
|
}
|
|
153
168
|
}
|
|
154
169
|
}
|
|
@@ -183,12 +198,28 @@ let List = class List extends ControlElement {
|
|
|
183
198
|
this.highlightItem(this.getNextHighlightItem(Direction.UP), true);
|
|
184
199
|
}
|
|
185
200
|
/**
|
|
186
|
-
* Navigate
|
|
201
|
+
* Navigate down through the list items
|
|
187
202
|
* @returns {void}
|
|
188
203
|
*/
|
|
189
204
|
down() {
|
|
190
205
|
this.highlightItem(this.getNextHighlightItem(Direction.DOWN), true);
|
|
191
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Navigate to first focusable item of the list
|
|
209
|
+
* @returns {void}
|
|
210
|
+
*/
|
|
211
|
+
first() {
|
|
212
|
+
const firstItem = this.itemMap.get(this.tabbableElements[0]);
|
|
213
|
+
this.highlightItem(firstItem, true);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Navigate to first focusable item of the list
|
|
217
|
+
* @returns {void}
|
|
218
|
+
*/
|
|
219
|
+
last() {
|
|
220
|
+
const lastItem = this.itemMap.get(this.tabbableElements[this.tabbableElements.length - 1]);
|
|
221
|
+
this.highlightItem(lastItem, true);
|
|
222
|
+
}
|
|
192
223
|
/**
|
|
193
224
|
* Proxy for querying the composer
|
|
194
225
|
* @param engine composer querying engine
|
|
@@ -346,6 +377,12 @@ let List = class List extends ControlElement {
|
|
|
346
377
|
case 'ArrowDown':
|
|
347
378
|
this.down();
|
|
348
379
|
break;
|
|
380
|
+
case 'Home':
|
|
381
|
+
this.first();
|
|
382
|
+
break;
|
|
383
|
+
case 'End':
|
|
384
|
+
this.last();
|
|
385
|
+
break;
|
|
349
386
|
default:
|
|
350
387
|
return;
|
|
351
388
|
}
|
|
@@ -430,7 +467,7 @@ let List = class List extends ControlElement {
|
|
|
430
467
|
clearSelection() {
|
|
431
468
|
this.queryItemsByPropertyValue('selected', true)
|
|
432
469
|
.forEach((item) => this.composer.setItemPropertyValue(item, 'selected', false));
|
|
433
|
-
|
|
470
|
+
this.requestUpdate();
|
|
434
471
|
}
|
|
435
472
|
/**
|
|
436
473
|
* Queries and returns all renderable items.
|
|
@@ -446,21 +483,22 @@ let List = class List extends ControlElement {
|
|
|
446
483
|
* Allows for a mapping to be created between
|
|
447
484
|
* Data Item and Item Element.
|
|
448
485
|
* @param item Data item context
|
|
449
|
-
* @param
|
|
486
|
+
* @param recyclableElements Child elements available for reuse
|
|
450
487
|
* @returns List item element
|
|
451
488
|
*/
|
|
452
|
-
createListItem(item,
|
|
489
|
+
createListItem(item, recyclableElements) {
|
|
453
490
|
const cachedElement = this.elementFromItem(item);
|
|
454
491
|
const previousTimestamp = this.renderTimestamp.get(item) || NaN;
|
|
455
492
|
if (cachedElement && previousTimestamp > this.composer.getItemTimestamp(item)) {
|
|
456
493
|
return cachedElement; // don't re-render if the item hasn't changed
|
|
457
494
|
}
|
|
458
|
-
if (!cachedElement &&
|
|
495
|
+
if (!cachedElement && recyclableElements.length) {
|
|
459
496
|
// Remove any old ties with the reusable element.
|
|
460
|
-
const
|
|
461
|
-
this.
|
|
497
|
+
const recycledElement = recyclableElements.pop();
|
|
498
|
+
const previousItem = this.itemFromElement(recycledElement);
|
|
499
|
+
this.itemMap.delete(recycledElement);
|
|
462
500
|
previousItem && this.elementMap.delete(previousItem);
|
|
463
|
-
this.elementMap.set(item,
|
|
501
|
+
this.elementMap.set(item, recycledElement);
|
|
464
502
|
}
|
|
465
503
|
const freshElement = this.renderer(item, this.composer, this.elementFromItem(item));
|
|
466
504
|
if (cachedElement && cachedElement !== freshElement) {
|
|
@@ -491,34 +529,49 @@ let List = class List extends ControlElement {
|
|
|
491
529
|
*/
|
|
492
530
|
this.notifyPropertyChange('value', this.value);
|
|
493
531
|
}
|
|
532
|
+
/**
|
|
533
|
+
* Calculates what elements can be recycled safely
|
|
534
|
+
* @param renderItems Current items to render
|
|
535
|
+
* @returns Collection of elements to be recycled
|
|
536
|
+
*/
|
|
537
|
+
calculateRecyclableElements(renderItems) {
|
|
538
|
+
const result = [];
|
|
539
|
+
for (const element of this.children) {
|
|
540
|
+
const item = this.itemFromElement(element);
|
|
541
|
+
if (item && !renderItems.includes(item)) {
|
|
542
|
+
result.push(element);
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
return result;
|
|
546
|
+
}
|
|
494
547
|
/**
|
|
495
548
|
* Renders updates to light DOM
|
|
496
549
|
* @returns {void}
|
|
497
550
|
*/
|
|
498
551
|
renderLightDOM() {
|
|
552
|
+
const renderItems = this.renderItems;
|
|
499
553
|
const currentChildren = Array.from(this.children);
|
|
500
|
-
const
|
|
501
|
-
const
|
|
502
|
-
const deletions = currentChildren.filter(
|
|
503
|
-
deletions.forEach(
|
|
504
|
-
|
|
505
|
-
const index = renderChildren.indexOf(item);
|
|
554
|
+
const recyclableElements = this.calculateRecyclableElements(renderItems);
|
|
555
|
+
const renderChildren = renderItems.map((item) => this.createListItem(item, recyclableElements));
|
|
556
|
+
const deletions = currentChildren.filter(element => !renderChildren.includes(element));
|
|
557
|
+
deletions.forEach(element => this.removeChild(element));
|
|
558
|
+
renderChildren.forEach((element, index) => {
|
|
506
559
|
if (this.children.length === index) {
|
|
507
|
-
this.appendChild(
|
|
560
|
+
this.appendChild(element);
|
|
508
561
|
}
|
|
509
|
-
else {
|
|
510
|
-
this.insertBefore(
|
|
562
|
+
else if (element !== this.children[index]) {
|
|
563
|
+
this.insertBefore(element, this.children[index]);
|
|
511
564
|
}
|
|
512
565
|
});
|
|
513
566
|
}
|
|
514
567
|
firstUpdated(changeProperties) {
|
|
515
568
|
super.firstUpdated(changeProperties);
|
|
516
|
-
this.addEventListener('keydown',
|
|
517
|
-
this.addEventListener('tap',
|
|
518
|
-
this.addEventListener('mousemove',
|
|
519
|
-
this.addEventListener('mouseleave',
|
|
520
|
-
this.addEventListener('focusin',
|
|
521
|
-
this.addEventListener('focusout',
|
|
569
|
+
this.addEventListener('keydown', this.onKeyDown);
|
|
570
|
+
this.addEventListener('tap', this.onTap);
|
|
571
|
+
this.addEventListener('mousemove', this.onMouse);
|
|
572
|
+
this.addEventListener('mouseleave', this.clearHighlighted);
|
|
573
|
+
this.addEventListener('focusin', this.onFocus);
|
|
574
|
+
this.addEventListener('focusout', this.onBlur);
|
|
522
575
|
}
|
|
523
576
|
update(changeProperties) {
|
|
524
577
|
if (changeProperties.has('multiple')) {
|
|
@@ -526,8 +579,14 @@ let List = class List extends ControlElement {
|
|
|
526
579
|
}
|
|
527
580
|
return super.update(changeProperties);
|
|
528
581
|
}
|
|
582
|
+
updated(changedProperties) {
|
|
583
|
+
super.updated(changedProperties);
|
|
584
|
+
if (changedProperties.has('multiple')) {
|
|
585
|
+
this.setAttribute('aria-multiselectable', this.multiple ? 'true' : 'false');
|
|
586
|
+
}
|
|
587
|
+
}
|
|
529
588
|
/**
|
|
530
|
-
* A `
|
|
589
|
+
* A `CSSResultGroup` that will be used
|
|
531
590
|
* to style the host, slotted children
|
|
532
591
|
* and the internal template of the element.
|
|
533
592
|
* @return CSS template
|
|
@@ -558,6 +617,9 @@ __decorate([
|
|
|
558
617
|
__decorate([
|
|
559
618
|
property({ type: Boolean })
|
|
560
619
|
], List.prototype, "stateless", void 0);
|
|
620
|
+
__decorate([
|
|
621
|
+
property({ type: String, reflect: true, attribute: 'aria-multiselectable' })
|
|
622
|
+
], List.prototype, "ariaMultiselectable", void 0);
|
|
561
623
|
__decorate([
|
|
562
624
|
property({ type: Boolean })
|
|
563
625
|
], List.prototype, "multiple", void 0);
|
|
@@ -576,4 +638,3 @@ List = __decorate([
|
|
|
576
638
|
})
|
|
577
639
|
], List);
|
|
578
640
|
export { List };
|
|
579
|
-
//# sourceMappingURL=index.js.map
|
package/lib/list/renderer.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ExtensibleFunction } from './extensible-function';
|
|
2
|
-
import { DataItem, CollectionComposer } from '@refinitiv-ui/utils';
|
|
1
|
+
import { ExtensibleFunction } from './extensible-function.js';
|
|
2
|
+
import type { DataItem, CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
|
|
3
3
|
/**
|
|
4
4
|
* Render function interface
|
|
5
5
|
* TODO: Move this to @refinitiv-ui/utils
|
package/lib/list/renderer.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ExtensibleFunction } from './extensible-function';
|
|
1
|
+
import { ExtensibleFunction } from './extensible-function.js';
|
|
2
2
|
/**
|
|
3
3
|
* Renderer base class.
|
|
4
4
|
* Used for creating renderers to render data items.
|
|
@@ -7,4 +7,3 @@ import { ExtensibleFunction } from './extensible-function';
|
|
|
7
7
|
*/
|
|
8
8
|
export class Renderer extends ExtensibleFunction {
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=renderer.js.map
|
package/lib/loader/index.d.ts
CHANGED
|
@@ -6,6 +6,11 @@ import { BasicElement, PropertyValues, TemplateResult } from '@refinitiv-ui/core
|
|
|
6
6
|
* in the background such as downloading content.
|
|
7
7
|
*/
|
|
8
8
|
export declare class Loader extends BasicElement {
|
|
9
|
+
/**
|
|
10
|
+
* Element version number
|
|
11
|
+
* @returns version number
|
|
12
|
+
*/
|
|
13
|
+
static get version(): string;
|
|
9
14
|
/**
|
|
10
15
|
* Collection of template part names,
|
|
11
16
|
* used to create and theme different loader styles
|
|
@@ -31,4 +36,6 @@ declare global {
|
|
|
31
36
|
'ef-loader': Partial<Loader> | JSXInterface.HTMLAttributes<Loader>;
|
|
32
37
|
}
|
|
33
38
|
}
|
|
34
|
-
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export {};
|
package/lib/loader/index.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
import { BasicElement, customElement, html } from '@refinitiv-ui/core';
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { BasicElement, html } from '@refinitiv-ui/core';
|
|
3
|
+
import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
|
|
4
|
+
import { VERSION } from '../version.js';
|
|
8
5
|
/**
|
|
9
6
|
* Global cache for loader template parts
|
|
10
7
|
*/
|
|
@@ -15,6 +12,13 @@ let cachedParts;
|
|
|
15
12
|
* in the background such as downloading content.
|
|
16
13
|
*/
|
|
17
14
|
let Loader = class Loader extends BasicElement {
|
|
15
|
+
/**
|
|
16
|
+
* Element version number
|
|
17
|
+
* @returns version number
|
|
18
|
+
*/
|
|
19
|
+
static get version() {
|
|
20
|
+
return VERSION;
|
|
21
|
+
}
|
|
18
22
|
/**
|
|
19
23
|
* Collection of template part names,
|
|
20
24
|
* used to create and theme different loader styles
|
|
@@ -55,4 +59,3 @@ Loader = __decorate([
|
|
|
55
59
|
})
|
|
56
60
|
], Loader);
|
|
57
61
|
export { Loader };
|
|
58
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -49,13 +49,13 @@
|
|
|
49
49
|
"name": "readonly",
|
|
50
50
|
"description": "Hides text field and clear icon from all pills",
|
|
51
51
|
"type": "boolean",
|
|
52
|
-
"default": "
|
|
52
|
+
"default": "false"
|
|
53
53
|
},
|
|
54
54
|
{
|
|
55
55
|
"name": "disabled",
|
|
56
56
|
"description": "Set disabled state",
|
|
57
57
|
"type": "boolean",
|
|
58
|
-
"default": "
|
|
58
|
+
"default": "false"
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
61
|
"name": "value",
|
|
@@ -66,9 +66,10 @@
|
|
|
66
66
|
],
|
|
67
67
|
"properties": [
|
|
68
68
|
{
|
|
69
|
-
"name": "values",
|
|
69
|
+
"name": "values (readonly)",
|
|
70
70
|
"description": "Array of item's values ( readonly )",
|
|
71
|
-
"type": "string[]"
|
|
71
|
+
"type": "string[]",
|
|
72
|
+
"default": "[]"
|
|
72
73
|
},
|
|
73
74
|
{
|
|
74
75
|
"name": "pillsOnly",
|
|
@@ -137,14 +138,14 @@
|
|
|
137
138
|
"attribute": "readonly",
|
|
138
139
|
"description": "Hides text field and clear icon from all pills",
|
|
139
140
|
"type": "boolean",
|
|
140
|
-
"default": "
|
|
141
|
+
"default": "false"
|
|
141
142
|
},
|
|
142
143
|
{
|
|
143
144
|
"name": "disabled",
|
|
144
145
|
"attribute": "disabled",
|
|
145
146
|
"description": "Set disabled state",
|
|
146
147
|
"type": "boolean",
|
|
147
|
-
"default": "
|
|
148
|
+
"default": "false"
|
|
148
149
|
},
|
|
149
150
|
{
|
|
150
151
|
"name": "value",
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# ef-multi-input
|
|
2
|
+
|
|
3
|
+
An input control component to display a selection of pills
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
| Property | Attribute | Type | Default | Description |
|
|
8
|
+
|---------------------|---------------|--------------------------|---------|------------------------------------------------|
|
|
9
|
+
| `data` | | `MultiInputData \| null` | null | The data object, used to render the list. |
|
|
10
|
+
| `disabled` | `disabled` | `boolean` | false | Set disabled state |
|
|
11
|
+
| `error` | `error` | `boolean` | false | Set state to error |
|
|
12
|
+
| `icon` | `icon` | `string` | "" | Specify icon to display inside input box |
|
|
13
|
+
| `maxLength` | `maxlength` | `number \| null` | null | Set character max limit |
|
|
14
|
+
| `minLength` | `minlength` | `number \| null` | null | Set character min limit |
|
|
15
|
+
| `pillsOnly` | `pills-only` | `boolean` | false | Hide text input box |
|
|
16
|
+
| `placeholder` | `placeholder` | `string` | "" | Placeholder text to display in input box |
|
|
17
|
+
| `readonly` | `readonly` | `boolean` | false | Hides text field and clear icon from all pills |
|
|
18
|
+
| `selectionEnd` | | `number \| null` | null | Selection end index |
|
|
19
|
+
| `selectionStart` | | `number \| null` | null | Selection start index |
|
|
20
|
+
| `value` | `value` | `string` | "" | Current value of text field |
|
|
21
|
+
| `values (readonly)` | | `string[]` | [] | Array of item's values ( readonly ) |
|
|
22
|
+
| `warning` | `warning` | `boolean` | false | Set state to warning |
|
|
23
|
+
|
|
24
|
+
## Methods
|
|
25
|
+
|
|
26
|
+
| Method | Type | Description |
|
|
27
|
+
|---------------------|--------------------------------------------------|--------------------------------------------------|
|
|
28
|
+
| `add` | `(item: any): MultiInputDataItem \| null` | Add a new item to the input. Return newly added object or null if added invalid object.<br /><br />**item**: to add. Object must have at least value and label |
|
|
29
|
+
| `removeByIndex` | `(index: number): MultiInputDataItem \| null` | Removes pill by index. Returns item that removed or null if list was empty<br /><br />**index**: of pill to be removed |
|
|
30
|
+
| `removeByValue` | `(value: string): string` | Removes the item by the value and returns array of removed items<br /><br />**value**: Value of item to remove |
|
|
31
|
+
| `removeLastItem` | `(): MultiInputDataItem \| null` | Removes last item. Returns item that removed or null if list was empty |
|
|
32
|
+
| `select` | `(): void` | Select the contents of input |
|
|
33
|
+
| `setSelectionRange` | `(startSelection: number, endSelection: number): void` | Set the selection range<br /><br />**startSelection**: Start of selection<br />**endSelection**: End of the selection |
|
|
34
|
+
|
|
35
|
+
## Events
|
|
36
|
+
|
|
37
|
+
| Event | Description |
|
|
38
|
+
|-----------------|--------------------------------------------------|
|
|
39
|
+
| `error-changed` | Dispatched when error state changes.<br />Property `detail.error` is error from validation. |
|
|
40
|
+
| `item-added` | Fired when new pill is added.<br />Property `detail.item` is new added pill.<br />Property `detail.items` is new list of all pills. |
|
|
41
|
+
| `item-error` | Fired when item that attempt to add is invalid.<br />Property `detail.item` is item with an error.<br />Property `detail.items` a current list of pills. |
|
|
42
|
+
| `item-removed` | Fired when item is removed.<br />Property `detail.item` is pill that removed.<br />Property `detail.items` is new list of all pills. |
|
|
43
|
+
| `value-changed` | Fired when new value of text field is changed.<br />Property `detail.value` will be the new value. |
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CollectionItem } from '@refinitiv-ui/utils';
|
|
1
|
+
import type { CollectionItem } from '@refinitiv-ui/utils/lib/collection.js';
|
|
2
2
|
export declare type SelectionIndex = number | null;
|
|
3
3
|
export declare type MultiInputEvents = 'item-added' | 'item-removed' | 'item-error';
|
|
4
4
|
export declare type MultiInputData = MultiInputDataItem[];
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { JSXInterface } from '../jsx';
|
|
2
|
-
import { ControlElement,
|
|
3
|
-
import '
|
|
4
|
-
import '../
|
|
5
|
-
import
|
|
6
|
-
export { MultiInputData, MultiInputDataItem };
|
|
2
|
+
import { ControlElement, CSSResultGroup, MultiValue, TemplateResult, PropertyValues } from '@refinitiv-ui/core';
|
|
3
|
+
import type { MultiInputData, MultiInputDataItem, SelectionIndex } from './helpers/types';
|
|
4
|
+
import '../pill/index.js';
|
|
5
|
+
import '../text-field/index.js';
|
|
6
|
+
export type { MultiInputData, MultiInputDataItem };
|
|
7
7
|
/**
|
|
8
8
|
* An input control component to display a selection of pills
|
|
9
9
|
*
|
|
@@ -37,16 +37,22 @@ export { MultiInputData, MultiInputDataItem };
|
|
|
37
37
|
*/
|
|
38
38
|
export declare class MultiInput extends ControlElement implements MultiValue {
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* Element version number
|
|
41
|
+
* @returns version number
|
|
42
|
+
*/
|
|
43
|
+
static get version(): string;
|
|
44
|
+
/**
|
|
45
|
+
* A `CSSResultGroup` that will be used
|
|
41
46
|
* to style the host, slotted children
|
|
42
47
|
* and the internal template of the element.
|
|
43
48
|
* @return CSS template
|
|
44
49
|
*/
|
|
45
|
-
static get styles():
|
|
50
|
+
static get styles(): CSSResultGroup;
|
|
46
51
|
/**
|
|
47
52
|
* Array of item's values ( readonly )
|
|
48
53
|
* @readonly
|
|
49
54
|
* @type {string[]}
|
|
55
|
+
* @default []
|
|
50
56
|
*/
|
|
51
57
|
get values(): string[];
|
|
52
58
|
/**
|
|
@@ -79,17 +85,20 @@ export declare class MultiInput extends ControlElement implements MultiValue {
|
|
|
79
85
|
minLength: number | null;
|
|
80
86
|
/**
|
|
81
87
|
* Selection start index
|
|
88
|
+
* @default null
|
|
82
89
|
*/
|
|
83
90
|
get selectionStart(): number | null;
|
|
84
91
|
set selectionStart(index: SelectionIndex);
|
|
85
92
|
/**
|
|
86
93
|
* Selection end index
|
|
94
|
+
* @default null
|
|
87
95
|
*/
|
|
88
96
|
get selectionEnd(): number | null;
|
|
89
97
|
set selectionEnd(index: SelectionIndex);
|
|
90
98
|
/**
|
|
91
99
|
* The data object, used to render the list.
|
|
92
100
|
* @type {MultiInputData | null}
|
|
101
|
+
* @default null
|
|
93
102
|
*/
|
|
94
103
|
get data(): MultiInputData | null;
|
|
95
104
|
set data(value: MultiInputData | null);
|
|
@@ -287,4 +296,6 @@ declare global {
|
|
|
287
296
|
'ef-multi-input': Partial<MultiInput> | JSXInterface.ControlHTMLAttributes<MultiInput>;
|
|
288
297
|
}
|
|
289
298
|
}
|
|
290
|
-
}
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
export {};
|
package/lib/multi-input/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
7
|
-
import {
|
|
8
|
-
import { CollectionComposer } from '@refinitiv-ui/utils';
|
|
9
|
-
import '../pill';
|
|
10
|
-
import '../text-field';
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { ControlElement, css, html } from '@refinitiv-ui/core';
|
|
3
|
+
import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
|
|
4
|
+
import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
|
|
5
|
+
import { query } from '@refinitiv-ui/core/lib/decorators/query.js';
|
|
6
|
+
import { ifDefined } from '@refinitiv-ui/core/lib/directives/if-defined.js';
|
|
7
|
+
import { VERSION } from '../version.js';
|
|
8
|
+
import { CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
|
|
9
|
+
import '../pill/index.js';
|
|
10
|
+
import '../text-field/index.js';
|
|
11
11
|
const hasChanged = (newVal, oldVal) => oldVal === undefined ? false : newVal !== oldVal;
|
|
12
12
|
/**
|
|
13
13
|
* An input control component to display a selection of pills
|
|
@@ -101,7 +101,14 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
101
101
|
};
|
|
102
102
|
}
|
|
103
103
|
/**
|
|
104
|
-
*
|
|
104
|
+
* Element version number
|
|
105
|
+
* @returns version number
|
|
106
|
+
*/
|
|
107
|
+
static get version() {
|
|
108
|
+
return VERSION;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* A `CSSResultGroup` that will be used
|
|
105
112
|
* to style the host, slotted children
|
|
106
113
|
* and the internal template of the element.
|
|
107
114
|
* @return CSS template
|
|
@@ -138,12 +145,14 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
138
145
|
* Array of item's values ( readonly )
|
|
139
146
|
* @readonly
|
|
140
147
|
* @type {string[]}
|
|
148
|
+
* @default []
|
|
141
149
|
*/
|
|
142
150
|
get values() {
|
|
143
151
|
return this.composer.queryItems(() => true).map(({ value }) => value);
|
|
144
152
|
}
|
|
145
153
|
/**
|
|
146
154
|
* Selection start index
|
|
155
|
+
* @default null
|
|
147
156
|
*/
|
|
148
157
|
get selectionStart() {
|
|
149
158
|
if (this.search) {
|
|
@@ -158,6 +167,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
158
167
|
}
|
|
159
168
|
/**
|
|
160
169
|
* Selection end index
|
|
170
|
+
* @default null
|
|
161
171
|
*/
|
|
162
172
|
get selectionEnd() {
|
|
163
173
|
if (this.search) {
|
|
@@ -173,6 +183,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
173
183
|
/**
|
|
174
184
|
* The data object, used to render the list.
|
|
175
185
|
* @type {MultiInputData | null}
|
|
186
|
+
* @default null
|
|
176
187
|
*/
|
|
177
188
|
get data() {
|
|
178
189
|
return this._data;
|
|
@@ -189,7 +200,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
189
200
|
this.composer = new CollectionComposer([]);
|
|
190
201
|
}
|
|
191
202
|
this._data = value;
|
|
192
|
-
|
|
203
|
+
this.requestUpdate('data', oldValue);
|
|
193
204
|
}
|
|
194
205
|
/**
|
|
195
206
|
* Removes the item by the value and returns array of removed items
|
|
@@ -247,8 +258,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
247
258
|
}
|
|
248
259
|
if (process) {
|
|
249
260
|
this.composer.removeItem(item);
|
|
250
|
-
|
|
251
|
-
this.focus(); /* keep focus on multi-input */
|
|
261
|
+
this.requestUpdate();
|
|
252
262
|
return item;
|
|
253
263
|
}
|
|
254
264
|
return null;
|
|
@@ -281,7 +291,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
281
291
|
}
|
|
282
292
|
if (process) {
|
|
283
293
|
this.composer.addItem(item);
|
|
284
|
-
|
|
294
|
+
this.requestUpdate();
|
|
285
295
|
return item;
|
|
286
296
|
}
|
|
287
297
|
return null;
|
|
@@ -324,7 +334,7 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
324
334
|
}
|
|
325
335
|
if (oldValue !== value) {
|
|
326
336
|
this.oldValue = value;
|
|
327
|
-
|
|
337
|
+
this.requestUpdate('value', oldValue);
|
|
328
338
|
}
|
|
329
339
|
}
|
|
330
340
|
get value() {
|
|
@@ -435,12 +445,13 @@ let MultiInput = class MultiInput extends ControlElement {
|
|
|
435
445
|
onPillClearsHandler(event) {
|
|
436
446
|
const pill = event.target;
|
|
437
447
|
const index = pill.getAttribute('index');
|
|
438
|
-
if (index
|
|
448
|
+
if (index === null) {
|
|
439
449
|
return;
|
|
440
450
|
}
|
|
441
451
|
const items = this.composer.queryItems(() => true);
|
|
442
452
|
const item = items[Number(index)];
|
|
443
453
|
this.removeItem(item, true);
|
|
454
|
+
this.focus(); // keep focus on multi-input
|
|
444
455
|
}
|
|
445
456
|
/**
|
|
446
457
|
* the wrapper for item events
|
|
@@ -581,4 +592,3 @@ MultiInput = __decorate([
|
|
|
581
592
|
})
|
|
582
593
|
], MultiInput);
|
|
583
594
|
export { MultiInput };
|
|
584
|
-
//# sourceMappingURL=index.js.map
|