@ember-eui/core 5.0.1 → 5.1.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.
Files changed (168) hide show
  1. package/addon/components/eui-accordion/index.hbs +1 -1
  2. package/addon/components/eui-breadcrumbs/index.hbs +9 -1
  3. package/addon/components/eui-header-links/index.hbs +1 -1
  4. package/addon/components/eui-input-popover/index.hbs +37 -31
  5. package/addon/components/eui-page-header-content/index.hbs +10 -12
  6. package/addon/components/eui-popover/index.hbs +61 -102
  7. package/addon/components/eui-step-horizontal/index.hbs +11 -6
  8. package/addon/helpers/merge.ts +5 -0
  9. package/addon/utils/css-mappings/eui-avatar.ts +1 -0
  10. package/addon/utils/css-mappings/eui-header-links.ts +1 -1
  11. package/app/helpers/merge.js +1 -0
  12. package/docs/layout/{accordion.md → accordion/demo/d01-simple-and-unstyle.md} +18 -22
  13. package/docs/layout/accordion/demo/d02-arrow-display.md +34 -0
  14. package/docs/layout/{accordion-demo/demo2.md → accordion/demo/d03-multiple-accordions.md} +6 -5
  15. package/docs/layout/{accordion-demo/demo3.md → accordion/demo/d04-extra-actions.md} +2 -2
  16. package/docs/layout/{accordion-demo/demo4.md → accordion/demo/d05-opened-on-initial-render.md} +2 -2
  17. package/docs/layout/{accordion-demo/demo5.md → accordion/demo/d06-controlling-toggled-state.md} +3 -2
  18. package/docs/layout/{accordion-demo/demo6.md → accordion/demo/d07-loading-state.md} +2 -1
  19. package/docs/layout/accordion/demo/d08-when-content-changes-dynamically.md +71 -0
  20. package/docs/layout/{accordion-demo/demo8.md → accordion/demo/d09-interactive-content-in-the-trigger.md} +4 -4
  21. package/docs/layout/{accordion-demo/demo9.md → accordion/demo/d10-styled-for-forms.md} +44 -44
  22. package/docs/layout/accordion/index.md +23 -0
  23. package/docs/layout/{bottom-bar-demo/demo1.md → bottom-bar/demo/d01-basic.md} +0 -2
  24. package/docs/layout/{bottom-bar-demo/demo2.md → bottom-bar/demo/d02-positions.md} +0 -0
  25. package/docs/layout/{bottom-bar-demo/demo3.md → bottom-bar/demo/d03-displacement.md} +1 -0
  26. package/docs/layout/bottom-bar/index.md +18 -0
  27. package/docs/layout/flex/demo/d01-flex-group-is-for-a-single-row-layout.md +19 -0
  28. package/docs/layout/flex/demo/d02-flex-items-are-also-flex.md +18 -0
  29. package/docs/layout/flex/demo/d03-spans-instead-of-divs.md +19 -0
  30. package/docs/layout/flex/demo/d04-panels-grow-to-fill-flex-items.md +32 -0
  31. package/docs/layout/flex/demo/d05-turn-off-item-streching.md +12 -0
  32. package/docs/layout/flex/demo/d06-proportional-widths-of-items.md +32 -0
  33. package/docs/layout/flex/demo/d07-justify-and-align.md +11 -0
  34. package/docs/layout/flex/demo/d08-allowing-flex-items-to-wrap.md +43 -0
  35. package/docs/layout/flex/demo/d09-change-direction.md +13 -0
  36. package/docs/layout/flex/demo/d10-flex-grids-are-for-repeatable-items.md +33 -0
  37. package/docs/layout/flex/demo/d11-flex-grids-can-change-direction.md +33 -0
  38. package/docs/layout/flex/demo/d12-flex-grids-and-flex-groups-can-nest.md +30 -0
  39. package/docs/layout/flex/demo/d13-gutter-sizing.md +61 -0
  40. package/docs/layout/flex/demo/d14-responsive-layouts.md +29 -0
  41. package/docs/layout/flex/index.md +18 -0
  42. package/docs/layout/{flyout-demo/demo1.md → flyout/demo/d01-basic.md} +12 -16
  43. package/docs/layout/flyout/demo/d02-more-complicated-flyout.md +195 -0
  44. package/docs/layout/{flyout-demo/demo3.md → flyout/demo/d03-sizing.md} +5 -17
  45. package/docs/layout/{flyout-demo/demo4.md → flyout/demo/d04-adjusting-padding.md} +29 -36
  46. package/docs/layout/{flyout-demo/demo5.md → flyout/demo/d05-adding-a-banner.md} +6 -6
  47. package/docs/layout/{flyout-demo/demo6.md → flyout/demo/d06-without-ownfocus.md} +11 -14
  48. package/docs/layout/{flyout-demo/demo7.md → flyout/demo/d07-push-versus-overlay.md} +17 -3
  49. package/docs/layout/flyout/demo/d08-understanding-max-width.md +9 -0
  50. package/docs/layout/flyout/index.md +7 -0
  51. package/docs/layout/{header-demo/demo1.md → header/demo/d01-header.md} +138 -120
  52. package/docs/layout/header/demo/d02-sections.md +9 -0
  53. package/docs/layout/{header-demo/demo2.md → header/demo/d03-header-links.md} +2 -2
  54. package/docs/layout/{header-demo/demo3.md → header/demo/d04-fixed-header.md} +1 -1
  55. package/docs/layout/{header-demo/demo4.md → header/demo/d05-dark-theme.md} +3 -3
  56. package/docs/layout/{header-demo/demo5.md → header/demo/d06-portal-content-in-the-header.md} +20 -9
  57. package/docs/layout/{header-demo/demo6.md → header/demo/d07-header-notifications.md} +1 -1
  58. package/docs/layout/{header-demo/demo7.md → header/demo/d08-stacked-headers.md} +47 -26
  59. package/docs/layout/header/demo/d09-the-elastic-navigation-pattern.md +9 -0
  60. package/docs/layout/header/index.md +7 -0
  61. package/docs/layout/horizontal-rule/demo/d01-size.md +14 -0
  62. package/docs/layout/horizontal-rule/demo/d02-margins.md +38 -0
  63. package/docs/layout/horizontal-rule/horizontal-rule.md +7 -0
  64. package/docs/layout/modal/demo/d01-modal.md +73 -0
  65. package/docs/layout/modal/demo/d02-forms-in-a-modal.md +107 -0
  66. package/docs/layout/modal/demo/d03-confirm-modal.md +86 -0
  67. package/docs/layout/modal/demo/d04-loading-and-disabling-confirm-button.md +80 -0
  68. package/docs/layout/{modal-demo/demo5.md → modal/demo/d05-widths.md} +20 -39
  69. package/docs/layout/modal/index.md +13 -0
  70. package/docs/layout/page-header/demo/{demo1.md → d01-basic.md} +0 -2
  71. package/docs/layout/page-header/demo/{demo2.md → d02-tabs-in-the-page-header.md} +1 -2
  72. package/docs/layout/page-header/demo/{demo3.md → d03-tabs-in-the-page-header.md} +2 -3
  73. package/docs/layout/page-header/demo/{demo4.md → d04-breadcrumbs-in-the-page-header.md} +3 -2
  74. package/docs/layout/page-header/demo/{demo5.md → d05-breadcrumbs-in-the-page-header.md} +1 -28
  75. package/docs/layout/page-header/demo/{demo6.md → d06-customizing-the-page-header.md} +0 -0
  76. package/docs/layout/page-header/index.md +1 -2
  77. package/docs/layout/{panel-demo/demo1.md → panel/demo/d01-padding.md} +0 -0
  78. package/docs/layout/{panel-demo/demo2.md → panel/demo/d02-shadow-and-border.md} +2 -2
  79. package/docs/layout/{panel-demo/demo3.md → panel/demo/d03-colors-and-corners.md} +0 -0
  80. package/docs/layout/{panel-demo/demo4.md → panel/demo/d04-growing-height.md} +0 -0
  81. package/docs/layout/{panel-demo/demo5.md → panel/demo/d05-split-panels.md} +1 -1
  82. package/docs/layout/{panel.md → panel/index.md} +4 -0
  83. package/docs/layout/{popover-demo/demo1.md → popover/demo/d01-basic.md} +6 -4
  84. package/docs/layout/{popover-demo/demo2.md → popover/demo/d02-anchor-position.md} +0 -0
  85. package/docs/layout/popover/demo/d03-popover-titles-and-footers.md +133 -0
  86. package/docs/layout/{popover-demo/demo5.md → popover/demo/d04-popover-padding-sizes.md} +56 -31
  87. package/docs/layout/{popover-demo/demo6.md → popover/demo/d05-panel-class-name.md} +3 -3
  88. package/docs/layout/{popover-demo/demo7.md → popover/demo/d06-popover-with-block-level-display.md} +2 -3
  89. package/docs/layout/{popover-demo/demo3.md → popover/demo/d07-popover-on-a-fixed-element.md} +3 -11
  90. package/docs/layout/{popover-demo/demo8.md → popover/demo/d08-constraining-a-popover-inside-a-container.md} +0 -0
  91. package/docs/layout/{popover-demo/demo9.md → popover/demo/d09-popover-attached-to-input-element.md} +14 -12
  92. package/docs/layout/popover/demo/d10-setting-an-initial-focus.md +61 -0
  93. package/docs/layout/{popover-demo/demo10.md → popover/demo/d11-removing-the-focus-trap.md} +1 -1
  94. package/docs/layout/popover/demo/d12-popover-using-and-html-element-as-the-anchor.md +9 -0
  95. package/docs/layout/popover/index.md +7 -0
  96. package/docs/layout/resizable-container/demo/d01-horizontal-resizing.md +10 -0
  97. package/docs/layout/resizable-container/demo/d02-resizable-panel-options.md +10 -0
  98. package/docs/layout/resizable-container/demo/d03-horizontal-resizing-with-controlled-widths.md +10 -0
  99. package/docs/layout/resizable-container/demo/d04-vertical-resizing.md +10 -0
  100. package/docs/layout/resizable-container/demo/d05-collapsible-resizable-panels.md +10 -0
  101. package/docs/layout/resizable-container/demo/d06-responsive-layout.md +10 -0
  102. package/docs/layout/resizable-container/demo/d07-collapsible-panels-options.md +10 -0
  103. package/docs/layout/resizable-container/demo/d08-collapsible-panels-with-external-control.md +10 -0
  104. package/docs/layout/resizable-container/index.md +15 -0
  105. package/docs/layout/spacer/demo/d01-basic.md +44 -0
  106. package/docs/layout/spacer/index.md +7 -0
  107. package/docs/navigation/{breadcrumbs-demo/demo1.md → breadcrumbs/demo/d01-basic.md} +9 -6
  108. package/docs/navigation/{breadcrumbs-demo/demo2.md → breadcrumbs/demo/d02-limit-the-number-of-breadcrumbs.md} +0 -0
  109. package/docs/navigation/{breadcrumbs-demo/demo3.md → breadcrumbs/demo/d03-truncate-each-breadcrumb.md} +0 -0
  110. package/docs/navigation/{breadcrumbs-demo/demo4.md → breadcrumbs/demo/d04-truncate-each-breadcrumb-on-each-object.md} +0 -0
  111. package/docs/navigation/{breadcrumbs-demo/demo5.md → breadcrumbs/demo/d05-responsive.md} +14 -0
  112. package/docs/navigation/{breadcrumbs-demo/demo6.md → breadcrumbs/demo/d06-color-for-emphasis.md} +12 -23
  113. package/docs/navigation/breadcrumbs/index.md +7 -0
  114. package/docs/navigation/button/demo/d01-basic.md +85 -0
  115. package/docs/navigation/button/demo/d02-empty-button.md +68 -0
  116. package/docs/navigation/button/demo/d03-flush-empty-button.md +32 -0
  117. package/docs/navigation/button/demo/d04-buttons-with-icons.md +213 -0
  118. package/docs/navigation/button/demo/d05-icon-buttons.md +139 -0
  119. package/docs/navigation/button/demo/d06-buttons-as-links.md +51 -0
  120. package/docs/navigation/button/demo/d07-loading-state.md +38 -0
  121. package/docs/navigation/button/demo/d08-split-buttons.md +43 -0
  122. package/docs/navigation/button/demo/d09-toggle-buttons.md +10 -0
  123. package/docs/navigation/button/demo/d10-button-groups.md +10 -0
  124. package/docs/navigation/button/demo/d11-ghost.md +10 -0
  125. package/docs/navigation/button/index.md +13 -0
  126. package/docs/navigation/steps-demo/demo3.md +0 -1
  127. package/docs/{layout/page-template/demo/demo1.md → templates/page-template/demo/d01-a-full-page-with-everything.md} +1 -24
  128. package/docs/{layout/page-template/demo/demo2.md → templates/page-template/demo/d02-restricting-page-width.md} +0 -0
  129. package/docs/{layout/page-template/demo/demo3.md → templates/page-template/demo/d03-showing-a-bottom-bar.md} +0 -0
  130. package/docs/{layout/page-template/demo/demo4.md → templates/page-template/demo/d04-centered-body.md} +1 -1
  131. package/docs/{layout/page-template/demo/demo5.md → templates/page-template/demo/d05-centered-content.md} +1 -1
  132. package/docs/{layout/page-template/demo/demo6.md → templates/page-template/demo/d06-a-simple-page-with-tabs.md} +0 -0
  133. package/docs/{layout/page-template/demo/demo7.md → templates/page-template/demo/d07-full-height-layout.md} +0 -0
  134. package/docs/{layout/page-template/demo/demo8.md → templates/page-template/demo/d08-simple-layout-with-centered-body.md} +0 -0
  135. package/docs/{layout/page-template/demo/demo9.md → templates/page-template/demo/d09-simple-layout-with-centered-content.md} +0 -0
  136. package/docs/{layout/page-template/demo/demo10.md → templates/page-template/demo/d10-a-simple-page-layout-with-custom-content.md} +0 -0
  137. package/docs/templates/page-template/index.md +37 -0
  138. package/docs/templates/sitewide-search/demo/d01-basic-setup.md +10 -0
  139. package/docs/templates/sitewide-search/demo/d02-options.md +10 -0
  140. package/docs/templates/sitewide-search/index.md +9 -0
  141. package/docs/templates/super-date-picker/demo/d01-update-button.md +10 -0
  142. package/docs/templates/super-date-picker/demo/d02-quick-select-panels.md +10 -0
  143. package/docs/templates/super-date-picker/demo/d03-sizing.md +10 -0
  144. package/docs/templates/super-date-picker/demo/d04-auto-refresh.md +11 -0
  145. package/docs/templates/super-date-picker/demo/d05-elastic-pattern-with-kql.md +10 -0
  146. package/docs/templates/super-date-picker/index.md +12 -0
  147. package/package.json +3 -3
  148. package/docs/layout/accordion-demo/demo1.md +0 -33
  149. package/docs/layout/accordion-demo/demo7.md +0 -66
  150. package/docs/layout/bottom-bar.md +0 -1
  151. package/docs/layout/flex-demo/demo1.md +0 -358
  152. package/docs/layout/flex.md +0 -1
  153. package/docs/layout/flyout-demo/demo2.md +0 -87
  154. package/docs/layout/flyout.md +0 -1
  155. package/docs/layout/header.md +0 -1
  156. package/docs/layout/horizontal-rule-demo/demo1.md +0 -70
  157. package/docs/layout/horizontal-rule.md +0 -1
  158. package/docs/layout/modal-demo/demo1.md +0 -97
  159. package/docs/layout/modal-demo/demo2.md +0 -126
  160. package/docs/layout/modal-demo/demo3.md +0 -55
  161. package/docs/layout/modal-demo/demo4.md +0 -65
  162. package/docs/layout/modal.md +0 -1
  163. package/docs/layout/page-template/index.md +0 -11
  164. package/docs/layout/popover-demo/demo4.md +0 -118
  165. package/docs/layout/popover.md +0 -1
  166. package/docs/navigation/breadcrumbs.md +0 -1
  167. package/docs/navigation/button-demo/demo1.md +0 -413
  168. package/docs/navigation/button.md +0 -1
