@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,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Return value if defined or 0 if not defined
|
|
3
|
+
* @param v Value
|
|
4
|
+
* @returns value
|
|
5
|
+
*/
|
|
6
|
+
declare const valueOrZero: (v: number | null | undefined) => number;
|
|
7
|
+
/**
|
|
8
|
+
* Parse the string to number or return null if string cannot be parsed
|
|
9
|
+
* @param v Value
|
|
10
|
+
* @returns value
|
|
11
|
+
*/
|
|
12
|
+
declare const valueOrNull: (v: string) => number | null;
|
|
13
|
+
export { valueOrZero, valueOrNull };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Return value if defined or 0 if not defined
|
|
3
|
+
* @param v Value
|
|
4
|
+
* @returns value
|
|
5
|
+
*/
|
|
6
|
+
const valueOrZero = (v) => v || 0;
|
|
7
|
+
/**
|
|
8
|
+
* Parse the string to number or return null if string cannot be parsed
|
|
9
|
+
* @param v Value
|
|
10
|
+
* @returns value
|
|
11
|
+
*/
|
|
12
|
+
const valueOrNull = (v) => {
|
|
13
|
+
const parsed = parseFloat(v);
|
|
14
|
+
return isNaN(parsed) ? null : parsed;
|
|
15
|
+
};
|
|
16
|
+
export { valueOrZero, valueOrNull };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
declare type Position = ('top' | 'right' | 'bottom' | 'left' | 'center' | 'top-start' | 'top-middle' | 'top-end' | 'right-start' | 'right-middle' | 'right-end' | 'bottom-start' | 'bottom-middle' | 'bottom-end' | 'left-start' | 'left-middle' | 'left-end' | 'center-middle');
|
|
2
|
+
declare type PositionTarget = HTMLElement | 'top' | 'right' | 'bottom' | 'left' | 'center' | 'top right' | 'right top' | 'top center' | 'center top' | 'top left' | 'left top' | 'bottom right' | 'right bottom' | 'bottom center' | 'center bottom' | 'bottom left' | 'left bottom' | 'center left' | 'left center' | 'center right' | 'right center' | 'center center';
|
|
3
|
+
declare type TransitionStyle = 'slide' | 'fade' | 'zoom' | 'slide-down' | 'slide-up' | 'slide-right' | 'slide-left' | 'slide-right-down' | 'slide-right-up' | 'slide-left-down' | 'slide-left-up';
|
|
4
|
+
declare type Calculated = {
|
|
5
|
+
position?: string;
|
|
6
|
+
};
|
|
7
|
+
declare type SizingInfoComputed = {
|
|
8
|
+
minWidth: number | null;
|
|
9
|
+
maxWidth: number | null;
|
|
10
|
+
minHeight: number | null;
|
|
11
|
+
maxHeight: number | null;
|
|
12
|
+
marginLeft: number | null;
|
|
13
|
+
marginRight: number | null;
|
|
14
|
+
marginTop: number | null;
|
|
15
|
+
marginBottom: number | null;
|
|
16
|
+
};
|
|
17
|
+
declare type SizingInfoStyle = {
|
|
18
|
+
minWidth: string;
|
|
19
|
+
maxWidth: string;
|
|
20
|
+
minHeight: string;
|
|
21
|
+
maxHeight: string;
|
|
22
|
+
};
|
|
23
|
+
declare type SizingInfoRect = {
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
};
|
|
27
|
+
declare type SizingInfo = {
|
|
28
|
+
computed: SizingInfoComputed;
|
|
29
|
+
style: SizingInfoStyle;
|
|
30
|
+
};
|
|
31
|
+
declare type PositionTargetStrategy = {
|
|
32
|
+
rect: {
|
|
33
|
+
top: number;
|
|
34
|
+
bottom: number;
|
|
35
|
+
left: number;
|
|
36
|
+
right: number;
|
|
37
|
+
height: number;
|
|
38
|
+
width: number;
|
|
39
|
+
};
|
|
40
|
+
position: Array<string[]>;
|
|
41
|
+
};
|
|
42
|
+
declare type NullOrUndefined = null | undefined;
|
|
43
|
+
declare const DEFAULT_ALIGN: Map<string, string>;
|
|
44
|
+
declare const DEFAULT_TARGET_STRATEGY: string[][];
|
|
45
|
+
declare type PositionStyle = {
|
|
46
|
+
top?: number | NullOrUndefined;
|
|
47
|
+
left?: number | NullOrUndefined;
|
|
48
|
+
right?: number | NullOrUndefined;
|
|
49
|
+
bottom?: number | NullOrUndefined;
|
|
50
|
+
};
|
|
51
|
+
declare type CalculatedPosition = {
|
|
52
|
+
position: string;
|
|
53
|
+
align: string;
|
|
54
|
+
canPosition: boolean;
|
|
55
|
+
canAlign: boolean;
|
|
56
|
+
top: number | NullOrUndefined;
|
|
57
|
+
left: number | NullOrUndefined;
|
|
58
|
+
right: number | NullOrUndefined;
|
|
59
|
+
bottom: number | NullOrUndefined;
|
|
60
|
+
isVertical: boolean;
|
|
61
|
+
area: number;
|
|
62
|
+
};
|
|
63
|
+
declare type ViewAreaInfo = {
|
|
64
|
+
/**
|
|
65
|
+
* Height of current viewport. Height is limited by screen size
|
|
66
|
+
*/
|
|
67
|
+
viewHeight: number;
|
|
68
|
+
/**
|
|
69
|
+
* Width of current viewport. Width is limited by screen size
|
|
70
|
+
*/
|
|
71
|
+
viewWidth: number;
|
|
72
|
+
/**
|
|
73
|
+
* Offset top that takes into account screen dimensions
|
|
74
|
+
*/
|
|
75
|
+
offsetTop: number;
|
|
76
|
+
/**
|
|
77
|
+
* Offset left that takes into account screen dimensions
|
|
78
|
+
*/
|
|
79
|
+
offsetLeft: number;
|
|
80
|
+
/**
|
|
81
|
+
* Offset bottom that takes into account screen dimensions
|
|
82
|
+
*/
|
|
83
|
+
offsetBottom: number;
|
|
84
|
+
/**
|
|
85
|
+
* Offset right that takes into account screen dimensions
|
|
86
|
+
*/
|
|
87
|
+
offsetRight: number;
|
|
88
|
+
/**
|
|
89
|
+
* Actual offset top of the viewport
|
|
90
|
+
*/
|
|
91
|
+
viewOffsetTop: number;
|
|
92
|
+
/**
|
|
93
|
+
* Actual offset left of the viewport
|
|
94
|
+
*/
|
|
95
|
+
viewOffsetLeft: number;
|
|
96
|
+
};
|
|
97
|
+
export { Calculated, PositionTargetStrategy, Position, PositionTarget, PositionStyle, TransitionStyle, DEFAULT_ALIGN, DEFAULT_TARGET_STRATEGY, NullOrUndefined, SizingInfo, CalculatedPosition, SizingInfoRect, ViewAreaInfo };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/* align against the position. These are valid when position does not contain align information */
|
|
2
|
+
const DEFAULT_ALIGN = new Map([
|
|
3
|
+
['top', 'start'],
|
|
4
|
+
['bottom', 'start'],
|
|
5
|
+
['left', 'middle'],
|
|
6
|
+
['right', 'middle'],
|
|
7
|
+
['center', 'middle']
|
|
8
|
+
]);
|
|
9
|
+
/* strategies applied when positionTarget is HTML Element */
|
|
10
|
+
const DEFAULT_TARGET_STRATEGY = [
|
|
11
|
+
['bottom', 'start'],
|
|
12
|
+
['top', 'start'],
|
|
13
|
+
['right', 'middle'],
|
|
14
|
+
['left', 'middle']
|
|
15
|
+
];
|
|
16
|
+
export { DEFAULT_ALIGN, DEFAULT_TARGET_STRATEGY };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Overlay } from './elements/overlay';
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { Overlay } from '../elements/overlay';
|
|
2
|
+
import '../elements/overlay-backdrop';
|
|
3
|
+
/**
|
|
4
|
+
* Backdrop manager adds a backdrop to the body
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export declare class BackdropManager {
|
|
8
|
+
private registry;
|
|
9
|
+
private backdropElement;
|
|
10
|
+
private get overlays();
|
|
11
|
+
private removeBackdropElement;
|
|
12
|
+
private position;
|
|
13
|
+
register(overlay: Overlay): void;
|
|
14
|
+
deregister(overlay: Overlay): void;
|
|
15
|
+
/**
|
|
16
|
+
* @returns count of elements inside manager
|
|
17
|
+
*/
|
|
18
|
+
size(): number;
|
|
19
|
+
/**
|
|
20
|
+
* applies deregister for each element in registry
|
|
21
|
+
* @returns {void}
|
|
22
|
+
*/
|
|
23
|
+
clear(): void;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Register the new overlay
|
|
27
|
+
* @param overlay Overlay
|
|
28
|
+
* @returns {void}
|
|
29
|
+
*/
|
|
30
|
+
export declare const register: (overlay: Overlay) => void;
|
|
31
|
+
/**
|
|
32
|
+
* Deregister the overlay
|
|
33
|
+
* @param overlay Overlay
|
|
34
|
+
* @returns {void}
|
|
35
|
+
*/
|
|
36
|
+
export declare const deregister: (overlay: Overlay) => void;
|
|
37
|
+
/**
|
|
38
|
+
* @returns count of elements inside manager
|
|
39
|
+
*/
|
|
40
|
+
export declare const size: () => number;
|
|
41
|
+
/**
|
|
42
|
+
* removes all elements from registry
|
|
43
|
+
* @returns {void}
|
|
44
|
+
*/
|
|
45
|
+
export declare const clear: () => void;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { getOverlayLayers } from './zindex-manager';
|
|
2
|
+
import '../elements/overlay-backdrop';
|
|
3
|
+
/**
|
|
4
|
+
* Backdrop manager adds a backdrop to the body
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export class BackdropManager {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.registry = new Set();
|
|
10
|
+
this.backdropElement = document.createElement('ef-overlay-backdrop');
|
|
11
|
+
this.position = () => {
|
|
12
|
+
const overlays = this.overlays;
|
|
13
|
+
if (!overlays.length) {
|
|
14
|
+
this.removeBackdropElement();
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const { overlay, zIndex } = overlays[0];
|
|
18
|
+
const backdropElement = this.backdropElement;
|
|
19
|
+
if (!overlay.parentNode) {
|
|
20
|
+
this.removeBackdropElement();
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (backdropElement.nextElementSibling === overlay) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
backdropElement.zIndex = zIndex;
|
|
27
|
+
overlay.parentNode.insertBefore(backdropElement, overlay);
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
get overlays() {
|
|
31
|
+
return getOverlayLayers().filter(({ overlay }) => this.registry.has(overlay));
|
|
32
|
+
}
|
|
33
|
+
removeBackdropElement() {
|
|
34
|
+
const backdropElement = this.backdropElement;
|
|
35
|
+
if (backdropElement.parentNode) {
|
|
36
|
+
backdropElement.parentNode.removeChild(backdropElement);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
register(overlay) {
|
|
40
|
+
if (!this.registry.has(overlay)) {
|
|
41
|
+
overlay.addEventListener('focus', this.position);
|
|
42
|
+
this.registry.add(overlay);
|
|
43
|
+
}
|
|
44
|
+
this.position();
|
|
45
|
+
}
|
|
46
|
+
deregister(overlay) {
|
|
47
|
+
if (this.registry.has(overlay)) {
|
|
48
|
+
overlay.removeEventListener('focus', this.position);
|
|
49
|
+
this.registry.delete(overlay);
|
|
50
|
+
this.position();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @returns count of elements inside manager
|
|
55
|
+
*/
|
|
56
|
+
size() {
|
|
57
|
+
return this.registry.size;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* applies deregister for each element in registry
|
|
61
|
+
* @returns {void}
|
|
62
|
+
*/
|
|
63
|
+
clear() {
|
|
64
|
+
this.registry.forEach(overlay => this.deregister(overlay));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
const backdropManager = new BackdropManager();
|
|
68
|
+
/**
|
|
69
|
+
* Register the new overlay
|
|
70
|
+
* @param overlay Overlay
|
|
71
|
+
* @returns {void}
|
|
72
|
+
*/
|
|
73
|
+
export const register = (overlay) => {
|
|
74
|
+
backdropManager.register(overlay);
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Deregister the overlay
|
|
78
|
+
* @param overlay Overlay
|
|
79
|
+
* @returns {void}
|
|
80
|
+
*/
|
|
81
|
+
export const deregister = (overlay) => {
|
|
82
|
+
backdropManager.deregister(overlay);
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* @returns count of elements inside manager
|
|
86
|
+
*/
|
|
87
|
+
export const size = () => {
|
|
88
|
+
return backdropManager.size();
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* removes all elements from registry
|
|
92
|
+
* @returns {void}
|
|
93
|
+
*/
|
|
94
|
+
export const clear = () => {
|
|
95
|
+
backdropManager.clear();
|
|
96
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { Overlay } from '../elements/overlay';
|
|
2
|
+
declare type CloseCallback = () => void;
|
|
3
|
+
/**
|
|
4
|
+
* Close manager ensures that the correct (or the most top) overlay
|
|
5
|
+
* is closed on ESC and click events
|
|
6
|
+
* @returns {void}
|
|
7
|
+
*/
|
|
8
|
+
export declare class CloseManager {
|
|
9
|
+
private registry;
|
|
10
|
+
private get overlays();
|
|
11
|
+
private getTopOverlay;
|
|
12
|
+
private onKeyDown;
|
|
13
|
+
private onEscKey;
|
|
14
|
+
/**
|
|
15
|
+
* Run when document tap event happens.
|
|
16
|
+
* @param event event object
|
|
17
|
+
* @returns {void}
|
|
18
|
+
*/
|
|
19
|
+
private onTapStart;
|
|
20
|
+
register(overlay: Overlay, closeCallback: CloseCallback): void;
|
|
21
|
+
deregister(overlay: Overlay): void;
|
|
22
|
+
/**
|
|
23
|
+
* @returns count of elements inside manager
|
|
24
|
+
*/
|
|
25
|
+
size(): number;
|
|
26
|
+
/**
|
|
27
|
+
* applies deregister for each element in registry
|
|
28
|
+
* @returns {void}
|
|
29
|
+
*/
|
|
30
|
+
clear(): void;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Register the new overlay
|
|
34
|
+
* @param overlay Overlay
|
|
35
|
+
* @param closeCallback A function to close the overlay
|
|
36
|
+
* @returns {void}
|
|
37
|
+
*/
|
|
38
|
+
export declare const register: (overlay: Overlay, closeCallback: CloseCallback) => void;
|
|
39
|
+
/**
|
|
40
|
+
* Deregister the overlay
|
|
41
|
+
* @param overlay Overlay
|
|
42
|
+
* @returns {void}
|
|
43
|
+
*/
|
|
44
|
+
export declare const deregister: (overlay: Overlay) => void;
|
|
45
|
+
/**
|
|
46
|
+
* @returns count of elements inside manager
|
|
47
|
+
*/
|
|
48
|
+
export declare const size: () => number;
|
|
49
|
+
/**
|
|
50
|
+
* removes all elements from registry
|
|
51
|
+
* @returns {void}
|
|
52
|
+
*/
|
|
53
|
+
export declare const clear: () => void;
|
|
54
|
+
export {};
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { getOverlays } from './zindex-manager';
|
|
2
|
+
/**
|
|
3
|
+
* Close manager ensures that the correct (or the most top) overlay
|
|
4
|
+
* is closed on ESC and click events
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export class CloseManager {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.registry = new Map();
|
|
10
|
+
this.onKeyDown = ({ key }) => {
|
|
11
|
+
switch (key) {
|
|
12
|
+
case 'Esc':
|
|
13
|
+
case 'Escape':
|
|
14
|
+
this.onEscKey();
|
|
15
|
+
// no default
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Run when document tap event happens.
|
|
20
|
+
* @param event event object
|
|
21
|
+
* @returns {void}
|
|
22
|
+
*/
|
|
23
|
+
this.onTapStart = (event) => {
|
|
24
|
+
const topOverlay = this.getTopOverlay();
|
|
25
|
+
/* istanbul ignore next */
|
|
26
|
+
if (!topOverlay) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const { overlay, closeCallback } = topOverlay;
|
|
30
|
+
const path = event.composedPath();
|
|
31
|
+
const focusBoundary = overlay.focusBoundary || overlay;
|
|
32
|
+
const isOutsideClick = !path.includes(focusBoundary);
|
|
33
|
+
if (isOutsideClick && !overlay.noInteractionLock) {
|
|
34
|
+
event.preventDefault();
|
|
35
|
+
}
|
|
36
|
+
if (isOutsideClick && !overlay.noCancelOnOutsideClick) {
|
|
37
|
+
closeCallback();
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
get overlays() {
|
|
42
|
+
return getOverlays().filter(overlay => this.registry.has(overlay));
|
|
43
|
+
}
|
|
44
|
+
getTopOverlay() {
|
|
45
|
+
const overlay = this.overlays[0];
|
|
46
|
+
/* istanbul ignore next */
|
|
47
|
+
if (!overlay) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
const closeCallback = this.registry.get(overlay);
|
|
51
|
+
return {
|
|
52
|
+
overlay,
|
|
53
|
+
closeCallback
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
onEscKey() {
|
|
57
|
+
const topOverlay = this.getTopOverlay();
|
|
58
|
+
/* istanbul ignore next */
|
|
59
|
+
if (!topOverlay) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const { overlay, closeCallback } = topOverlay;
|
|
63
|
+
// Do nothing
|
|
64
|
+
if (overlay.noCancelOnEscKey) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
closeCallback();
|
|
68
|
+
}
|
|
69
|
+
register(overlay, closeCallback) {
|
|
70
|
+
if (!this.registry.size) {
|
|
71
|
+
const eventOptions = {
|
|
72
|
+
capture: true,
|
|
73
|
+
passive: true
|
|
74
|
+
};
|
|
75
|
+
document.addEventListener('keydown', this.onKeyDown, eventOptions);
|
|
76
|
+
document.addEventListener('tapstart', this.onTapStart, true);
|
|
77
|
+
}
|
|
78
|
+
this.registry.set(overlay, closeCallback);
|
|
79
|
+
}
|
|
80
|
+
deregister(overlay) {
|
|
81
|
+
this.registry.delete(overlay);
|
|
82
|
+
if (!this.registry.size) {
|
|
83
|
+
const eventOptions = {
|
|
84
|
+
capture: true,
|
|
85
|
+
passive: true
|
|
86
|
+
};
|
|
87
|
+
document.removeEventListener('keydown', this.onKeyDown, eventOptions);
|
|
88
|
+
document.removeEventListener('tapstart', this.onTapStart, true);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* @returns count of elements inside manager
|
|
93
|
+
*/
|
|
94
|
+
size() {
|
|
95
|
+
return this.registry.size;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* applies deregister for each element in registry
|
|
99
|
+
* @returns {void}
|
|
100
|
+
*/
|
|
101
|
+
clear() {
|
|
102
|
+
const registryArray = [...this.registry.keys()];
|
|
103
|
+
for (let i = 0; i < registryArray.length; i++) {
|
|
104
|
+
this.deregister(registryArray[i]);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
const closeManager = new CloseManager();
|
|
109
|
+
/**
|
|
110
|
+
* Register the new overlay
|
|
111
|
+
* @param overlay Overlay
|
|
112
|
+
* @param closeCallback A function to close the overlay
|
|
113
|
+
* @returns {void}
|
|
114
|
+
*/
|
|
115
|
+
export const register = (overlay, closeCallback) => {
|
|
116
|
+
closeManager.register(overlay, closeCallback);
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Deregister the overlay
|
|
120
|
+
* @param overlay Overlay
|
|
121
|
+
* @returns {void}
|
|
122
|
+
*/
|
|
123
|
+
export const deregister = (overlay) => {
|
|
124
|
+
closeManager.deregister(overlay);
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* @returns count of elements inside manager
|
|
128
|
+
*/
|
|
129
|
+
export const size = () => {
|
|
130
|
+
return closeManager.size();
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* removes all elements from registry
|
|
134
|
+
* @returns {void}
|
|
135
|
+
*/
|
|
136
|
+
export const clear = () => {
|
|
137
|
+
closeManager.clear();
|
|
138
|
+
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { Overlay } from '../elements/overlay';
|
|
2
|
+
/**
|
|
3
|
+
* Focus manager ensures that the correct
|
|
4
|
+
* element receives the focus
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export declare class FocusManager {
|
|
8
|
+
private focusThrottler;
|
|
9
|
+
private registry;
|
|
10
|
+
private restoreFocusElement;
|
|
11
|
+
private lastFocused;
|
|
12
|
+
private get overlays();
|
|
13
|
+
private get focusBoundaryElements();
|
|
14
|
+
private getTabbableElements;
|
|
15
|
+
private getActiveTabbableNodes;
|
|
16
|
+
private onTabKey;
|
|
17
|
+
private getReTargetFocusNode;
|
|
18
|
+
private getShadowActiveElement;
|
|
19
|
+
private getActiveElement;
|
|
20
|
+
private isFocusBoundaryDescendant;
|
|
21
|
+
/**
|
|
22
|
+
* Run when document key down event happens
|
|
23
|
+
* @param event Keyboard event
|
|
24
|
+
* @returns {void}
|
|
25
|
+
*/
|
|
26
|
+
private onDocumentKeyDown;
|
|
27
|
+
/**
|
|
28
|
+
* True if passed target is a registered overlay
|
|
29
|
+
* @param target Target to check
|
|
30
|
+
* @returns true if registered overlay
|
|
31
|
+
*/
|
|
32
|
+
private isRegisteredOverlay;
|
|
33
|
+
/**
|
|
34
|
+
* Run on overlay focus order to restore overlay focus
|
|
35
|
+
* @param event focusin event
|
|
36
|
+
* @returns {void}
|
|
37
|
+
*/
|
|
38
|
+
private onOverlayFocus;
|
|
39
|
+
register(overlay: Overlay): void;
|
|
40
|
+
deregister(overlay: Overlay): void;
|
|
41
|
+
/**
|
|
42
|
+
* @returns count of elements inside manager
|
|
43
|
+
*/
|
|
44
|
+
size(): number;
|
|
45
|
+
/**
|
|
46
|
+
* applies deregister for each element in registry
|
|
47
|
+
* @returns {void}
|
|
48
|
+
*/
|
|
49
|
+
clear(): void;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Register the new overlay
|
|
53
|
+
* @param overlay Overlay
|
|
54
|
+
* @returns {void}
|
|
55
|
+
*/
|
|
56
|
+
export declare const register: (overlay: Overlay) => void;
|
|
57
|
+
/**
|
|
58
|
+
* Deregister the overlay
|
|
59
|
+
* @param overlay Overlay
|
|
60
|
+
* @returns {void}
|
|
61
|
+
*/
|
|
62
|
+
export declare const deregister: (overlay: Overlay) => void;
|
|
63
|
+
/**
|
|
64
|
+
* @returns count of elements inside manager
|
|
65
|
+
*/
|
|
66
|
+
export declare const size: () => number;
|
|
67
|
+
/**
|
|
68
|
+
* removes all elements from registry
|
|
69
|
+
* @returns {void}
|
|
70
|
+
*/
|
|
71
|
+
export declare const clear: () => void;
|