@ember-eui/core 4.3.0 → 5.0.0-alpha.3
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/addon/components/common.ts +1 -0
- package/addon/components/eui-accordion/index.hbs +106 -85
- package/addon/components/eui-accordion/index.ts +58 -19
- package/addon/components/eui-auto-sizer/index.hbs +3 -0
- package/addon/components/eui-auto-sizer/index.ts +175 -0
- package/addon/components/eui-avatar/index.hbs +7 -3
- package/addon/components/eui-badge/index.hbs +9 -3
- package/addon/components/eui-beta-badge/index.hbs +171 -19
- package/addon/components/eui-bottom-bar/index.hbs +43 -12
- package/addon/components/eui-bottom-bar/index.ts +75 -32
- package/addon/components/eui-breadcrumbs/index.hbs +98 -0
- package/addon/components/eui-breadcrumbs/index.ts +194 -0
- package/addon/components/eui-button/index.hbs +4 -4
- package/addon/components/eui-button-content/index.hbs +6 -2
- package/addon/components/eui-button-empty/index.hbs +60 -52
- package/addon/components/eui-button-icon/index.hbs +17 -3
- package/addon/components/eui-call-out/index.hbs +1 -0
- package/addon/components/eui-card/index.hbs +61 -47
- package/addon/components/eui-card/index.ts +27 -0
- package/addon/components/{eui-card/eui-card-select → eui-card-select}/index.hbs +2 -5
- package/addon/components/eui-card-select/index.ts +35 -0
- package/addon/components/eui-checkable-card/index.hbs +17 -11
- package/addon/components/eui-checkbox/index.hbs +11 -5
- package/addon/components/eui-checkbox/index.ts +15 -0
- package/addon/components/eui-code/index.hbs +14 -8
- package/addon/components/eui-code/index.ts +73 -0
- package/addon/components/eui-code-block/controls/index.hbs +26 -0
- package/addon/components/eui-code-block/full-screen-display/index.hbs +12 -0
- package/addon/components/eui-code-block/index.hbs +144 -9
- package/addon/components/eui-code-block/index.ts +290 -0
- package/addon/components/eui-code-block/virtualized/index.hbs +30 -0
- package/addon/components/eui-code-block/virtualized/index.ts +22 -0
- package/addon/components/eui-collapsible-nav/index.hbs +35 -44
- package/addon/components/eui-collapsible-nav/index.ts +161 -0
- package/addon/components/eui-collapsible-nav-group/index.hbs +114 -66
- package/addon/components/eui-combo-box/group/index.hbs +3 -3
- package/addon/components/eui-combo-box/index.hbs +8 -5
- package/addon/components/eui-combo-box/index.ts +89 -4
- package/addon/components/eui-combo-box/options/index.hbs +14 -2
- package/addon/components/eui-combo-box/options/index.js +22 -9
- package/addon/components/eui-combo-box/trigger/index.hbs +3 -1
- package/addon/components/eui-confirm-modal/index.hbs +1 -1
- package/addon/components/eui-copy/index.hbs +1 -4
- package/addon/components/eui-described-form-group/index.hbs +3 -2
- package/addon/components/eui-description-list/index.hbs +23 -0
- package/addon/components/eui-description-list-description/index.hbs +3 -0
- package/addon/components/eui-description-list-title/index.hbs +3 -0
- package/addon/components/eui-dual-range/index.hbs +30 -18
- package/addon/components/eui-dual-range/index.ts +36 -10
- package/addon/components/eui-empty-prompt/index.hbs +83 -0
- package/addon/components/eui-field-number/index.hbs +3 -3
- package/addon/components/eui-field-number/types.ts +4 -1
- package/addon/components/eui-field-search/index.hbs +2 -1
- package/addon/components/eui-field-text/index.hbs +3 -1
- package/addon/components/eui-file-picker/index.hbs +15 -11
- package/addon/components/eui-file-picker/index.ts +26 -8
- package/addon/components/eui-flyout/index.hbs +130 -43
- package/addon/components/eui-flyout/index.ts +233 -0
- package/addon/components/eui-flyout-body/index.hbs +21 -7
- package/addon/components/eui-form-control-layout-custom-icon/types.ts +3 -1
- package/addon/components/eui-form-control-layout-icons/types.ts +4 -1
- package/addon/components/eui-form-label/index.hbs +1 -1
- package/addon/components/eui-form-row/index.hbs +13 -9
- package/addon/components/eui-global-toast-list/index.ts +5 -6
- package/addon/components/eui-header/index.hbs +18 -3
- package/addon/{modifiers/fixed-header.ts → components/eui-header/index.ts} +10 -1
- package/addon/components/eui-header-alert/index.hbs +25 -0
- package/addon/components/eui-header-breadcrumbs/index.hbs +7 -0
- package/addon/components/eui-header-links/index.hbs +41 -0
- package/addon/components/eui-header-links/index.ts +14 -0
- package/addon/components/eui-header-section-item-button/index.hbs +30 -12
- package/addon/components/eui-header-section-item-button/index.ts +131 -0
- package/addon/components/eui-health/index.hbs +15 -13
- package/addon/components/eui-hide-for/index.hbs +3 -0
- package/addon/components/eui-hide-for/index.ts +33 -0
- package/addon/components/eui-icon/index.hbs +6 -3
- package/addon/components/eui-icon/index.ts +4 -0
- package/addon/components/eui-image/index.hbs +63 -25
- package/addon/components/eui-image/index.ts +7 -2
- package/addon/components/eui-input-popover/index.ts +6 -4
- package/addon/components/eui-key-pad-menu/index.hbs +16 -0
- package/addon/components/eui-key-pad-menu/key/index.hbs +1 -0
- package/addon/components/eui-key-pad-menu-item/index.hbs +66 -0
- package/addon/components/eui-key-pad-menu-item/index.ts +11 -0
- package/addon/components/eui-link/index.hbs +50 -0
- package/addon/components/eui-list-group-item/index.hbs +10 -2
- package/addon/components/eui-loading-logo/index.hbs +14 -0
- package/addon/components/eui-markdown-editor/index.hbs +4 -1
- package/addon/components/eui-markdown-editor/index.ts +54 -0
- package/addon/components/eui-markdown-editor-footer/index.hbs +39 -40
- package/addon/components/eui-markdown-format/index.ts +1 -1
- package/addon/components/eui-markdown-format/markdown-code/index.hbs +2 -2
- package/addon/components/eui-markdown-format/markdown-code-block/index.hbs +1 -0
- package/addon/components/eui-modal/index.hbs +28 -24
- package/addon/components/eui-overlay-mask/index.hbs +4 -4
- package/addon/components/eui-overlay-mask/index.ts +14 -1
- package/addon/components/eui-page/index.hbs +3 -6
- package/addon/components/eui-page-body/index.hbs +47 -15
- package/addon/components/eui-page-content/index.hbs +6 -8
- package/addon/components/eui-page-content-body/index.hbs +13 -1
- package/addon/components/eui-page-content-header/index.hbs +6 -0
- package/addon/components/eui-page-header/index.hbs +31 -6
- package/addon/components/eui-page-header-content/index.hbs +219 -0
- package/addon/components/eui-page-header-content/index.ts +49 -0
- package/addon/components/eui-page-side-bar/index.hbs +8 -1
- package/addon/components/eui-page-template/index.hbs +417 -0
- package/addon/components/eui-page-template/index.ts +89 -0
- package/addon/components/eui-panel/index.hbs +58 -12
- package/addon/components/eui-popover/index.hbs +8 -4
- package/addon/components/eui-popover/index.ts +28 -12
- package/addon/components/eui-portal/index.ts +2 -1
- package/addon/components/eui-progress/index.hbs +16 -13
- package/addon/components/eui-radio/index.hbs +9 -3
- package/addon/components/eui-range/index.hbs +33 -11
- package/addon/components/eui-range/index.ts +7 -4
- package/addon/components/eui-range-input/index.hbs +37 -31
- package/addon/components/eui-range-input/types.ts +2 -1
- package/addon/components/eui-range-levels/index.hbs +3 -3
- package/addon/components/eui-range-levels/index.ts +14 -3
- package/addon/components/eui-range-ticks/index.hbs +2 -2
- package/addon/components/eui-range-track/index.hbs +10 -2
- package/addon/components/eui-range-track/index.ts +23 -6
- package/addon/components/eui-show-for/index.hbs +3 -0
- package/addon/components/eui-show-for/index.ts +79 -0
- package/addon/components/eui-side-nav/index.hbs +161 -36
- package/addon/components/eui-side-nav/index.ts +28 -0
- package/addon/components/eui-side-nav-item/button/index.hbs +26 -14
- package/addon/components/eui-side-nav-item/index.hbs +52 -25
- package/addon/components/eui-split-panel/inner/index.hbs +11 -0
- package/addon/components/eui-split-panel/outer/index.hbs +27 -0
- package/addon/components/eui-split-panel/outer/index.ts +37 -0
- package/addon/components/eui-step/eui-step-number/index.hbs +21 -4
- package/addon/components/eui-steps/index.hbs +7 -1
- package/addon/components/eui-tab/index.hbs +60 -46
- package/addon/components/eui-tab/index.ts +23 -0
- package/addon/components/eui-tabs/index.hbs +6 -9
- package/addon/components/eui-tool-tip/index.hbs +6 -7
- package/addon/components/eui-tool-tip/index.ts +27 -11
- package/addon/helpers/arg-or-default.ts +4 -1
- package/addon/helpers/class-names.ts +2 -0
- package/addon/helpers/eui-palette.ts +4 -1
- package/addon/helpers/get-range-tick.ts +53 -8
- package/addon/helpers/get-tab-id.ts +8 -2
- package/addon/helpers/hex-to-rgb.ts +4 -1
- package/addon/helpers/inline-styles.ts +10 -3
- package/addon/helpers/is-within-number.ts +4 -1
- package/addon/helpers/starts-with.ts +3 -1
- package/addon/helpers/unique-id.ts +4 -1
- package/addon/initializers/eui-config.ts +12 -0
- package/addon/modifiers/mutation-observer.ts +4 -1
- package/addon/modifiers/outside-click-detector.ts +4 -4
- package/addon/styles/ember-eui.css +2 -10
- package/addon/utils/accesibility/cascading-menu-keys.ts +8 -1
- package/addon/utils/breakpoint.ts +114 -0
- package/addon/utils/code/utils.ts +304 -0
- package/addon/utils/color/color_palette.ts +3 -3
- package/addon/utils/color/eui_palettes.ts +23 -6
- package/addon/utils/css-mappings/eui-avatar.ts +51 -9
- package/addon/utils/css-mappings/eui-badge.ts +6 -2
- package/addon/utils/css-mappings/eui-beta-badge.ts +22 -0
- package/addon/utils/css-mappings/eui-bottom-bar.ts +8 -1
- package/addon/utils/css-mappings/eui-button-empty.ts +4 -4
- package/addon/utils/css-mappings/eui-button-icon.ts +19 -6
- package/addon/utils/css-mappings/eui-button.ts +2 -1
- package/addon/utils/css-mappings/eui-card-select.ts +1 -11
- package/addon/utils/css-mappings/eui-card.ts +1 -18
- package/addon/utils/css-mappings/{eui-code-block-impl.ts → eui-code-block.ts} +0 -0
- package/addon/utils/css-mappings/eui-description-list.ts +29 -0
- package/addon/utils/css-mappings/eui-empty-prompt.ts +17 -0
- package/addon/utils/css-mappings/eui-flyout.ts +21 -1
- package/addon/utils/css-mappings/eui-header-links.ts +27 -0
- package/addon/utils/css-mappings/eui-health.ts +17 -0
- package/addon/utils/css-mappings/eui-icon.ts +93 -70
- package/addon/utils/css-mappings/eui-image.ts +17 -2
- package/addon/utils/css-mappings/eui-link.ts +21 -0
- package/addon/utils/css-mappings/eui-list-group.ts +5 -1
- package/addon/utils/css-mappings/eui-modal.ts +5 -1
- package/addon/utils/css-mappings/eui-page-body.ts +25 -0
- package/addon/utils/css-mappings/eui-page-content-body.ts +17 -0
- package/addon/utils/css-mappings/eui-page-content.ts +7 -1
- package/addon/utils/css-mappings/eui-page-header.ts +17 -0
- package/addon/utils/css-mappings/eui-page-side-bar.ts +17 -0
- package/addon/utils/css-mappings/eui-panel.ts +1 -0
- package/addon/utils/css-mappings/eui-progress-data.ts +0 -1
- package/addon/utils/css-mappings/eui-progress.ts +0 -2
- package/addon/utils/css-mappings/eui-range-levels.ts +22 -4
- package/addon/utils/css-mappings/eui-tabs.ts +3 -1
- package/addon/utils/css-mappings/eui-text-color.ts +3 -2
- package/addon/utils/css-mappings/index.ts +23 -3
- package/addon/utils/detect-element-resize.js +248 -0
- package/addon/utils/markdown/markdown-types.ts +10 -11
- package/addon/utils/markdown/plugins/markdown-add-components/index.ts +1 -0
- package/addon/utils/markdown/plugins/{markdown-add-components.ts → markdown-add-components/processor.ts} +14 -7
- package/addon/utils/markdown/plugins/markdown-checkbox/index.ts +9 -0
- package/addon/utils/markdown/plugins/{markdown-checkbox.ts → markdown-checkbox/parser.ts} +3 -5
- package/addon/utils/markdown/plugins/markdown-default-plugins/index.ts +12 -0
- package/addon/utils/markdown/plugins/{markdown-default-plugins.ts → markdown-default-plugins/parsing-plugins.ts} +13 -25
- package/addon/utils/markdown/plugins/markdown-default-plugins/plugins.ts +32 -0
- package/addon/utils/markdown/plugins/markdown-default-plugins/processing-plugins.ts +67 -0
- package/addon/utils/markdown/plugins/markdown-default-plugins/ui-plugins.ts +27 -0
- package/addon/utils/markdown/plugins/markdown-tooltip/index.ts +2 -0
- package/addon/utils/markdown/plugins/{markdown-tooltip.ts → markdown-tooltip/parser.ts} +3 -23
- package/addon/utils/markdown/plugins/markdown-tooltip/plugin.ts +17 -0
- package/addon/utils/markdown/plugins/to-dom.ts +3 -1
- package/addon/utils/markdown/remark/remark-prismjs.ts +41 -0
- package/addon/utils/popover/index.ts +87 -35
- package/addon/utils/range/index.ts +1 -0
- package/addon/utils/transition.ts +10 -3
- package/addon/version.ts +6 -0
- package/app/components/eui-auto-sizer/index.js +1 -0
- package/app/components/eui-avatar/index.js +1 -1
- package/app/components/eui-badge-group/badge-group-item/index.js +1 -1
- package/app/components/eui-badge-group/index.js +1 -1
- package/app/components/eui-breadcrumbs/index.js +1 -0
- package/app/components/eui-button-icon/index.js +1 -1
- package/app/components/eui-card-select/index.js +1 -0
- package/app/components/{eui-code-block-impl → eui-code-block/controls}/index.js +1 -1
- package/app/components/{eui-code-block-impl/code-block-controls → eui-code-block/full-screen-display}/index.js +1 -1
- package/app/components/eui-code-block/virtualized/index.js +1 -0
- package/app/components/eui-combo-box/create-option/index.js +1 -1
- package/app/components/eui-comment/eui-comment-timeline/index.js +1 -1
- package/app/components/eui-comment/index.js +1 -1
- package/app/components/eui-description-list/index.js +1 -0
- package/app/components/eui-description-list-description/index.js +1 -0
- package/app/components/eui-description-list-title/index.js +1 -0
- package/app/components/eui-dual-range/index.js +1 -1
- package/app/components/eui-empty-prompt/index.js +1 -0
- package/app/components/eui-field-number/index.js +1 -1
- package/app/components/eui-field-password/index.js +1 -1
- package/app/components/eui-field-search/index.js +1 -1
- package/app/components/eui-field-text/index.js +1 -1
- package/app/components/eui-file-picker/index.js +1 -1
- package/app/components/eui-form/index.js +1 -1
- package/app/components/eui-form-control-layout/index.js +1 -1
- package/app/components/eui-form-control-layout-clear-button/index.js +1 -1
- package/app/components/eui-form-control-layout-custom-icon/index.js +1 -1
- package/app/components/eui-form-control-layout-delimited/index.js +1 -1
- package/app/components/eui-form-control-layout-icons/index.js +1 -1
- package/app/components/eui-form-error-text/index.js +1 -1
- package/app/components/eui-form-fieldset/index.js +1 -1
- package/app/components/eui-form-help-text/index.js +1 -1
- package/app/components/eui-form-label/index.js +1 -1
- package/app/components/eui-form-legend/index.js +1 -1
- package/app/components/eui-form-row/index.js +1 -1
- package/app/components/eui-header-alert/index.js +1 -0
- package/app/components/eui-header-breadcrumbs/index.js +1 -0
- package/app/components/eui-header-links/index.js +1 -0
- package/app/components/eui-hide-for/index.js +1 -0
- package/app/components/eui-image.js +1 -1
- package/app/components/eui-key-pad-menu/index.js +1 -0
- package/app/components/eui-key-pad-menu/key/index.js +1 -0
- package/app/components/eui-key-pad-menu-item/index.js +1 -0
- package/app/components/eui-link/index.js +1 -0
- package/app/components/eui-list-group/index.js +1 -1
- package/app/components/eui-list-group-item/index.js +1 -1
- package/app/components/eui-loading-logo/index.js +1 -0
- package/app/components/eui-overlay-mask.js +1 -1
- package/app/components/eui-page/index.js +1 -1
- package/app/components/eui-page-body/index.js +1 -1
- package/app/components/eui-page-content/index.js +1 -1
- package/app/components/eui-page-content-body/index.js +1 -1
- package/app/components/eui-page-content-header/index.js +1 -1
- package/app/components/eui-page-content-header-section/index.js +1 -1
- package/app/components/eui-page-header/index.js +1 -1
- package/app/components/eui-page-header-content/index.js +1 -0
- package/app/components/eui-page-header-section/index.js +1 -1
- package/app/components/eui-page-template/index.js +1 -0
- package/app/components/eui-panel/index.js +1 -1
- package/app/components/eui-popover/index.js +1 -1
- package/app/components/eui-popover-footer/index.js +1 -1
- package/app/components/eui-popover-title/index.js +1 -1
- package/app/components/eui-portal/index.js +1 -1
- package/app/components/eui-progress/index.js +1 -1
- package/app/components/eui-radio/index.js +1 -1
- package/app/components/eui-radio-group/index.js +1 -1
- package/app/components/eui-range/index.js +1 -1
- package/app/components/eui-range-highlight/index.js +1 -1
- package/app/components/eui-range-input/index.js +1 -1
- package/app/components/eui-range-label/index.js +1 -1
- package/app/components/eui-range-levels/index.js +1 -1
- package/app/components/eui-range-slider/index.js +1 -1
- package/app/components/eui-range-thumb/index.js +1 -1
- package/app/components/eui-range-ticks/index.js +1 -1
- package/app/components/eui-range-tooltip/index.js +1 -1
- package/app/components/eui-range-track/index.js +1 -1
- package/app/components/eui-range-wrapper/index.js +1 -1
- package/app/components/eui-select/index.js +1 -1
- package/app/components/eui-show-for/index.js +1 -0
- package/app/components/eui-side-nav/index.js +1 -1
- package/app/components/eui-side-nav-item/button/index.js +1 -1
- package/app/components/eui-side-nav-item/index.js +1 -1
- package/app/components/eui-spacer/index.js +1 -1
- package/app/components/eui-split-panel/inner/index.js +1 -0
- package/app/components/eui-split-panel/outer/index.js +1 -0
- package/app/components/eui-switch/index.js +1 -1
- package/app/components/eui-tab/index.js +1 -1
- package/app/components/eui-tabs/index.js +1 -1
- package/app/components/eui-text/index.js +1 -1
- package/app/components/eui-text-align/index.js +1 -1
- package/app/components/eui-text-area/index.js +1 -1
- package/app/components/eui-text-color/index.js +1 -1
- package/app/components/eui-title/index.js +1 -1
- package/app/components/eui-tool-tip/index.js +1 -1
- package/app/components/eui-tool-tip-popover/index.js +1 -1
- package/app/helpers/eui-palette.js +1 -1
- package/app/helpers/hex-to-rgb.js +1 -1
- package/app/initializers/eui-config.js +1 -0
- package/app/utils/copy-to-clipboard.js +1 -0
- package/docs/display/avatar-demo/demo1.md +43 -49
- package/docs/display/avatar-demo/demo2.md +42 -0
- package/docs/display/avatar-demo/demo3.md +33 -0
- package/docs/display/avatar-demo/demo4.md +53 -0
- package/docs/display/avatar-demo/demo5.md +38 -0
- package/docs/display/avatar.md +1 -1
- package/docs/display/badge-demo/demo1.md +78 -137
- package/docs/display/badge-demo/demo2.md +32 -0
- package/docs/display/badge-demo/demo3.md +70 -0
- package/docs/display/badge-demo/demo4.md +27 -0
- package/docs/display/badge-demo/demo5.md +31 -0
- package/docs/display/badge-demo/demo6.md +59 -0
- package/docs/display/badge-demo/demo7.md +97 -0
- package/docs/display/badge-demo/demo8.md +19 -0
- package/docs/display/badge.md +1 -1
- package/docs/display/callout-demo/demo1.md +29 -81
- package/docs/display/callout-demo/demo2.md +28 -0
- package/docs/display/callout-demo/demo3.md +29 -0
- package/docs/display/callout-demo/demo4.md +26 -0
- package/docs/display/callout.md +9 -1
- package/docs/display/card/basic-card-demo/demo1.md +22 -316
- package/docs/display/card/basic-card.md +9 -1
- package/docs/display/card/beta-badge-demo/demo1.md +47 -0
- package/docs/display/card/beta-badge.md +9 -0
- package/docs/display/card/checkable-demo/demo1.md +20 -94
- package/docs/display/card/checkable-demo/demo2.md +63 -0
- package/docs/display/card/checkable.md +9 -1
- package/docs/display/card/custom-children-demo/demo1.md +93 -0
- package/docs/display/card/custom-children.md +9 -0
- package/docs/display/card/footer-demo/demo1.md +77 -0
- package/docs/display/card/footer.md +9 -0
- package/docs/display/card/images-demo/demo1.md +57 -0
- package/docs/display/card/images.md +9 -0
- package/docs/display/card/layout-demo/demo1.md +40 -0
- package/docs/display/card/layout.md +9 -0
- package/docs/display/card/selectable-demo/demo1.md +60 -53
- package/docs/display/card/selectable.md +9 -1
- package/docs/display/comment-list.md +1 -1
- package/docs/display/description-list-demo/demo1.md +53 -0
- package/docs/display/description-list-demo/demo2.md +43 -0
- package/docs/display/description-list-demo/demo3.md +58 -0
- package/docs/display/description-list-demo/demo4.md +42 -0
- package/docs/display/description-list-demo/demo5.md +62 -0
- package/docs/display/description-list-demo/demo6.md +46 -0
- package/docs/display/description-list.md +1 -0
- package/docs/display/empty-prompt-demo/demo1.md +25 -0
- package/docs/display/empty-prompt-demo/demo2.md +16 -0
- package/docs/display/empty-prompt-demo/demo3.md +67 -0
- package/docs/display/empty-prompt-demo/demo4.md +21 -0
- package/docs/display/empty-prompt-demo/demo5.md +33 -0
- package/docs/display/empty-prompt-demo/demo6.md +43 -0
- package/docs/display/empty-prompt-demo/demo7.md +162 -0
- package/docs/display/empty-prompt-demo/demo8.md +57 -0
- package/docs/display/empty-prompt.md +1 -0
- package/docs/display/health-demo/demo1.md +11 -8
- package/docs/display/health-demo/demo2.md +31 -0
- package/docs/display/health.md +9 -1
- package/docs/display/icons-demo/demo1.md +270 -57
- package/docs/display/icons-demo/demo2.md +76 -0
- package/docs/display/icons-demo/demo3.md +76 -0
- package/docs/display/icons-demo/demo4.md +104 -0
- package/docs/display/icons-demo/demo5.md +64 -0
- package/docs/display/icons-demo/demo6.md +63 -0
- package/docs/display/icons-demo/demo7.md +101 -0
- package/docs/display/icons-demo/demo8.md +47 -0
- package/docs/display/icons.md +1 -1
- package/docs/display/image-demo/demo1.md +15 -50
- package/docs/display/image-demo/demo2.md +35 -0
- package/docs/display/image-demo/demo3.md +75 -0
- package/docs/display/image-demo/demo4.md +80 -0
- package/docs/display/image.md +9 -1
- package/docs/display/list-group.md +1 -1
- package/docs/display/loading/logo-demo/demo1.md +15 -0
- package/docs/display/loading/logo.md +1 -0
- package/docs/display/progress-demo/demo1.md +10 -5
- package/docs/display/progress-demo/demo2.md +11 -26
- package/docs/display/progress-demo/demo3.md +27 -0
- package/docs/display/progress-demo/demo4.md +77 -0
- package/docs/display/progress.md +1 -1
- package/docs/display/stat-demo/demo1.md +0 -118
- package/docs/display/stat-demo/demo2.md +24 -22
- package/docs/display/stat-demo/demo3.md +39 -0
- package/docs/display/stat-demo/demo4.md +50 -0
- package/docs/display/stat-demo/demo5.md +25 -0
- package/docs/display/stat-demo/demo6.md +40 -0
- package/docs/display/stat-demo/demo7.md +84 -0
- package/docs/display/stat.md +8 -1
- package/docs/display/text-demo/demo1.md +79 -130
- package/docs/display/text-demo/demo2.md +71 -0
- package/docs/display/text-demo/demo3.md +39 -0
- package/docs/display/text.md +12 -1
- package/docs/display/title-demo/demo1.md +50 -26
- package/docs/display/title.md +1 -1
- package/docs/display/tool-tip-demo/demo1.md +26 -71
- package/docs/display/tool-tip-demo/demo2.md +33 -30
- package/docs/display/tool-tip-demo/demo3.md +50 -0
- package/docs/display/tool-tip-demo/demo4.md +74 -0
- package/docs/display/tool-tip.md +11 -1
- package/docs/editors/code/code-block-demo/demo1.md +21 -40
- package/docs/editors/code/code-block-demo/demo2.md +35 -0
- package/docs/editors/code/code-block-demo/demo3.md +43 -0
- package/docs/editors/code/code-block-demo/demo4.md +28 -0
- package/docs/editors/code/code-block-demo/demo5.md +42 -0
- package/docs/editors/code/code-block-demo/demo6.md +42 -0
- package/docs/editors/code/code-block-demo/demo7.md +853 -0
- package/docs/editors/code/code-block-demo/demo8.md +855 -0
- package/docs/editors/code/code-block.md +21 -1
- package/docs/editors/code/inline-demo/demo1.md +6 -3
- package/docs/editors/code/inline.md +1 -1
- package/docs/editors/markdown-editor/base-editor-demo/demo1.md +9 -28
- package/docs/editors/markdown-editor/base-editor.md +1 -1
- package/docs/forms/form-controls/checkbox/demo/demo1.md +49 -0
- package/docs/forms/form-controls/checkbox/index.md +26 -0
- package/docs/forms/form-controls/{checkbox-group-demo → checkbox-group/demo}/demo1.md +4 -13
- package/docs/forms/form-controls/checkbox-group/index.md +27 -0
- package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo1.md +8 -2
- package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo2.md +10 -8
- package/docs/forms/form-controls/combo-box/demo/demo3.md +60 -0
- package/docs/forms/form-controls/{combo-box-demo/demo3.md → combo-box/demo/demo4.md} +17 -14
- package/docs/forms/form-controls/combo-box/demo/demo5.md +151 -0
- package/docs/forms/form-controls/combo-box/index.md +6 -0
- package/docs/forms/form-controls/file-picker/demo/demo1.md +29 -0
- package/docs/forms/form-controls/file-picker/demo/demo2.md +44 -0
- package/docs/forms/form-controls/file-picker/demo/demo3.md +45 -0
- package/docs/forms/form-controls/file-picker/demo/demo4.md +63 -0
- package/docs/forms/form-controls/file-picker/index.md +22 -0
- package/docs/forms/form-controls/{form-control-layout-demo → form-control-layout/demo}/demo1.md +0 -0
- package/docs/forms/form-controls/form-control-layout/index.md +30 -0
- package/docs/forms/form-controls/{form-control-layout-delimited-demo → form-control-layout-delimited/demo}/demo1.md +41 -37
- package/docs/forms/form-controls/form-control-layout-delimited/index.md +24 -0
- package/docs/forms/form-controls/number-field/demo/demo1.md +20 -0
- package/docs/forms/form-controls/{number-field-demo/demo1.md → number-field/demo/demo2.md} +23 -11
- package/docs/forms/form-controls/number-field/index.md +12 -0
- package/docs/forms/form-controls/password-field/demo/demo1.md +19 -0
- package/docs/forms/form-controls/{password-field-demo/demo1.md → password-field/demo/demo2.md} +12 -8
- package/docs/forms/form-controls/password-field/index.md +19 -0
- package/docs/forms/form-controls/radio/demo/demo1.md +43 -0
- package/docs/forms/form-controls/radio/index.md +24 -0
- package/docs/forms/form-controls/radio-group/demo/demo1.md +50 -0
- package/docs/forms/form-controls/radio-group/index.md +18 -0
- package/docs/forms/form-controls/range/demo/demo1.md +96 -0
- package/docs/forms/form-controls/range/demo/demo2.md +62 -0
- package/docs/forms/form-controls/{range-demo → range/demo}/demo3.md +10 -12
- package/docs/forms/form-controls/{range-demo → range/demo}/demo4.md +16 -18
- package/docs/forms/form-controls/{range-demo → range/demo}/demo5.md +18 -20
- package/docs/forms/form-controls/range/demo/demo6.md +57 -0
- package/docs/forms/form-controls/range/demo/demo7.md +350 -0
- package/docs/forms/form-controls/range/index.md +18 -0
- package/docs/forms/form-controls/search-field/demo/demo1.md +29 -0
- package/docs/forms/form-controls/search-field/index.md +14 -0
- package/docs/forms/form-controls/select/demo/demo1.md +29 -0
- package/docs/forms/form-controls/select/demo/demo2.md +44 -0
- package/docs/forms/form-controls/{select-demo/demo1.md → select/demo/demo3.md} +20 -10
- package/docs/forms/form-controls/select/index.md +19 -0
- package/docs/forms/form-controls/{switch-demo → switch/demo}/demo1.md +10 -10
- package/docs/forms/form-controls/switch/index.md +13 -0
- package/docs/forms/form-controls/text-field/demo/demo1.md +35 -0
- package/docs/forms/form-controls/text-field/demo/demo2.md +40 -0
- package/docs/forms/form-controls/{text-field-demo/demo2.md → text-field/demo/demo3.md} +14 -17
- package/docs/forms/form-controls/{text-field-demo/demo1.md → text-field/demo/demo4.md} +18 -32
- package/docs/forms/form-controls/text-field/index.md +14 -0
- package/docs/forms/form-controls/textarea/demo/demo1.md +21 -0
- package/docs/forms/form-controls/textarea/demo/demo2.md +24 -0
- package/docs/forms/form-controls/textarea/index.md +13 -0
- package/docs/forms/form-layouts/described-form-groups-demo/demo1.md +13 -4
- package/docs/forms/form-layouts/described-form-groups.md +1 -1
- package/docs/layout/accordion-demo/demo1.md +21 -102
- package/docs/layout/accordion-demo/demo2.md +76 -0
- package/docs/layout/accordion-demo/demo3.md +25 -0
- package/docs/layout/accordion-demo/demo4.md +26 -0
- package/docs/layout/accordion-demo/demo5.md +65 -0
- package/docs/layout/accordion-demo/demo6.md +78 -0
- package/docs/layout/accordion-demo/demo7.md +66 -0
- package/docs/layout/accordion-demo/demo8.md +64 -0
- package/docs/layout/accordion-demo/demo9.md +114 -0
- package/docs/layout/accordion.md +39 -9
- package/docs/layout/bottom-bar-demo/demo1.md +32 -49
- package/docs/layout/bottom-bar-demo/demo2.md +54 -0
- package/docs/layout/bottom-bar-demo/demo3.md +81 -0
- package/docs/layout/bottom-bar.md +1 -1
- package/docs/layout/flex.md +1 -1
- package/docs/layout/flyout-demo/demo1.md +19 -11
- package/docs/layout/flyout-demo/demo2.md +43 -28
- package/docs/layout/flyout-demo/demo3.md +99 -0
- package/docs/layout/flyout-demo/demo4.md +115 -0
- package/docs/layout/flyout-demo/demo5.md +59 -0
- package/docs/layout/flyout-demo/demo6.md +57 -0
- package/docs/layout/flyout-demo/demo7.md +51 -0
- package/docs/layout/flyout.md +1 -1
- package/docs/layout/header-demo/demo1.md +284 -35
- package/docs/layout/header-demo/demo2.md +42 -0
- package/docs/layout/header-demo/demo3.md +48 -0
- package/docs/layout/header-demo/demo4.md +57 -0
- package/docs/layout/header-demo/demo5.md +232 -0
- package/docs/layout/header-demo/demo6.md +85 -0
- package/docs/layout/header-demo/demo7.md +94 -0
- package/docs/layout/header.md +1 -1
- package/docs/layout/horizontal-rule.md +1 -1
- package/docs/layout/modal-demo/demo1.md +64 -167
- package/docs/layout/modal-demo/demo2.md +126 -0
- package/docs/layout/modal-demo/demo3.md +55 -0
- package/docs/layout/modal-demo/demo4.md +65 -0
- package/docs/layout/modal-demo/demo5.md +96 -0
- package/docs/layout/modal.md +1 -1
- package/docs/layout/page-demo/demo1.md +96 -3
- package/docs/layout/page-demo/demo10.md +42 -0
- package/docs/layout/page-demo/demo2.md +46 -0
- package/docs/layout/page-demo/demo3.md +50 -0
- package/docs/layout/page-demo/demo4.md +38 -0
- package/docs/layout/page-demo/demo5.md +30 -0
- package/docs/layout/page-demo/demo6.md +51 -0
- package/docs/layout/page-demo/demo7.md +59 -0
- package/docs/layout/page-demo/demo8.md +19 -0
- package/docs/layout/page-demo/demo9.md +29 -0
- package/docs/layout/page.md +1 -1
- package/docs/layout/panel-demo/demo1.md +28 -19
- package/docs/layout/panel-demo/demo2.md +22 -0
- package/docs/layout/panel-demo/demo3.md +27 -0
- package/docs/layout/panel-demo/demo4.md +46 -0
- package/docs/layout/panel-demo/demo5.md +81 -0
- package/docs/layout/panel.md +7 -1
- package/docs/layout/popover-demo/demo1.md +42 -300
- package/docs/layout/popover-demo/demo10.md +72 -0
- package/docs/layout/popover-demo/demo2.md +306 -96
- package/docs/layout/popover-demo/demo3.md +20 -12
- package/docs/layout/popover-demo/demo4.md +118 -0
- package/docs/layout/popover-demo/demo5.md +252 -0
- package/docs/layout/popover-demo/demo6.md +44 -0
- package/docs/layout/popover-demo/demo7.md +44 -0
- package/docs/layout/popover-demo/demo8.md +50 -0
- package/docs/layout/popover-demo/demo9.md +80 -0
- package/docs/layout/popover.md +1 -1
- package/docs/navigation/breadcrumbs-demo/demo1.md +77 -0
- package/docs/navigation/breadcrumbs-demo/demo2.md +61 -0
- package/docs/navigation/breadcrumbs-demo/demo3.md +61 -0
- package/docs/navigation/breadcrumbs-demo/demo4.md +61 -0
- package/docs/navigation/breadcrumbs-demo/demo5.md +61 -0
- package/docs/navigation/breadcrumbs-demo/demo6.md +61 -0
- package/docs/navigation/breadcrumbs.md +1 -0
- package/docs/navigation/button-demo/demo1.md +210 -158
- package/docs/navigation/button.md +1 -1
- package/docs/navigation/collapsible-nav-demo/demo1.md +21 -44
- package/docs/navigation/collapsible-nav-demo/demo2.md +108 -0
- package/docs/navigation/collapsible-nav.md +1 -1
- package/docs/navigation/key-pad-menu-demo/demo1.md +77 -0
- package/docs/navigation/key-pad-menu-demo/demo2.md +102 -0
- package/docs/navigation/key-pad-menu-demo/demo3.md +54 -0
- package/docs/navigation/key-pad-menu-demo/demo4.md +71 -0
- package/docs/navigation/key-pad-menu-demo/demo5.md +65 -0
- package/docs/navigation/key-pad-menu.md +1 -0
- package/docs/navigation/link-demo/demo1.md +44 -0
- package/docs/navigation/link-demo/demo2.md +41 -0
- package/docs/navigation/link-demo/demo3.md +45 -0
- package/docs/navigation/link-demo/demo4.md +61 -0
- package/docs/navigation/link.md +1 -0
- package/docs/navigation/side-nav-demo/demo1.md +34 -18
- package/docs/navigation/side-nav.md +1 -1
- package/docs/navigation/steps-demo/demo1.md +16 -18
- package/docs/navigation/steps-demo/demo2.md +18 -21
- package/docs/navigation/steps-demo/demo3.md +12 -10
- package/docs/navigation/steps-demo/demo4.md +84 -0
- package/docs/navigation/steps-demo/demo5.md +29 -0
- package/docs/navigation/steps.md +1 -1
- package/docs/navigation/tabs-demo/demo1.md +38 -111
- package/docs/navigation/tabs-demo/demo2.md +56 -0
- package/docs/navigation/tabs-demo/demo3.md +79 -0
- package/docs/navigation/tabs-demo/demo4.md +102 -0
- package/docs/navigation/tabs.md +1 -1
- package/docs/utilities/auto-sizer-demo/demo1.md +34 -0
- package/docs/utilities/auto-sizer.md +1 -0
- package/docs/utilities/copy-demo/demo1.md +37 -0
- package/docs/utilities/copy-demo/demo2.md +70 -0
- package/docs/utilities/copy.md +1 -0
- package/docs/utilities/mutation-observer.md +1 -1
- package/docs/utilities/outside-click-detector.md +1 -1
- package/docs/utilities/overlay-mask.md +1 -1
- package/docs/utilities/portal.md +1 -1
- package/docs/utilities/resize-observer.md +1 -1
- package/docs/utilities/responsive-demo/demo1.md +108 -0
- package/docs/utilities/responsive.md +1 -0
- package/index.js +8 -3
- package/package.json +13 -7
- package/CHANGELOG.md +0 -1340
- package/addon/components/eui-code-block-impl/code-block-controls/index.hbs +0 -33
- package/addon/components/eui-code-block-impl/index.hbs +0 -111
- package/addon/components/eui-code-block-impl/index.ts +0 -121
- package/addon/components/eui-flyout-body/banner/index.hbs +0 -3
- package/addon/components/eui-flyout-body/content/index.hbs +0 -3
- package/addon/helpers/create-event.ts +0 -30
- package/addon/modifiers/focus-tab.ts +0 -19
- package/addon/modifiers/get-cursor-node.ts +0 -54
- package/addon/modifiers/invalidate-indeterminate.ts +0 -10
- package/addon/modifiers/on-event-simulate-event.ts +0 -32
- package/app/components/eui-card/eui-card-select/index.js +0 -1
- package/app/components/eui-flyout-body/banner/index.js +0 -1
- package/app/components/eui-flyout-body/content/index.js +0 -1
- package/app/helpers/create-event.js +0 -1
- package/app/modifiers/fixed-header.js +0 -1
- package/app/modifiers/focus-tab.js +0 -1
- package/app/modifiers/get-cursor-node.js +0 -1
- package/app/modifiers/invalidate-indeterminate.js +0 -1
- package/app/modifiers/on-event-simulate-event.js +0 -1
- package/docs/forms/form-controls/checkbox-demo/demo1.md +0 -40
- package/docs/forms/form-controls/checkbox-group.md +0 -1
- package/docs/forms/form-controls/checkbox.md +0 -1
- package/docs/forms/form-controls/combo-box.md +0 -1
- package/docs/forms/form-controls/file-picker-demo/demo1.md +0 -28
- package/docs/forms/form-controls/file-picker.md +0 -1
- package/docs/forms/form-controls/form-control-layout-delimited.md +0 -1
- package/docs/forms/form-controls/form-control-layout.md +0 -1
- package/docs/forms/form-controls/number-field.md +0 -1
- package/docs/forms/form-controls/password-field.md +0 -1
- package/docs/forms/form-controls/radio-demo/demo1.md +0 -39
- package/docs/forms/form-controls/radio-group-demo/demo1.md +0 -60
- package/docs/forms/form-controls/radio-group.md +0 -1
- package/docs/forms/form-controls/radio.md +0 -1
- package/docs/forms/form-controls/range-demo/demo1.md +0 -61
- package/docs/forms/form-controls/range-demo/demo2.md +0 -59
- package/docs/forms/form-controls/range-demo/demo6.md +0 -59
- package/docs/forms/form-controls/range.md +0 -1
- package/docs/forms/form-controls/search-field-demo/demo1.md +0 -31
- package/docs/forms/form-controls/search-field.md +0 -1
- package/docs/forms/form-controls/select.md +0 -1
- package/docs/forms/form-controls/switch.md +0 -1
- package/docs/forms/form-controls/text-field.md +0 -1
- package/docs/forms/form-controls/textarea-demo/demo1.md +0 -36
- package/docs/forms/form-controls/textarea.md +0 -1
|
@@ -33,45 +33,33 @@ import {
|
|
|
33
33
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
34
|
Settings
|
|
35
35
|
} from 'unified';
|
|
36
|
-
import remark2Rehype from 'remark-rehype';
|
|
37
36
|
import markdown from 'remark-parse';
|
|
38
37
|
import emoji from 'remark-emoji';
|
|
39
|
-
import all from 'mdast-util-to-hast/lib/all';
|
|
40
|
-
import { Handler } from 'mdast-util-to-hast';
|
|
41
|
-
import * as MarkdownCheckbox from '../plugins/markdown-checkbox';
|
|
42
|
-
import MarkdownAddComponents from '../plugins/markdown-add-components';
|
|
43
38
|
import breaks from 'remark-breaks';
|
|
44
|
-
import highlight from 'remark-
|
|
45
|
-
import * as
|
|
39
|
+
import highlight from '../../remark/remark-prismjs';
|
|
40
|
+
import * as MarkdownCheckbox from '../markdown-checkbox';
|
|
41
|
+
import * as MarkdownTooltip from '../markdown-tooltip';
|
|
46
42
|
|
|
47
43
|
export type DefaultEuiMarkdownParsingPlugins = PluggableList;
|
|
48
44
|
|
|
49
|
-
export const getDefaultEuiMarkdownParsingPlugins =
|
|
50
|
-
|
|
45
|
+
export const getDefaultEuiMarkdownParsingPlugins = ({
|
|
46
|
+
exclude
|
|
47
|
+
}: { exclude?: 'tooltip'[] } = {}): DefaultEuiMarkdownParsingPlugins => {
|
|
48
|
+
const excludeSet = new Set(exclude);
|
|
49
|
+
const parsingPlugins: PluggableList = [
|
|
51
50
|
[markdown, {}],
|
|
52
51
|
[highlight, {}],
|
|
53
52
|
[emoji, { emoticon: false }],
|
|
54
53
|
//@ts-ignore
|
|
55
54
|
[breaks, {}],
|
|
56
|
-
[
|
|
55
|
+
// [markdownLinkValidator, {}],
|
|
57
56
|
[MarkdownCheckbox.parser, {}]
|
|
58
|
-
// [MarkdownCheckbox.parser, {}],
|
|
59
|
-
// [markdownLinkValidator, {}]
|
|
60
57
|
];
|
|
61
58
|
|
|
62
|
-
|
|
63
|
-
|
|
59
|
+
if (!excludeSet.has('tooltip'))
|
|
60
|
+
parsingPlugins.push([MarkdownTooltip.parser, {}]);
|
|
61
|
+
|
|
62
|
+
return parsingPlugins;
|
|
64
63
|
};
|
|
65
64
|
|
|
66
65
|
export const defaultParsingPlugins = getDefaultEuiMarkdownParsingPlugins();
|
|
67
|
-
|
|
68
|
-
export const getDefaultEuiMarkdownProcessingPlugins = (): [
|
|
69
|
-
[typeof remark2Rehype, Record<string, unknown>],
|
|
70
|
-
...PluggableList // any additional are generic
|
|
71
|
-
] => [
|
|
72
|
-
[remark2Rehype, { allowDangerousHtml: true, unknownHandler }],
|
|
73
|
-
[MarkdownAddComponents, {}]
|
|
74
|
-
];
|
|
75
|
-
|
|
76
|
-
export const defaultProcessingPlugins =
|
|
77
|
-
getDefaultEuiMarkdownProcessingPlugins();
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
getDefaultEuiMarkdownUiPlugins,
|
|
11
|
+
DefaultEuiMarkdownUiPlugins
|
|
12
|
+
} from './ui-plugins';
|
|
13
|
+
import {
|
|
14
|
+
getDefaultEuiMarkdownParsingPlugins,
|
|
15
|
+
DefaultEuiMarkdownParsingPlugins
|
|
16
|
+
} from './parsing-plugins';
|
|
17
|
+
import {
|
|
18
|
+
getDefaultEuiMarkdownProcessingPlugins,
|
|
19
|
+
DefaultEuiMarkdownProcessingPlugins
|
|
20
|
+
} from './processing-plugins';
|
|
21
|
+
|
|
22
|
+
export const getDefaultEuiMarkdownPlugins = (
|
|
23
|
+
config: undefined | { exclude?: 'tooltip'[] }
|
|
24
|
+
): {
|
|
25
|
+
parsingPlugins: DefaultEuiMarkdownParsingPlugins;
|
|
26
|
+
processingPlugins: DefaultEuiMarkdownProcessingPlugins;
|
|
27
|
+
uiPlugins: DefaultEuiMarkdownUiPlugins;
|
|
28
|
+
} => ({
|
|
29
|
+
parsingPlugins: getDefaultEuiMarkdownParsingPlugins(config),
|
|
30
|
+
processingPlugins: getDefaultEuiMarkdownProcessingPlugins(config),
|
|
31
|
+
uiPlugins: getDefaultEuiMarkdownUiPlugins(config)
|
|
32
|
+
});
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Licensed to Elasticsearch B.V. under one or more contributor
|
|
3
|
+
* license agreements. See the NOTICE file distributed with
|
|
4
|
+
* this work for additional information regarding copyright
|
|
5
|
+
* ownership. Elasticsearch B.V. licenses this file to you under
|
|
6
|
+
* the Apache License, Version 2.0 (the "License"); you may
|
|
7
|
+
* not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing,
|
|
13
|
+
* software distributed under the License is distributed on an
|
|
14
|
+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
15
|
+
* KIND, either express or implied. See the License for the
|
|
16
|
+
* specific language governing permissions and limitations
|
|
17
|
+
* under the License.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
// Importing seemingly unused types from `unified` because the definitions
|
|
21
|
+
// are exported for two versions of TypeScript (3.4, 4.0) and implicit
|
|
22
|
+
// imports during eui.d.ts generation default to the incorrect version (3.4).
|
|
23
|
+
// Explicit imports here resolve the version mismatch.
|
|
24
|
+
import {
|
|
25
|
+
PluggableList,
|
|
26
|
+
// @ts-ignore See above comment
|
|
27
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
28
|
+
Attacher,
|
|
29
|
+
// @ts-ignore See above comment
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
31
|
+
Pluggable,
|
|
32
|
+
// @ts-ignore See above comment
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
+
Settings
|
|
35
|
+
} from 'unified';
|
|
36
|
+
import remark2Rehype from 'remark-rehype';
|
|
37
|
+
import all from 'mdast-util-to-hast/lib/all';
|
|
38
|
+
import { Options as Remark2RehypeOptions, Handler } from 'mdast-util-to-hast';
|
|
39
|
+
import * as MarkdownAddComponents from '../markdown-add-components';
|
|
40
|
+
|
|
41
|
+
const unknownHandler: Handler = (h, node) => {
|
|
42
|
+
return h(node, node.type, node, all(h, node));
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export interface Rehype2ReactOptions {
|
|
46
|
+
[key: string]: any;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export type DefaultEuiMarkdownProcessingPlugins = [
|
|
50
|
+
[typeof remark2Rehype, Remark2RehypeOptions], // first is well known
|
|
51
|
+
[typeof MarkdownAddComponents.processor, Rehype2ReactOptions], // second is well known
|
|
52
|
+
...PluggableList // any additional are generic
|
|
53
|
+
];
|
|
54
|
+
|
|
55
|
+
export const getDefaultEuiMarkdownProcessingPlugins = ({
|
|
56
|
+
exclude
|
|
57
|
+
}: { exclude?: 'tooltip'[] } = {}) => {
|
|
58
|
+
exclude;
|
|
59
|
+
const plugins: DefaultEuiMarkdownProcessingPlugins = [
|
|
60
|
+
[remark2Rehype, { allowDangerousHtml: true, unknownHandler }],
|
|
61
|
+
[MarkdownAddComponents.processor, {}]
|
|
62
|
+
];
|
|
63
|
+
return plugins;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export const defaultProcessingPlugins =
|
|
67
|
+
getDefaultEuiMarkdownProcessingPlugins();
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import * as MarkdownTooltip from '../markdown-tooltip';
|
|
10
|
+
import { EuiMarkdownEditorUiPlugin } from '../../markdown-types';
|
|
11
|
+
|
|
12
|
+
export type DefaultEuiMarkdownUiPlugins = EuiMarkdownEditorUiPlugin[];
|
|
13
|
+
|
|
14
|
+
export const getDefaultEuiMarkdownUiPlugins = ({
|
|
15
|
+
exclude
|
|
16
|
+
}: { exclude?: 'tooltip'[] } = {}): DefaultEuiMarkdownUiPlugins => {
|
|
17
|
+
const excludeSet = new Set(exclude);
|
|
18
|
+
const uiPlugins = [];
|
|
19
|
+
|
|
20
|
+
if (!excludeSet.has('tooltip')) uiPlugins.push(MarkdownTooltip.plugin);
|
|
21
|
+
|
|
22
|
+
// @ts-ignore __originatedFromEui is a custom property
|
|
23
|
+
uiPlugins.__originatedFromEui = true;
|
|
24
|
+
return uiPlugins;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const defaultUiPlugins = getDefaultEuiMarkdownUiPlugins();
|
|
@@ -1,31 +1,13 @@
|
|
|
1
|
-
import { RemarkTokenizer } from '
|
|
1
|
+
import { RemarkTokenizer } from '../../markdown-types';
|
|
2
2
|
import { Plugin } from 'unified';
|
|
3
|
-
import EuiMarkdownFormatMarkdownTooltip from '
|
|
3
|
+
import EuiMarkdownFormatMarkdownTooltip from '../../../../components/eui-markdown-format/markdown-tooltip';
|
|
4
4
|
|
|
5
5
|
interface TooltipNodeDetails {
|
|
6
6
|
type: 'component';
|
|
7
7
|
tooltipText: string;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
const
|
|
11
|
-
name: 'tooltipPlugin',
|
|
12
|
-
button: {
|
|
13
|
-
label: 'Tooltip',
|
|
14
|
-
iconType: 'editorComment'
|
|
15
|
-
},
|
|
16
|
-
formatting: {
|
|
17
|
-
prefix: '!{tooltip[',
|
|
18
|
-
suffix: ']()}',
|
|
19
|
-
trimFirst: true
|
|
20
|
-
},
|
|
21
|
-
helpText: `
|
|
22
|
-
\`\`\`md
|
|
23
|
-
!{tooltip[anchor text](helpful description)}
|
|
24
|
-
\`\`\`
|
|
25
|
-
`
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
const TooltipParser: Plugin = function TooltipParser() {
|
|
10
|
+
export const TooltipParser: Plugin = function TooltipParser() {
|
|
29
11
|
const Parser = this.Parser;
|
|
30
12
|
const tokenizers = Parser.prototype.inlineTokenizers;
|
|
31
13
|
const methods = Parser.prototype.inlineMethods;
|
|
@@ -110,5 +92,3 @@ const TooltipParser: Plugin = function TooltipParser() {
|
|
|
110
92
|
tokenizers.tooltip = tokenizeTooltip;
|
|
111
93
|
methods.splice(methods.indexOf('text'), 0, 'tooltip');
|
|
112
94
|
};
|
|
113
|
-
|
|
114
|
-
export { tooltipPlugin as plugin, TooltipParser as parser };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const tooltipPlugin = {
|
|
2
|
+
name: 'tooltipPlugin',
|
|
3
|
+
button: {
|
|
4
|
+
label: 'Tooltip',
|
|
5
|
+
iconType: 'editorComment'
|
|
6
|
+
},
|
|
7
|
+
formatting: {
|
|
8
|
+
prefix: '!{tooltip[',
|
|
9
|
+
suffix: ']()}',
|
|
10
|
+
trimFirst: true
|
|
11
|
+
},
|
|
12
|
+
helpText: `
|
|
13
|
+
\`\`\`md
|
|
14
|
+
!{tooltip[anchor text](helpful description)}
|
|
15
|
+
\`\`\`
|
|
16
|
+
`
|
|
17
|
+
};
|
|
@@ -5,7 +5,7 @@ This util was extracted from https://github.com/ampatspell/ember-cli-remark-stat
|
|
|
5
5
|
import { assert } from '@ember/debug';
|
|
6
6
|
import { RehypeNode } from '../markdown-types';
|
|
7
7
|
|
|
8
|
-
const attributes = ['src', 'alt', 'href', 'target'];
|
|
8
|
+
const attributes = ['src', 'alt', 'href', 'target', 'title'];
|
|
9
9
|
|
|
10
10
|
const createDocument = () => {
|
|
11
11
|
return document;
|
|
@@ -82,6 +82,8 @@ export const toDOM = (tree: RehypeNode) => {
|
|
|
82
82
|
...properties
|
|
83
83
|
});
|
|
84
84
|
return element;
|
|
85
|
+
} else if (type === 'raw') {
|
|
86
|
+
return document.createTextNode(node.value);
|
|
85
87
|
}
|
|
86
88
|
assert(`Unsupported node '${type}'`, false);
|
|
87
89
|
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import refractor from 'refractor';
|
|
10
|
+
import visit from 'unist-util-visit';
|
|
11
|
+
import { Plugin } from 'unified';
|
|
12
|
+
import { checkSupportedLanguage } from '../../code/utils';
|
|
13
|
+
|
|
14
|
+
export const FENCED_CLASS = 'remark-prismjs--fenced';
|
|
15
|
+
|
|
16
|
+
const attacher: Plugin = () => {
|
|
17
|
+
return (ast) => visit(ast, 'code', visitor);
|
|
18
|
+
|
|
19
|
+
function visitor(node: any) {
|
|
20
|
+
const { data = {}, lang: language } = node;
|
|
21
|
+
|
|
22
|
+
if (!language) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const actualLanguage = checkSupportedLanguage(language);
|
|
26
|
+
node.data = data;
|
|
27
|
+
data.hChildren = refractor.highlight(node.value, actualLanguage);
|
|
28
|
+
data.hProperties = {
|
|
29
|
+
...data.hProperties,
|
|
30
|
+
language,
|
|
31
|
+
className: [
|
|
32
|
+
'prismjs',
|
|
33
|
+
...(data.hProperties?.className || []),
|
|
34
|
+
`language-${language}`,
|
|
35
|
+
FENCED_CLASS
|
|
36
|
+
]
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export default attacher;
|
|
@@ -21,7 +21,12 @@ import { EuiPopoverPosition } from './types';
|
|
|
21
21
|
|
|
22
22
|
type Dimension = 'height' | 'width';
|
|
23
23
|
|
|
24
|
-
export const POSITIONS: EuiPopoverPosition[] = [
|
|
24
|
+
export const POSITIONS: EuiPopoverPosition[] = [
|
|
25
|
+
'top',
|
|
26
|
+
'right',
|
|
27
|
+
'bottom',
|
|
28
|
+
'left'
|
|
29
|
+
];
|
|
25
30
|
|
|
26
31
|
interface BoundingBox {
|
|
27
32
|
[position: string]: number;
|
|
@@ -143,8 +148,10 @@ export function findPopoverPosition({
|
|
|
143
148
|
// calculate the window's bounds
|
|
144
149
|
// window.(innerWidth|innerHeight) do not account for scrollbars
|
|
145
150
|
// so prefer the clientWidth/clientHeight of the DOM if available
|
|
146
|
-
const documentWidth =
|
|
147
|
-
|
|
151
|
+
const documentWidth =
|
|
152
|
+
document.documentElement.clientWidth || window.innerWidth;
|
|
153
|
+
const documentHeight =
|
|
154
|
+
document.documentElement.clientHeight || window.innerHeight;
|
|
148
155
|
const windowBoundingBox: EuiClientRect = {
|
|
149
156
|
top: 0,
|
|
150
157
|
right: documentWidth,
|
|
@@ -155,7 +162,9 @@ export function findPopoverPosition({
|
|
|
155
162
|
};
|
|
156
163
|
|
|
157
164
|
// if no container element is given fall back to using the window viewport
|
|
158
|
-
const containerBoundingBox = container
|
|
165
|
+
const containerBoundingBox = container
|
|
166
|
+
? getElementBoundingBox(container)
|
|
167
|
+
: windowBoundingBox;
|
|
159
168
|
|
|
160
169
|
/**
|
|
161
170
|
* `position` was specified by the function caller and is a strong hint
|
|
@@ -196,7 +205,10 @@ export function findPopoverPosition({
|
|
|
196
205
|
// position is forced, if it conflicts with the alignment then reset align to `null`
|
|
197
206
|
// e.g. original placement request for `downLeft` is moved to the `left` side, future calls
|
|
198
207
|
// will position and align `left`, and `leftLeft` is not a valid placement
|
|
199
|
-
if (
|
|
208
|
+
if (
|
|
209
|
+
position === align ||
|
|
210
|
+
(align !== undefined && position === positionComplements[align])
|
|
211
|
+
) {
|
|
200
212
|
iterationAlignments[0] = undefined;
|
|
201
213
|
}
|
|
202
214
|
}
|
|
@@ -339,7 +351,8 @@ export function getPopoverScreenCoordinates({
|
|
|
339
351
|
const crossAxisSecondSide = positionComplements[crossAxisFirstSide]; // "left" -> "right"
|
|
340
352
|
const crossAxisDimension = relatedDimension[crossAxisFirstSide]; // "left" -> "width"
|
|
341
353
|
|
|
342
|
-
const [topBuffer, rightBuffer, bottomBuffer, leftBuffer] =
|
|
354
|
+
const [topBuffer, rightBuffer, bottomBuffer, leftBuffer] =
|
|
355
|
+
getBufferValues(buffer);
|
|
343
356
|
|
|
344
357
|
const { crossAxisPosition, crossAxisArrowPosition } = getCrossAxisPosition({
|
|
345
358
|
crossAxisFirstSide,
|
|
@@ -357,15 +370,17 @@ export function getPopoverScreenCoordinates({
|
|
|
357
370
|
});
|
|
358
371
|
|
|
359
372
|
const primaryAxisDimension = relatedDimension[position]; // "top" -> "height"
|
|
360
|
-
const primaryAxisPositionName =
|
|
373
|
+
const primaryAxisPositionName =
|
|
374
|
+
dimensionPositionAttribute[primaryAxisDimension]; // "height" -> "top"
|
|
361
375
|
|
|
362
|
-
const { primaryAxisPosition, primaryAxisArrowPosition } =
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
376
|
+
const { primaryAxisPosition, primaryAxisArrowPosition } =
|
|
377
|
+
getPrimaryAxisPosition({
|
|
378
|
+
position,
|
|
379
|
+
offset,
|
|
380
|
+
popoverBoundingBox,
|
|
381
|
+
anchorBoundingBox,
|
|
382
|
+
arrowConfig
|
|
383
|
+
});
|
|
369
384
|
|
|
370
385
|
const popoverPlacement = {
|
|
371
386
|
[crossAxisFirstSide]: crossAxisPosition,
|
|
@@ -374,7 +389,10 @@ export function getPopoverScreenCoordinates({
|
|
|
374
389
|
|
|
375
390
|
// calculate the fit of the popover in this location
|
|
376
391
|
// fit is in range 0.0 -> 1.0 and is the percentage of the popover which is visible in this location
|
|
377
|
-
const combinedBoundingBox = intersectBoundingBoxes(
|
|
392
|
+
const combinedBoundingBox = intersectBoundingBoxes(
|
|
393
|
+
windowBoundingBox,
|
|
394
|
+
containerBoundingBox
|
|
395
|
+
);
|
|
378
396
|
|
|
379
397
|
// shrink the visible bounding box by `buffer`
|
|
380
398
|
// to compute a fit value
|
|
@@ -397,7 +415,8 @@ export function getPopoverScreenCoordinates({
|
|
|
397
415
|
|
|
398
416
|
const arrow = arrowConfig
|
|
399
417
|
? {
|
|
400
|
-
[crossAxisFirstSide]:
|
|
418
|
+
[crossAxisFirstSide]:
|
|
419
|
+
crossAxisArrowPosition! - popoverPlacement[crossAxisFirstSide],
|
|
401
420
|
[primaryAxisPositionName]: primaryAxisArrowPosition
|
|
402
421
|
}
|
|
403
422
|
: undefined;
|
|
@@ -457,7 +476,10 @@ function getCrossAxisPosition({
|
|
|
457
476
|
|
|
458
477
|
// To fit the content within both the window and container,
|
|
459
478
|
// compute the smaller of the two spaces along each edge
|
|
460
|
-
const combinedBoundingBox = intersectBoundingBoxes(
|
|
479
|
+
const combinedBoundingBox = intersectBoundingBoxes(
|
|
480
|
+
windowBoundingBox,
|
|
481
|
+
containerBoundingBox
|
|
482
|
+
);
|
|
461
483
|
const availableSpace = getAvailableSpace(
|
|
462
484
|
anchorBoundingBox,
|
|
463
485
|
combinedBoundingBox,
|
|
@@ -467,7 +489,8 @@ function getCrossAxisPosition({
|
|
|
467
489
|
);
|
|
468
490
|
const minimumSpace = arrowConfig ? arrowConfig.arrowBuffer : 0;
|
|
469
491
|
|
|
470
|
-
const contentOverflowSize =
|
|
492
|
+
const contentOverflowSize =
|
|
493
|
+
(popoverSizeOnCrossAxis - anchorSizeOnCrossAxis) / 2;
|
|
471
494
|
|
|
472
495
|
let alignAmount = 0;
|
|
473
496
|
let alignDirection = 1;
|
|
@@ -480,7 +503,8 @@ function getCrossAxisPosition({
|
|
|
480
503
|
alignAmount = contentOverflowSize;
|
|
481
504
|
|
|
482
505
|
const alignedOverflowAmount = contentOverflowSize + alignAmount;
|
|
483
|
-
const needsShift =
|
|
506
|
+
const needsShift =
|
|
507
|
+
alignedOverflowAmount > availableSpace[positionComplements[align]];
|
|
484
508
|
amountOfShiftNeeded = needsShift
|
|
485
509
|
? alignedOverflowAmount - availableSpace[positionComplements[align]]
|
|
486
510
|
: 0;
|
|
@@ -490,19 +514,26 @@ function getCrossAxisPosition({
|
|
|
490
514
|
const spaceAvailableOnFirstSide = availableSpace[crossAxisFirstSide];
|
|
491
515
|
const spaceAvailableOnSecondSide = availableSpace[crossAxisSecondSide];
|
|
492
516
|
|
|
493
|
-
const isShiftTowardFirstSide =
|
|
517
|
+
const isShiftTowardFirstSide =
|
|
518
|
+
spaceAvailableOnFirstSide > spaceAvailableOnSecondSide;
|
|
494
519
|
shiftDirection = isShiftTowardFirstSide ? -1 : 1;
|
|
495
520
|
|
|
496
521
|
// determine which direction has more room and the popover should shift to
|
|
497
|
-
const leastAvailableSpace = Math.min(
|
|
522
|
+
const leastAvailableSpace = Math.min(
|
|
523
|
+
spaceAvailableOnFirstSide,
|
|
524
|
+
spaceAvailableOnSecondSide
|
|
525
|
+
);
|
|
498
526
|
|
|
499
527
|
const needsShift = contentOverflowSize > leastAvailableSpace;
|
|
500
|
-
amountOfShiftNeeded = needsShift
|
|
528
|
+
amountOfShiftNeeded = needsShift
|
|
529
|
+
? contentOverflowSize - leastAvailableSpace
|
|
530
|
+
: 0;
|
|
501
531
|
}
|
|
502
532
|
|
|
503
533
|
// shift over the popover if necessary
|
|
504
534
|
const shiftAmount = amountOfShiftNeeded * shiftDirection;
|
|
505
|
-
let crossAxisPosition =
|
|
535
|
+
let crossAxisPosition =
|
|
536
|
+
crossAxisPositionOriginal + shiftAmount + alignAmount * alignDirection;
|
|
506
537
|
|
|
507
538
|
// if an `arrowConfig` is specified, find where to position the arrow
|
|
508
539
|
let crossAxisArrowPosition;
|
|
@@ -516,7 +547,8 @@ function getCrossAxisPosition({
|
|
|
516
547
|
// but instead of moving the arrow, shift the popover content
|
|
517
548
|
if (crossAxisArrowPosition < crossAxisPosition + minimumSpace) {
|
|
518
549
|
// arrow is too close to the minimum side
|
|
519
|
-
const difference =
|
|
550
|
+
const difference =
|
|
551
|
+
crossAxisPosition + minimumSpace - crossAxisArrowPosition;
|
|
520
552
|
crossAxisPosition -= difference;
|
|
521
553
|
} else if (
|
|
522
554
|
crossAxisArrowPosition + minimumSpace + arrowWidth >
|
|
@@ -524,7 +556,8 @@ function getCrossAxisPosition({
|
|
|
524
556
|
) {
|
|
525
557
|
// arrow is too close to the maximum side
|
|
526
558
|
const edge = crossAxisPosition + popoverSizeOnCrossAxis;
|
|
527
|
-
const difference =
|
|
559
|
+
const difference =
|
|
560
|
+
crossAxisArrowPosition - (edge - minimumSpace - arrowWidth);
|
|
528
561
|
crossAxisPosition += difference;
|
|
529
562
|
}
|
|
530
563
|
}
|
|
@@ -561,19 +594,25 @@ function getPrimaryAxisPosition({
|
|
|
561
594
|
const popoverSizeOnPrimaryAxis = popoverBoundingBox[primaryAxisDimension];
|
|
562
595
|
|
|
563
596
|
// start at the top or left edge of the anchor element
|
|
564
|
-
const primaryAxisPositionName =
|
|
597
|
+
const primaryAxisPositionName =
|
|
598
|
+
dimensionPositionAttribute[primaryAxisDimension]; // "height" -> "top"
|
|
565
599
|
const anchorEdgeOrigin = anchorBoundingBox[primaryAxisPositionName];
|
|
566
600
|
|
|
567
601
|
// find the popover position on the primary axis
|
|
568
602
|
const anchorSizeOnPrimaryAxis = anchorBoundingBox[primaryAxisDimension];
|
|
569
|
-
const primaryAxisOffset = isOffsetDecreasing
|
|
570
|
-
|
|
603
|
+
const primaryAxisOffset = isOffsetDecreasing
|
|
604
|
+
? popoverSizeOnPrimaryAxis
|
|
605
|
+
: anchorSizeOnPrimaryAxis;
|
|
606
|
+
const contentOffset =
|
|
607
|
+
(offset + primaryAxisOffset) * (isOffsetDecreasing ? -1 : 1);
|
|
571
608
|
const primaryAxisPosition = anchorEdgeOrigin + contentOffset;
|
|
572
609
|
|
|
573
610
|
let primaryAxisArrowPosition;
|
|
574
611
|
|
|
575
612
|
if (arrowConfig) {
|
|
576
|
-
primaryAxisArrowPosition = isOffsetDecreasing
|
|
613
|
+
primaryAxisArrowPosition = isOffsetDecreasing
|
|
614
|
+
? popoverSizeOnPrimaryAxis
|
|
615
|
+
: 0;
|
|
577
616
|
}
|
|
578
617
|
|
|
579
618
|
return {
|
|
@@ -619,7 +658,8 @@ export function getAvailableSpace(
|
|
|
619
658
|
offset: number,
|
|
620
659
|
offsetSide: EuiPopoverPosition
|
|
621
660
|
): BoundingBox {
|
|
622
|
-
const [topBuffer, rightBuffer, bottomBuffer, leftBuffer] =
|
|
661
|
+
const [topBuffer, rightBuffer, bottomBuffer, leftBuffer] =
|
|
662
|
+
getBufferValues(buffer);
|
|
623
663
|
return {
|
|
624
664
|
top:
|
|
625
665
|
anchorBoundingBox.top -
|
|
@@ -654,15 +694,22 @@ export function getVisibleFit(
|
|
|
654
694
|
contentBoundingBox: BoundingBox,
|
|
655
695
|
containerBoundingBox: BoundingBox
|
|
656
696
|
): number {
|
|
657
|
-
const intersection = intersectBoundingBoxes(
|
|
697
|
+
const intersection = intersectBoundingBoxes(
|
|
698
|
+
contentBoundingBox,
|
|
699
|
+
containerBoundingBox
|
|
700
|
+
);
|
|
658
701
|
|
|
659
|
-
if (
|
|
702
|
+
if (
|
|
703
|
+
intersection.left > intersection.right ||
|
|
704
|
+
intersection.top > intersection.top
|
|
705
|
+
) {
|
|
660
706
|
// there is no intersection, the boxes are completely separated on at least one axis
|
|
661
707
|
return 0;
|
|
662
708
|
}
|
|
663
709
|
|
|
664
710
|
const intersectionArea =
|
|
665
|
-
(intersection.right - intersection.left) *
|
|
711
|
+
(intersection.right - intersection.left) *
|
|
712
|
+
(intersection.bottom - intersection.top);
|
|
666
713
|
const contentArea =
|
|
667
714
|
(contentBoundingBox.right - contentBoundingBox.left) *
|
|
668
715
|
(contentBoundingBox.bottom - contentBoundingBox.top);
|
|
@@ -705,7 +752,10 @@ export function intersectBoundingBoxes(
|
|
|
705
752
|
* @param cousin {HTMLElement}
|
|
706
753
|
* @returns {number}
|
|
707
754
|
*/
|
|
708
|
-
export function getElementZIndex(
|
|
755
|
+
export function getElementZIndex(
|
|
756
|
+
element: HTMLElement,
|
|
757
|
+
cousin: HTMLElement
|
|
758
|
+
): number {
|
|
709
759
|
/**
|
|
710
760
|
* finding the z-index of `element` is not the full story
|
|
711
761
|
* its the CSS stacking context that is important
|
|
@@ -752,7 +802,9 @@ export function getElementZIndex(element: HTMLElement, cousin: HTMLElement): num
|
|
|
752
802
|
|
|
753
803
|
for (const node of nodesToInspect) {
|
|
754
804
|
// get this node's z-index css value
|
|
755
|
-
const zIndex = window.document
|
|
805
|
+
const zIndex = window.document
|
|
806
|
+
.defaultView!.getComputedStyle(node)
|
|
807
|
+
.getPropertyValue('z-index');
|
|
756
808
|
|
|
757
809
|
// if the z-index is not a number (e.g. "auto") return null, else the value
|
|
758
810
|
const parsedZIndex = parseInt(zIndex, 10);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const EUI_THUMB_SIZE = 16;
|
|
@@ -31,7 +31,9 @@ export const getTransitionTimings = (
|
|
|
31
31
|
): { durationMatch: number; delayMatch: number } => {
|
|
32
32
|
const computedStyle = window.getComputedStyle(element);
|
|
33
33
|
|
|
34
|
-
const computedDuration = computedStyle.getPropertyValue(
|
|
34
|
+
const computedDuration = computedStyle.getPropertyValue(
|
|
35
|
+
'transition-duration'
|
|
36
|
+
);
|
|
35
37
|
const durationMatchArray = computedDuration.match(GROUP_NUMERIC);
|
|
36
38
|
const durationMatch = durationMatchArray
|
|
37
39
|
? getMilliseconds(durationMatchArray[1], durationMatchArray[2])
|
|
@@ -39,7 +41,9 @@ export const getTransitionTimings = (
|
|
|
39
41
|
|
|
40
42
|
const computedDelay = computedStyle.getPropertyValue('transition-delay');
|
|
41
43
|
const delayMatchArray = computedDelay.match(GROUP_NUMERIC);
|
|
42
|
-
const delayMatch = delayMatchArray
|
|
44
|
+
const delayMatch = delayMatchArray
|
|
45
|
+
? getMilliseconds(delayMatchArray[1], delayMatchArray[2])
|
|
46
|
+
: 0;
|
|
43
47
|
|
|
44
48
|
return { durationMatch, delayMatch };
|
|
45
49
|
};
|
|
@@ -62,7 +66,10 @@ export const getWaitDuration = (records: MutationRecord[]): number => {
|
|
|
62
66
|
};
|
|
63
67
|
|
|
64
68
|
// Uses `requestAnimationFrame` to perform a given callback after a specified waiting period
|
|
65
|
-
export const performOnFrame = (
|
|
69
|
+
export const performOnFrame = (
|
|
70
|
+
waitDuration: number,
|
|
71
|
+
toPerform: () => void
|
|
72
|
+
): void => {
|
|
66
73
|
if (waitDuration > 0) {
|
|
67
74
|
const startTime = Date.now();
|
|
68
75
|
const endTime = startTime + waitDuration;
|
package/addon/version.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-auto-sizer';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-avatar';
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-avatar';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-badge-group/badge-group-item';
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-badge-group/badge-group-item';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-badge-group';
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-badge-group';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-breadcrumbs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-button-icon';
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-button-icon';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-card-select';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-code-block
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-code-block/controls';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '@ember-eui/core/components/eui-code-block
|
|
1
|
+
export { default } from '@ember-eui/core/components/eui-code-block/full-screen-display';
|