@@ -0,0 +1,71 @@
1
+ ---
2
+ order: 8
3
+ ---
4
+
5
+ # When content changes dynamically
6
+
7
+ <EuiText>
8
+ If an accordion’s content changes height while the accordion is open, it will
9
+ resize dynamically.
10
+ </EuiText>
11
+
12
+ ```hbs template
13
+ <EuiAccordion @paddingSize='s' @initialIsOpen={{true}}>
14
+ <:buttonContent>
15
+ Click me to toggle close / open
16
+ </:buttonContent>
17
+ <:content>
18
+
19
+ <EuiPanel @color='subdued'>
20
+ <EuiText @size="s">
21
+ <p>
22
+ <EuiButton
23
+ @size='s'
24
+ @iconType='plusInCircleFilled'
25
+ {{on 'click' (fn this.incrementDecreaseRows 'add')}}
26
+ >
27
+ Increase height to
28
+ {{add this.counter 1}}
29
+ items
30
+ </EuiButton>
31
+ <EuiButton
32
+ @size='s'
33
+ @iconType='minusInCircleFilled'
34
+ {{on 'click' (fn this.incrementDecreaseRows 'sub')}}
35
+ @isDisabled={{eq this.counter 1}}
36
+ >
37
+ Decrease height to
38
+ {{sub this.counter 1}}
39
+ items
40
+ </EuiButton>
41
+ </p>
42
+ <ul>
43
+ {{#each (range 0 this.counter) as |row|}}
44
+ <li> Row {{add row 1}}</li>
45
+ {{/each}}
46
+ </ul>
47
+ </EuiText>
48
+ </EuiPanel>
49
+
50
+ </:content>
51
+ </EuiAccordion>
52
+ ```
53
+
54
+ ```js component
55
+ import Component from '@glimmer/component';
56
+ import { tracked } from '@glimmer/tracking';
57
+ import { action } from '@ember/object';
58
+
59
+ export default class AccordionDemo8Component extends Component {
60
+ @tracked counter = 1;
61
+
62
+ @action
63
+ incrementDecreaseRows(actionType) {
64
+ if (actionType == 'add') {
65
+ this.counter++;
66
+ } else {
67
+ this.counter--;
68
+ }
69
+ }
70
+ }
71
+ ```
@@ -1,5 +1,5 @@
1
1
  ---
