@ember-eui/core 5.0.2 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/addon/components/eui-accordion/index.hbs +1 -1
- package/addon/components/eui-breadcrumbs/index.hbs +9 -1
- package/addon/components/eui-context-menu-item/index.hbs +60 -0
- package/addon/components/eui-context-menu-item/index.ts +12 -0
- package/addon/components/eui-context-menu-panel/index.hbs +5 -0
- package/addon/components/eui-header-links/index.hbs +1 -1
- package/addon/components/eui-input-popover/index.hbs +37 -31
- package/addon/components/eui-popover/index.hbs +61 -102
- package/addon/components/eui-step-horizontal/index.hbs +11 -6
- package/addon/helpers/merge.ts +5 -0
- package/addon/utils/css-mappings/eui-avatar.ts +1 -0
- package/addon/utils/css-mappings/eui-context-menu-item.ts +26 -0
- package/addon/utils/css-mappings/eui-header-links.ts +1 -1
- package/addon/utils/css-mappings/index.ts +98 -96
- package/app/components/eui-context-menu-item/index.js +1 -0
- package/app/components/eui-context-menu-panel/index.js +1 -0
- package/app/helpers/merge.js +1 -0
- package/docs/display/notification-event/demo/demo2.md +3 -10
- package/docs/layout/{accordion.md → accordion/demo/d01-simple-and-unstyle.md} +18 -22
- package/docs/layout/accordion/demo/d02-arrow-display.md +34 -0
- package/docs/layout/{accordion-demo/demo2.md → accordion/demo/d03-multiple-accordions.md} +6 -5
- package/docs/layout/{accordion-demo/demo3.md → accordion/demo/d04-extra-actions.md} +2 -2
- package/docs/layout/{accordion-demo/demo4.md → accordion/demo/d05-opened-on-initial-render.md} +2 -2
- package/docs/layout/{accordion-demo/demo5.md → accordion/demo/d06-controlling-toggled-state.md} +3 -2
- package/docs/layout/{accordion-demo/demo6.md → accordion/demo/d07-loading-state.md} +2 -1
- package/docs/layout/accordion/demo/d08-when-content-changes-dynamically.md +71 -0
- package/docs/layout/{accordion-demo/demo8.md → accordion/demo/d09-interactive-content-in-the-trigger.md} +4 -4
- package/docs/layout/{accordion-demo/demo9.md → accordion/demo/d10-styled-for-forms.md} +44 -44
- package/docs/layout/accordion/index.md +23 -0
- package/docs/layout/{bottom-bar-demo/demo1.md → bottom-bar/demo/d01-basic.md} +0 -2
- package/docs/layout/{bottom-bar-demo/demo2.md → bottom-bar/demo/d02-positions.md} +0 -0
- package/docs/layout/{bottom-bar-demo/demo3.md → bottom-bar/demo/d03-displacement.md} +1 -0
- package/docs/layout/bottom-bar/index.md +18 -0
- package/docs/layout/flex/demo/d01-flex-group-is-for-a-single-row-layout.md +19 -0
- package/docs/layout/flex/demo/d02-flex-items-are-also-flex.md +18 -0
- package/docs/layout/flex/demo/d03-spans-instead-of-divs.md +19 -0
- package/docs/layout/flex/demo/d04-panels-grow-to-fill-flex-items.md +32 -0
- package/docs/layout/flex/demo/d05-turn-off-item-streching.md +12 -0
- package/docs/layout/flex/demo/d06-proportional-widths-of-items.md +32 -0
- package/docs/layout/flex/demo/d07-justify-and-align.md +11 -0
- package/docs/layout/flex/demo/d08-allowing-flex-items-to-wrap.md +43 -0
- package/docs/layout/flex/demo/d09-change-direction.md +13 -0
- package/docs/layout/flex/demo/d10-flex-grids-are-for-repeatable-items.md +33 -0
- package/docs/layout/flex/demo/d11-flex-grids-can-change-direction.md +33 -0
- package/docs/layout/flex/demo/d12-flex-grids-and-flex-groups-can-nest.md +30 -0
- package/docs/layout/flex/demo/d13-gutter-sizing.md +61 -0
- package/docs/layout/flex/demo/d14-responsive-layouts.md +29 -0
- package/docs/layout/flex/index.md +18 -0
- package/docs/layout/{flyout-demo/demo1.md → flyout/demo/d01-basic.md} +12 -16
- package/docs/layout/flyout/demo/d02-more-complicated-flyout.md +195 -0
- package/docs/layout/{flyout-demo/demo3.md → flyout/demo/d03-sizing.md} +5 -17
- package/docs/layout/{flyout-demo/demo4.md → flyout/demo/d04-adjusting-padding.md} +29 -36
- package/docs/layout/{flyout-demo/demo5.md → flyout/demo/d05-adding-a-banner.md} +6 -6
- package/docs/layout/{flyout-demo/demo6.md → flyout/demo/d06-without-ownfocus.md} +11 -14
- package/docs/layout/{flyout-demo/demo7.md → flyout/demo/d07-push-versus-overlay.md} +17 -3
- package/docs/layout/flyout/demo/d08-understanding-max-width.md +9 -0
- package/docs/layout/flyout/index.md +7 -0
- package/docs/layout/{header-demo/demo1.md → header/demo/d01-header.md} +138 -120
- package/docs/layout/header/demo/d02-sections.md +9 -0
- package/docs/layout/{header-demo/demo2.md → header/demo/d03-header-links.md} +2 -2
- package/docs/layout/{header-demo/demo3.md → header/demo/d04-fixed-header.md} +1 -1
- package/docs/layout/{header-demo/demo4.md → header/demo/d05-dark-theme.md} +3 -3
- package/docs/layout/{header-demo/demo5.md → header/demo/d06-portal-content-in-the-header.md} +20 -9
- package/docs/layout/{header-demo/demo6.md → header/demo/d07-header-notifications.md} +1 -1
- package/docs/layout/{header-demo/demo7.md → header/demo/d08-stacked-headers.md} +47 -26
- package/docs/layout/header/demo/d09-the-elastic-navigation-pattern.md +9 -0
- package/docs/layout/header/index.md +7 -0
- package/docs/layout/horizontal-rule/demo/d01-size.md +14 -0
- package/docs/layout/horizontal-rule/demo/d02-margins.md +38 -0
- package/docs/layout/horizontal-rule/horizontal-rule.md +7 -0
- package/docs/layout/modal/demo/d01-modal.md +73 -0
- package/docs/layout/modal/demo/d02-forms-in-a-modal.md +107 -0
- package/docs/layout/modal/demo/d03-confirm-modal.md +86 -0
- package/docs/layout/modal/demo/d04-loading-and-disabling-confirm-button.md +80 -0
- package/docs/layout/{modal-demo/demo5.md → modal/demo/d05-widths.md} +20 -39
- package/docs/layout/modal/index.md +13 -0
- package/docs/layout/page-header/demo/{demo1.md → d01-basic.md} +0 -2
- package/docs/layout/page-header/demo/{demo2.md → d02-tabs-in-the-page-header.md} +1 -2
- package/docs/layout/page-header/demo/{demo3.md → d03-tabs-in-the-page-header.md} +2 -3
- package/docs/layout/page-header/demo/{demo4.md → d04-breadcrumbs-in-the-page-header.md} +3 -2
- package/docs/layout/page-header/demo/{demo5.md → d05-breadcrumbs-in-the-page-header.md} +1 -28
- package/docs/layout/page-header/demo/{demo6.md → d06-customizing-the-page-header.md} +0 -0
- package/docs/layout/page-header/index.md +1 -2
- package/docs/layout/{panel-demo/demo1.md → panel/demo/d01-padding.md} +0 -0
- package/docs/layout/{panel-demo/demo2.md → panel/demo/d02-shadow-and-border.md} +2 -2
- package/docs/layout/{panel-demo/demo3.md → panel/demo/d03-colors-and-corners.md} +0 -0
- package/docs/layout/{panel-demo/demo4.md → panel/demo/d04-growing-height.md} +0 -0
- package/docs/layout/{panel-demo/demo5.md → panel/demo/d05-split-panels.md} +1 -1
- package/docs/layout/{panel.md → panel/index.md} +4 -0
- package/docs/layout/{popover-demo/demo1.md → popover/demo/d01-basic.md} +6 -4
- package/docs/layout/{popover-demo/demo2.md → popover/demo/d02-anchor-position.md} +0 -0
- package/docs/layout/popover/demo/d03-popover-titles-and-footers.md +133 -0
- package/docs/layout/{popover-demo/demo5.md → popover/demo/d04-popover-padding-sizes.md} +56 -31
- package/docs/layout/{popover-demo/demo6.md → popover/demo/d05-panel-class-name.md} +3 -3
- package/docs/layout/{popover-demo/demo7.md → popover/demo/d06-popover-with-block-level-display.md} +2 -3
- package/docs/layout/{popover-demo/demo3.md → popover/demo/d07-popover-on-a-fixed-element.md} +3 -11
- package/docs/layout/{popover-demo/demo8.md → popover/demo/d08-constraining-a-popover-inside-a-container.md} +0 -0
- package/docs/layout/{popover-demo/demo9.md → popover/demo/d09-popover-attached-to-input-element.md} +14 -12
- package/docs/layout/popover/demo/d10-setting-an-initial-focus.md +61 -0
- package/docs/layout/{popover-demo/demo10.md → popover/demo/d11-removing-the-focus-trap.md} +1 -1
- package/docs/layout/popover/demo/d12-popover-using-and-html-element-as-the-anchor.md +9 -0
- package/docs/layout/popover/index.md +7 -0
- package/docs/layout/resizable-container/demo/d01-horizontal-resizing.md +10 -0
- package/docs/layout/resizable-container/demo/d02-resizable-panel-options.md +10 -0
- package/docs/layout/resizable-container/demo/d03-horizontal-resizing-with-controlled-widths.md +10 -0
- package/docs/layout/resizable-container/demo/d04-vertical-resizing.md +10 -0
- package/docs/layout/resizable-container/demo/d05-collapsible-resizable-panels.md +10 -0
- package/docs/layout/resizable-container/demo/d06-responsive-layout.md +10 -0
- package/docs/layout/resizable-container/demo/d07-collapsible-panels-options.md +10 -0
- package/docs/layout/resizable-container/demo/d08-collapsible-panels-with-external-control.md +10 -0
- package/docs/layout/resizable-container/index.md +15 -0
- package/docs/layout/spacer/demo/d01-basic.md +44 -0
- package/docs/layout/spacer/index.md +7 -0
- package/docs/navigation/{breadcrumbs-demo/demo1.md → breadcrumbs/demo/d01-basic.md} +9 -6
- package/docs/navigation/{breadcrumbs-demo/demo2.md → breadcrumbs/demo/d02-limit-the-number-of-breadcrumbs.md} +0 -0
- package/docs/navigation/{breadcrumbs-demo/demo3.md → breadcrumbs/demo/d03-truncate-each-breadcrumb.md} +0 -0
- package/docs/navigation/{breadcrumbs-demo/demo4.md → breadcrumbs/demo/d04-truncate-each-breadcrumb-on-each-object.md} +0 -0
- package/docs/navigation/{breadcrumbs-demo/demo5.md → breadcrumbs/demo/d05-responsive.md} +14 -0
- package/docs/navigation/{breadcrumbs-demo/demo6.md → breadcrumbs/demo/d06-color-for-emphasis.md} +12 -23
- package/docs/navigation/breadcrumbs/index.md +7 -0
- package/docs/navigation/button/demo/d01-basic.md +85 -0
- package/docs/navigation/button/demo/d02-empty-button.md +68 -0
- package/docs/navigation/button/demo/d03-flush-empty-button.md +32 -0
- package/docs/navigation/button/demo/d04-buttons-with-icons.md +213 -0
- package/docs/navigation/button/demo/d05-icon-buttons.md +139 -0
- package/docs/navigation/button/demo/d06-buttons-as-links.md +51 -0
- package/docs/navigation/button/demo/d07-loading-state.md +38 -0
- package/docs/navigation/button/demo/d08-split-buttons.md +43 -0
- package/docs/navigation/button/demo/d09-toggle-buttons.md +10 -0
- package/docs/navigation/button/demo/d10-button-groups.md +10 -0
- package/docs/navigation/button/demo/d11-ghost.md +10 -0
- package/docs/navigation/button/index.md +13 -0
- package/docs/navigation/steps-demo/demo3.md +0 -1
- package/docs/{layout/page-template/demo/demo1.md → templates/page-template/demo/d01-a-full-page-with-everything.md} +1 -24
- package/docs/{layout/page-template/demo/demo2.md → templates/page-template/demo/d02-restricting-page-width.md} +0 -0
- package/docs/{layout/page-template/demo/demo3.md → templates/page-template/demo/d03-showing-a-bottom-bar.md} +0 -0
- package/docs/{layout/page-template/demo/demo4.md → templates/page-template/demo/d04-centered-body.md} +1 -1
- package/docs/{layout/page-template/demo/demo5.md → templates/page-template/demo/d05-centered-content.md} +1 -1
- package/docs/{layout/page-template/demo/demo6.md → templates/page-template/demo/d06-a-simple-page-with-tabs.md} +0 -0
- package/docs/{layout/page-template/demo/demo7.md → templates/page-template/demo/d07-full-height-layout.md} +0 -0
- package/docs/{layout/page-template/demo/demo8.md → templates/page-template/demo/d08-simple-layout-with-centered-body.md} +0 -0
- package/docs/{layout/page-template/demo/demo9.md → templates/page-template/demo/d09-simple-layout-with-centered-content.md} +0 -0
- package/docs/{layout/page-template/demo/demo10.md → templates/page-template/demo/d10-a-simple-page-layout-with-custom-content.md} +0 -0
- package/docs/templates/page-template/index.md +37 -0
- package/docs/templates/sitewide-search/demo/d01-basic-setup.md +10 -0
- package/docs/templates/sitewide-search/demo/d02-options.md +10 -0
- package/docs/templates/sitewide-search/index.md +9 -0
- package/docs/templates/super-date-picker/demo/d01-update-button.md +10 -0
- package/docs/templates/super-date-picker/demo/d02-quick-select-panels.md +10 -0
- package/docs/templates/super-date-picker/demo/d03-sizing.md +10 -0
- package/docs/templates/super-date-picker/demo/d04-auto-refresh.md +11 -0
- package/docs/templates/super-date-picker/demo/d05-elastic-pattern-with-kql.md +10 -0
- package/docs/templates/super-date-picker/index.md +12 -0
- package/package.json +3 -3
- package/docs/layout/accordion-demo/demo1.md +0 -33
- package/docs/layout/accordion-demo/demo7.md +0 -66
- package/docs/layout/bottom-bar.md +0 -1
- package/docs/layout/flex-demo/demo1.md +0 -358
- package/docs/layout/flex.md +0 -1
- package/docs/layout/flyout-demo/demo2.md +0 -87
- package/docs/layout/flyout.md +0 -1
- package/docs/layout/header.md +0 -1
- package/docs/layout/horizontal-rule-demo/demo1.md +0 -70
- package/docs/layout/horizontal-rule.md +0 -1
- package/docs/layout/modal-demo/demo1.md +0 -97
- package/docs/layout/modal-demo/demo2.md +0 -126
- package/docs/layout/modal-demo/demo3.md +0 -55
- package/docs/layout/modal-demo/demo4.md +0 -65
- package/docs/layout/modal.md +0 -1
- package/docs/layout/page-template/index.md +0 -11
- package/docs/layout/popover-demo/demo4.md +0 -118
- package/docs/layout/popover.md +0 -1
- package/docs/navigation/breadcrumbs.md +0 -1
- package/docs/navigation/button-demo/demo1.md +0 -413
- package/docs/navigation/button.md +0 -1
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
{{yield this.isOpen to="buttonContent"}}
|
|
44
44
|
</span>
|
|
45
45
|
</ButtonElement>
|
|
46
|
-
{{#if (and @extraAction (not this.isLoading))}}
|
|
46
|
+
{{#if (and @extraAction (has-block "extraAction") (not this.isLoading))}}
|
|
47
47
|
<div class="euiAccordion__optionalAction">
|
|
48
48
|
{{yield this.isOpen to="extraAction"}}
|
|
49
49
|
</div>
|
|
@@ -73,7 +73,15 @@
|
|
|
73
73
|
{{else}}
|
|
74
74
|
<EuiLink
|
|
75
75
|
{{did-insert setInnerTextRef}}
|
|
76
|
-
@color={{if
|
|
76
|
+
@color={{if
|
|
77
|
+
breadcrumb.color
|
|
78
|
+
breadcrumb.color
|
|
79
|
+
(if
|
|
80
|
+
isLastBreadcrumb
|
|
81
|
+
"text"
|
|
82
|
+
"subdued"
|
|
83
|
+
)
|
|
84
|
+
}}
|
|
77
85
|
@onClick={{breadcrumb.onClick}}
|
|
78
86
|
@href={{breadcrumb.href}}
|
|
79
87
|
title={{title}}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{{#let
|
|
2
|
+
(class-names
|
|
3
|
+
"euiContextMenuItem"
|
|
4
|
+
componentName="EuiContextMenuItem"
|
|
5
|
+
disabled=@disabled
|
|
6
|
+
layoutAlign=(arg-or-default @layoutAlign "center")
|
|
7
|
+
size=@size
|
|
8
|
+
)
|
|
9
|
+
as |classes|}}
|
|
10
|
+
{{#if (and @href (not @disabled))}}
|
|
11
|
+
<a
|
|
12
|
+
class={{classes}}
|
|
13
|
+
href={{@href}}
|
|
14
|
+
target={{@target}}
|
|
15
|
+
{{did-insert this.registerLink}}
|
|
16
|
+
...attributes
|
|
17
|
+
/>
|
|
18
|
+
|
|
19
|
+
{{else}}
|
|
20
|
+
<button
|
|
21
|
+
class={{classes}}
|
|
22
|
+
disabled={{@disabled}}
|
|
23
|
+
type="button"
|
|
24
|
+
{{did-insert this.registerLink}}
|
|
25
|
+
...attributes
|
|
26
|
+
/>
|
|
27
|
+
{{/if}}
|
|
28
|
+
{{/let}}
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
{{!-- shared code that will be rendered inside the button or anchor --}}
|
|
32
|
+
{{#if this.link}}
|
|
33
|
+
{{#in-element this.link}}
|
|
34
|
+
<span
|
|
35
|
+
class={{class-names
|
|
36
|
+
'euiContextMenu__itemLayout'
|
|
37
|
+
componentName="EuiContextMenuItem"
|
|
38
|
+
layoutAlign=(arg-or-default @layoutAlign "center")
|
|
39
|
+
}}
|
|
40
|
+
>
|
|
41
|
+
{{#if @isLoading}}
|
|
42
|
+
{{!-- spinner is not part of eui spec --}}
|
|
43
|
+
<EuiLoadingSpinner class="euiContextMenu__icon"/>
|
|
44
|
+
{{else}}
|
|
45
|
+
<EuiIcon
|
|
46
|
+
@iconClasses={{concat "euiContextMenu__icon " @iconClasses}}
|
|
47
|
+
@type={{@icon}}
|
|
48
|
+
@size="m"
|
|
49
|
+
@color="inherit"
|
|
50
|
+
/>
|
|
51
|
+
{{/if}}
|
|
52
|
+
<span class="euiContextMenuItem__text">
|
|
53
|
+
{{yield}}
|
|
54
|
+
</span>
|
|
55
|
+
{{#if @hasPanel}}
|
|
56
|
+
<EuiIcon @type="arrowRight" @size="m" class="euiContextMenu__arrow"/>
|
|
57
|
+
{{/if}}
|
|
58
|
+
</span>
|
|
59
|
+
{{/in-element}}
|
|
60
|
+
{{/if}}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import Component from '@glimmer/component';
|
|
2
|
+
import { action } from '@ember/object';
|
|
3
|
+
import { tracked } from '@glimmer/tracking';
|
|
4
|
+
|
|
5
|
+
export default class EuiContextMenuItemComponent extends Component {
|
|
6
|
+
@tracked link: HTMLAnchorElement | HTMLButtonElement | null = null;
|
|
7
|
+
|
|
8
|
+
@action
|
|
9
|
+
registerLink(e: HTMLAnchorElement | HTMLButtonElement) {
|
|
10
|
+
this.link = e;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -1,31 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
{{
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
1
|
+
{{#let (unique-id) as |id|}}
|
|
2
|
+
<EuiPopover
|
|
3
|
+
class="euiInputPopover {{if this.fullWidth "euiInputPopover--fullWidth"}}"
|
|
4
|
+
@ownFocus={{false}}
|
|
5
|
+
@buttonRef={{this.didInsertInput}}
|
|
6
|
+
@panelRef={{this.didInsertPanel}}
|
|
7
|
+
@anchorPosition={{this.anchorPosition}}
|
|
8
|
+
@panelPaddingSize={{this.panelPaddingSize}}
|
|
9
|
+
@attachToAnchor={{this.attachToAnchor}}
|
|
10
|
+
@display={{this.display}}
|
|
11
|
+
@closePopover={{@closePopover}}
|
|
12
|
+
@isOpen={{@isOpen}}
|
|
13
|
+
...attributes
|
|
14
|
+
>
|
|
15
|
+
<:button>
|
|
16
|
+
<div {{resize-observer onResize=this.onResize}}>
|
|
17
|
+
{{yield to="input"}}
|
|
18
|
+
</div>
|
|
19
|
+
</:button>
|
|
20
|
+
<:content>
|
|
21
|
+
<div
|
|
22
|
+
id={{id}}
|
|
23
|
+
{{on-key "_all" this.onKeyDown}}
|
|
24
|
+
{{focus-trap
|
|
25
|
+
isActive=(not this.disableFocusTrap)
|
|
26
|
+
focusTrapOptions=(hash
|
|
27
|
+
clickOutsideDeactivates=true
|
|
28
|
+
returnFocusOnDeactivate=false
|
|
29
|
+
fallbackFocus=(concat '#' id)
|
|
30
|
+
)
|
|
31
|
+
}}
|
|
32
|
+
>
|
|
33
|
+
{{yield to="content"}}
|
|
34
|
+
</div>
|
|
35
|
+
</:content>
|
|
36
|
+
</EuiPopover>
|
|
37
|
+
{{/let}}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
{{#let
|
|
2
2
|
(unique-id)
|
|
3
3
|
(class-names
|
|
4
|
-
|
|
4
|
+
(if this.isOpening 'euiPopover-isOpen')
|
|
5
|
+
position=this.anchorPosition
|
|
6
|
+
display=this.display
|
|
7
|
+
componentName="EuiPopover"
|
|
5
8
|
)
|
|
6
9
|
(class-names
|
|
7
10
|
"euiPopover__panel"
|
|
@@ -13,29 +16,35 @@
|
|
|
13
16
|
)
|
|
14
17
|
as |descriptionId classes panelClasses|
|
|
15
18
|
}}
|
|
16
|
-
|
|
19
|
+
<div
|
|
20
|
+
class={{classes}}
|
|
21
|
+
...attributes
|
|
22
|
+
{{on-key "_all" this.onKeyDown}}
|
|
23
|
+
{{did-insert this.didInsertPopover}}
|
|
24
|
+
{{did-update this.didUpdateIsOpen @isOpen}}
|
|
25
|
+
{{did-update this.didUpdateRepositionOnScroll @repositionOnScroll}}
|
|
26
|
+
{{did-insert (optional @popoverRef)}}
|
|
27
|
+
>
|
|
28
|
+
|
|
29
|
+
{{!-- button --}}
|
|
17
30
|
<div
|
|
18
|
-
class="
|
|
19
|
-
|
|
20
|
-
{{did-insert this.didInsertPopover}}
|
|
21
|
-
{{did-insert (optional @popoverRef)}}
|
|
22
|
-
{{did-update this.didUpdateIsOpen @isOpen}}
|
|
23
|
-
{{did-update this.didUpdateRepositionOnScroll @repositionOnScroll}}
|
|
31
|
+
class="euiPopover__anchor {{@anchorClassName}}"
|
|
32
|
+
{{did-insert this.registerButton}}
|
|
24
33
|
>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}}
|
|
36
|
-
|
|
37
|
-
{{! template-lint-disable no-positive-tabindex }}
|
|
34
|
+
{{yield to="button"}}
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
{{!-- content --}}
|
|
38
|
+
{{#if
|
|
39
|
+
(and
|
|
40
|
+
(not this.suppressingPopover)
|
|
41
|
+
(or this.isCurrentlyOpen this.isClosing)
|
|
42
|
+
)
|
|
43
|
+
}}
|
|
44
|
+
<EuiPortal @insert={{@insert}}>
|
|
45
|
+
{{#let (unique-id) as |panelId|}}
|
|
38
46
|
<EuiPanel
|
|
47
|
+
id={{panelId}}
|
|
39
48
|
class={{panelClasses}}
|
|
40
49
|
aria-live={{if this.ownFocus "off" "assertive"}}
|
|
41
50
|
role="dialog"
|
|
@@ -43,24 +52,32 @@
|
|
|
43
52
|
aria-labelledby={{@ariaLabelledBy}}
|
|
44
53
|
aria-modal="true"
|
|
45
54
|
aria-describedby={{if this.ownFocus descriptionId}}
|
|
55
|
+
tabindex={{this.tabindex}}
|
|
46
56
|
@hasShadow={{false}}
|
|
47
57
|
@paddingSize={{this.panelPaddingSize}}
|
|
48
58
|
{{simple-style this._popoverStyles}}
|
|
49
59
|
{{did-insert this.registerPanel}}
|
|
50
60
|
{{outside-click-detector onOutsideClick=this.onClickOutside}}
|
|
51
61
|
{{on-key "Escape" this.onEscapeKey}}
|
|
52
|
-
tabindex={{this.tabindex}}
|
|
53
62
|
{{focus-trap
|
|
54
63
|
isActive=(not
|
|
55
|
-
(or
|
|
64
|
+
(or
|
|
65
|
+
(not this.ownFocus)
|
|
66
|
+
(not this.isOpenStable)
|
|
67
|
+
this.isClosing
|
|
68
|
+
)
|
|
56
69
|
)
|
|
57
|
-
focusTrapOptions=(
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
70
|
+
focusTrapOptions=(merge
|
|
71
|
+
(hash
|
|
72
|
+
shouldSelfFocus=true
|
|
73
|
+
returnFocusOnDeactivate=this.isOpenStable
|
|
74
|
+
initialFocus=(or @initialFocus this.panel)
|
|
75
|
+
onDeactivate=(optional @onTrapDeactivation)
|
|
76
|
+
preventScroll=true
|
|
77
|
+
clickOutsideDeactivates=true
|
|
78
|
+
fallbackFocus=(concat '#' panelId)
|
|
79
|
+
)
|
|
80
|
+
@focusTrapOptions
|
|
64
81
|
)
|
|
65
82
|
}}
|
|
66
83
|
>
|
|
@@ -75,87 +92,29 @@
|
|
|
75
92
|
</div>
|
|
76
93
|
{{#if this.ownFocus}}
|
|
77
94
|
<p id={{descriptionId}} {{screen-reader-only}}>
|
|
78
|
-
|
|
79
|
-
</p>
|
|
80
|
-
{{/if}}
|
|
81
|
-
<div
|
|
82
|
-
tabindex={{this.tabindex}}
|
|
83
|
-
{{mutation-observer
|
|
84
|
-
onMutation=this.onMutation
|
|
85
|
-
observerOptions=(hash
|
|
86
|
-
attributes=true childList=true characterData=true subtree=true
|
|
87
|
-
)
|
|
88
|
-
}}
|
|
89
|
-
>
|
|
90
|
-
{{yield to="content"}}
|
|
91
|
-
</div>
|
|
92
|
-
</EuiPanel>
|
|
93
|
-
</EuiPortal>
|
|
94
|
-
{{/if}}
|
|
95
|
-
</div>
|
|
96
|
-
{{else}}
|
|
97
|
-
<div
|
|
98
|
-
class={{classes}}
|
|
99
|
-
...attributes
|
|
100
|
-
tabindex="-1"
|
|
101
|
-
{{on-key "_all" this.onKeyDown}}
|
|
102
|
-
{{did-insert this.didInsertPopover}}
|
|
103
|
-
{{did-update this.didUpdateIsOpen @isOpen}}
|
|
104
|
-
{{did-update this.didUpdateRepositionOnScroll @repositionOnScroll}}
|
|
105
|
-
>
|
|
106
|
-
<div
|
|
107
|
-
class="euiPopover__anchor {{@anchorClassName}}"
|
|
108
|
-
{{did-insert this.registerButton}}
|
|
109
|
-
>
|
|
110
|
-
{{yield to="button"}}
|
|
111
|
-
</div>
|
|
112
|
-
{{#if
|
|
113
|
-
(and (not this.suppressingPopover) (or this.isOpen this.isClosing))
|
|
114
|
-
}}
|
|
115
|
-
<EuiPortal @insert={{@insert}}>
|
|
116
|
-
<EuiPanel
|
|
117
|
-
class={{panelClasses}}
|
|
118
|
-
tabindex={{if this.ownFocus "0"}}
|
|
119
|
-
aria-live={{if this.ownFocus "off" "assertive"}}
|
|
120
|
-
role="dialog"
|
|
121
|
-
aria-label={{@ariaLabel}}
|
|
122
|
-
aria-labelledby={{@ariaLabelledBy}}
|
|
123
|
-
aria-modal="true"
|
|
124
|
-
aria-describedby={{if this.ownFocus descriptionId}}
|
|
125
|
-
@hasShadow={{false}}
|
|
126
|
-
@paddingSize={{this.panelPaddingSize}}
|
|
127
|
-
{{simple-style this._popoverStyles}}
|
|
128
|
-
{{did-insert this.registerPanel}}
|
|
129
|
-
{{outside-click-detector onOutsideClick=this.onClickOutside}}
|
|
130
|
-
{{on-key "Escape" this.onEscapeKey}}
|
|
131
|
-
>
|
|
132
|
-
<div
|
|
133
|
-
class={{concat
|
|
134
|
-
"euiPopover__panelArrow euiPopover__panelArrow--"
|
|
135
|
-
this.arrowPosition
|
|
136
|
-
}}
|
|
137
|
-
style={{this._arrowStyles}}
|
|
138
|
-
>
|
|
139
|
-
{{yield to="arrowChildren"}}
|
|
140
|
-
</div>
|
|
141
|
-
{{#if this.ownFocus}}
|
|
142
|
-
<p id={{descriptionId}} {{screen-reader-only}}>
|
|
143
|
-
"You are in a dialog. To close this dialog, hit escape."
|
|
95
|
+
You are in a dialog. To close this dialog, hit escape.
|
|
144
96
|
</p>
|
|
145
97
|
{{/if}}
|
|
146
98
|
<div
|
|
147
99
|
{{mutation-observer
|
|
148
100
|
onMutation=this.onMutation
|
|
149
|
-
observerOptions=(
|
|
150
|
-
|
|
101
|
+
observerOptions=(merge
|
|
102
|
+
(hash
|
|
103
|
+
attributes=true
|
|
104
|
+
childList=true
|
|
105
|
+
characterData=true
|
|
106
|
+
subtree=true
|
|
107
|
+
)
|
|
108
|
+
@mutationObserverOptions
|
|
151
109
|
)
|
|
152
110
|
}}
|
|
153
111
|
>
|
|
154
112
|
{{yield to="content"}}
|
|
155
113
|
</div>
|
|
156
114
|
</EuiPanel>
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
115
|
+
{{/let}}
|
|
116
|
+
</EuiPortal>
|
|
117
|
+
{{/if}}
|
|
118
|
+
|
|
119
|
+
</div>
|
|
161
120
|
{{/let}}
|
|
@@ -2,18 +2,23 @@
|
|
|
2
2
|
(if
|
|
3
3
|
@disabled
|
|
4
4
|
"disabled"
|
|
5
|
-
(if
|
|
6
|
-
|
|
5
|
+
(if
|
|
6
|
+
@isComplete
|
|
7
|
+
"complete"
|
|
8
|
+
(if @isSelected "current" (arg-or-default @status "incomplete"))
|
|
9
|
+
)
|
|
10
|
+
)
|
|
11
|
+
as |status|
|
|
7
12
|
}}
|
|
8
13
|
<li class="euiStepHorizontal__item" aria-current={{if @isSelected "step"}}>
|
|
9
14
|
<button
|
|
10
15
|
type="button"
|
|
11
16
|
class={{class-names
|
|
12
17
|
"euiStepHorizontal"
|
|
13
|
-
(if
|
|
14
|
-
(if
|
|
15
|
-
(if
|
|
16
|
-
(if (
|
|
18
|
+
(if (eq status "current") "euiStepHorizontal-isSelected")
|
|
19
|
+
(if (eq status "complete") "euiStepHorizontal-isComplete")
|
|
20
|
+
(if (eq status "incomplete") "euiStepHorizontal-isIncomplete")
|
|
21
|
+
(if (eq status "disabled") "euiStepHorizontal-isDisabled")
|
|
17
22
|
}}
|
|
18
23
|
title={{@title}}
|
|
19
24
|
disabled={{@disabled}}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export const baseClass = '';
|
|
2
|
+
|
|
3
|
+
const disabledMapping = {
|
|
4
|
+
true: 'euiContextMenuItem-isDisabled'
|
|
5
|
+
};
|
|
6
|
+
|
|
7
|
+
const layoutAlignMapping = {
|
|
8
|
+
primary: `${baseClass}--primary`,
|
|
9
|
+
accent: `${baseClass}--accent`,
|
|
10
|
+
text: `${baseClass}--text`
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const sizeMapping = {
|
|
14
|
+
s: 'euiContextMenuItem--small'
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const mapping: ComponentMapping = {
|
|
18
|
+
base: baseClass,
|
|
19
|
+
properties: {
|
|
20
|
+
disabled: disabledMapping,
|
|
21
|
+
layoutAlign: layoutAlignMapping,
|
|
22
|
+
size: sizeMapping,
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export default mapping;
|