@refinitiv-ui/elements 5.3.3 → 5.3.4
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/lib/accordion/custom-elements.json +49 -0
- package/lib/accordion/index.d.ts +76 -0
- package/lib/accordion/index.js +139 -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/index.d.ts +65 -0
- package/lib/appstate-bar/index.js +103 -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 +223 -0
- package/lib/autosuggest/helpers/const.d.ts +2 -0
- package/lib/autosuggest/helpers/const.js +3 -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 +76 -0
- package/lib/autosuggest/index.d.ts +533 -0
- package/lib/autosuggest/index.js +1248 -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/index.d.ts +132 -0
- package/lib/button/index.js +213 -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/index.d.ts +76 -0
- package/lib/button-bar/index.js +157 -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/custom-elements.json +199 -0
- package/lib/calendar/index.d.ts +321 -0
- package/lib/calendar/index.js +926 -0
- package/lib/calendar/locales.d.ts +31 -0
- package/lib/calendar/locales.js +144 -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 +33 -0
- package/lib/calendar/types.js +6 -0
- package/lib/calendar/utils.d.ts +12 -0
- package/lib/calendar/utils.js +17 -0
- package/lib/canvas/custom-elements.json +69 -0
- package/lib/canvas/index.d.ts +100 -0
- package/lib/canvas/index.js +175 -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/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 +247 -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/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 +493 -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 +71 -0
- package/lib/checkbox/index.d.ts +89 -0
- package/lib/checkbox/index.js +170 -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 +108 -0
- package/lib/clock/index.d.ts +309 -0
- package/lib/clock/index.js +564 -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/index.d.ts +119 -0
- package/lib/collapse/index.js +199 -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/elements/color-palettes.d.ts +52 -0
- package/lib/color-dialog/elements/color-palettes.js +105 -0
- package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
- package/lib/color-dialog/elements/grayscale-palettes.js +164 -0
- package/lib/color-dialog/elements/palettes.d.ts +58 -0
- package/lib/color-dialog/elements/palettes.js +119 -0
- package/lib/color-dialog/helpers/color-helpers.d.ts +62 -0
- package/lib/color-dialog/helpers/color-helpers.js +258 -0
- package/lib/color-dialog/helpers/value-model.d.ts +75 -0
- package/lib/color-dialog/helpers/value-model.js +139 -0
- package/lib/color-dialog/index.d.ts +232 -0
- package/lib/color-dialog/index.js +457 -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 +207 -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/index.d.ts +89 -0
- package/lib/counter/index.js +155 -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/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 +46 -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/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/index.d.ts +152 -0
- package/lib/email-field/index.js +287 -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 +2 -0
- package/lib/flag/custom-elements.json +35 -0
- package/lib/flag/index.d.ts +94 -0
- package/lib/flag/index.js +168 -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/index.d.ts +46 -0
- package/lib/header/index.js +76 -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/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 +1104 -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 +34 -0
- package/lib/icon/index.d.ts +87 -0
- package/lib/icon/index.js +161 -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 +47 -0
- package/lib/icon/utils/IconLoader.js +86 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +2 -0
- package/lib/interactive-chart/custom-elements.json +86 -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 +1093 -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 +153 -0
- package/lib/item/helpers/types.d.ts +57 -0
- package/lib/item/helpers/types.js +1 -0
- package/lib/item/index.d.ts +149 -0
- package/lib/item/index.js +252 -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/index.d.ts +102 -0
- package/lib/label/index.js +252 -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/index.d.ts +107 -0
- package/lib/layout/index.js +215 -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/index.d.ts +143 -0
- package/lib/led-gauge/index.js +440 -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/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 +604 -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/index.d.ts +41 -0
- package/lib/loader/index.js +65 -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/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 +591 -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/elements/notification-tray.d.ts +97 -0
- package/lib/notification/elements/notification-tray.js +170 -0
- package/lib/notification/elements/notification.d.ts +90 -0
- package/lib/notification/elements/notification.js +157 -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/index.d.ts +294 -0
- package/lib/number-field/index.js +708 -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 +342 -0
- package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
- package/lib/overlay/elements/overlay-backdrop.js +67 -0
- package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
- package/lib/overlay/elements/overlay-viewport.js +56 -0
- package/lib/overlay/elements/overlay.d.ts +403 -0
- package/lib/overlay/elements/overlay.js +1427 -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 +207 -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 +196 -0
- package/lib/overlay-menu/helpers/types.d.ts +8 -0
- package/lib/overlay-menu/helpers/types.js +1 -0
- package/lib/overlay-menu/helpers/uuid.d.ts +7 -0
- package/lib/overlay-menu/helpers/uuid.js +13 -0
- package/lib/overlay-menu/index.d.ts +380 -0
- package/lib/overlay-menu/index.js +921 -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/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 +400 -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/index.d.ts +48 -0
- package/lib/panel/index.js +77 -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/index.d.ts +140 -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/index.d.ts +97 -0
- package/lib/pill/index.js +162 -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/index.d.ts +82 -0
- package/lib/progress-bar/index.js +159 -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 +84 -0
- package/lib/radio-button/index.d.ts +106 -0
- package/lib/radio-button/index.js +195 -0
- package/lib/radio-button/radio-button-registry.d.ts +21 -0
- package/lib/radio-button/radio-button-registry.js +40 -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/index.d.ts +91 -0
- package/lib/rating/index.js +158 -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/index.d.ts +134 -0
- package/lib/search-field/index.js +254 -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/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/index.d.ts +69 -0
- package/lib/sidebar-layout/index.js +135 -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/index.d.ts +409 -0
- package/lib/slider/index.js +1188 -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/index.d.ts +107 -0
- package/lib/sparkline/index.js +188 -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/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/index.d.ts +118 -0
- package/lib/tab/index.js +211 -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/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 +220 -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/index.d.ts +171 -0
- package/lib/text-field/index.js +319 -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/index.d.ts +379 -0
- package/lib/time-picker/index.js +777 -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 +84 -0
- package/lib/toggle/index.d.ts +77 -0
- package/lib/toggle/index.js +134 -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/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 +479 -0
- package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
- package/lib/tooltip/managers/tooltip-manager.js +144 -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/elements/tornado-chart.d.ts +78 -0
- package/lib/tornado-chart/elements/tornado-chart.js +125 -0
- package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
- package/lib/tornado-chart/elements/tornado-item.js +209 -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 +100 -0
- package/lib/tree/elements/tree-item.d.ts +96 -0
- package/lib/tree/elements/tree-item.js +182 -0
- package/lib/tree/elements/tree.d.ts +156 -0
- package/lib/tree/elements/tree.js +286 -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 +17 -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 +236 -0
- package/lib/tree/managers/tree-manager.js +379 -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/helpers/types.d.ts +4 -0
- package/lib/tree-select/helpers/types.js +1 -0
- package/lib/tree-select/index.d.ts +400 -0
- package/lib/tree-select/index.js +881 -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/package.json +9 -9
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/number-field/themes/halo/dark';
|
|
2
|
+
import '@refinitiv-ui/elements/lib/icon/themes/halo/dark';
|
|
3
|
+
|
|
4
|
+
elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;padding:0}:host([disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:24px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;font-size:50%;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;line-height:1.2;outline:0;cursor:pointer;touch-action:manipulation}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-left:8px solid transparent;position:absolute;left:calc(50% - 8px);bottom:0;border-bottom:4px solid transparent;display:none}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host [part=divider]{width:2px}');
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/number-field/themes/halo/light';
|
|
2
|
+
import '@refinitiv-ui/elements/lib/icon/themes/halo/light';
|
|
3
|
+
|
|
4
|
+
elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#404040;border-radius:0;background-color:#fff;text-overflow:ellipsis;border:1px solid #595959;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;padding:0}:host([disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(89,89,89,.5)}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:24px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;font-size:50%;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;line-height:1.2;outline:0;cursor:pointer;touch-action:manipulation}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-left:8px solid transparent;position:absolute;left:calc(50% - 8px);bottom:0;border-bottom:4px solid transparent;display:none}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host [part=divider]{width:2px}');
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/number-field/themes/solar/charcoal';
|
|
2
|
+
import '@refinitiv-ui/elements/lib/icon/themes/solar/charcoal';
|
|
3
|
+
|
|
4
|
+
elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:13rem;font-weight:400;height:23px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#c2c2c2;border-radius:0;text-overflow:ellipsis;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;background-color:#000;border:1px solid #4a4a52;padding:0}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#f93;border-style:dotted}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:25px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;outline:0;cursor:pointer;touch-action:manipulation;font-size:70%;line-height:1}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-bottom:4px solid #f93;border-left:8px solid transparent;position:absolute;content:\'\';border:none;left:calc(50% - 7px);bottom:-1px;width:14px;height:1px;background:#f93}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host([disabled]){border:1px solid rgba(74,74,82,.6);color:rgba(194,194,194,.6)}:host([readonly]){border:1px solid rgba(74,74,82,.6)}:host(:not([focused]):not(:focus):hover){border:1px solid #77777d}:host([warning]){background-color:#000;border:1px solid #f93}:host([warning][disabled]){border:1px solid rgba(255,153,51,.6);color:rgba(194,194,194,.6)}:host([warning][readonly]){border:1px solid rgba(255,153,51,.6)}:host([warning]:not([focused]):not(:focus):hover){border:1px solid #ffb366}:host([error]),:host([error][warning]:not([focused])){background-color:#000;border:1px solid #f5475b}:host([error][disabled]),:host([error][warning]:not([focused])[disabled]){border:1px solid rgba(245,71,91,.6);color:rgba(194,194,194,.6)}:host([error][readonly]),:host([error][warning]:not([focused])[readonly]){border:1px solid rgba(245,71,91,.6)}:host([error]:not([focused]):not(:focus):hover),:host([error][warning]:not([focused]):not([focused]):not(:focus):hover){border:1px solid #f87584}:host([highlight]){background-color:#1b252f;border:1px solid #4a4a52}:host([highlight][disabled]){border:1px solid rgba(74,74,82,.6);color:rgba(194,194,194,.6);background-color:rgba(27,37,47,.6)}:host([highlight][readonly]){border:1px solid rgba(74,74,82,.6)}:host([highlight]:not([focused]):not(:focus):hover){border:1px solid #77777d}:host([indirect]){color:#0fd;background-color:#000;border:1px solid #898623}:host([indirect][disabled]){border:1px solid rgba(137,134,35,.6);color:rgba(0,255,221,.6)}:host([indirect][readonly]){border:1px solid rgba(137,134,35,.6)}:host([indirect]:not([focused]):not(:focus):hover){border:1px solid #a7a45a}');
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import '@refinitiv-ui/elements/lib/number-field/themes/solar/pearl';
|
|
2
|
+
import '@refinitiv-ui/elements/lib/icon/themes/solar/pearl';
|
|
3
|
+
|
|
4
|
+
elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:13rem;font-weight:400;height:23px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#484848;border-radius:0;text-overflow:ellipsis;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;background-color:#fff;border:1px solid #a9afba;padding:0}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#ffb266;border-style:dotted}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:25px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;outline:0;cursor:pointer;touch-action:manipulation;font-size:70%;line-height:1}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-bottom:4px solid #ffb266;border-left:8px solid transparent;position:absolute;content:\'\';border:none;left:calc(50% - 7px);bottom:-1px;width:14px;height:1px;background:#ffb266}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host([disabled]){border:1px solid rgba(169,175,186,.6);color:rgba(72,72,72,.6)}:host([readonly]){border:1px solid rgba(169,175,186,.6)}:host(:not([focused]):not(:focus):hover){border:1px solid #bfc3cb}:host([warning]){background-color:#fff;border:1px solid #f93}:host([warning][disabled]){border:1px solid rgba(255,153,51,.6);color:rgba(72,72,72,.6)}:host([warning][readonly]){border:1px solid rgba(255,153,51,.6)}:host([warning]:not([focused]):not(:focus):hover){border:1px solid #ffb366}:host([error]),:host([error][warning]:not([focused])){background-color:#fff;border:1px solid #d94255}:host([error][disabled]),:host([error][warning]:not([focused])[disabled]){border:1px solid rgba(217,66,85,.6);color:rgba(72,72,72,.6)}:host([error][readonly]),:host([error][warning]:not([focused])[readonly]){border:1px solid rgba(217,66,85,.6)}:host([error]:not([focused]):not(:focus):hover),:host([error][warning]:not([focused]):not([focused]):not(:focus):hover){border:1px solid #e37180}:host([highlight]){background-color:#b0ffff;border:1px solid #a9afba}:host([highlight][disabled]){border:1px solid rgba(169,175,186,.6);color:rgba(72,72,72,.6);background-color:rgba(176,255,255,.6)}:host([highlight][readonly]){border:1px solid rgba(169,175,186,.6)}:host([highlight]:not([focused]):not(:focus):hover){border:1px solid #bfc3cb}:host([indirect]){color:#009494;background-color:#effefe;border:1px solid #898623}:host([indirect][disabled]){border:1px solid rgba(137,134,35,.6);color:rgba(0,148,148,.6)}:host([indirect][readonly]){border:1px solid rgba(137,134,35,.6)}:host([indirect]:not([focused]):not(:focus):hover){border:1px solid #a7a45a}');
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "experimental",
|
|
3
|
+
"tags": [
|
|
4
|
+
{
|
|
5
|
+
"name": "ef-toggle",
|
|
6
|
+
"description": "Form control that can toggle between 2 states",
|
|
7
|
+
"attributes": [
|
|
8
|
+
{
|
|
9
|
+
"name": "checked-label",
|
|
10
|
+
"description": "Label of toggle checked",
|
|
11
|
+
"type": "string",
|
|
12
|
+
"default": "\"\""
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "label",
|
|
16
|
+
"description": "Label of toggle",
|
|
17
|
+
"type": "string",
|
|
18
|
+
"default": "\"\""
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "checked",
|
|
22
|
+
"description": "Value of toggle",
|
|
23
|
+
"type": "boolean",
|
|
24
|
+
"default": "false"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "readonly",
|
|
28
|
+
"description": "Set readonly state",
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"default": "\"false\""
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "disabled",
|
|
34
|
+
"description": "Set disabled state",
|
|
35
|
+
"type": "boolean",
|
|
36
|
+
"default": "\"false\""
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"properties": [
|
|
40
|
+
{
|
|
41
|
+
"name": "checkedLabel",
|
|
42
|
+
"attribute": "checked-label",
|
|
43
|
+
"description": "Label of toggle checked",
|
|
44
|
+
"type": "string",
|
|
45
|
+
"default": "\"\""
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "label",
|
|
49
|
+
"attribute": "label",
|
|
50
|
+
"description": "Label of toggle",
|
|
51
|
+
"type": "string",
|
|
52
|
+
"default": "\"\""
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "checked",
|
|
56
|
+
"attribute": "checked",
|
|
57
|
+
"description": "Value of toggle",
|
|
58
|
+
"type": "boolean",
|
|
59
|
+
"default": "false"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"name": "readonly",
|
|
63
|
+
"attribute": "readonly",
|
|
64
|
+
"description": "Set readonly state",
|
|
65
|
+
"type": "boolean",
|
|
66
|
+
"default": "\"false\""
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "disabled",
|
|
70
|
+
"attribute": "disabled",
|
|
71
|
+
"description": "Set disabled state",
|
|
72
|
+
"type": "boolean",
|
|
73
|
+
"default": "\"false\""
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"events": [
|
|
77
|
+
{
|
|
78
|
+
"name": "checked-changed",
|
|
79
|
+
"description": "Fired when the `checked` property changes."
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
]
|
|
84
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { JSXInterface } from '../jsx';
|
|
2
|
+
import { ControlElement, TemplateResult, CSSResult, PropertyValues } from '@refinitiv-ui/core';
|
|
3
|
+
/**
|
|
4
|
+
* Form control that can toggle between 2 states
|
|
5
|
+
*
|
|
6
|
+
* @attr {boolean} readonly - Set readonly state
|
|
7
|
+
* @prop {boolean} [readonly=false] - Set readonly state
|
|
8
|
+
*
|
|
9
|
+
* @attr {boolean} disabled - Set disabled state
|
|
10
|
+
* @prop {boolean} [disabled=false] - Set disabled state
|
|
11
|
+
*
|
|
12
|
+
* @fires checked-changed - Fired when the `checked` property changes.
|
|
13
|
+
*/
|
|
14
|
+
export declare class Toggle extends ControlElement {
|
|
15
|
+
/**
|
|
16
|
+
* Element version number
|
|
17
|
+
* @returns version number
|
|
18
|
+
*/
|
|
19
|
+
static get version(): string;
|
|
20
|
+
/**
|
|
21
|
+
* Label of toggle checked
|
|
22
|
+
*/
|
|
23
|
+
checkedLabel: string;
|
|
24
|
+
/**
|
|
25
|
+
* Label of toggle
|
|
26
|
+
*/
|
|
27
|
+
label: string;
|
|
28
|
+
/**
|
|
29
|
+
* Value of toggle
|
|
30
|
+
*/
|
|
31
|
+
checked: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* A `CSSResult` that will be used
|
|
34
|
+
* to style the host, slotted children
|
|
35
|
+
* and the internal template of the element.
|
|
36
|
+
* @returns CSS template
|
|
37
|
+
*/
|
|
38
|
+
static get styles(): CSSResult | CSSResult[];
|
|
39
|
+
/**
|
|
40
|
+
* Invoked when the element is first updated. Implement to perform one time
|
|
41
|
+
* work on the element after update.
|
|
42
|
+
* @param changedProperties Map of changed properties with old values
|
|
43
|
+
* @returns {void}
|
|
44
|
+
*/
|
|
45
|
+
protected firstUpdated(changedProperties: PropertyValues): void;
|
|
46
|
+
/**
|
|
47
|
+
* Called when checked value changes and dispatch the event
|
|
48
|
+
* @returns {void}
|
|
49
|
+
*/
|
|
50
|
+
private handleCheckedChange;
|
|
51
|
+
/**
|
|
52
|
+
* Handle keyboard event for toggle action
|
|
53
|
+
* @param event Keyboard event
|
|
54
|
+
* @returns {void}
|
|
55
|
+
*/
|
|
56
|
+
private handleKeyDown;
|
|
57
|
+
/**
|
|
58
|
+
* A `TemplateResult` that will be used
|
|
59
|
+
* to render the updated internal template.
|
|
60
|
+
* @return Render template
|
|
61
|
+
*/
|
|
62
|
+
protected render(): TemplateResult;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
declare global {
|
|
66
|
+
interface HTMLElementTagNameMap {
|
|
67
|
+
'ef-toggle': Toggle;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
namespace JSX {
|
|
71
|
+
interface IntrinsicElements {
|
|
72
|
+
'ef-toggle': Partial<Toggle> | JSXInterface.ControlHTMLAttributes<Toggle>;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export {};
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { ControlElement, html, css, customElement, property } from '@refinitiv-ui/core';
|
|
8
|
+
import { VERSION } from '../';
|
|
9
|
+
/**
|
|
10
|
+
* Return the attribute that converted from the property
|
|
11
|
+
* Prevent empty string that reflected to attribute
|
|
12
|
+
* @private
|
|
13
|
+
* @param value value from the property
|
|
14
|
+
* @returns string converted to attribute
|
|
15
|
+
*/
|
|
16
|
+
const emptyStringToNull = function (value) {
|
|
17
|
+
return value || null;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Form control that can toggle between 2 states
|
|
21
|
+
*
|
|
22
|
+
* @attr {boolean} readonly - Set readonly state
|
|
23
|
+
* @prop {boolean} [readonly=false] - Set readonly state
|
|
24
|
+
*
|
|
25
|
+
* @attr {boolean} disabled - Set disabled state
|
|
26
|
+
* @prop {boolean} [disabled=false] - Set disabled state
|
|
27
|
+
*
|
|
28
|
+
* @fires checked-changed - Fired when the `checked` property changes.
|
|
29
|
+
*/
|
|
30
|
+
let Toggle = class Toggle extends ControlElement {
|
|
31
|
+
constructor() {
|
|
32
|
+
super(...arguments);
|
|
33
|
+
/**
|
|
34
|
+
* Label of toggle checked
|
|
35
|
+
*/
|
|
36
|
+
this.checkedLabel = '';
|
|
37
|
+
/**
|
|
38
|
+
* Label of toggle
|
|
39
|
+
*/
|
|
40
|
+
this.label = '';
|
|
41
|
+
/**
|
|
42
|
+
* Value of toggle
|
|
43
|
+
*/
|
|
44
|
+
this.checked = false;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Element version number
|
|
48
|
+
* @returns version number
|
|
49
|
+
*/
|
|
50
|
+
static get version() {
|
|
51
|
+
return VERSION;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* A `CSSResult` that will be used
|
|
55
|
+
* to style the host, slotted children
|
|
56
|
+
* and the internal template of the element.
|
|
57
|
+
* @returns CSS template
|
|
58
|
+
*/
|
|
59
|
+
static get styles() {
|
|
60
|
+
return css `
|
|
61
|
+
:host {
|
|
62
|
+
display: inline-block;
|
|
63
|
+
}
|
|
64
|
+
`;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Invoked when the element is first updated. Implement to perform one time
|
|
68
|
+
* work on the element after update.
|
|
69
|
+
* @param changedProperties Map of changed properties with old values
|
|
70
|
+
* @returns {void}
|
|
71
|
+
*/
|
|
72
|
+
firstUpdated(changedProperties) {
|
|
73
|
+
super.firstUpdated(changedProperties);
|
|
74
|
+
this.addEventListener('tap', this.handleCheckedChange);
|
|
75
|
+
this.addEventListener('keydown', this.handleKeyDown);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Called when checked value changes and dispatch the event
|
|
79
|
+
* @returns {void}
|
|
80
|
+
*/
|
|
81
|
+
handleCheckedChange() {
|
|
82
|
+
if (this.disabled || this.readonly) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
this.checked = !this.checked;
|
|
86
|
+
this.notifyPropertyChange('checked', this.checked);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Handle keyboard event for toggle action
|
|
90
|
+
* @param event Keyboard event
|
|
91
|
+
* @returns {void}
|
|
92
|
+
*/
|
|
93
|
+
handleKeyDown(event) {
|
|
94
|
+
if (event.key === 'Enter' || event.key === ' ' || event.key === 'Spacebar') {
|
|
95
|
+
this.handleCheckedChange();
|
|
96
|
+
}
|
|
97
|
+
else if (event.keyCode && event.keyCode === 13 || event.keyCode === 32) { // For older browsers
|
|
98
|
+
this.handleCheckedChange();
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* A `TemplateResult` that will be used
|
|
103
|
+
* to render the updated internal template.
|
|
104
|
+
* @return Render template
|
|
105
|
+
*/
|
|
106
|
+
render() {
|
|
107
|
+
return html `
|
|
108
|
+
<div part="toggle">${this.checked && this.checkedLabel ? this.checkedLabel : this.label}</div>`;
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
__decorate([
|
|
112
|
+
property({
|
|
113
|
+
type: String,
|
|
114
|
+
attribute: 'checked-label',
|
|
115
|
+
reflect: true,
|
|
116
|
+
converter: { toAttribute: emptyStringToNull }
|
|
117
|
+
})
|
|
118
|
+
], Toggle.prototype, "checkedLabel", void 0);
|
|
119
|
+
__decorate([
|
|
120
|
+
property({
|
|
121
|
+
type: String,
|
|
122
|
+
reflect: true,
|
|
123
|
+
converter: { toAttribute: emptyStringToNull }
|
|
124
|
+
})
|
|
125
|
+
], Toggle.prototype, "label", void 0);
|
|
126
|
+
__decorate([
|
|
127
|
+
property({ type: Boolean, reflect: true })
|
|
128
|
+
], Toggle.prototype, "checked", void 0);
|
|
129
|
+
Toggle = __decorate([
|
|
130
|
+
customElement('ef-toggle', {
|
|
131
|
+
alias: 'coral-toggle'
|
|
132
|
+
})
|
|
133
|
+
], Toggle);
|
|
134
|
+
export { Toggle };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:12rem;background-color:#0d0d0d;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.5);transition:box-shadow .1s,border-color .1s;width:44px;height:24px;font-weight:400;color:#ccc;line-height:18px;text-transform:uppercase}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #4d4d4d;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;box-sizing:border-box;border-radius:inherit;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#ccc}:host([checked-label]),:host([label]){min-width:52px;width:54px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{left:auto;border-color:#334bff;background-color:#334bff;right:1px}:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #334bff}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#334bff}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host(:hover:not([readonly])){color:#fff}:host(:hover:not([readonly])) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])) [part=toggle]::after{background-color:#334bff;border-color:#334bff}:host([checked]){color:#fff}:host([disabled]) [part=toggle]::after{opacity:.2}:host [part=toggle]::after,:host([checked]) [part=toggle]::after{border:1px solid #0d0d0d}');
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:12rem;background-color:#fff;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.25);transition:box-shadow .1s,border-color .1s;width:44px;height:24px;font-weight:600;color:#0d0d0d;line-height:18px;text-transform:uppercase}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #ccc;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;box-sizing:border-box;border-radius:inherit;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#0d0d0d}:host([checked-label]),:host([label]){min-width:52px;width:54px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{left:auto;border-color:#334bff;background-color:#334bff;right:1px}:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #334bff}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#334bff}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host(:hover:not([readonly])){color:#0d0d0d}:host(:hover:not([readonly])) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])) [part=toggle]::after{background-color:#334bff;border-color:#334bff}');
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:13rem;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.6);transition:box-shadow .2s,border-color .2s;width:44px;height:24px;color:#e2e2e2;background-color:#000;line-height:18px}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #4a4a52;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#555d6c;box-sizing:border-box;border-radius:inherit}:host([checked-label]),:host([label]){width:67.6px;min-width:52px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{right:1px;left:auto;border-color:#f93;background-color:#f93}:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #f93}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#f93;border-style:dotted}:host [part=toggle] ::after{top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-image:linear-gradient(rgba(255,255,255,.1) 10%,rgba(255,255,255,0) 100%)}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host([checked]) [part=toggle] ::after{right:1px}');
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:13rem;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.3);transition:box-shadow .2s,border-color .2s;width:44px;height:24px;color:#484848;background-color:#fff;line-height:18px}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #a9afba;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#d4d7dd;box-sizing:border-box;border-radius:inherit}:host([checked-label]),:host([label]){width:67.6px;min-width:52px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{right:1px;left:auto;border-color:#f93;background-color:#f93}:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #ffb266}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#ffb266;border-style:dotted}:host [part=toggle] ::after{top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-image:linear-gradient(rgba(0,0,0,0) 0,rgba(0,0,0,.1) 100%)}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host([checked]) [part=toggle] ::after{right:1px}');
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "experimental",
|
|
3
|
+
"tags": [
|
|
4
|
+
{
|
|
5
|
+
"name": "ef-tooltip",
|
|
6
|
+
"description": "Tooltip displays extra information when the\nuser hovers the pointer over an item.",
|
|
7
|
+
"attributes": [
|
|
8
|
+
{
|
|
9
|
+
"name": "selector",
|
|
10
|
+
"description": "CSS selector to match the tooltip",
|
|
11
|
+
"type": "string",
|
|
12
|
+
"default": "\"\""
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "position",
|
|
16
|
+
"description": "The position of the tooltip. Use the following values:\n`auto` (default) - display based on mouse enter coordinates\n`above` - display above the element\n`right` - display to the right of the element\n`below` - display beneath the element\n`left` - display to the left of the element",
|
|
17
|
+
"type": "\"auto\" | \"above\" | \"right\" | \"below\" | \"left\"",
|
|
18
|
+
"default": "\"auto\""
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "transition-style",
|
|
22
|
+
"description": "Set the transition style.\nValue can be `fade`, `zoom`, `slide-down`, `slide-up`, `slide-right`,\n`slide-left`, `slide-right-down`, `slide-right-up`, `slide-left-down`, `slide-left-up`, or null in case of no transition",
|
|
23
|
+
"type": "TooltipTransitionStyle",
|
|
24
|
+
"default": "\"fade\""
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"properties": [
|
|
28
|
+
{
|
|
29
|
+
"name": "selector",
|
|
30
|
+
"attribute": "selector",
|
|
31
|
+
"description": "CSS selector to match the tooltip",
|
|
32
|
+
"type": "string",
|
|
33
|
+
"default": "\"\""
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"name": "condition",
|
|
37
|
+
"description": "Provide a function to test against the target.\nReturn `true` if the target matches",
|
|
38
|
+
"type": "TooltipCondition"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"name": "renderer",
|
|
42
|
+
"description": "A renderer to define tooltip internal content.\nReturn undefined, `String`, `HTMLElement` or `DocumentFragment`.\nIf the content is not present, tooltip will not be displayed",
|
|
43
|
+
"type": "TooltipRenderer"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "position",
|
|
47
|
+
"attribute": "position",
|
|
48
|
+
"description": "The position of the tooltip. Use the following values:\n`auto` (default) - display based on mouse enter coordinates\n`above` - display above the element\n`right` - display to the right of the element\n`below` - display beneath the element\n`left` - display to the left of the element",
|
|
49
|
+
"type": "\"auto\" | \"above\" | \"right\" | \"below\" | \"left\"",
|
|
50
|
+
"default": "\"auto\""
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "transitionStyle",
|
|
54
|
+
"attribute": "transition-style",
|
|
55
|
+
"description": "Set the transition style.\nValue can be `fade`, `zoom`, `slide-down`, `slide-up`, `slide-right`,\n`slide-left`, `slide-right-down`, `slide-right-up`, `slide-left-down`, `slide-left-up`, or null in case of no transition",
|
|
56
|
+
"type": "TooltipTransitionStyle",
|
|
57
|
+
"default": "\"fade\""
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
]
|
|
62
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { matches } from '@refinitiv-ui/core';
|
|
2
|
+
import { addTooltipCondition } from './tooltip-element';
|
|
3
|
+
import { tooltipRenderer } from '../helpers/renderer';
|
|
4
|
+
// Support title attribute
|
|
5
|
+
Object.defineProperty(HTMLElement.prototype, 'title', {
|
|
6
|
+
get: function () {
|
|
7
|
+
const title = this.getAttribute('title');
|
|
8
|
+
if (title) {
|
|
9
|
+
this.title = title;
|
|
10
|
+
}
|
|
11
|
+
return this.getAttribute('tooltip');
|
|
12
|
+
},
|
|
13
|
+
set: function (value) {
|
|
14
|
+
this.setAttribute('title', '');
|
|
15
|
+
this.setAttribute('tooltip', value);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
addTooltipCondition(element => matches(element, '[title]'), tooltipRenderer);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Tooltip } from '../index';
|
|
2
|
+
import { TooltipCondition, TooltipRenderer } from '../helpers/types';
|
|
3
|
+
/**
|
|
4
|
+
* Add the new condition to the default tooltip
|
|
5
|
+
* @param condition Condition to add
|
|
6
|
+
* @param renderer Renderer for condition
|
|
7
|
+
* @returns {void}
|
|
8
|
+
*/
|
|
9
|
+
declare const addTooltipCondition: (condition: TooltipCondition, renderer: TooltipRenderer) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Remove the existing condition from default tooltip
|
|
12
|
+
* @param condition Condition to remove
|
|
13
|
+
* @returns {void}
|
|
14
|
+
*/
|
|
15
|
+
declare const removeTooltipCondition: (condition: TooltipCondition) => void;
|
|
16
|
+
/**
|
|
17
|
+
* The default tooltip, which is used to replicate `title` attribute
|
|
18
|
+
* and to show tooltips for EF elements
|
|
19
|
+
*/
|
|
20
|
+
declare const tooltipElement: Tooltip;
|
|
21
|
+
export { tooltipElement, addTooltipCondition, removeTooltipCondition };
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
const defaultTooltipMap = new Map();
|
|
2
|
+
const rendererElementMap = new WeakMap();
|
|
3
|
+
/**
|
|
4
|
+
* Add the new condition to the default tooltip
|
|
5
|
+
* @param condition Condition to add
|
|
6
|
+
* @param renderer Renderer for condition
|
|
7
|
+
* @returns {void}
|
|
8
|
+
*/
|
|
9
|
+
const addTooltipCondition = (condition, renderer) => {
|
|
10
|
+
defaultTooltipMap.set(condition, renderer);
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Remove the existing condition from default tooltip
|
|
14
|
+
* @param condition Condition to remove
|
|
15
|
+
* @returns {void}
|
|
16
|
+
*/
|
|
17
|
+
const removeTooltipCondition = (condition) => {
|
|
18
|
+
defaultTooltipMap.delete(condition);
|
|
19
|
+
};
|
|
20
|
+
const condition = (target, paths) => {
|
|
21
|
+
let res = false;
|
|
22
|
+
for (const [condition, renderer] of defaultTooltipMap.entries()) {
|
|
23
|
+
res = condition(target, paths);
|
|
24
|
+
if (res) {
|
|
25
|
+
// first by order condition only. It must not be possible to show multiple tooltips
|
|
26
|
+
rendererElementMap.set(target, renderer);
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return res;
|
|
31
|
+
};
|
|
32
|
+
const renderer = (target) => {
|
|
33
|
+
const render = rendererElementMap.get(target);
|
|
34
|
+
return render ? render(target) : undefined;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* The default tooltip, which is used to replicate `title` attribute
|
|
38
|
+
* and to show tooltips for EF elements
|
|
39
|
+
*/
|
|
40
|
+
const tooltipElement = document.createElement('ef-tooltip');
|
|
41
|
+
tooltipElement.setAttribute('ref', 'title-override');
|
|
42
|
+
tooltipElement.condition = condition;
|
|
43
|
+
tooltipElement.renderer = renderer;
|
|
44
|
+
const appendTitleTooltip = () => {
|
|
45
|
+
document.body.appendChild(tooltipElement);
|
|
46
|
+
};
|
|
47
|
+
if (document.body) {
|
|
48
|
+
appendTitleTooltip();
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
/* istanbul ignore next */
|
|
52
|
+
document.addEventListener('DOMContentLoaded', appendTitleTooltip, { once: true });
|
|
53
|
+
}
|
|
54
|
+
export { tooltipElement, addTooltipCondition, removeTooltipCondition };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TooltipRenderer } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Register the element to show a tooltip for overflow content
|
|
4
|
+
* @param target Target element
|
|
5
|
+
* @param [render] Optional renderer. By default target `textContent` is returned
|
|
6
|
+
* @returns {void}
|
|
7
|
+
*/
|
|
8
|
+
declare const register: (target: HTMLElement, render?: TooltipRenderer) => void;
|
|
9
|
+
export { register };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { addTooltipCondition } from '../elements/tooltip-element';
|
|
2
|
+
const registry = new WeakMap();
|
|
3
|
+
const overflowCondition = (target) => registry.has(target) && (target.scrollWidth - target.offsetWidth) > 1;
|
|
4
|
+
const overflowRenderer = (target) => target.textContent;
|
|
5
|
+
const tooltipRenderer = (target) => {
|
|
6
|
+
const renderer = registry.get(target);
|
|
7
|
+
return renderer ? renderer(target) : undefined;
|
|
8
|
+
};
|
|
9
|
+
addTooltipCondition(overflowCondition, tooltipRenderer);
|
|
10
|
+
/**
|
|
11
|
+
* Register the element to show a tooltip for overflow content
|
|
12
|
+
* @param target Target element
|
|
13
|
+
* @param [render] Optional renderer. By default target `textContent` is returned
|
|
14
|
+
* @returns {void}
|
|
15
|
+
*/
|
|
16
|
+
const register = (target, render = overflowRenderer) => {
|
|
17
|
+
registry.set(target, render);
|
|
18
|
+
};
|
|
19
|
+
export { register };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A default renderer that renders `tooltip` attribute
|
|
3
|
+
* @param target Target to check
|
|
4
|
+
* @returns tooltip or null or undefined
|
|
5
|
+
*/
|
|
6
|
+
const tooltipRenderer = (target) => {
|
|
7
|
+
if (target.hasAttribute('tooltip')) {
|
|
8
|
+
return target.getAttribute('tooltip');
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
export { tooltipRenderer };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { OverlayPosition } from '../../overlay';
|
|
2
|
+
export declare type TooltipCondition = (target: HTMLElement, paths: EventTarget[]) => boolean;
|
|
3
|
+
export declare type TooltipRenderer = (target: HTMLElement) => undefined | null | string | HTMLElement | DocumentFragment;
|
|
4
|
+
export declare type TooltipPosition = 'auto' | 'above' | 'right' | 'below' | 'left';
|
|
5
|
+
export declare type TooltipPositionMap = {
|
|
6
|
+
[K in TooltipPosition]: OverlayPosition[];
|
|
7
|
+
};
|
|
8
|
+
declare type MouseMoveCallback = (event: MouseEvent, paths: EventTarget[]) => void;
|
|
9
|
+
declare type MouseCallback = (event: MouseEvent) => void;
|
|
10
|
+
declare type WheelCallback = (event: WheelEvent) => void;
|
|
11
|
+
declare type FocusCallback = (event: FocusEvent) => void;
|
|
12
|
+
declare type KeyboardCallback = (event: KeyboardEvent) => void;
|
|
13
|
+
export declare type DocumentCallbacks = {
|
|
14
|
+
mousemove: MouseMoveCallback;
|
|
15
|
+
mousemoveThrottled: MouseMoveCallback;
|
|
16
|
+
click: MouseCallback;
|
|
17
|
+
mouseout: MouseCallback;
|
|
18
|
+
mouseleave: MouseCallback;
|
|
19
|
+
wheel: WheelCallback;
|
|
20
|
+
keydown: KeyboardCallback;
|
|
21
|
+
blur: FocusCallback;
|
|
22
|
+
};
|
|
23
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|