2
- order: 8
2
+ order: 9
3
3
  ---
4
4
 
5
5
  # Interactive content in the trigger
@@ -32,12 +32,12 @@ order: 8
32
32
  <EuiSpacer />
33
33
  <EuiAccordion @paddingSize='s' @buttonElement="div">
34
34
  <:buttonContent>
35
- <EuiText
35
+ <EuiLink
36
36
  onClick={{this.onClick}}
37
- href='#/layout/accordion#interactive-content-in-the-trigger'
37
+ @href='#docfy-demo-docs-layout-accordion-d09-interactive-content-in-the-trigger'
38
38
  >
39
39
  This is a nested link
40
- </EuiText>
40
+ </EuiLink>
41
41
  </:buttonContent>
42
42
  <:content>
43
43
  <EuiPanel @color='subdued'>
@@ -1,5 +1,5 @@
1
1
  ---
2
- order: 9
2
+ order: 10
3
3
  ---
4
4
 
5
5
  # Styled for forms
@@ -31,19 +31,15 @@ order: 9
31
31
  </EuiText>
32
32
 
33
33
  ```hbs template
34
- <EuiAccordion
35
- @paddingSize='l'
36
- @element='fieldset'
37
- @className='euiAccordionForm'
38
- @buttonClassName='euiAccordionForm__button'
39
- @extraAction={{true}}
40
- >
41
- <:buttonContent>
42
- <EuiText
43
- @onClick={{this.onClick}}
44
- @href='#/layout/accordion#interactive-content-in-the-trigger'
45
- @size='xs'
46
- >
34
+ <div>
35
+ <EuiAccordion
36
+ class='euiAccordionForm'
37
+ @paddingSize='l'
38
+ @element='fieldset'
39
+ @buttonClassName='euiAccordionForm__button'
40
+ @extraAction={{true}}
41
+ >
42
+ <:buttonContent>
47
43
  <div>
48
44
  <EuiFlexGroup
49
45
  @gutterSize='s'
@@ -69,35 +65,43 @@ order: 9
69
65
  </p>
70
66
  </EuiText>
71
67
  </div>
72
- </EuiText>
73
- </:buttonContent>
74
- <:content>
75
- <EuiForm @component='form'>
76
- <EuiFlexGroup>
77
- <EuiFlexItem>
78
- <EuiFormRow @label='Username'>
79
- <EuiFieldText @icon='user' @placeholder='John' />
80
- </EuiFormRow>
81
- </EuiFlexItem>
68
+ </:buttonContent>
69
+ <:content>
70
+ <EuiForm @component='form'>
71
+ <EuiFlexGroup @gutterSize="l">
72
+ <EuiFlexItem>
73
+ <EuiFormRow @label='Username'>
74
+ <EuiFieldText @icon='user' @placeholder='John' />
75
+ </EuiFormRow>
76
+ </EuiFlexItem>
82
77
 
83
- <EuiFlexItem>
84
- <EuiFormRow
85
- @label='Password'
86
- @helpText='Must include one number and one symbol'
87
- >
88
- <EuiFieldPassword @icon='lock' />
89
- </EuiFormRow>
90
- </EuiFlexItem>
91
- </EuiFlexGroup>
78
+ <EuiFlexItem>
79
+ <EuiFormRow
80
+ @label='Password'
81
+ @helpText='Must include one number and one symbol'
82
+ >
83
+ <EuiFieldPassword @icon='lock' />
84
+ </EuiFormRow>
85
+ </EuiFlexItem>
86
+ </EuiFlexGroup>
92
87
 
93
- <EuiSpacer @size='m' />
88
+ <EuiSpacer @size='m' />
94
89
 
95
- <EuiFormRow @label='Body'>
96
- <EuiTextArea @placeholder='I am a textarea, put some content in me!' />
97
- </EuiFormRow>
98
- </EuiForm>
99
- </:content>
100
- </EuiAccordion>
90
+ <EuiFormRow @label='Body'>
91
+ <EuiTextArea placeholder='I am a textarea, put some content in me!' />
92
+ </EuiFormRow>
93
+ </EuiForm>
94
+ </:content>
95
+ <:extraAction>
96
+ <EuiButtonIcon
97
+ @iconType="cross"
98
+ @color="danger"
99
+ class="euiAccordionForm__extraAction"
100
+ aria-label="Delete"
101
+ />
102
+ </:extraAction>
103
+ </EuiAccordion>
104
+ </div>
101
105
  ```
