@ember-eui/core 4.2.6 → 5.0.0-alpha.1
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 +77 -0
- package/addon/components/eui-field-number/index.hbs +3 -3
- 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-label/index.hbs +1 -1
- package/addon/components/eui-form-row/index.hbs +13 -9
- 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-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-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-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-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 +10 -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 +28 -3
- package/addon/{modifiers/focus-tab.ts → components/eui-tab/index.ts} +6 -1
- package/addon/components/eui-tabs/index.hbs +6 -1
- package/addon/components/eui-tool-tip/index.hbs +6 -7
- package/addon/components/eui-tool-tip/index.ts +27 -11
- package/addon/helpers/class-names.ts +2 -0
- package/addon/helpers/get-range-tick.ts +53 -8
- package/addon/helpers/unique-id.ts +4 -1
- package/addon/styles/ember-eui.css +2 -10
- package/addon/utils/breakpoint.ts +114 -0
- package/addon/utils/code/utils.ts +304 -0
- 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 +20 -0
- package/addon/utils/css-mappings/eui-icon.ts +94 -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-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/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/app/components/eui-auto-sizer/index.js +1 -0
- package/app/components/eui-breadcrumbs/index.js +1 -0
- 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-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-empty-prompt/index.js +1 -0
- 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-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-page-header-content/index.js +1 -0
- package/app/components/eui-page-template/index.js +1 -0
- package/app/components/eui-show-for/index.js +1 -0
- package/app/components/eui-split-panel/inner/index.js +1 -0
- package/app/components/eui-split-panel/outer/index.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 +9 -1
- package/docs/display/badge-demo/demo1.md +111 -168
- package/docs/display/badge-demo/demo2.md +34 -0
- package/docs/display/badge-demo/demo3.md +73 -0
- package/docs/display/badge-demo/demo4.md +29 -0
- package/docs/display/badge-demo/demo5.md +33 -0
- package/docs/display/badge-demo/demo6.md +71 -0
- package/docs/display/badge-demo/demo7.md +101 -0
- package/docs/display/badge-demo/demo8.md +22 -0
- package/docs/display/badge.md +9 -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 +15 -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 +9 -1
- package/docs/display/description-list-demo/demo1.md +54 -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 +9 -0
- package/docs/display/empty-prompt-demo/demo1.md +49 -0
- package/docs/display/empty-prompt.md +11 -0
- package/docs/display/health-demo/demo1.md +11 -7
- package/docs/display/health-demo/demo2.md +31 -0
- package/docs/display/health.md +15 -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 +9 -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 +13 -1
- package/docs/display/list-group.md +9 -1
- 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 +9 -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 +15 -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 +20 -1
- package/docs/display/title-demo/demo1.md +50 -26
- package/docs/display/title.md +9 -1
- package/docs/display/tool-tip-demo/demo1.md +57 -100
- package/docs/display/tool-tip-demo/demo2.md +35 -29
- package/docs/display/tool-tip-demo/demo3.md +52 -0
- package/docs/display/tool-tip-demo/demo4.md +77 -0
- package/docs/display/tool-tip.md +15 -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 +27 -1
- package/docs/editors/code/inline-demo/demo1.md +6 -3
- package/docs/editors/code/inline.md +9 -1
- package/docs/editors/markdown-editor/base-editor-demo/demo1.md +9 -28
- package/docs/editors/markdown-editor/base-editor.md +9 -1
- package/docs/forms/form-controls/checkbox/demo/demo1.md +49 -0
- package/docs/forms/form-controls/checkbox/index.md +34 -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 +35 -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 +14 -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 +30 -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 +38 -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 +32 -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 +20 -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 +27 -0
- package/docs/forms/form-controls/radio/demo/demo1.md +43 -0
- package/docs/forms/form-controls/radio/index.md +32 -0
- package/docs/forms/form-controls/radio-group/demo/demo1.md +50 -0
- package/docs/forms/form-controls/radio-group/index.md +26 -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 +26 -0
- package/docs/forms/form-controls/search-field/demo/demo1.md +29 -0
- package/docs/forms/form-controls/search-field/index.md +22 -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 +27 -0
- package/docs/forms/form-controls/{switch-demo → switch/demo}/demo1.md +10 -10
- package/docs/forms/form-controls/switch/index.md +21 -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 +22 -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 +22 -0
- package/docs/forms/form-layouts/described-form-groups-demo/demo1.md +13 -4
- package/docs/forms/form-layouts/described-form-groups.md +9 -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 +40 -1
- 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 +9 -1
- package/docs/layout/flex.md +9 -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 +9 -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 +9 -1
- package/docs/layout/horizontal-rule.md +9 -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 +9 -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 +9 -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 +15 -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 +9 -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 +9 -0
- package/docs/navigation/button-demo/demo1.md +210 -158
- package/docs/navigation/button.md +9 -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 +9 -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 +9 -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 +9 -0
- package/docs/navigation/side-nav-demo/demo1.md +34 -18
- package/docs/navigation/side-nav.md +9 -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 +9 -1
- package/docs/navigation/tabs.md +9 -1
- package/docs/utilities/auto-sizer-demo/demo1.md +34 -0
- package/docs/utilities/auto-sizer.md +9 -0
- package/docs/utilities/copy-demo/demo1.md +37 -0
- package/docs/utilities/copy-demo/demo2.md +70 -0
- package/docs/utilities/copy.md +9 -0
- package/docs/utilities/mutation-observer.md +9 -1
- package/docs/utilities/outside-click-detector.md +9 -1
- package/docs/utilities/overlay-mask.md +9 -1
- package/docs/utilities/portal.md +9 -1
- package/docs/utilities/resize-observer.md +9 -1
- package/docs/utilities/responsive-demo/demo1.md +108 -0
- package/docs/utilities/responsive.md +9 -0
- package/index.js +4 -2
- package/package.json +13 -7
- package/CHANGELOG.md +0 -1335
- 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/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
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 2
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Overflow test
|
|
6
|
+
|
|
7
|
+
```hbs template
|
|
8
|
+
<EuiButton
|
|
9
|
+
@color='primary'
|
|
10
|
+
{{on 'click' (fn this.activateModal 'overflowModalActive')}}
|
|
11
|
+
>
|
|
12
|
+
Show Modal
|
|
13
|
+
</EuiButton>
|
|
14
|
+
{{#if this.overflowModalActive}}
|
|
15
|
+
|
|
16
|
+
<EuiModal
|
|
17
|
+
@initialFocus='#donebutton'
|
|
18
|
+
@onClose={{fn this.deactivateModal 'overflowModalActive'}}
|
|
19
|
+
>
|
|
20
|
+
<EuiModalHeader>
|
|
21
|
+
<EuiTitle @size='l'>
|
|
22
|
+
Overflow Test
|
|
23
|
+
</EuiTitle>
|
|
24
|
+
</EuiModalHeader>
|
|
25
|
+
<EuiModalBody>
|
|
26
|
+
<EuiText>
|
|
27
|
+
<p>
|
|
28
|
+
<strong>
|
|
29
|
+
Palpatine
|
|
30
|
+
</strong>
|
|
31
|
+
: Did you ever hear the tragedy of Darth Plagueis The Wise?
|
|
32
|
+
</p>
|
|
33
|
+
<p>
|
|
34
|
+
<strong>
|
|
35
|
+
Anakin
|
|
36
|
+
</strong>
|
|
37
|
+
: No.
|
|
38
|
+
</p>
|
|
39
|
+
<p>
|
|
40
|
+
<strong>
|
|
41
|
+
Palpatine
|
|
42
|
+
</strong>
|
|
43
|
+
: I thought not. It's not a story the Jedi would tell you. It's a Sith
|
|
44
|
+
legend. Darth Plagueis was a Dark Lord of the Sith, so powerful and so
|
|
45
|
+
wise he could use the Force to influence the midichlorians to create
|
|
46
|
+
life… He had such a knowledge of the dark side, he could even keep the
|
|
47
|
+
ones he cared about from dying.
|
|
48
|
+
</p>
|
|
49
|
+
<p>
|
|
50
|
+
<strong>
|
|
51
|
+
Anakin
|
|
52
|
+
</strong>
|
|
53
|
+
: He could actually save people from death?
|
|
54
|
+
</p>
|
|
55
|
+
<p>
|
|
56
|
+
Palpatine: The dark side of the Force is a pathway to many abilities
|
|
57
|
+
some consider to be unnatural.
|
|
58
|
+
</p>
|
|
59
|
+
<p>
|
|
60
|
+
<strong>
|
|
61
|
+
Anakin
|
|
62
|
+
</strong>
|
|
63
|
+
: What happened to him?
|
|
64
|
+
</p>
|
|
65
|
+
<p>
|
|
66
|
+
<strong>
|
|
67
|
+
Palpatine
|
|
68
|
+
</strong>
|
|
69
|
+
: He became so powerful… the only thing he was afraid of was losing
|
|
70
|
+
his power, which eventually, of course, he did. Unfortunately, he
|
|
71
|
+
taught his apprentice everything he knew, then his apprentice killed
|
|
72
|
+
him in his sleep. Ironic. He could save others from death, but not
|
|
73
|
+
himself.
|
|
74
|
+
</p>
|
|
75
|
+
<p>
|
|
76
|
+
<strong>
|
|
77
|
+
Anakin
|
|
78
|
+
</strong>
|
|
79
|
+
: Is it possible to learn this power?
|
|
80
|
+
</p>
|
|
81
|
+
<p>
|
|
82
|
+
<strong>
|
|
83
|
+
Palpatine
|
|
84
|
+
</strong>
|
|
85
|
+
: Not from a Jedi.
|
|
86
|
+
</p>
|
|
87
|
+
</EuiText>
|
|
88
|
+
</EuiModalBody>
|
|
89
|
+
<EuiModalFooter>
|
|
90
|
+
<EuiButton
|
|
91
|
+
@color='primary'
|
|
92
|
+
{{on 'click' (fn this.deactivateModal 'overflowModalActive')}}
|
|
93
|
+
id='donebutton'
|
|
94
|
+
>
|
|
95
|
+
Done
|
|
96
|
+
</EuiButton>
|
|
97
|
+
</EuiModalFooter>
|
|
98
|
+
</EuiModal>
|
|
99
|
+
{{/if}}
|
|
100
|
+
<EuiSpacer />
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
```js component
|
|
104
|
+
import Component from '@glimmer/component';
|
|
105
|
+
import { tracked } from '@glimmer/tracking';
|
|
106
|
+
import { action } from '@ember/object';
|
|
107
|
+
|
|
108
|
+
export default class DemoModalComponent extends Component {
|
|
109
|
+
@tracked overflowModalActive = false;
|
|
110
|
+
|
|
111
|
+
@action
|
|
112
|
+
activateModal(modal) {
|
|
113
|
+
this[modal] = true;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
@action
|
|
117
|
+
deactivateModal(modal) {
|
|
118
|
+
this[modal] = false;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@action
|
|
122
|
+
reloadPage() {
|
|
123
|
+
location.reload();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
```
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 3
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Confirm Modal
|
|
6
|
+
|
|
7
|
+
```hbs template
|
|
8
|
+
<EuiButton
|
|
9
|
+
@color='primary'
|
|
10
|
+
{{on 'click' (fn this.activateModal 'confirmModalActive')}}
|
|
11
|
+
>
|
|
12
|
+
Show Confirm Modal
|
|
13
|
+
</EuiButton>
|
|
14
|
+
{{#if this.confirmModalActive}}
|
|
15
|
+
<EuiConfirmModal
|
|
16
|
+
@title='Refresh the page?'
|
|
17
|
+
@onConfirm={{this.reloadPage}}
|
|
18
|
+
@buttonColor='primary'
|
|
19
|
+
@confirmButtonText='Refresh'
|
|
20
|
+
@cancelButtonText='Cancel'
|
|
21
|
+
@onCancel={{fn this.deactivateModal 'confirmModalActive'}}
|
|
22
|
+
>
|
|
23
|
+
<EuiText>
|
|
24
|
+
This action will trash all unsaved changes
|
|
25
|
+
</EuiText>
|
|
26
|
+
</EuiConfirmModal>
|
|
27
|
+
|
|
28
|
+
{{/if}}
|
|
29
|
+
<EuiSpacer />
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
```js component
|
|
33
|
+
import Component from '@glimmer/component';
|
|
34
|
+
import { tracked } from '@glimmer/tracking';
|
|
35
|
+
import { action } from '@ember/object';
|
|
36
|
+
|
|
37
|
+
export default class DemoModalComponent extends Component {
|
|
38
|
+
@tracked confirmModalActive = false;
|
|
39
|
+
|
|
40
|
+
@action
|
|
41
|
+
activateModal(modal) {
|
|
42
|
+
this[modal] = true;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@action
|
|
46
|
+
deactivateModal(modal) {
|
|
47
|
+
this[modal] = false;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@action
|
|
51
|
+
reloadPage() {
|
|
52
|
+
location.reload();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
```
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 4
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Loading modal
|
|
6
|
+
|
|
7
|
+
<EuiText>
|
|
8
|
+
<strong>EuiConfirmModal</strong> supports being able to apply loading and disabled states to the confirm button with the <EuiCode>confirmButtonDisabled</EuiCode> and <EuiCode>isLoading</EuiCode> props respectively. This is helpful to indicate the fetching of data and/or to wait for a user's input before enabling the confirm action.
|
|
9
|
+
</EuiText>
|
|
10
|
+
|
|
11
|
+
```hbs template
|
|
12
|
+
<EuiButton
|
|
13
|
+
@color='primary'
|
|
14
|
+
{{on 'click' (fn this.activateModal 'loadingModalActive')}}
|
|
15
|
+
>
|
|
16
|
+
Activate Loading Modal
|
|
17
|
+
</EuiButton>
|
|
18
|
+
{{#if this.loadingModalActive}}
|
|
19
|
+
|
|
20
|
+
<EuiConfirmModal
|
|
21
|
+
@title='Refresh the page?'
|
|
22
|
+
@onConfirm={{this.reloadPage}}
|
|
23
|
+
@buttonColor='primary'
|
|
24
|
+
@confirmButtonText='Refresh'
|
|
25
|
+
@cancelButtonText='Cancel'
|
|
26
|
+
@isLoading={{this.isLoading}}
|
|
27
|
+
@onCancel={{fn this.deactivateModal 'loadingModalActive'}}
|
|
28
|
+
>
|
|
29
|
+
<EuiText>
|
|
30
|
+
Eui Modal with isLoading true and a timeout for removing is loading
|
|
31
|
+
spinner
|
|
32
|
+
</EuiText>
|
|
33
|
+
</EuiConfirmModal>
|
|
34
|
+
{{/if}}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
```js component
|
|
38
|
+
import Component from '@glimmer/component';
|
|
39
|
+
import { tracked } from '@glimmer/tracking';
|
|
40
|
+
import { action } from '@ember/object';
|
|
41
|
+
|
|
42
|
+
export default class DemoModalComponent extends Component {
|
|
43
|
+
@tracked loadingModalActive = false;
|
|
44
|
+
@tracked isLoading = true;
|
|
45
|
+
|
|
46
|
+
@action
|
|
47
|
+
activateModal(modal) {
|
|
48
|
+
this[modal] = true;
|
|
49
|
+
setTimeout(() => {
|
|
50
|
+
this.isLoading = false;
|
|
51
|
+
}, 3500);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
@action
|
|
55
|
+
deactivateModal(modal) {
|
|
56
|
+
this[modal] = false;
|
|
57
|
+
this.isLoading = true;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@action
|
|
61
|
+
reloadPage() {
|
|
62
|
+
location.reload();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
```
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 5
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Widths
|
|
6
|
+
|
|
7
|
+
<EuiText>
|
|
8
|
+
Modals start with a minimum width of 400px, just enough to display form rows.
|
|
9
|
+
They will grow to fit the contents until it reaches the specified maxWidth,
|
|
10
|
+
the default of which is set to the medium breakpoint. If the modal is not
|
|
11
|
+
growing wide enough to fit your contents, you can pass a specific style.width,
|
|
12
|
+
just remember that modals will always shrink to fit the window width.
|
|
13
|
+
</EuiText>
|
|
14
|
+
|
|
15
|
+
```hbs template
|
|
16
|
+
<EuiButton
|
|
17
|
+
@color='primary'
|
|
18
|
+
{{on 'click' (fn this.activateModal 'widthModalActive')}}
|
|
19
|
+
>
|
|
20
|
+
Show Width Modal
|
|
21
|
+
</EuiButton>
|
|
22
|
+
{{#if this.widthModalActive}}
|
|
23
|
+
|
|
24
|
+
<EuiModal
|
|
25
|
+
@onClose={{fn this.deactivateModal 'widthModalActive'}}
|
|
26
|
+
@initialFocus='#focusee'
|
|
27
|
+
style='width: 800px'
|
|
28
|
+
>
|
|
29
|
+
<EuiModalHeader>
|
|
30
|
+
<EuiTitle @size='m'>
|
|
31
|
+
Basic Modal width 800 px width
|
|
32
|
+
</EuiTitle>
|
|
33
|
+
</EuiModalHeader>
|
|
34
|
+
<EuiModalBody>
|
|
35
|
+
<EuiText>
|
|
36
|
+
<p>
|
|
37
|
+
Hello there!
|
|
38
|
+
</p>
|
|
39
|
+
<p>
|
|
40
|
+
This modal has many
|
|
41
|
+
<a id='focusee' href='#'>
|
|
42
|
+
different
|
|
43
|
+
</a>
|
|
44
|
+
<a href='#'>
|
|
45
|
+
focusable
|
|
46
|
+
</a>
|
|
47
|
+
<a href='#'>
|
|
48
|
+
items
|
|
49
|
+
</a>
|
|
50
|
+
.
|
|
51
|
+
</p>
|
|
52
|
+
</EuiText>
|
|
53
|
+
</EuiModalBody>
|
|
54
|
+
<EuiModalFooter>
|
|
55
|
+
<EuiButtonEmpty
|
|
56
|
+
{{on 'click' (fn this.deactivateModal 'widthModalActive')}}
|
|
57
|
+
>
|
|
58
|
+
Cancel
|
|
59
|
+
</EuiButtonEmpty>
|
|
60
|
+
<EuiButton
|
|
61
|
+
{{on 'click' (fn this.deactivateModal 'widthModalActive')}}
|
|
62
|
+
@color='primary'
|
|
63
|
+
@fill={{true}}
|
|
64
|
+
>
|
|
65
|
+
Submit
|
|
66
|
+
</EuiButton>
|
|
67
|
+
</EuiModalFooter>
|
|
68
|
+
</EuiModal>
|
|
69
|
+
{{/if}}
|
|
70
|
+
<EuiSpacer />
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
```js component
|
|
74
|
+
import Component from '@glimmer/component';
|
|
75
|
+
import { tracked } from '@glimmer/tracking';
|
|
76
|
+
import { action } from '@ember/object';
|
|
77
|
+
|
|
78
|
+
export default class DemoModalComponent extends Component {
|
|
79
|
+
@tracked widthModalActive = false;
|
|
80
|
+
|
|
81
|
+
@action
|
|
82
|
+
activateModal(modal) {
|
|
83
|
+
this[modal] = true;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
@action
|
|
87
|
+
deactivateModal(modal) {
|
|
88
|
+
this[modal] = false;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@action
|
|
92
|
+
reloadPage() {
|
|
93
|
+
location.reload();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
```
|
package/docs/layout/modal.md
CHANGED
|
@@ -1,5 +1,98 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
order: 1
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Basic Page
|
|
6
|
+
|
|
7
|
+
<EuiText>
|
|
8
|
+
Page layouts are modular and fit together in a precise manner, though certain
|
|
9
|
+
parts can also be added or removed as needed. EUI provides both the indivdual
|
|
10
|
+
page components and an over-arching template for easily creating some
|
|
11
|
+
pre-defined layouts.
|
|
12
|
+
</EuiText>
|
|
13
|
+
<EuiSpacer />
|
|
14
|
+
<EuiCallOut
|
|
15
|
+
@title='The following examples showcase the both the template and custom built
|
|
16
|
+
usages of the page components.'
|
|
17
|
+
@iconType='document'
|
|
18
|
+
>
|
|
19
|
+
<:body>
|
|
20
|
+
You'll find the code for each in their own tab and if you go to full screen,
|
|
21
|
+
you can see how they would behave in a typical application layout.
|
|
22
|
+
</:body>
|
|
23
|
+
</EuiCallOut>
|
|
24
|
+
<EuiSpacer />
|
|
25
|
+
<EuiHorizontalRule />
|
|
26
|
+
<EuiTitle>
|
|
27
|
+
A full page with everything
|
|
28
|
+
</EuiTitle>
|
|
29
|
+
<EuiSpacer />
|
|
30
|
+
<EuiText>
|
|
31
|
+
EUI provides a family of components using the
|
|
32
|
+
<EuiCode>EuiPage</EuiCode>
|
|
33
|
+
prefix that work together to build consistent page layouts that work
|
|
34
|
+
responsively.<br />
|
|
35
|
+
<ul>
|
|
36
|
+
<li><strong>EuiPage</strong>
|
|
37
|
+
and
|
|
38
|
+
<strong>EuiPageBody</strong>
|
|
39
|
+
provide the overall wrapper with a column flex display.</li>
|
|
40
|
+
<li><strong>EuiPageSideBar</strong>
|
|
41
|
+
provides a way to add side navigation that can be made sticky to scroll
|
|
42
|
+
independent of the page content. See
|
|
43
|
+
<strong>EuiSideNav</strong>
|
|
44
|
+
for contents.</li>
|
|
45
|
+
<li><strong>EuiPageHeader</strong>
|
|
46
|
+
provides a title, description, section for actions and possible tabs.</li>
|
|
47
|
+
<li><strong>EuiPageContent</strong>
|
|
48
|
+
provides the main content container and extends
|
|
49
|
+
<strong>EuiPanel</strong>.</li>
|
|
50
|
+
<li><strong>EuiPageContentBody</strong>
|
|
51
|
+
wraps the content that comes after the page header.</li>
|
|
52
|
+
</ul>
|
|
53
|
+
Or you can use the provided
|
|
54
|
+
<strong>EuiPageTemplate</strong>, which is simply a shortcut for creating the
|
|
55
|
+
different types of page layout patterns described in these docs. It is
|
|
56
|
+
somewhat opinionated, but still has the ability to customize most of the inner
|
|
57
|
+
components with props like
|
|
58
|
+
<EuiCode>pageSideBarProps</EuiCode>
|
|
59
|
+
and
|
|
60
|
+
<EuiCode>pageContentProps</EuiCode>.
|
|
61
|
+
</EuiText>
|
|
2
62
|
|
|
3
63
|
```hbs template
|
|
4
|
-
|
|
5
|
-
|
|
64
|
+
<EuiPageTemplate
|
|
65
|
+
@grow={{true}}
|
|
66
|
+
@pageHeader={{hash
|
|
67
|
+
iconType='logoElastic'
|
|
68
|
+
pageTitle='Page Title'
|
|
69
|
+
rightSideItems=(array (component 'eui-button-title' title='Go full screen'))
|
|
70
|
+
tabs=this.tabs
|
|
71
|
+
}}
|
|
72
|
+
@pageSideBar={{component 'eui-loading-content' lines=8}}
|
|
73
|
+
>
|
|
74
|
+
<EuiLoadingContent @lines={{16}} />
|
|
75
|
+
</EuiPageTemplate>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
```js component
|
|
79
|
+
import Component from '@glimmer/component';
|
|
80
|
+
import { tracked } from '@glimmer/tracking';
|
|
81
|
+
import { action } from '@ember/object';
|
|
82
|
+
|
|
83
|
+
export default class DemoIconComponent extends Component {
|
|
84
|
+
tabs = [
|
|
85
|
+
{ label: 'Tab 1', isSelected: true },
|
|
86
|
+
{
|
|
87
|
+
label: 'Tab 2',
|
|
88
|
+
onClick: this.setShowBottomBar
|
|
89
|
+
}
|
|
90
|
+
];
|
|
91
|
+
@tracked showing = false;
|
|
92
|
+
|
|
93
|
+
@action
|
|
94
|
+
setSHowBottomBar() {
|
|
95
|
+
this.showing = !this.showing;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
```
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 10
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# A simple page layout with custom content
|
|
6
|
+
|
|
7
|
+
<EuiText>
|
|
8
|
+
You can replace the inner parts of <strong>EuiPageBody</strong> with your own content, with or without a page header. This allows you to create dashboard style layouts with lots of panels. It is not recommended, however, to use this setup when you also have side bar.
|
|
9
|
+
</EuiText>
|
|
10
|
+
<EuiSpacer />
|
|
11
|
+
<EuiCallOut>
|
|
12
|
+
<:body>
|
|
13
|
+
This layout can be achieved in <strong>EuiPageTemplate</strong> by setting <EuiCode>template="empty"</EuiCode>.
|
|
14
|
+
</:body>
|
|
15
|
+
</EuiCallOut>
|
|
16
|
+
|
|
17
|
+
```hbs template
|
|
18
|
+
<EuiPageTemplate
|
|
19
|
+
@grow={{true}}
|
|
20
|
+
@template='empty'
|
|
21
|
+
@pageHeader={{hash
|
|
22
|
+
iconType='logoElastic'
|
|
23
|
+
pageTitle='Page Title'
|
|
24
|
+
rightSideItems=(array (component 'eui-button-title' title='Go full screen' color='warning')(component 'eui-button-title' title='Do something'))
|
|
25
|
+
}}
|
|
26
|
+
>
|
|
27
|
+
<EuiFlexGrid @columns={{2}}>
|
|
28
|
+
<EuiFlexItem>
|
|
29
|
+
<EuiPanel style='height: 200px' />
|
|
30
|
+
</EuiFlexItem>
|
|
31
|
+
<EuiFlexItem>
|
|
32
|
+
<EuiPanel style='height: 200px' />
|
|
33
|
+
</EuiFlexItem>
|
|
34
|
+
<EuiFlexItem>
|
|
35
|
+
<EuiPanel style='height: 200px' />
|
|
36
|
+
</EuiFlexItem>
|
|
37
|
+
<EuiFlexItem>
|
|
38
|
+
<EuiPanel style='height: 200px' />
|
|
39
|
+
</EuiFlexItem>
|
|
40
|
+
</EuiFlexGrid>
|
|
41
|
+
</EuiPageTemplate>
|
|
42
|
+
```
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 2
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Restricting page width
|
|
6
|
+
|
|
7
|
+
<EuiSpacer />
|
|
8
|
+
<EuiText>
|
|
9
|
+
Most content does not scale well to the full width of the window. You can
|
|
10
|
+
restrict this to a typical width and center the page by setting the
|
|
11
|
+
<EuiCode>restrictWidth</EuiCode>
|
|
12
|
+
prop to
|
|
13
|
+
<EuiCode>true</EuiCode>
|
|
14
|
+
on
|
|
15
|
+
<strong>EuiPageHeader</strong>
|
|
16
|
+
and
|
|
17
|
+
<strong>EuiPageContent</strong>. You can also pass an integer to this property
|
|
18
|
+
to max out the width at a custom pixel value or a string with a custom
|
|
19
|
+
measurement.
|
|
20
|
+
</EuiText>
|
|
21
|
+
<EuiSpacer />
|
|
22
|
+
<EuiCallOut>
|
|
23
|
+
<:title>
|
|
24
|
+
The
|
|
25
|
+
<strong>EuiPageTemplate</strong>
|
|
26
|
+
allows setting this property at the top level and defaults to true.
|
|
27
|
+
</:title>
|
|
28
|
+
</EuiCallOut>
|
|
29
|
+
|
|
30
|
+
```hbs template
|
|
31
|
+
<EuiPageTemplate
|
|
32
|
+
@grow={{true}}
|
|
33
|
+
@restrictWidth='75%'
|
|
34
|
+
@grow={{true}}
|
|
35
|
+
@pageHeader={{hash
|
|
36
|
+
iconType='logoElastic'
|
|
37
|
+
pageTitle='Page Title'
|
|
38
|
+
rightSideItems=(array (component 'eui-button-title' title='Go full screen'))
|
|
39
|
+
tabs=this.tabs
|
|
40
|
+
description= 'Restricting the width to 75%.'
|
|
41
|
+
}}
|
|
42
|
+
@pageSideBar={{component 'eui-loading-content' lines=8}}
|
|
43
|
+
>
|
|
44
|
+
<EuiLoadingContent @lines={{16}} />
|
|
45
|
+
</EuiPageTemplate>
|
|
46
|
+
```
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 3
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Showing a bottom bar
|
|
6
|
+
|
|
7
|
+
<EuiSpacer />
|
|
8
|
+
<!-- <EuiText>
|
|
9
|
+
Adding an
|
|
10
|
+
<strong>EuiBottomBar</strong>
|
|
11
|
+
can be tricky to use and account for any side bars.
|
|
12
|
+
<strong>EuiPageTemplate</strong>
|
|
13
|
+
handles this nicely by supplying a
|
|
14
|
+
<EuiCode>bottomBar</EuiCode>
|
|
15
|
+
prop for passing the contents of your bottom bar, and
|
|
16
|
+
<EuiCode>bottomBarProps</EuiCode>
|
|
17
|
+
that extends
|
|
18
|
+
<strong>EuiBottomBar</strong>.<br /><br />
|
|
19
|
+
|
|
20
|
+
<!-- It uses the
|
|
21
|
+
<EuiCode>sticky</EuiCode>
|
|
22
|
+
position so that it sticks to the bottom of and remains within the bounds of
|
|
23
|
+
<strong>EuiPageBody</strong>. This way it will never overlap the
|
|
24
|
+
<strong>EuiPageSideBar</strong>, no matter the screen size. It also means not
|
|
25
|
+
needing to accommodate for the height of the bar in the body element.
|
|
26
|
+
</EuiText> -->
|
|
27
|
+
<EuiSpacer />
|
|
28
|
+
<EuiCallOut>
|
|
29
|
+
<:title>
|
|
30
|
+
<strong>EuiPageTemplate</strong>
|
|
31
|
+
only supports bottom bars in the
|
|
32
|
+
<EuiCode>default</EuiCode>
|
|
33
|
+
template.
|
|
34
|
+
</:title>
|
|
35
|
+
</EuiCallOut>
|
|
36
|
+
|
|
37
|
+
```hbs template
|
|
38
|
+
<EuiPageTemplate
|
|
39
|
+
@grow={{true}}
|
|
40
|
+
@pageHeader={{hash
|
|
41
|
+
iconType='logoElastic'
|
|
42
|
+
pageTitle='Page Title'
|
|
43
|
+
rightSideItems=(array (component 'eui-button-title' title='Go full screen'))
|
|
44
|
+
}}
|
|
45
|
+
@pageSideBar={{component 'eui-loading-content' lines=8}}
|
|
46
|
+
@bottomBar={{component "eui-button-title" title="Save"}}
|
|
47
|
+
>
|
|
48
|
+
<EuiLoadingContent @lines={{16}} />
|
|
49
|
+
</EuiPageTemplate>
|
|
50
|
+
```
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 4
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Centered Body
|
|
6
|
+
|
|
7
|
+
<EuiSpacer />
|
|
8
|
+
<EuiText>
|
|
9
|
+
When the content for the page is minimal or in an empty/pre-setup state, the page content can be centered vertically and horizontally. We recommend then using the <strong>EuiEmptyPrompt</strong> for the content.
|
|
10
|
+
</EuiText>
|
|
11
|
+
<EuiSpacer />
|
|
12
|
+
<EuiCallOut>
|
|
13
|
+
<:title>
|
|
14
|
+
This layout can be achieved in <strong>EuiPageTemplate</strong> by setting <EuiCode>template="centeredBody"</EuiCode>.
|
|
15
|
+
</:title>
|
|
16
|
+
</EuiCallOut>
|
|
17
|
+
|
|
18
|
+
```hbs template
|
|
19
|
+
<EuiPageTemplate
|
|
20
|
+
@template='centeredBody'
|
|
21
|
+
@grow={{true}}
|
|
22
|
+
@pageSideBar={{component 'eui-loading-content' lines=8}}
|
|
23
|
+
>
|
|
24
|
+
<EuiEmptyPrompt @paddingSize='l'>
|
|
25
|
+
<:content>
|
|
26
|
+
<EuiTitle>No spice</EuiTitle>
|
|
27
|
+
<EuiSpacer />
|
|
28
|
+
<EuiLoadingContent @lines={{8}} />
|
|
29
|
+
<EuiButton>
|
|
30
|
+
Go to full screen
|
|
31
|
+
</EuiButton>
|
|
32
|
+
</:content>
|
|
33
|
+
<:footer>
|
|
34
|
+
Footer
|
|
35
|
+
</:footer>
|
|
36
|
+
</EuiEmptyPrompt>
|
|
37
|
+
</EuiPageTemplate>
|
|
38
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 5
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Centered Content
|
|
6
|
+
<EuiSpacer />
|
|
7
|
+
<EuiText>
|
|
8
|
+
Similar to the previous example, you can create a centered panel to emphasize incompleteness even with a page header. For this setup, we recommend using setting <strong>EuiPageContent</strong> to use the <EuiCode>subdued</EuiCode> color as to not have nested shadows.
|
|
9
|
+
</EuiText>
|
|
10
|
+
<EuiSpacer />
|
|
11
|
+
<EuiCallOut>
|
|
12
|
+
<:title>
|
|
13
|
+
This layout can be achieved in <strong>EuiPageTemplate</strong> by setting <EuiCode>template="centeredContent"</EuiCode>.
|
|
14
|
+
</:title>
|
|
15
|
+
</EuiCallOut>
|
|
16
|
+
|
|
17
|
+
```hbs template
|
|
18
|
+
<EuiPageTemplate
|
|
19
|
+
@grow={{true}}
|
|
20
|
+
@template='centeredContent'
|
|
21
|
+
@pageHeader={{hash
|
|
22
|
+
iconType='logoElastic'
|
|
23
|
+
pageTitle='Page Title'
|
|
24
|
+
rightSideItems=(array (component 'eui-button-title' title='Go full screen'))
|
|
25
|
+
}}
|
|
26
|
+
@pageSideBar={{component 'eui-loading-content' lines=8}}
|
|
27
|
+
>
|
|
28
|
+
<EuiEmptyPrompt @paddingSize="l" @title='No spice' @body={{component 'eui-loading-content' lines=8}}/>
|
|
29
|
+
</EuiPageTemplate>
|
|
30
|
+
```
|