@refinitiv-ui/elements 5.3.3 → 5.7.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 +70 -0
- package/lib/accordion/custom-elements.json +49 -0
- package/lib/accordion/custom-elements.md +18 -0
- package/lib/accordion/index.d.ts +76 -0
- package/lib/accordion/index.js +136 -0
- package/lib/accordion/themes/halo/dark/index.js +3 -0
- package/lib/accordion/themes/halo/light/index.js +3 -0
- package/lib/accordion/themes/solar/charcoal/index.js +3 -0
- package/lib/accordion/themes/solar/pearl/index.js +3 -0
- package/lib/appstate-bar/custom-elements.json +49 -0
- package/lib/appstate-bar/custom-elements.md +22 -0
- package/lib/appstate-bar/index.d.ts +65 -0
- package/lib/appstate-bar/index.js +100 -0
- package/lib/appstate-bar/themes/halo/dark/index.js +3 -0
- package/lib/appstate-bar/themes/halo/light/index.js +3 -0
- package/lib/appstate-bar/themes/solar/charcoal/index.js +3 -0
- package/lib/appstate-bar/themes/solar/pearl/index.js +3 -0
- package/lib/autosuggest/custom-elements.json +233 -0
- package/lib/autosuggest/custom-elements.md +47 -0
- package/lib/autosuggest/helpers/types.d.ts +54 -0
- package/lib/autosuggest/helpers/types.js +1 -0
- package/lib/autosuggest/helpers/utils.d.ts +39 -0
- package/lib/autosuggest/helpers/utils.js +75 -0
- package/lib/autosuggest/index.d.ts +534 -0
- package/lib/autosuggest/index.js +1251 -0
- package/lib/autosuggest/themes/halo/dark/index.js +5 -0
- package/lib/autosuggest/themes/halo/light/index.js +5 -0
- package/lib/autosuggest/themes/solar/charcoal/index.js +5 -0
- package/lib/autosuggest/themes/solar/pearl/index.js +5 -0
- package/lib/button/custom-elements.json +119 -0
- package/lib/button/custom-elements.md +23 -0
- package/lib/button/index.d.ts +132 -0
- package/lib/button/index.js +223 -0
- package/lib/button/themes/halo/dark/index.js +3 -0
- package/lib/button/themes/halo/light/index.js +3 -0
- package/lib/button/themes/solar/charcoal/index.js +3 -0
- package/lib/button/themes/solar/pearl/index.js +3 -0
- package/lib/button-bar/custom-elements.json +26 -0
- package/lib/button-bar/custom-elements.md +9 -0
- package/lib/button-bar/index.d.ts +76 -0
- package/lib/button-bar/index.js +155 -0
- package/lib/button-bar/themes/halo/dark/index.js +3 -0
- package/lib/button-bar/themes/halo/light/index.js +3 -0
- package/lib/button-bar/themes/solar/charcoal/index.js +3 -0
- package/lib/button-bar/themes/solar/pearl/index.js +3 -0
- package/lib/calendar/constants.d.ts +22 -0
- package/lib/calendar/constants.js +23 -0
- package/lib/calendar/custom-elements.json +199 -0
- package/lib/calendar/custom-elements.md +35 -0
- package/lib/calendar/index.d.ts +321 -0
- package/lib/calendar/index.js +906 -0
- package/lib/calendar/locales.d.ts +1 -0
- package/lib/calendar/locales.js +40 -0
- package/lib/calendar/themes/halo/dark/index.js +3 -0
- package/lib/calendar/themes/halo/light/index.js +3 -0
- package/lib/calendar/themes/solar/charcoal/index.js +3 -0
- package/lib/calendar/themes/solar/pearl/index.js +3 -0
- package/lib/calendar/types.d.ts +29 -0
- package/lib/calendar/types.js +1 -0
- package/lib/calendar/utils.d.ts +42 -0
- package/lib/calendar/utils.js +119 -0
- package/lib/canvas/custom-elements.json +69 -0
- package/lib/canvas/custom-elements.md +27 -0
- package/lib/canvas/index.d.ts +100 -0
- package/lib/canvas/index.js +172 -0
- package/lib/canvas/themes/halo/dark/index.js +2 -0
- package/lib/canvas/themes/halo/light/index.js +2 -0
- package/lib/canvas/themes/solar/charcoal/index.js +2 -0
- package/lib/canvas/themes/solar/pearl/index.js +2 -0
- package/lib/card/custom-elements.json +59 -0
- package/lib/card/custom-elements.md +24 -0
- package/lib/card/helpers/types.d.ts +12 -0
- package/lib/card/helpers/types.js +1 -0
- package/lib/card/index.d.ts +140 -0
- package/lib/card/index.js +246 -0
- package/lib/card/themes/halo/dark/index.js +5 -0
- package/lib/card/themes/halo/light/index.js +5 -0
- package/lib/card/themes/solar/charcoal/index.js +5 -0
- package/lib/card/themes/solar/pearl/index.js +5 -0
- package/lib/chart/custom-elements.json +42 -0
- 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 +5 -0
- package/lib/chart/helpers/legend.js +78 -0
- package/lib/chart/helpers/merge.d.ts +15 -0
- package/lib/chart/helpers/merge.js +28 -0
- package/lib/chart/helpers/types.d.ts +69 -0
- package/lib/chart/helpers/types.js +1 -0
- package/lib/chart/index.d.ts +187 -0
- package/lib/chart/index.js +491 -0
- package/lib/chart/plugins/doughnut-center-label.d.ts +3 -0
- package/lib/chart/plugins/doughnut-center-label.js +196 -0
- package/lib/chart/themes/halo/dark/index.js +4 -0
- package/lib/chart/themes/halo/light/index.js +4 -0
- package/lib/chart/themes/solar/charcoal/index.js +4 -0
- package/lib/chart/themes/solar/pearl/index.js +4 -0
- package/lib/checkbox/custom-elements.json +67 -0
- package/lib/checkbox/custom-elements.md +18 -0
- package/lib/checkbox/index.d.ts +95 -0
- package/lib/checkbox/index.js +193 -0
- package/lib/checkbox/themes/halo/dark/index.js +4 -0
- package/lib/checkbox/themes/halo/light/index.js +4 -0
- package/lib/checkbox/themes/solar/charcoal/index.js +4 -0
- package/lib/checkbox/themes/solar/pearl/index.js +4 -0
- package/lib/clock/custom-elements.json +121 -0
- package/lib/clock/custom-elements.md +28 -0
- package/lib/clock/index.d.ts +319 -0
- package/lib/clock/index.js +581 -0
- package/lib/clock/themes/halo/dark/index.js +2 -0
- package/lib/clock/themes/halo/light/index.js +2 -0
- package/lib/clock/themes/solar/charcoal/index.js +2 -0
- package/lib/clock/themes/solar/pearl/index.js +2 -0
- package/lib/clock/utils/TickManager.d.ts +14 -0
- package/lib/clock/utils/TickManager.js +66 -0
- package/lib/clock/utils/timestamps.d.ts +6 -0
- package/lib/clock/utils/timestamps.js +6 -0
- package/lib/collapse/custom-elements.json +79 -0
- package/lib/collapse/custom-elements.md +27 -0
- package/lib/collapse/index.d.ts +119 -0
- package/lib/collapse/index.js +197 -0
- package/lib/collapse/themes/halo/dark/index.js +5 -0
- package/lib/collapse/themes/halo/light/index.js +5 -0
- package/lib/collapse/themes/solar/charcoal/index.js +5 -0
- package/lib/collapse/themes/solar/pearl/index.js +5 -0
- package/lib/color-dialog/custom-elements.json +193 -0
- package/lib/color-dialog/custom-elements.md +39 -0
- package/lib/color-dialog/elements/color-palettes.d.ts +52 -0
- package/lib/color-dialog/elements/color-palettes.js +101 -0
- package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
- package/lib/color-dialog/elements/grayscale-palettes.js +161 -0
- package/lib/color-dialog/elements/palettes.d.ts +65 -0
- package/lib/color-dialog/elements/palettes.js +132 -0
- package/lib/color-dialog/helpers/color-helpers.d.ts +16 -0
- package/lib/color-dialog/helpers/color-helpers.js +161 -0
- package/lib/color-dialog/helpers/value-model.d.ts +75 -0
- package/lib/color-dialog/helpers/value-model.js +141 -0
- package/lib/color-dialog/index.d.ts +232 -0
- package/lib/color-dialog/index.js +459 -0
- package/lib/color-dialog/themes/halo/dark/index.js +7 -0
- package/lib/color-dialog/themes/halo/light/index.js +7 -0
- package/lib/color-dialog/themes/solar/charcoal/index.js +7 -0
- package/lib/color-dialog/themes/solar/pearl/index.js +7 -0
- package/lib/combo-box/custom-elements.json +210 -0
- package/lib/combo-box/custom-elements.md +35 -0
- package/lib/combo-box/helpers/filter.d.ts +10 -0
- package/lib/combo-box/helpers/filter.js +29 -0
- package/lib/combo-box/helpers/keyboard-event.d.ts +17 -0
- package/lib/combo-box/helpers/keyboard-event.js +19 -0
- package/lib/combo-box/helpers/types.d.ts +11 -0
- package/lib/combo-box/helpers/types.js +1 -0
- package/lib/combo-box/index.d.ts +523 -0
- package/lib/combo-box/index.js +1146 -0
- package/lib/combo-box/themes/halo/dark/index.js +8 -0
- package/lib/combo-box/themes/halo/light/index.js +8 -0
- package/lib/combo-box/themes/solar/charcoal/index.js +8 -0
- package/lib/combo-box/themes/solar/pearl/index.js +8 -0
- package/lib/counter/custom-elements.json +35 -0
- package/lib/counter/custom-elements.md +11 -0
- package/lib/counter/index.d.ts +89 -0
- package/lib/counter/index.js +152 -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 +333 -0
- package/lib/datetime-picker/custom-elements.md +49 -0
- package/lib/datetime-picker/index.d.ts +498 -0
- package/lib/datetime-picker/index.js +1164 -0
- package/lib/datetime-picker/locales.d.ts +8 -0
- package/lib/datetime-picker/locales.js +57 -0
- package/lib/datetime-picker/themes/halo/dark/index.js +7 -0
- package/lib/datetime-picker/themes/halo/light/index.js +7 -0
- package/lib/datetime-picker/themes/solar/charcoal/index.js +7 -0
- package/lib/datetime-picker/themes/solar/pearl/index.js +7 -0
- package/lib/datetime-picker/types.d.ts +3 -0
- package/lib/datetime-picker/types.js +1 -0
- package/lib/datetime-picker/utils.d.ts +55 -0
- package/lib/datetime-picker/utils.js +92 -0
- package/lib/dialog/custom-elements.json +136 -0
- package/lib/dialog/custom-elements.md +47 -0
- package/lib/dialog/draggable-element.d.ts +14 -0
- package/lib/dialog/draggable-element.js +221 -0
- package/lib/dialog/index.d.ts +199 -0
- package/lib/dialog/index.js +331 -0
- package/lib/dialog/themes/halo/dark/index.js +7 -0
- package/lib/dialog/themes/halo/light/index.js +7 -0
- package/lib/dialog/themes/solar/charcoal/index.js +7 -0
- package/lib/dialog/themes/solar/pearl/index.js +7 -0
- package/lib/email-field/custom-elements.json +199 -0
- package/lib/email-field/custom-elements.md +35 -0
- package/lib/email-field/index.d.ts +152 -0
- package/lib/email-field/index.js +286 -0
- package/lib/email-field/themes/halo/dark/index.js +3 -0
- package/lib/email-field/themes/halo/light/index.js +3 -0
- package/lib/email-field/themes/solar/charcoal/index.js +3 -0
- package/lib/email-field/themes/solar/pearl/index.js +3 -0
- package/lib/events.d.ts +121 -0
- package/lib/events.js +1 -0
- package/lib/flag/custom-elements.json +35 -0
- package/lib/flag/custom-elements.md +10 -0
- package/lib/flag/index.d.ts +94 -0
- package/lib/flag/index.js +166 -0
- package/lib/flag/themes/halo/dark/index.js +2 -0
- package/lib/flag/themes/halo/light/index.js +2 -0
- package/lib/flag/themes/solar/charcoal/index.js +2 -0
- package/lib/flag/themes/solar/pearl/index.js +2 -0
- package/lib/flag/utils/FlagLoader.d.ts +47 -0
- package/lib/flag/utils/FlagLoader.js +86 -0
- package/lib/header/custom-elements.json +36 -0
- package/lib/header/custom-elements.md +18 -0
- package/lib/header/index.d.ts +46 -0
- package/lib/header/index.js +73 -0
- package/lib/header/themes/halo/dark/index.js +2 -0
- package/lib/header/themes/halo/light/index.js +2 -0
- package/lib/header/themes/solar/charcoal/index.js +2 -0
- package/lib/header/themes/solar/pearl/index.js +2 -0
- package/lib/heatmap/custom-elements.json +151 -0
- package/lib/heatmap/custom-elements.md +26 -0
- package/lib/heatmap/helpers/color.d.ts +30 -0
- package/lib/heatmap/helpers/color.js +68 -0
- package/lib/heatmap/helpers/text.d.ts +26 -0
- package/lib/heatmap/helpers/text.js +91 -0
- package/lib/heatmap/helpers/track.d.ts +102 -0
- package/lib/heatmap/helpers/track.js +160 -0
- package/lib/heatmap/helpers/types.d.ts +40 -0
- package/lib/heatmap/helpers/types.js +1 -0
- package/lib/heatmap/index.d.ts +453 -0
- package/lib/heatmap/index.js +1103 -0
- package/lib/heatmap/themes/halo/dark/index.js +4 -0
- package/lib/heatmap/themes/halo/light/index.js +4 -0
- package/lib/heatmap/themes/solar/charcoal/index.js +4 -0
- package/lib/heatmap/themes/solar/pearl/index.js +4 -0
- package/lib/icon/custom-elements.json +36 -0
- package/lib/icon/custom-elements.md +8 -0
- package/lib/icon/index.d.ts +88 -0
- package/lib/icon/index.js +169 -0
- package/lib/icon/themes/halo/dark/index.js +2 -0
- package/lib/icon/themes/halo/light/index.js +2 -0
- package/lib/icon/themes/solar/charcoal/index.js +2 -0
- package/lib/icon/themes/solar/pearl/index.js +2 -0
- package/lib/icon/utils/IconLoader.d.ts +52 -0
- package/lib/icon/utils/IconLoader.js +93 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +3 -0
- package/lib/interactive-chart/custom-elements.json +86 -0
- package/lib/interactive-chart/custom-elements.md +32 -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 +45 -0
- package/lib/interactive-chart/helpers/types.js +6 -0
- package/lib/interactive-chart/index.d.ts +380 -0
- package/lib/interactive-chart/index.js +1090 -0
- package/lib/interactive-chart/themes/halo/dark/index.js +3 -0
- package/lib/interactive-chart/themes/halo/light/index.js +3 -0
- package/lib/interactive-chart/themes/solar/charcoal/index.js +3 -0
- package/lib/interactive-chart/themes/solar/pearl/index.js +3 -0
- package/lib/item/custom-elements.json +151 -0
- package/lib/item/custom-elements.md +29 -0
- package/lib/item/helpers/types.d.ts +57 -0
- package/lib/item/helpers/types.js +1 -0
- package/lib/item/index.d.ts +158 -0
- package/lib/item/index.js +271 -0
- package/lib/item/themes/halo/dark/index.js +4 -0
- package/lib/item/themes/halo/light/index.js +4 -0
- package/lib/item/themes/solar/charcoal/index.js +4 -0
- package/lib/item/themes/solar/pearl/index.js +4 -0
- package/lib/jsx.d.ts +223 -0
- package/lib/label/custom-elements.json +52 -0
- package/lib/label/custom-elements.md +11 -0
- package/lib/label/index.d.ts +102 -0
- package/lib/label/index.js +244 -0
- package/lib/label/themes/halo/dark/index.js +3 -0
- package/lib/label/themes/halo/light/index.js +3 -0
- package/lib/label/themes/solar/charcoal/index.js +3 -0
- package/lib/label/themes/solar/pearl/index.js +3 -0
- package/lib/layout/custom-elements.json +163 -0
- package/lib/layout/custom-elements.md +26 -0
- package/lib/layout/index.d.ts +107 -0
- package/lib/layout/index.js +212 -0
- package/lib/layout/themes/halo/dark/index.js +2 -0
- package/lib/layout/themes/halo/light/index.js +2 -0
- package/lib/layout/themes/solar/charcoal/index.js +2 -0
- package/lib/layout/themes/solar/pearl/index.js +2 -0
- package/lib/led-gauge/custom-elements.json +113 -0
- package/lib/led-gauge/custom-elements.md +17 -0
- package/lib/led-gauge/index.d.ts +143 -0
- package/lib/led-gauge/index.js +437 -0
- package/lib/led-gauge/themes/halo/dark/index.js +3 -0
- package/lib/led-gauge/themes/halo/light/index.js +3 -0
- package/lib/led-gauge/themes/solar/charcoal/index.js +3 -0
- package/lib/led-gauge/themes/solar/pearl/index.js +3 -0
- package/lib/list/custom-elements.json +111 -0
- package/lib/list/custom-elements.md +30 -0
- package/lib/list/extensible-function.d.ts +8 -0
- package/lib/list/extensible-function.js +13 -0
- package/lib/list/helpers/list-renderer.d.ts +9 -0
- package/lib/list/helpers/list-renderer.js +35 -0
- package/lib/list/helpers/types.d.ts +3 -0
- package/lib/list/helpers/types.js +1 -0
- package/lib/list/index.d.ts +292 -0
- package/lib/list/index.js +600 -0
- package/lib/list/renderer.d.ts +36 -0
- package/lib/list/renderer.js +9 -0
- package/lib/list/themes/halo/dark/index.js +3 -0
- package/lib/list/themes/halo/light/index.js +3 -0
- package/lib/list/themes/solar/charcoal/index.js +3 -0
- package/lib/list/themes/solar/pearl/index.js +3 -0
- package/lib/loader/custom-elements.json +9 -0
- package/lib/loader/custom-elements.md +5 -0
- package/lib/loader/index.d.ts +41 -0
- package/lib/loader/index.js +61 -0
- package/lib/loader/themes/halo/dark/index.js +2 -0
- package/lib/loader/themes/halo/light/index.js +2 -0
- package/lib/loader/themes/solar/charcoal/index.js +2 -0
- package/lib/loader/themes/solar/pearl/index.js +2 -0
- package/lib/multi-input/custom-elements.json +238 -0
- package/lib/multi-input/custom-elements.md +43 -0
- package/lib/multi-input/helpers/types.d.ts +11 -0
- package/lib/multi-input/helpers/types.js +1 -0
- package/lib/multi-input/index.d.ts +297 -0
- package/lib/multi-input/index.js +590 -0
- package/lib/multi-input/themes/halo/dark/index.js +4 -0
- package/lib/multi-input/themes/halo/light/index.js +4 -0
- package/lib/multi-input/themes/solar/charcoal/index.js +4 -0
- package/lib/multi-input/themes/solar/pearl/index.js +4 -0
- package/lib/notification/custom-elements.json +95 -0
- package/lib/notification/custom-elements.md +26 -0
- package/lib/notification/elements/notification-tray.d.ts +97 -0
- package/lib/notification/elements/notification-tray.js +167 -0
- package/lib/notification/elements/notification.d.ts +90 -0
- package/lib/notification/elements/notification.js +154 -0
- package/lib/notification/helpers/status.d.ts +30 -0
- package/lib/notification/helpers/status.js +130 -0
- package/lib/notification/helpers/types.d.ts +10 -0
- package/lib/notification/helpers/types.js +1 -0
- package/lib/notification/index.d.ts +2 -0
- package/lib/notification/index.js +2 -0
- package/lib/notification/themes/halo/dark/index.js +5 -0
- package/lib/notification/themes/halo/light/index.js +5 -0
- package/lib/notification/themes/solar/charcoal/index.js +5 -0
- package/lib/notification/themes/solar/pearl/index.js +5 -0
- package/lib/number-field/custom-elements.json +200 -0
- package/lib/number-field/custom-elements.md +37 -0
- package/lib/number-field/index.d.ts +294 -0
- package/lib/number-field/index.js +707 -0
- package/lib/number-field/themes/halo/dark/index.js +3 -0
- package/lib/number-field/themes/halo/light/index.js +3 -0
- package/lib/number-field/themes/solar/charcoal/index.js +3 -0
- package/lib/number-field/themes/solar/pearl/index.js +3 -0
- package/lib/overlay/custom-elements.json +345 -0
- package/lib/overlay/custom-elements.md +54 -0
- package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
- package/lib/overlay/elements/overlay-backdrop.js +64 -0
- package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
- package/lib/overlay/elements/overlay-viewport.js +52 -0
- package/lib/overlay/elements/overlay.d.ts +403 -0
- package/lib/overlay/elements/overlay.js +1426 -0
- package/lib/overlay/helpers/functions.d.ts +13 -0
- package/lib/overlay/helpers/functions.js +16 -0
- package/lib/overlay/helpers/types.d.ts +97 -0
- package/lib/overlay/helpers/types.js +16 -0
- package/lib/overlay/index.d.ts +2 -0
- package/lib/overlay/index.js +1 -0
- package/lib/overlay/managers/backdrop-manager.d.ts +45 -0
- package/lib/overlay/managers/backdrop-manager.js +96 -0
- package/lib/overlay/managers/close-manager.d.ts +54 -0
- package/lib/overlay/managers/close-manager.js +138 -0
- package/lib/overlay/managers/focus-manager.d.ts +71 -0
- package/lib/overlay/managers/focus-manager.js +228 -0
- package/lib/overlay/managers/interaction-lock-manager.d.ts +138 -0
- package/lib/overlay/managers/interaction-lock-manager.js +375 -0
- package/lib/overlay/managers/viewport-manager.d.ts +93 -0
- package/lib/overlay/managers/viewport-manager.js +211 -0
- package/lib/overlay/managers/zindex-manager.d.ts +80 -0
- package/lib/overlay/managers/zindex-manager.js +195 -0
- package/lib/overlay/themes/halo/dark/index.js +4 -0
- package/lib/overlay/themes/halo/light/index.js +4 -0
- package/lib/overlay/themes/solar/charcoal/index.js +4 -0
- package/lib/overlay/themes/solar/pearl/index.js +4 -0
- package/lib/overlay-menu/custom-elements.json +194 -0
- package/lib/overlay-menu/custom-elements.md +44 -0
- package/lib/overlay-menu/helpers/types.d.ts +8 -0
- package/lib/overlay-menu/helpers/types.js +1 -0
- package/lib/overlay-menu/index.d.ts +385 -0
- package/lib/overlay-menu/index.js +933 -0
- package/lib/overlay-menu/managers/menu-manager.d.ts +98 -0
- package/lib/overlay-menu/managers/menu-manager.js +240 -0
- package/lib/overlay-menu/themes/halo/dark/index.js +5 -0
- package/lib/overlay-menu/themes/halo/light/index.js +5 -0
- package/lib/overlay-menu/themes/solar/charcoal/index.js +5 -0
- package/lib/overlay-menu/themes/solar/pearl/index.js +5 -0
- package/lib/pagination/custom-elements.json +93 -0
- package/lib/pagination/custom-elements.md +27 -0
- package/lib/pagination/helpers/types.d.ts +9 -0
- package/lib/pagination/helpers/types.js +1 -0
- package/lib/pagination/index.d.ts +207 -0
- package/lib/pagination/index.js +398 -0
- package/lib/pagination/themes/halo/dark/index.js +6 -0
- package/lib/pagination/themes/halo/light/index.js +6 -0
- package/lib/pagination/themes/solar/charcoal/index.js +6 -0
- package/lib/pagination/themes/solar/pearl/index.js +6 -0
- package/lib/panel/custom-elements.json +39 -0
- package/lib/panel/custom-elements.md +11 -0
- package/lib/panel/index.d.ts +48 -0
- package/lib/panel/index.js +74 -0
- package/lib/panel/themes/halo/dark/index.js +2 -0
- package/lib/panel/themes/halo/light/index.js +2 -0
- package/lib/panel/themes/solar/charcoal/index.js +2 -0
- package/lib/panel/themes/solar/pearl/index.js +2 -0
- package/lib/password-field/custom-elements.json +156 -0
- package/lib/password-field/custom-elements.md +31 -0
- package/lib/password-field/index.d.ts +141 -0
- package/lib/password-field/index.js +258 -0
- package/lib/password-field/themes/halo/dark/index.js +3 -0
- package/lib/password-field/themes/halo/light/index.js +3 -0
- package/lib/password-field/themes/solar/charcoal/index.js +3 -0
- package/lib/password-field/themes/solar/pearl/index.js +3 -0
- package/lib/pill/custom-elements.json +95 -0
- package/lib/pill/custom-elements.md +22 -0
- package/lib/pill/index.d.ts +97 -0
- package/lib/pill/index.js +160 -0
- package/lib/pill/themes/halo/dark/index.js +3 -0
- package/lib/pill/themes/halo/light/index.js +3 -0
- package/lib/pill/themes/solar/charcoal/index.js +3 -0
- package/lib/pill/themes/solar/pearl/index.js +3 -0
- package/lib/progress-bar/custom-elements.json +58 -0
- package/lib/progress-bar/custom-elements.md +18 -0
- package/lib/progress-bar/index.d.ts +82 -0
- package/lib/progress-bar/index.js +157 -0
- package/lib/progress-bar/themes/halo/dark/index.js +2 -0
- package/lib/progress-bar/themes/halo/light/index.js +2 -0
- package/lib/progress-bar/themes/solar/charcoal/index.js +2 -0
- package/lib/progress-bar/themes/solar/pearl/index.js +2 -0
- package/lib/radio-button/custom-elements.json +82 -0
- package/lib/radio-button/custom-elements.md +19 -0
- package/lib/radio-button/index.d.ts +122 -0
- package/lib/radio-button/index.js +257 -0
- package/lib/radio-button/radio-button-registry.d.ts +22 -0
- package/lib/radio-button/radio-button-registry.js +93 -0
- package/lib/radio-button/themes/halo/dark/index.js +3 -0
- package/lib/radio-button/themes/halo/light/index.js +3 -0
- package/lib/radio-button/themes/solar/charcoal/index.js +3 -0
- package/lib/radio-button/themes/solar/pearl/index.js +3 -0
- package/lib/rating/custom-elements.json +58 -0
- package/lib/rating/custom-elements.md +17 -0
- package/lib/rating/index.d.ts +91 -0
- package/lib/rating/index.js +157 -0
- package/lib/rating/themes/halo/dark/index.js +2 -0
- package/lib/rating/themes/halo/light/index.js +2 -0
- package/lib/rating/themes/solar/charcoal/index.js +2 -0
- package/lib/rating/themes/solar/pearl/index.js +2 -0
- package/lib/search-field/custom-elements.json +173 -0
- package/lib/search-field/custom-elements.md +33 -0
- package/lib/search-field/index.d.ts +134 -0
- package/lib/search-field/index.js +253 -0
- package/lib/search-field/themes/halo/dark/index.js +3 -0
- package/lib/search-field/themes/halo/light/index.js +3 -0
- package/lib/search-field/themes/solar/charcoal/index.js +3 -0
- package/lib/search-field/themes/solar/pearl/index.js +3 -0
- package/lib/select/custom-elements.json +103 -0
- package/lib/select/custom-elements.md +24 -0
- package/lib/select/helpers/types.d.ts +3 -0
- package/lib/select/helpers/types.js +1 -0
- package/lib/select/index.d.ts +388 -0
- package/lib/select/index.js +942 -0
- package/lib/select/themes/halo/dark/index.js +5 -0
- package/lib/select/themes/halo/light/index.js +5 -0
- package/lib/select/themes/solar/charcoal/index.js +5 -0
- package/lib/select/themes/solar/pearl/index.js +5 -0
- package/lib/sidebar-layout/custom-elements.json +72 -0
- package/lib/sidebar-layout/custom-elements.md +22 -0
- package/lib/sidebar-layout/index.d.ts +69 -0
- package/lib/sidebar-layout/index.js +134 -0
- package/lib/sidebar-layout/themes/halo/dark/index.js +3 -0
- package/lib/sidebar-layout/themes/halo/light/index.js +3 -0
- package/lib/sidebar-layout/themes/solar/charcoal/index.js +3 -0
- package/lib/sidebar-layout/themes/solar/pearl/index.js +3 -0
- package/lib/slider/custom-elements.json +181 -0
- package/lib/slider/custom-elements.md +28 -0
- package/lib/slider/index.d.ts +409 -0
- package/lib/slider/index.js +1187 -0
- package/lib/slider/themes/halo/dark/index.js +3 -0
- package/lib/slider/themes/halo/light/index.js +3 -0
- package/lib/slider/themes/solar/charcoal/index.js +3 -0
- package/lib/slider/themes/solar/pearl/index.js +3 -0
- package/lib/sparkline/custom-elements.json +59 -0
- package/lib/sparkline/custom-elements.md +16 -0
- package/lib/sparkline/index.d.ts +107 -0
- package/lib/sparkline/index.js +186 -0
- package/lib/sparkline/themes/halo/dark/index.js +2 -0
- package/lib/sparkline/themes/halo/light/index.js +2 -0
- package/lib/sparkline/themes/solar/charcoal/index.js +2 -0
- package/lib/sparkline/themes/solar/pearl/index.js +2 -0
- package/lib/swing-gauge/const.d.ts +22 -0
- package/lib/swing-gauge/const.js +26 -0
- package/lib/swing-gauge/custom-elements.json +109 -0
- 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 +294 -0
- package/lib/swing-gauge/index.js +762 -0
- package/lib/swing-gauge/themes/halo/dark/index.js +3 -0
- package/lib/swing-gauge/themes/halo/light/index.js +3 -0
- package/lib/swing-gauge/themes/solar/charcoal/index.js +3 -0
- package/lib/swing-gauge/themes/solar/pearl/index.js +3 -0
- package/lib/swing-gauge/types.d.ts +34 -0
- package/lib/swing-gauge/types.js +1 -0
- package/lib/tab/custom-elements.json +123 -0
- package/lib/tab/custom-elements.md +22 -0
- package/lib/tab/index.d.ts +118 -0
- package/lib/tab/index.js +208 -0
- package/lib/tab/themes/halo/dark/index.js +4 -0
- package/lib/tab/themes/halo/light/index.js +4 -0
- package/lib/tab/themes/solar/charcoal/index.js +4 -0
- package/lib/tab/themes/solar/pearl/index.js +4 -0
- package/lib/tab-bar/custom-elements.json +52 -0
- package/lib/tab-bar/custom-elements.md +11 -0
- package/lib/tab-bar/helpers/animate.d.ts +16 -0
- package/lib/tab-bar/helpers/animate.js +53 -0
- package/lib/tab-bar/index.d.ts +108 -0
- package/lib/tab-bar/index.js +218 -0
- package/lib/tab-bar/themes/halo/dark/index.js +4 -0
- package/lib/tab-bar/themes/halo/light/index.js +4 -0
- package/lib/tab-bar/themes/solar/charcoal/index.js +4 -0
- package/lib/tab-bar/themes/solar/pearl/index.js +4 -0
- package/lib/text-field/custom-elements.json +210 -0
- package/lib/text-field/custom-elements.md +37 -0
- package/lib/text-field/index.d.ts +193 -0
- package/lib/text-field/index.js +409 -0
- package/lib/text-field/themes/halo/dark/index.js +3 -0
- package/lib/text-field/themes/halo/light/index.js +3 -0
- package/lib/text-field/themes/solar/charcoal/index.js +3 -0
- package/lib/text-field/themes/solar/pearl/index.js +3 -0
- package/lib/time-picker/custom-elements.json +124 -0
- package/lib/time-picker/custom-elements.md +28 -0
- package/lib/time-picker/index.d.ts +379 -0
- package/lib/time-picker/index.js +775 -0
- package/lib/time-picker/themes/halo/dark/index.js +4 -0
- package/lib/time-picker/themes/halo/light/index.js +4 -0
- package/lib/time-picker/themes/solar/charcoal/index.js +4 -0
- package/lib/time-picker/themes/solar/pearl/index.js +4 -0
- package/lib/toggle/custom-elements.json +82 -0
- package/lib/toggle/custom-elements.md +19 -0
- package/lib/toggle/index.d.ts +86 -0
- package/lib/toggle/index.js +152 -0
- package/lib/toggle/themes/halo/dark/index.js +2 -0
- package/lib/toggle/themes/halo/light/index.js +2 -0
- package/lib/toggle/themes/solar/charcoal/index.js +2 -0
- package/lib/toggle/themes/solar/pearl/index.js +2 -0
- package/lib/tooltip/custom-elements.json +62 -0
- package/lib/tooltip/custom-elements.md +14 -0
- package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
- package/lib/tooltip/elements/title-tooltip.js +18 -0
- package/lib/tooltip/elements/tooltip-element.d.ts +21 -0
- package/lib/tooltip/elements/tooltip-element.js +54 -0
- package/lib/tooltip/helpers/overflow-tooltip.d.ts +9 -0
- package/lib/tooltip/helpers/overflow-tooltip.js +19 -0
- package/lib/tooltip/helpers/renderer.d.ts +8 -0
- package/lib/tooltip/helpers/renderer.js +11 -0
- package/lib/tooltip/helpers/types.d.ts +23 -0
- package/lib/tooltip/helpers/types.js +1 -0
- package/lib/tooltip/index.d.ts +232 -0
- package/lib/tooltip/index.js +477 -0
- package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
- package/lib/tooltip/managers/tooltip-manager.js +140 -0
- package/lib/tooltip/themes/halo/dark/index.js +3 -0
- package/lib/tooltip/themes/halo/light/index.js +3 -0
- package/lib/tooltip/themes/solar/charcoal/index.js +3 -0
- package/lib/tooltip/themes/solar/pearl/index.js +3 -0
- package/lib/tornado-chart/custom-elements.json +45 -0
- package/lib/tornado-chart/custom-elements.md +18 -0
- package/lib/tornado-chart/elements/tornado-chart.d.ts +78 -0
- package/lib/tornado-chart/elements/tornado-chart.js +122 -0
- package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
- package/lib/tornado-chart/elements/tornado-item.js +207 -0
- package/lib/tornado-chart/index.d.ts +2 -0
- package/lib/tornado-chart/index.js +2 -0
- package/lib/tornado-chart/themes/halo/dark/index.js +6 -0
- package/lib/tornado-chart/themes/halo/light/index.js +6 -0
- package/lib/tornado-chart/themes/solar/charcoal/index.js +6 -0
- package/lib/tornado-chart/themes/solar/pearl/index.js +6 -0
- package/lib/tree/custom-elements.json +113 -0
- package/lib/tree/custom-elements.md +32 -0
- package/lib/tree/elements/tree-item.d.ts +96 -0
- package/lib/tree/elements/tree-item.js +179 -0
- package/lib/tree/elements/tree.d.ts +201 -0
- package/lib/tree/elements/tree.js +412 -0
- package/lib/tree/helpers/filter.d.ts +8 -0
- package/lib/tree/helpers/filter.js +33 -0
- package/lib/tree/helpers/renderer.d.ts +5 -0
- package/lib/tree/helpers/renderer.js +33 -0
- package/lib/tree/helpers/types.d.ts +25 -0
- package/lib/tree/helpers/types.js +1 -0
- package/lib/tree/index.d.ts +4 -0
- package/lib/tree/index.js +3 -0
- package/lib/tree/managers/tree-manager.d.ts +248 -0
- package/lib/tree/managers/tree-manager.js +395 -0
- package/lib/tree/themes/halo/dark/index.js +7 -0
- package/lib/tree/themes/halo/light/index.js +7 -0
- package/lib/tree/themes/solar/charcoal/index.js +7 -0
- package/lib/tree/themes/solar/pearl/index.js +7 -0
- package/lib/tree-select/custom-elements.json +107 -0
- package/lib/tree-select/custom-elements.md +26 -0
- package/lib/tree-select/helpers/types.d.ts +4 -0
- package/lib/tree-select/helpers/types.js +1 -0
- package/lib/tree-select/index.d.ts +402 -0
- package/lib/tree-select/index.js +890 -0
- package/lib/tree-select/themes/halo/dark/index.js +12 -0
- package/lib/tree-select/themes/halo/light/index.js +12 -0
- package/lib/tree-select/themes/solar/charcoal/index.js +12 -0
- package/lib/tree-select/themes/solar/pearl/index.js +12 -0
- package/lib/version.d.ts +1 -0
- package/lib/version.js +1 -0
- package/package.json +298 -15
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { BasicElement, html, css } 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 '../canvas/index.js';
|
|
7
|
+
const ZERO_MAP = {
|
|
8
|
+
LEFT: 'left',
|
|
9
|
+
CENTER: 'center',
|
|
10
|
+
RIGHT: 'right'
|
|
11
|
+
};
|
|
12
|
+
const MAX_VALUE = 100; // Max value of led-gauge can't be changed by user
|
|
13
|
+
const SECTION_DIVIDER = 5; // To separate led-gauge to 5 sections
|
|
14
|
+
/**
|
|
15
|
+
* A component used to show data in a LED-like
|
|
16
|
+
* horizontal bar visualization.
|
|
17
|
+
*/
|
|
18
|
+
let LedGauge = class LedGauge extends BasicElement {
|
|
19
|
+
constructor() {
|
|
20
|
+
super();
|
|
21
|
+
/**
|
|
22
|
+
* Value of bar for top legend position
|
|
23
|
+
* Value can be -100 to 100
|
|
24
|
+
*/
|
|
25
|
+
this.topValue = null;
|
|
26
|
+
/**
|
|
27
|
+
* Value of bar for bottom legend position
|
|
28
|
+
* Value can be -100 to 100
|
|
29
|
+
*/
|
|
30
|
+
this.bottomValue = null;
|
|
31
|
+
/**
|
|
32
|
+
* Value of range. eg [-20, 70]
|
|
33
|
+
*/
|
|
34
|
+
this.range = [];
|
|
35
|
+
/**
|
|
36
|
+
* Label to be displayed in the top legend
|
|
37
|
+
*/
|
|
38
|
+
this.topLabel = '';
|
|
39
|
+
/**
|
|
40
|
+
* Label to be displayed in the bottom legend
|
|
41
|
+
*/
|
|
42
|
+
this.bottomLabel = '';
|
|
43
|
+
/**
|
|
44
|
+
* Label to be displayed in the bottom legend
|
|
45
|
+
* when a range is displayed
|
|
46
|
+
* and no bottom text is already set.
|
|
47
|
+
*/
|
|
48
|
+
this.rangeLabel = '';
|
|
49
|
+
/**
|
|
50
|
+
* Turn off background color and use grey
|
|
51
|
+
* @default false
|
|
52
|
+
*/
|
|
53
|
+
this.neutralColor = false;
|
|
54
|
+
this._zero = ZERO_MAP.CENTER;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Element version number
|
|
58
|
+
* @returns version number
|
|
59
|
+
*/
|
|
60
|
+
static get version() {
|
|
61
|
+
return VERSION;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* A `CSSResultGroup` that will be used
|
|
65
|
+
* to style the host, slotted children
|
|
66
|
+
* and the internal template of the element.
|
|
67
|
+
* @return CSS template
|
|
68
|
+
*/
|
|
69
|
+
static get styles() {
|
|
70
|
+
return css `
|
|
71
|
+
|
|
72
|
+
:host {
|
|
73
|
+
display: block;
|
|
74
|
+
position: relative;
|
|
75
|
+
overflow: hidden;
|
|
76
|
+
padding: 20px;
|
|
77
|
+
box-sizing: border-box;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
[part=label] {
|
|
81
|
+
display: block;
|
|
82
|
+
position: absolute;
|
|
83
|
+
left: 0;
|
|
84
|
+
bottom: 100%;
|
|
85
|
+
width: 100%;
|
|
86
|
+
margin-left: -50%;
|
|
87
|
+
text-align: center;
|
|
88
|
+
box-sizing: border-box;
|
|
89
|
+
user-select: none;
|
|
90
|
+
pointer-events: none;
|
|
91
|
+
white-space: nowrap;
|
|
92
|
+
overflow: hidden;
|
|
93
|
+
text-overflow: ellipsis;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
#top {
|
|
97
|
+
color: var(--top-selected-color, transparent);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
#bottom, #range {
|
|
101
|
+
top: 100%;
|
|
102
|
+
bottom: auto;
|
|
103
|
+
color: var(--bottom-selected-color, transparent);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
#range {
|
|
107
|
+
color: var(--range-color, transparent);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
section {
|
|
111
|
+
position: relative;
|
|
112
|
+
height: 100%;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
ef-canvas {
|
|
116
|
+
width: 100%;
|
|
117
|
+
height: 100%;
|
|
118
|
+
display: block;
|
|
119
|
+
}
|
|
120
|
+
`;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Sets the zero scale position. [center, left, right]
|
|
124
|
+
* @default center
|
|
125
|
+
*/
|
|
126
|
+
get zero() {
|
|
127
|
+
return this._zero;
|
|
128
|
+
}
|
|
129
|
+
set zero(val) {
|
|
130
|
+
const oldValue = this._zero;
|
|
131
|
+
const value = val.toLowerCase();
|
|
132
|
+
const pos = [ZERO_MAP.LEFT, ZERO_MAP.CENTER, ZERO_MAP.RIGHT];
|
|
133
|
+
if (pos.includes(value)) {
|
|
134
|
+
this._zero = value;
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
this._zero = ZERO_MAP.CENTER;
|
|
138
|
+
}
|
|
139
|
+
this.requestUpdate('zero', oldValue);
|
|
140
|
+
}
|
|
141
|
+
get _shadowRoot() {
|
|
142
|
+
if (!this.shadowRoot) {
|
|
143
|
+
throw new Error('Your browser not support Shadow DOM or your Shadow DOM is closed.');
|
|
144
|
+
}
|
|
145
|
+
return this.shadowRoot;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Canvas in ef-canvas
|
|
149
|
+
*/
|
|
150
|
+
get canvas() {
|
|
151
|
+
const efCanvas = this._shadowRoot.querySelector('ef-canvas');
|
|
152
|
+
if (efCanvas && efCanvas.shadowRoot) {
|
|
153
|
+
return efCanvas.shadowRoot.getElementById('canvas');
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
throw new Error('ef-canvas is not defined.');
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* The 2 dimensional context of the canvas, used for drawing
|
|
161
|
+
*/
|
|
162
|
+
get ctx() {
|
|
163
|
+
return this.canvas.getContext('2d');
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Min value of gauge
|
|
167
|
+
* @default 0
|
|
168
|
+
*/
|
|
169
|
+
get min() {
|
|
170
|
+
return this.zero !== ZERO_MAP.CENTER ? 0 : -this.max;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Max value of gauge
|
|
174
|
+
* @default 100
|
|
175
|
+
*/
|
|
176
|
+
get max() {
|
|
177
|
+
return MAX_VALUE;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Invoked whenever the element is update
|
|
181
|
+
* @param changedProperties changed properties
|
|
182
|
+
* @returns {void}
|
|
183
|
+
*/
|
|
184
|
+
update(changedProperties) {
|
|
185
|
+
super.update(changedProperties);
|
|
186
|
+
// re-render canvas every time properties, has been updated
|
|
187
|
+
this.renderBarGauge();
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* @param barCount bar count for calculate positions
|
|
191
|
+
* @param val value for calculate positions
|
|
192
|
+
* @returns value bar index
|
|
193
|
+
*/
|
|
194
|
+
getValueBarIndex(barCount, val) {
|
|
195
|
+
if (val === null) {
|
|
196
|
+
return null;
|
|
197
|
+
}
|
|
198
|
+
if (val < this.min) {
|
|
199
|
+
val = this.min;
|
|
200
|
+
}
|
|
201
|
+
else if (val > this.max) {
|
|
202
|
+
val = this.max;
|
|
203
|
+
}
|
|
204
|
+
const positions = (barCount - 1);
|
|
205
|
+
if (this.zero === ZERO_MAP.LEFT) {
|
|
206
|
+
return Math.round(positions * val / this.max);
|
|
207
|
+
}
|
|
208
|
+
if (this.zero === ZERO_MAP.RIGHT) {
|
|
209
|
+
return Math.round(positions - positions * val / this.max);
|
|
210
|
+
}
|
|
211
|
+
return Math.round(positions * (val / 2 + this.max / 2) / this.max);
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* @param varName css variable name
|
|
215
|
+
* @returns {void}
|
|
216
|
+
*/
|
|
217
|
+
fillBarColor(varName) {
|
|
218
|
+
if (this.ctx) {
|
|
219
|
+
this.ctx.fillStyle = this.getComputedVariable(varName);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* @param idx index of bar for find what section it belongs
|
|
224
|
+
* @param sectionLength length of section for find section color
|
|
225
|
+
* @param barAmount bar amount
|
|
226
|
+
* @returns color variable name
|
|
227
|
+
*/
|
|
228
|
+
getBarColor(idx, sectionLength, barAmount) {
|
|
229
|
+
let barColor = '';
|
|
230
|
+
if (this.neutralColor) {
|
|
231
|
+
barColor = '--neutral-color';
|
|
232
|
+
}
|
|
233
|
+
else if (idx < Math.floor(sectionLength)) {
|
|
234
|
+
barColor = '--left-segment-color';
|
|
235
|
+
}
|
|
236
|
+
else if (idx < Math.floor(sectionLength * 2)) {
|
|
237
|
+
barColor = '--center-left-segment-color';
|
|
238
|
+
}
|
|
239
|
+
else if (idx < Math.floor(sectionLength * 2) + Math.ceil(sectionLength)) {
|
|
240
|
+
barColor = '--center-segment-color';
|
|
241
|
+
}
|
|
242
|
+
else if (idx >= barAmount - Math.floor(sectionLength)) {
|
|
243
|
+
barColor = '--right-segment-color';
|
|
244
|
+
}
|
|
245
|
+
else if (idx >= barAmount - Math.floor(sectionLength * 2)) {
|
|
246
|
+
barColor = '--center-right-segment-color';
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
barColor = '--center-segment-color';
|
|
250
|
+
}
|
|
251
|
+
return barColor;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* @param id id of the label can be top, bottom or range
|
|
255
|
+
* @param labelPos position of label in pixel
|
|
256
|
+
* @returns {void}
|
|
257
|
+
*/
|
|
258
|
+
updateLabelPosition(id, labelPos) {
|
|
259
|
+
if (!labelPos) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
const elem = this._shadowRoot.getElementById(id);
|
|
263
|
+
if (elem) {
|
|
264
|
+
elem.style.left = labelPos;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Render a led-gauge bar in canvas
|
|
269
|
+
* @returns {void}
|
|
270
|
+
*/
|
|
271
|
+
renderBarGauge() {
|
|
272
|
+
if (!this.isConnected || !this.canvas) {
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
const barWidth = parseInt(this.getComputedVariable('--led-width', '9px'), 10);
|
|
276
|
+
const barSpacing = parseInt(this.getComputedVariable('--led-spacing', '4px'), 10);
|
|
277
|
+
const barTotalWidth = barWidth + barSpacing;
|
|
278
|
+
const width = parseInt(this.canvas.style.width, 10);
|
|
279
|
+
const height = parseInt(this.canvas.style.height, 10);
|
|
280
|
+
let barAmount = Math.floor(width / barTotalWidth);
|
|
281
|
+
// To ensure we have middle bar
|
|
282
|
+
if (barAmount % 2 === 0) {
|
|
283
|
+
barAmount--;
|
|
284
|
+
}
|
|
285
|
+
const topValueBarIndex = this.getValueBarIndex(barAmount, this.topValue);
|
|
286
|
+
const bottomValueBarIndex = this.getValueBarIndex(barAmount, this.bottomValue);
|
|
287
|
+
const sectionLength = barAmount / SECTION_DIVIDER; // devided gauge to 5 sections
|
|
288
|
+
const spacingOffset = barSpacing / 2;
|
|
289
|
+
const basePos = width / 2 - barAmount / 2 * barTotalWidth + spacingOffset; // starter point
|
|
290
|
+
const rangeValueBarIndexes = [];
|
|
291
|
+
let rangeMidIndex = 0;
|
|
292
|
+
// Find value bar indexes and mid position of bar gauge
|
|
293
|
+
if (this.range && this.range.length === 2) {
|
|
294
|
+
this.neutralColor = true;
|
|
295
|
+
const range = [];
|
|
296
|
+
for (let i = 0; i < this.range.length; i++) {
|
|
297
|
+
const index = this.getValueBarIndex(barAmount, this.range[i]);
|
|
298
|
+
if (index !== null) {
|
|
299
|
+
range.push(index);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
for (let val = range[0]; val <= range[1]; val++) {
|
|
303
|
+
rangeValueBarIndexes.push(val);
|
|
304
|
+
}
|
|
305
|
+
const midPos = Math.floor(rangeValueBarIndexes.length / 2);
|
|
306
|
+
rangeMidIndex = rangeValueBarIndexes[midPos];
|
|
307
|
+
}
|
|
308
|
+
// Reset canvas before starting painted
|
|
309
|
+
this.ctx.clearRect(0, 0, width, height);
|
|
310
|
+
// Start painting
|
|
311
|
+
for (let i = 0; i < barAmount; i++) {
|
|
312
|
+
this.ctx.fillStyle = 'transparent';
|
|
313
|
+
let isHitValue = false;
|
|
314
|
+
// Found top value position
|
|
315
|
+
if (i === topValueBarIndex) {
|
|
316
|
+
this.fillBarColor('--top-selected-color');
|
|
317
|
+
isHitValue = true;
|
|
318
|
+
}
|
|
319
|
+
// Found bottom value position
|
|
320
|
+
if (i === bottomValueBarIndex) {
|
|
321
|
+
// In case top & bottom value are in the same position
|
|
322
|
+
if (i === topValueBarIndex) {
|
|
323
|
+
this.fillBarColor('--clash-color');
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
this.fillBarColor('--bottom-selected-color');
|
|
327
|
+
}
|
|
328
|
+
isHitValue = true;
|
|
329
|
+
}
|
|
330
|
+
// Get section color and fill the bar color
|
|
331
|
+
if (!isHitValue) {
|
|
332
|
+
// Painted range color first to allow override bar color
|
|
333
|
+
if (rangeValueBarIndexes.includes(i)) {
|
|
334
|
+
this.fillBarColor('--range-color');
|
|
335
|
+
}
|
|
336
|
+
else {
|
|
337
|
+
const barColor = this.getBarColor(i, sectionLength, barAmount);
|
|
338
|
+
this.fillBarColor(barColor);
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
const barHeight = isHitValue ? height : Math.round(height * 0.47);
|
|
342
|
+
// Draw a bar
|
|
343
|
+
this.ctx.fillRect(Math.round(basePos + i * barTotalWidth), // x
|
|
344
|
+
Math.round(height / 2 - barHeight / 2), // y
|
|
345
|
+
barWidth, // width
|
|
346
|
+
barHeight // height
|
|
347
|
+
);
|
|
348
|
+
}
|
|
349
|
+
const labelOffset = barWidth / 2;
|
|
350
|
+
// Calculate label position
|
|
351
|
+
const getLabelPos = (idx) => {
|
|
352
|
+
if (idx === null) {
|
|
353
|
+
return '';
|
|
354
|
+
}
|
|
355
|
+
return `${Math.round(basePos + idx * barTotalWidth + labelOffset)}px`;
|
|
356
|
+
};
|
|
357
|
+
// Updated top label position
|
|
358
|
+
if (this.topValue !== null) {
|
|
359
|
+
this.updateLabelPosition('top', getLabelPos(topValueBarIndex));
|
|
360
|
+
}
|
|
361
|
+
// Updated bottom label position
|
|
362
|
+
if (this.bottomValue !== null) {
|
|
363
|
+
this.updateLabelPosition('bottom', getLabelPos(bottomValueBarIndex));
|
|
364
|
+
}
|
|
365
|
+
// Updated range label position
|
|
366
|
+
if (this.range && this.range.length === 2) {
|
|
367
|
+
this.updateLabelPosition('range', getLabelPos(rangeMidIndex));
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* @param value value of gauge bar
|
|
372
|
+
* @param label user label
|
|
373
|
+
* @param id id of template
|
|
374
|
+
* @returns template to render
|
|
375
|
+
*/
|
|
376
|
+
createLabelTemplate(value, label, id) {
|
|
377
|
+
if (value === null) {
|
|
378
|
+
return null;
|
|
379
|
+
}
|
|
380
|
+
const template = html `<span part="label" id=${id}>${label}</span>`;
|
|
381
|
+
if (typeof value === 'number') {
|
|
382
|
+
return template;
|
|
383
|
+
}
|
|
384
|
+
// Value is a range type
|
|
385
|
+
else {
|
|
386
|
+
if (value && value.length === 2 && !(this.bottomLabel && typeof this.bottomValue === 'number')) {
|
|
387
|
+
return template;
|
|
388
|
+
}
|
|
389
|
+
return null;
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* A `TemplateResult` that will be used
|
|
394
|
+
* to render the updated internal template.
|
|
395
|
+
* @return Render template
|
|
396
|
+
*/
|
|
397
|
+
render() {
|
|
398
|
+
return html `
|
|
399
|
+
<section>
|
|
400
|
+
<ef-canvas @resize=${this.renderBarGauge.bind(this)}></ef-canvas>
|
|
401
|
+
${this.createLabelTemplate(this.topValue, this.topLabel, 'top')}
|
|
402
|
+
${this.createLabelTemplate(this.bottomValue, this.bottomLabel, 'bottom')}
|
|
403
|
+
${this.createLabelTemplate(this.range, this.rangeLabel, 'range')}
|
|
404
|
+
</section>
|
|
405
|
+
`;
|
|
406
|
+
}
|
|
407
|
+
};
|
|
408
|
+
__decorate([
|
|
409
|
+
property({ type: Number, attribute: 'top-value' })
|
|
410
|
+
], LedGauge.prototype, "topValue", void 0);
|
|
411
|
+
__decorate([
|
|
412
|
+
property({ type: Number, attribute: 'bottom-value' })
|
|
413
|
+
], LedGauge.prototype, "bottomValue", void 0);
|
|
414
|
+
__decorate([
|
|
415
|
+
property({ type: Array })
|
|
416
|
+
], LedGauge.prototype, "range", void 0);
|
|
417
|
+
__decorate([
|
|
418
|
+
property({ type: String, attribute: 'top-label' })
|
|
419
|
+
], LedGauge.prototype, "topLabel", void 0);
|
|
420
|
+
__decorate([
|
|
421
|
+
property({ type: String, attribute: 'bottom-label' })
|
|
422
|
+
], LedGauge.prototype, "bottomLabel", void 0);
|
|
423
|
+
__decorate([
|
|
424
|
+
property({ type: String, attribute: 'range-label' })
|
|
425
|
+
], LedGauge.prototype, "rangeLabel", void 0);
|
|
426
|
+
__decorate([
|
|
427
|
+
property({ type: Boolean, attribute: 'neutral-color' })
|
|
428
|
+
], LedGauge.prototype, "neutralColor", void 0);
|
|
429
|
+
__decorate([
|
|
430
|
+
property({ type: String })
|
|
431
|
+
], LedGauge.prototype, "zero", null);
|
|
432
|
+
LedGauge = __decorate([
|
|
433
|
+
customElement('ef-led-gauge', {
|
|
434
|
+
alias: 'sapphire-led-gauge'
|
|
435
|
+
})
|
|
436
|
+
], LedGauge);
|
|
437
|
+
export { LedGauge };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/canvas/themes/halo/dark';
|
|
2
|
+
|
|
3
|
+
elf.customStyles.define('ef-led-gauge', ':host{font-size:12px;--led-width:8px;--led-spacing:3px;--top-selected-color:#6678FF;--bottom-selected-color:#6678FF;--clash-color:#ffffff;--range-color:#c948a2;--neutral-color:#7a7a7a;--left-segment-color:#932b37;--center-left-segment-color:#60111a;--center-segment-color:#7a7a7a;--center-right-segment-color:#144628;--right-segment-color:#227642;height:68px;--led-width:5px;--led-spacing:1px;--left-segment-color:#B72536;--center-left-segment-color:#F5475B;--center-segment-color:#808080;--center-right-segment-color:#39C46E;--right-segment-color:#227542;--range-color:#6678FF;--top-selected-color:#6678FF;--bottom-selected-color:#F5475B}:host [part=label]{padding:3px}');
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/canvas/themes/halo/light';
|
|
2
|
+
|
|
3
|
+
elf.customStyles.define('ef-led-gauge', ':host{font-size:12px;--led-width:8px;--led-spacing:3px;--top-selected-color:#334BFF;--bottom-selected-color:#334BFF;--clash-color:#000000;--range-color:#fc73d2;--neutral-color:#b8b8b8;--left-segment-color:#B63243;--center-left-segment-color:#f3c5cb;--center-segment-color:#b8b8b8;--center-right-segment-color:#a8e2be;--right-segment-color:#246B3E;height:68px;--led-width:5px;--led-spacing:1px;--left-segment-color:#B63243;--center-left-segment-color:#D94255;--center-segment-color:#808080;--center-right-segment-color:#309054;--right-segment-color:#246B3E;--range-color:#334BFF;--top-selected-color:#334BFF;--bottom-selected-color:#F5475B}:host [part=label]{padding:3px}');
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/canvas/themes/solar/charcoal';
|
|
2
|
+
|
|
3
|
+
elf.customStyles.define('ef-led-gauge', ':host{--led-width:8px;--led-spacing:3px;--top-selected-color:#FF9933;--bottom-selected-color:#FF9933;--clash-color:#ffffff;--range-color:#c948a2;--neutral-color:#747474;--left-segment-color:#932b37;--center-left-segment-color:#521822;--center-segment-color:#747474;--center-right-segment-color:#11472d;--right-segment-color:#227642;height:68px;font-size:10px;--led-width:5px;--led-spacing:4px;--top-selected-color:#FF9933;--bottom-selected-color:#46A0F0;--range-color:#2277AA}:host [part=label]{padding:2px}');
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/canvas/themes/solar/pearl';
|
|
2
|
+
|
|
3
|
+
elf.customStyles.define('ef-led-gauge', ':host{--led-width:8px;--led-spacing:3px;--top-selected-color:#EE7600;--bottom-selected-color:#EE7600;--clash-color:#000000;--range-color:#fc73d2;--neutral-color:#e2e4e6;--left-segment-color:#D94255;--center-left-segment-color:#f4b0bc;--center-segment-color:#e2e4e6;--center-right-segment-color:#a7e7c9;--right-segment-color:#309054;height:68px;font-size:10px;--led-width:5px;--led-spacing:4px;--top-selected-color:#EE7600;--bottom-selected-color:#0080F0;--range-color:#00B0FF}:host [part=label]{padding:2px}');
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "experimental",
|
|
3
|
+
"tags": [
|
|
4
|
+
{
|
|
5
|
+
"name": "ef-list",
|
|
6
|
+
"description": "Provides listing and immutable selection",
|
|
7
|
+
"attributes": [
|
|
8
|
+
{
|
|
9
|
+
"name": "stateless",
|
|
10
|
+
"description": "Disable selections",
|
|
11
|
+
"type": "boolean",
|
|
12
|
+
"default": "false"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "multiple",
|
|
16
|
+
"description": "Allow multiple selections",
|
|
17
|
+
"type": "boolean",
|
|
18
|
+
"default": "false"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "value",
|
|
22
|
+
"description": "Returns the first selected item value.\nUse `values` when multiple selection mode is enabled.",
|
|
23
|
+
"type": "string"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"properties": [
|
|
27
|
+
{
|
|
28
|
+
"name": "delegatesFocus",
|
|
29
|
+
"description": "Element focus delegation.\nSet to `false` and relies on native focusing.",
|
|
30
|
+
"type": "false",
|
|
31
|
+
"default": "false"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "renderer",
|
|
35
|
+
"description": "Renderer used to render list item elements",
|
|
36
|
+
"type": "ListRenderer",
|
|
37
|
+
"default": "\"new ListRenderer(this)\""
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "stateless",
|
|
41
|
+
"attribute": "stateless",
|
|
42
|
+
"description": "Disable selections",
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"default": "false"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "multiple",
|
|
48
|
+
"attribute": "multiple",
|
|
49
|
+
"description": "Allow multiple selections",
|
|
50
|
+
"type": "boolean",
|
|
51
|
+
"default": "false"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"name": "data",
|
|
55
|
+
"description": "The data object, used to render the list.",
|
|
56
|
+
"type": "ListData"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"name": "value",
|
|
60
|
+
"attribute": "value",
|
|
61
|
+
"description": "Returns the first selected item value.\nUse `values` when multiple selection mode is enabled.",
|
|
62
|
+
"type": "string"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "values",
|
|
66
|
+
"description": "Returns a values collection of the currently\nselected item values",
|
|
67
|
+
"type": "object"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"events": [
|
|
71
|
+
{
|
|
72
|
+
"name": "value-changed",
|
|
73
|
+
"description": "Dispatched when value changes"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"methods": [
|
|
77
|
+
{
|
|
78
|
+
"name": "selectItem",
|
|
79
|
+
"description": "Selects an item in the list",
|
|
80
|
+
"params": [
|
|
81
|
+
{
|
|
82
|
+
"name": "item",
|
|
83
|
+
"description": "Data Item or Item Element"
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"name": "up",
|
|
89
|
+
"description": "Navigate up through the list items",
|
|
90
|
+
"params": []
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "down",
|
|
94
|
+
"description": "Navigate up through the list items",
|
|
95
|
+
"params": []
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "scrollToItem",
|
|
99
|
+
"description": "Scroll to list item element",
|
|
100
|
+
"params": [
|
|
101
|
+
{
|
|
102
|
+
"name": "item",
|
|
103
|
+
"description": "Data item to scroll to",
|
|
104
|
+
"type": "T"
|
|
105
|
+
}
|
|
106
|
+
]
|
|
107
|
+
}
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
]
|
|
111
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# ef-list
|
|
2
|
+
|
|
3
|
+
Provides listing and immutable selection
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
| Property | Attribute | Modifiers | Type | Default | Description |
|
|
8
|
+
|------------------|-------------|-----------|----------------|--------------------------|--------------------------------------------------|
|
|
9
|
+
| `data` | | | `ListData` | | The data object, used to render the list. |
|
|
10
|
+
| `delegatesFocus` | | readonly | `false` | false | Element focus delegation.<br />Set to `false` and relies on native focusing. |
|
|
11
|
+
| `multiple` | `multiple` | | `boolean` | false | Allow multiple selections |
|
|
12
|
+
| `renderer` | | | `ListRenderer` | "new ListRenderer(this)" | Renderer used to render list item elements |
|
|
13
|
+
| `stateless` | `stateless` | | `boolean` | false | Disable selections |
|
|
14
|
+
| `value` | `value` | | `string` | | Returns the first selected item value.<br />Use `values` when multiple selection mode is enabled. |
|
|
15
|
+
| `values` | | | `object` | | Returns a values collection of the currently<br />selected item values |
|
|
16
|
+
|
|
17
|
+
## Methods
|
|
18
|
+
|
|
19
|
+
| Method | Type | Description |
|
|
20
|
+
|----------------|-------------------------|--------------------------------------------------|
|
|
21
|
+
| `down` | `(): void` | Navigate up through the list items |
|
|
22
|
+
| `scrollToItem` | `(item: T): void` | Scroll to list item element<br /><br />**item**: Data item to scroll to |
|
|
23
|
+
| `selectItem` | `(item?: any): boolean` | Selects an item in the list<br /><br />**item**: Data Item or Item Element |
|
|
24
|
+
| `up` | `(): void` | Navigate up through the list items |
|
|
25
|
+
|
|
26
|
+
## Events
|
|
27
|
+
|
|
28
|
+
| Event | Description |
|
|
29
|
+
|-----------------|-------------------------------|
|
|
30
|
+
| `value-changed` | Dispatched when value changes |
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extensible function class
|
|
3
|
+
* TODO: Move this to @refinitiv-ui/utils
|
|
4
|
+
* ! Do not import this module !
|
|
5
|
+
*/
|
|
6
|
+
export class ExtensibleFunction extends Function {
|
|
7
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
8
|
+
constructor(fn) {
|
|
9
|
+
super();
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
11
|
+
return Object.setPrototypeOf(fn, new.target.prototype);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import '../../item/index.js';
|
|
2
|
+
import { Renderer } from '../renderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Renders list items as `ef-item` elements.
|
|
5
|
+
* This is the default renderer for lists.
|
|
6
|
+
*/
|
|
7
|
+
export declare class ListRenderer extends Renderer {
|
|
8
|
+
constructor(context?: unknown);
|
|
9
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import '../../item/index.js';
|
|
2
|
+
import { Renderer } from '../renderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Renders list items as `ef-item` elements.
|
|
5
|
+
* This is the default renderer for lists.
|
|
6
|
+
*/
|
|
7
|
+
export class ListRenderer extends Renderer {
|
|
8
|
+
constructor(context) {
|
|
9
|
+
/**
|
|
10
|
+
* Create and return render function
|
|
11
|
+
*/
|
|
12
|
+
super((item, composer, element) => {
|
|
13
|
+
/**
|
|
14
|
+
* Element to render
|
|
15
|
+
*/
|
|
16
|
+
const el = (element || document.createElement('ef-item'));
|
|
17
|
+
/**
|
|
18
|
+
* Tooltip value to be used, if any.
|
|
19
|
+
*/
|
|
20
|
+
const tooltip = composer.getItemPropertyValue(item, 'tooltip');
|
|
21
|
+
el.label = composer.getItemPropertyValue(item, 'label');
|
|
22
|
+
el.subLabel = composer.getItemPropertyValue(item, 'subLabel');
|
|
23
|
+
el.value = composer.getItemPropertyValue(item, 'value');
|
|
24
|
+
el.icon = composer.getItemPropertyValue(item, 'icon');
|
|
25
|
+
el.highlighted = composer.getItemPropertyValue(item, 'highlighted') === true;
|
|
26
|
+
el.selected = composer.getItemPropertyValue(item, 'selected') === true;
|
|
27
|
+
el.disabled = composer.getItemPropertyValue(item, 'disabled') === true;
|
|
28
|
+
el.hidden = composer.getItemPropertyValue(item, 'hidden') === true;
|
|
29
|
+
el.type = composer.getItemPropertyValue(item, 'type');
|
|
30
|
+
el.multiple = !!context && context.multiple === true;
|
|
31
|
+
tooltip ? el.setAttribute('title', tooltip) : el.removeAttribute('title');
|
|
32
|
+
return el;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|