102
106
 
103
107
  ```js component
@@ -106,9 +110,5 @@ import { tracked } from '@glimmer/tracking';
106
110
  import { action } from '@ember/object';
107
111
 
108
112
  export default class AccordionDemo8Component extends Component {
109
- @action
110
- onClick(e) {
111
- e.stopPropagation();
112
- }
113
113
  }
114
114
  ```
@@ -0,0 +1,23 @@
1
+ ---
2
+ title: Accordion
3
+ ---
4
+
5
+ <EuiPageHeader @pageTitle="Accordion"/>
6
+ <EuiSpacer @size="l" />
7
+
8
+ <EuiCallOut
9
+ @title='Take care when including flex group content within accordions'>
10
+ <:body>
11
+ <EuiText @size='s'>
12
+ <strong>EuiFlexGroup's</strong>
13
+ negative margins can sometimes create scrollbars within
14
+ <strong>EuiAccordion</strong>
15
+ because of the overflow tricks used to hide content. If you run into this
16
+ issue make sure your paddingSize prop is large enough to account for the
17
+ <EuiCode>gutterSize</EuiCode>
18
+ of any nested flex groups.
19
+ </EuiText>
20
+ </:body>
21
+ </EuiCallOut>
22
+
23
+ <EuiHorizontalRule/>
@@ -2,8 +2,6 @@
2
2
  order: 1
3
3
  ---
4
4
 
5
- # Basic
6
-
7
5
  <EuiText>
8
6
  <p>
9
7
  <strong>EuiBottomBar</strong> is a simple wrapper component that does nothing but affix a dark bar (usually filled with buttons) to the bottom of the page. Use it when you have really long pages or complicated, multi-page forms. In the case of forms, only invoke it if a form is in a savable state.
@@ -20,6 +20,7 @@ order: 3
20
20
  </EuiText>
21
21
 
22
22
  ```hbs template
23
+ <TodoText @text="missing euiButtonGroupButton component"/>
23
24
  <EuiFlexGroup>
24
25
  <EuiFlexItem>
25
26
  <EuiButton
@@ -0,0 +1,18 @@
1
+ ---
2
+ title: Bottom bar
3
+ ---
4
+
5
+ <EuiPageHeader @pageTitle="Bottom bar"/>
6
+
7
+ <EuiSpacer/>
8
+
9
+ <EuiCallOut>
10
+ <:body>
11
+ <EuiText @size='s'>
12
+ <strong>EuiBottomBar</strong>
13
+ offers a quick way to apply a bottom bar to your page layouts.
14
+ </EuiText>
15
+ </:body>
16
+ </EuiCallOut>
17
+
18
+ <EuiHorizontalRule/>
@@ -0,0 +1,19 @@
1
+ ---
2
+ order: 1
3
+ ---
4
+
5
+ # Flex group is for a single row layout
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup class="flex-demo">
9
+ <EuiFlexItem>Content grid item</EuiFlexItem>
10
+ <EuiFlexItem>
11
+ <p>Another content grid item</p>
12
+ <EuiSpacer />
13
+ <p>
14
+ Note how both of these are the same width and height despite having
15
+ different content?
16
+ </p>
17
+ </EuiFlexItem>
18
+ </EuiFlexGroup>
19
+ ```
@@ -0,0 +1,18 @@
1
+ ---
2
+ order: 2
3
+ ---
4
+
5
+ # Flex items are also flex
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup class="flex-demo">
9
+ <EuiFlexItem>
10
+ <EuiButton @fill={{true}}>Buttons will widen</EuiButton>
11
+ </EuiFlexItem>
12
+ <EuiFlexItem>
13
+ <div>
14
+ <EuiButton @fill={{true}}>Unless you wrap them</EuiButton>
15
+ </div>
16
+ </EuiFlexItem>
17
+ </EuiFlexGroup>
18
+ ```
@@ -0,0 +1,19 @@
1
+ ---
2
+ order: 3
3
+ ---
4
+
5
+ # Spans instead of divs
6
+
7
+ ```hbs template
8
+ <button>
9
+ <EuiFlexGroup class="flex-demo" @tagName="span">
10
+ <EuiFlexItem @tagName="span">
11
+ These items are within a button
12
+ </EuiFlexItem>
13
+
14
+ <EuiFlexItem @tagName="span">
15
+ So they all specify component=&ldquo;span&rdquo;
16
+ </EuiFlexItem>
17
+ </EuiFlexGroup>
18
+ </button>
19
+ ```
@@ -0,0 +1,32 @@
1
+ ---
2
+ order: 4
3
+ ---
4
+
5
+ # Panels grow to fill flex items
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup>
9
+ <EuiFlexItem>
10
+ <EuiText>
11
+ <p>
12
+ <EuiCode>FlexItem</EuiCode>
13
+ </p>
14
+ <p>A side nav might be in this one.</p>
15
+ <p>And you would want the panel on the right to expand with it.</p>
16
+ </EuiText>
17
+ </EuiFlexItem>
18
+
19
+ <EuiFlexItem>
20
+ <EuiPanel>
21
+ <strong>EuiPanel</strong>
22
+ </EuiPanel>
23
+ </EuiFlexItem>
24
+
25
+ <EuiFlexItem>
26
+ <EuiPanel @grow={{false}}>
27
+ Another <strong>EuiPanel</strong>, with{' '}
28
+ <EuiCode>grow=&#123;false&#125;</EuiCode>.
29
+ </EuiPanel>
30
+ </EuiFlexItem>
31
+ </EuiFlexGroup>
32
+ ```
@@ -0,0 +1,12 @@
1
+ ---
2
+ order: 5
3
+ ---
4
+
5
+ # Turn off item stretching
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup class="flex-demo">
9
+ <EuiFlexItem @grow={{false}}>This item won&rsquo;t grow</EuiFlexItem>
10
+ <EuiFlexItem>But this item will.</EuiFlexItem>
11
+ </EuiFlexGroup>
12
+ ```
@@ -0,0 +1,32 @@
1
+ ---
2
+ order: 6
3
+ ---
4
+
5
+ # Proportional widths of items
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGroup class="flex-demo">
10
+ <EuiFlexItem @grow={{1}}>1</EuiFlexItem>
11
+ <EuiFlexItem @grow={{2}}>
12
+ 2<br />
13
+ wraps content if necessary
14
+ </EuiFlexItem>
15
+ <EuiFlexItem @grow={{3}}>
16
+ 3<br />
17
+ expands_to_fit_if_content_cannot_wrap
18
+ </EuiFlexItem>
19
+ <EuiFlexItem @grow={{4}}>4</EuiFlexItem>
20
+ </EuiFlexGroup>
21
+
22
+ <EuiSpacer />
23
+
24
+ <EuiFlexGroup class="flex-demo">
25
+ <EuiFlexItem @grow={{6}}>6</EuiFlexItem>
26
+ <EuiFlexItem @grow={{3}}>3</EuiFlexItem>
27
+ <EuiFlexItem @grow={{1}}>1</EuiFlexItem>
28
+ <EuiFlexItem @grow={{3}}>3</EuiFlexItem>
29
+ <EuiFlexItem @grow={{6}}>6</EuiFlexItem>
30
+ </EuiFlexGroup>
31
+ </div>
32
+ ```
@@ -0,0 +1,11 @@
1
+ ---
2
+ order: 7
3
+ ---
4
+
5
+ # Justify and align
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup class="flex-demo" @justifyContent="spaceAround">
9
+ <EuiFlexItem @grow={{false}}>I&rsquo;m a single centered item!</EuiFlexItem>
10
+ </EuiFlexGroup>
11
+ ```
@@ -0,0 +1,43 @@
1
+ ---
2
+ order: 8
3
+ ---
4
+
5
+ # Allowing flex items to wrap
6
+
7
+
8
+ ```hbs template
9
+ <EuiFlexGroup class="flex-demo" @wrap={{true}}>
10
+ <EuiFlexItem style="min-width: 300">Min-width 300px</EuiFlexItem>
11
+
12
+ <EuiFlexItem style="min-width: 300">Min-width 300px</EuiFlexItem>
13
+
14
+ <EuiFlexItem style="min-width: 300">Min-width 300px</EuiFlexItem>
15
+ </EuiFlexGroup>
16
+
17
+ <EuiHorizontalRule/>
18
+
19
+ <EuiFlexGroup class="flex-demo" @justifyContent="spaceBetween">
20
+ <EuiFlexItem @grow={{false}}>One here on the left.</EuiFlexItem>
21
+ <EuiFlexItem @grow={{false}}>The other over here on the right.</EuiFlexItem>
22
+ </EuiFlexGroup>
23
+
24
+ <EuiHorizontalRule/>
25
+
26
+ <EuiFlexGroup class="flex-demo" @justifyContent="spaceEvenly">
27
+ <EuiFlexItem @grow={{false}}>Spaced evenly between this one.</EuiFlexItem>
28
+ <EuiFlexItem @grow={{false}}>And this one here on the right.</EuiFlexItem>
29
+ </EuiFlexGroup>
30
+
31
+ <EuiHorizontalRule/>
32
+
33
+ <EuiFlexGroup class="flex-demo" @alignItems="center">
34
+ <EuiFlexItem @grow={{false}}>
35
+ <p>I</p>
36
+ <p>am</p>
37
+ <p>a</p>
38
+ <p>tall</p>
39
+ <p>item</p>
40
+ </EuiFlexItem>
41
+ <EuiFlexItem>I am vertically centered!</EuiFlexItem>
42
+ </EuiFlexGroup>
43
+ ```
@@ -0,0 +1,13 @@
1
+ ---
2
+ order: 9
3
+ ---
4
+
5
+ # Change direction
6
+
7
+ ```hbs template
8
+ <EuiFlexGroup class="flex-demo" @direction="column">
9
+ <EuiFlexItem @grow={{false}}>Content grid item</EuiFlexItem>
10
+ <EuiFlexItem @grow={{false}}>Another content grid item</EuiFlexItem>
11
+ <EuiFlexItem @grow={{false}}>Using the column direction</EuiFlexItem>
12
+ </EuiFlexGroup>
13
+ ```
@@ -0,0 +1,33 @@
1
+ ---
2
+ order: 10
3
+ ---
4
+
5
+ # Flex grids are for repeatable items
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGrid class="flex-demo" @columns={{3}}>
10
+ <EuiFlexItem>
11
+ <div>One</div>
12
+ </EuiFlexItem>
13
+ <EuiFlexItem>
14
+ <div>Two</div>
15
+ </EuiFlexItem>
16
+ <EuiFlexItem>
17
+ <div>Three</div>
18
+ </EuiFlexItem>
19
+ <EuiFlexItem>
20
+ <div>Four</div>
21
+ </EuiFlexItem>
22
+ <EuiFlexItem>
23
+ <div>Five</div>
24
+ </EuiFlexItem>
25
+ <EuiFlexItem>
26
+ <div>Six</div>
27
+ </EuiFlexItem>
28
+ <EuiFlexItem>
29
+ <div>Seven</div>
30
+ </EuiFlexItem>
31
+ </EuiFlexGrid>
32
+ </div>
33
+ ```
@@ -0,0 +1,33 @@
1
+ ---
2
+ order: 11
3
+ ---
4
+
5
+ # Flex grids can change direction
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGrid class="flex-demo" @columns={{2}} @direction="column">
10
+ <EuiFlexItem>
11
+ <div>One</div>
12
+ </EuiFlexItem>
13
+ <EuiFlexItem>
14
+ <div>Two</div>
15
+ </EuiFlexItem>
16
+ <EuiFlexItem>
17
+ <div>Three</div>
18
+ </EuiFlexItem>
19
+ <EuiFlexItem>
20
+ <div>Four</div>
21
+ </EuiFlexItem>
22
+ <EuiFlexItem>
23
+ <div>Five</div>
24
+ </EuiFlexItem>
25
+ <EuiFlexItem>
26
+ <div>Six</div>
27
+ </EuiFlexItem>
28
+ <EuiFlexItem>
29
+ <div>Seven</div>
30
+ </EuiFlexItem>
31
+ </EuiFlexGrid>
32
+ </div>
33
+ ```
@@ -0,0 +1,30 @@
1
+ ---
2
+ order: 12
3
+ ---
4
+
5
+ # Flex grids and flex groups can nest
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGroup class="flex-demo">
10
+ <EuiFlexItem @grow={{false}}>
11
+ <div>Flex Group</div>
12
+ <EuiSpacer />
13
+ <EuiFlexGroup class="flex-demo">
14
+ <EuiFlexItem>Nested Grid One</EuiFlexItem>
15
+ <EuiFlexItem>Nested Grid Two</EuiFlexItem>
16
+ </EuiFlexGroup>
17
+ </EuiFlexItem>
18
+ <EuiFlexItem @grow={{false}}>
19
+ <div>Flex Grid</div>
20
+ <EuiSpacer />
21
+ <EuiFlexGrid @columns={{3}}>
22
+ <EuiFlexItem>Nested Grid One</EuiFlexItem>
23
+ <EuiFlexItem>Nested Grid Two</EuiFlexItem>
24
+ <EuiFlexItem>Nested Grid Three</EuiFlexItem>
25
+ <EuiFlexItem>Nested Grid Four</EuiFlexItem>
26
+ </EuiFlexGrid>
27
+ </EuiFlexItem>
28
+ </EuiFlexGroup>
29
+ </div>
30
+ ```
@@ -0,0 +1,61 @@
1
+ ---
2
+ order: 13
3
+ ---
4
+
5
+ # Gutter sizing
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGroup class="flex-demo" @gutterSize="none">
10
+ <EuiFlexItem>None</EuiFlexItem>
11
+ <EuiFlexItem>None</EuiFlexItem>
12
+ <EuiFlexItem>None</EuiFlexItem>
13
+ <EuiFlexItem>None</EuiFlexItem>
14
+ </EuiFlexGroup>
15
+
16
+ <EuiSpacer />
17
+
18
+ <EuiFlexGroup class="flex-demo" @gutterSize="xs">
19
+ <EuiFlexItem>Extra small</EuiFlexItem>
20
+ <EuiFlexItem>Extra small</EuiFlexItem>
21
+ <EuiFlexItem>Extra small</EuiFlexItem>
22
+ <EuiFlexItem>Extra small</EuiFlexItem>
23
+ </EuiFlexGroup>
24
+
25
+ <EuiSpacer />
26
+
27
+ <EuiFlexGroup class="flex-demo" @gutterSize="s">
28
+ <EuiFlexItem>Small</EuiFlexItem>
29
+ <EuiFlexItem>Small</EuiFlexItem>
30
+ <EuiFlexItem>Small</EuiFlexItem>
31
+ <EuiFlexItem>Small</EuiFlexItem>
32
+ </EuiFlexGroup>
33
+
34
+ <EuiSpacer />
35
+
36
+ <EuiFlexGroup class="flex-demo" @gutterSize="m">
37
+ <EuiFlexItem>Medium</EuiFlexItem>
38
+ <EuiFlexItem>Medium</EuiFlexItem>
39
+ <EuiFlexItem>Medium</EuiFlexItem>
40
+ <EuiFlexItem>Medium</EuiFlexItem>
41
+ </EuiFlexGroup>
42
+
43
+ <EuiSpacer />
44
+
45
+ <EuiFlexGroup class="flex-demo" @gutterSize="l">
46
+ <EuiFlexItem>Large (default)</EuiFlexItem>
47
+ <EuiFlexItem>Large (default)</EuiFlexItem>
48
+ <EuiFlexItem>Large (default)</EuiFlexItem>
49
+ <EuiFlexItem>Large (default)</EuiFlexItem>
50
+ </EuiFlexGroup>
51
+
52
+ <EuiSpacer />
53
+
54
+ <EuiFlexGroup class="flex-demo" @gutterSize="xl">
55
+ <EuiFlexItem>Extra Large</EuiFlexItem>
56
+ <EuiFlexItem>Extra Large</EuiFlexItem>
57
+ <EuiFlexItem>Extra Large</EuiFlexItem>
58
+ <EuiFlexItem>Extra Large</EuiFlexItem>
59
+ </EuiFlexGroup>
60
+ </div>
61
+ ```
@@ -0,0 +1,29 @@
1
+ ---
2
+ order: 14
3
+ ---
4
+
5
+ # Responsive layouts
6
+
7
+ ```hbs template
8
+ <div>
9
+ <EuiFlexGroup class="flex-demo" @alignItems="center">
10
+ <EuiFlexItem @grow={{false}}>
11
+ <EuiIcon @type="faceSad" />
12
+ </EuiFlexItem>
13
+ <EuiFlexItem @grow={{false}}>
14
+ On mobile, the icon will show above this text.
15
+ </EuiFlexItem>
16
+ </EuiFlexGroup>
17
+
18
+ <EuiSpacer />
19
+
20
+ <EuiFlexGroup class="flex-demo" @responsive={{false}} @alignItems="center">
21
+ <EuiFlexItem @grow={{false}}>
22
+ <EuiIcon @type="faceHappy" />
23
+ </EuiFlexItem>
24
+ <EuiFlexItem @grow={{false}}>
25
+ On mobile, the icon will stay to the left of this text.
26
+ </EuiFlexItem>
27
+ </EuiFlexGroup>
28
+ </div>
29
+ ```