@ember-eui/core 4.4.0 → 5.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. package/addon/components/common.ts +1 -0
  2. package/addon/components/eui-accordion/index.hbs +106 -85
  3. package/addon/components/eui-accordion/index.ts +58 -19
  4. package/addon/components/eui-auto-sizer/index.hbs +3 -0
  5. package/addon/components/eui-auto-sizer/index.ts +175 -0
  6. package/addon/components/eui-avatar/index.hbs +7 -3
  7. package/addon/components/eui-badge/index.hbs +9 -3
  8. package/addon/components/eui-beta-badge/index.hbs +171 -19
  9. package/addon/components/eui-bottom-bar/index.hbs +43 -12
  10. package/addon/components/eui-bottom-bar/index.ts +75 -32
  11. package/addon/components/eui-breadcrumbs/index.hbs +98 -0
  12. package/addon/components/eui-breadcrumbs/index.ts +194 -0
  13. package/addon/components/eui-button/index.hbs +4 -4
  14. package/addon/components/eui-button-content/index.hbs +6 -2
  15. package/addon/components/eui-button-empty/index.hbs +60 -52
  16. package/addon/components/eui-button-icon/index.hbs +17 -3
  17. package/addon/components/eui-call-out/index.hbs +1 -0
  18. package/addon/components/eui-card/index.hbs +61 -47
  19. package/addon/components/eui-card/index.ts +27 -0
  20. package/addon/components/{eui-card/eui-card-select → eui-card-select}/index.hbs +2 -5
  21. package/addon/components/eui-card-select/index.ts +35 -0
  22. package/addon/components/eui-checkable-card/index.hbs +17 -11
  23. package/addon/components/eui-checkbox/index.hbs +11 -5
  24. package/addon/components/eui-checkbox/index.ts +15 -0
  25. package/addon/components/eui-code/index.hbs +14 -8
  26. package/addon/components/eui-code/index.ts +73 -0
  27. package/addon/components/eui-code-block/controls/index.hbs +26 -0
  28. package/addon/components/eui-code-block/full-screen-display/index.hbs +12 -0
  29. package/addon/components/eui-code-block/index.hbs +144 -9
  30. package/addon/components/eui-code-block/index.ts +290 -0
  31. package/addon/components/eui-code-block/virtualized/index.hbs +30 -0
  32. package/addon/components/eui-code-block/virtualized/index.ts +22 -0
  33. package/addon/components/eui-collapsible-nav/index.hbs +35 -44
  34. package/addon/components/eui-collapsible-nav/index.ts +161 -0
  35. package/addon/components/eui-collapsible-nav-group/index.hbs +114 -66
  36. package/addon/components/eui-combo-box/group/index.hbs +3 -3
  37. package/addon/components/eui-combo-box/index.hbs +5 -2
  38. package/addon/components/eui-combo-box/index.ts +89 -4
  39. package/addon/components/eui-combo-box/options/index.hbs +14 -2
  40. package/addon/components/eui-combo-box/options/index.js +22 -9
  41. package/addon/components/eui-combo-box/trigger/index.hbs +3 -1
  42. package/addon/components/eui-confirm-modal/index.hbs +1 -1
  43. package/addon/components/eui-copy/index.hbs +1 -4
  44. package/addon/components/eui-described-form-group/index.hbs +3 -2
  45. package/addon/components/eui-description-list/index.hbs +23 -0
  46. package/addon/components/eui-description-list-description/index.hbs +3 -0
  47. package/addon/components/eui-description-list-title/index.hbs +3 -0
  48. package/addon/components/eui-dual-range/index.hbs +30 -18
  49. package/addon/components/eui-dual-range/index.ts +36 -10
  50. package/addon/components/eui-empty-prompt/index.hbs +83 -0
  51. package/addon/components/eui-field-number/index.hbs +3 -3
  52. package/addon/components/eui-field-number/types.ts +4 -1
  53. package/addon/components/eui-field-search/index.hbs +2 -1
  54. package/addon/components/eui-field-text/index.hbs +3 -1
  55. package/addon/components/eui-file-picker/index.hbs +15 -11
  56. package/addon/components/eui-file-picker/index.ts +26 -8
  57. package/addon/components/eui-flyout/index.hbs +130 -43
  58. package/addon/components/eui-flyout/index.ts +233 -0
  59. package/addon/components/eui-flyout-body/index.hbs +21 -7
  60. package/addon/components/eui-form-control-layout-custom-icon/types.ts +3 -1
  61. package/addon/components/eui-form-control-layout-icons/types.ts +4 -1
  62. package/addon/components/eui-form-label/index.hbs +1 -1
  63. package/addon/components/eui-form-row/index.hbs +13 -9
  64. package/addon/components/eui-global-toast-list/index.ts +5 -6
  65. package/addon/components/eui-header/index.hbs +18 -3
  66. package/addon/{modifiers/fixed-header.ts → components/eui-header/index.ts} +10 -1
  67. package/addon/components/eui-header-alert/index.hbs +25 -0
  68. package/addon/components/eui-header-breadcrumbs/index.hbs +7 -0
  69. package/addon/components/eui-header-links/index.hbs +41 -0
  70. package/addon/components/eui-header-links/index.ts +14 -0
  71. package/addon/components/eui-header-section-item-button/index.hbs +30 -12
  72. package/addon/components/eui-header-section-item-button/index.ts +131 -0
  73. package/addon/components/eui-health/index.hbs +15 -13
  74. package/addon/components/eui-hide-for/index.hbs +3 -0
  75. package/addon/components/eui-hide-for/index.ts +33 -0
  76. package/addon/components/eui-icon/index.hbs +6 -3
  77. package/addon/components/eui-icon/index.ts +4 -0
  78. package/addon/components/eui-image/index.hbs +63 -25
  79. package/addon/components/eui-image/index.ts +7 -2
  80. package/addon/components/eui-input-popover/index.ts +6 -4
  81. package/addon/components/eui-key-pad-menu/index.hbs +16 -0
  82. package/addon/components/eui-key-pad-menu/key/index.hbs +1 -0
  83. package/addon/components/eui-key-pad-menu-item/index.hbs +66 -0
  84. package/addon/components/eui-key-pad-menu-item/index.ts +11 -0
  85. package/addon/components/eui-link/index.hbs +50 -0
  86. package/addon/components/eui-list-group-item/index.hbs +10 -2
  87. package/addon/components/eui-loading-logo/index.hbs +14 -0
  88. package/addon/components/eui-markdown-editor/index.hbs +4 -1
  89. package/addon/components/eui-markdown-editor/index.ts +54 -0
  90. package/addon/components/eui-markdown-editor-footer/index.hbs +39 -40
  91. package/addon/components/eui-markdown-format/index.ts +1 -1
  92. package/addon/components/eui-markdown-format/markdown-code/index.hbs +2 -2
  93. package/addon/components/eui-markdown-format/markdown-code-block/index.hbs +1 -0
  94. package/addon/components/eui-modal/index.hbs +28 -24
  95. package/addon/components/eui-overlay-mask/index.hbs +4 -4
  96. package/addon/components/eui-overlay-mask/index.ts +14 -1
  97. package/addon/components/eui-page/index.hbs +3 -6
  98. package/addon/components/eui-page-body/index.hbs +47 -15
  99. package/addon/components/eui-page-content/index.hbs +6 -8
  100. package/addon/components/eui-page-content-body/index.hbs +13 -1
  101. package/addon/components/eui-page-content-header/index.hbs +6 -0
  102. package/addon/components/eui-page-header/index.hbs +31 -6
  103. package/addon/components/eui-page-header-content/index.hbs +219 -0
  104. package/addon/components/eui-page-header-content/index.ts +49 -0
  105. package/addon/components/eui-page-side-bar/index.hbs +8 -1
  106. package/addon/components/eui-page-template/index.hbs +417 -0
  107. package/addon/components/eui-page-template/index.ts +89 -0
  108. package/addon/components/eui-panel/index.hbs +58 -12
  109. package/addon/components/eui-popover/index.hbs +8 -4
  110. package/addon/components/eui-popover/index.ts +28 -12
  111. package/addon/components/eui-portal/index.ts +2 -1
  112. package/addon/components/eui-progress/index.hbs +16 -13
  113. package/addon/components/eui-radio/index.hbs +9 -3
  114. package/addon/components/eui-range/index.hbs +33 -11
  115. package/addon/components/eui-range/index.ts +7 -4
  116. package/addon/components/eui-range-input/index.hbs +37 -31
  117. package/addon/components/eui-range-input/types.ts +2 -1
  118. package/addon/components/eui-range-levels/index.hbs +3 -3
  119. package/addon/components/eui-range-levels/index.ts +14 -3
  120. package/addon/components/eui-range-ticks/index.hbs +2 -2
  121. package/addon/components/eui-range-track/index.hbs +10 -2
  122. package/addon/components/eui-range-track/index.ts +23 -6
  123. package/addon/components/eui-show-for/index.hbs +3 -0
  124. package/addon/components/eui-show-for/index.ts +79 -0
  125. package/addon/components/eui-side-nav/index.hbs +161 -36
  126. package/addon/components/eui-side-nav/index.ts +28 -0
  127. package/addon/components/eui-side-nav-item/button/index.hbs +26 -14
  128. package/addon/components/eui-side-nav-item/index.hbs +52 -25
  129. package/addon/components/eui-split-panel/inner/index.hbs +11 -0
  130. package/addon/components/eui-split-panel/outer/index.hbs +27 -0
  131. package/addon/components/eui-split-panel/outer/index.ts +37 -0
  132. package/addon/components/eui-step/eui-step-number/index.hbs +21 -4
  133. package/addon/components/eui-steps/index.hbs +7 -1
  134. package/addon/components/eui-tab/index.hbs +60 -46
  135. package/addon/components/eui-tab/index.ts +23 -0
  136. package/addon/components/eui-tabbed-content/index.hbs +14 -27
  137. package/addon/components/eui-tabbed-content/index.ts +134 -0
  138. package/addon/components/eui-tabs/index.hbs +6 -9
  139. package/addon/components/eui-tool-tip/index.hbs +6 -7
  140. package/addon/components/eui-tool-tip/index.ts +27 -11
  141. package/addon/helpers/arg-or-default.ts +4 -1
  142. package/addon/helpers/class-names.ts +2 -0
  143. package/addon/helpers/eui-palette.ts +4 -1
  144. package/addon/helpers/get-range-tick.ts +53 -8
  145. package/addon/helpers/hex-to-rgb.ts +4 -1
  146. package/addon/helpers/inline-styles.ts +10 -3
  147. package/addon/helpers/is-within-number.ts +4 -1
  148. package/addon/helpers/starts-with.ts +3 -1
  149. package/addon/helpers/unique-id.ts +4 -1
  150. package/addon/initializers/eui-config.ts +12 -0
  151. package/addon/modifiers/mutation-observer.ts +4 -1
  152. package/addon/modifiers/outside-click-detector.ts +4 -4
  153. package/addon/styles/ember-eui.css +2 -10
  154. package/addon/utils/accesibility/cascading-menu-keys.ts +8 -1
  155. package/addon/utils/breakpoint.ts +114 -0
  156. package/addon/utils/code/utils.ts +304 -0
  157. package/addon/utils/color/color_palette.ts +3 -3
  158. package/addon/utils/color/eui_palettes.ts +23 -6
  159. package/addon/utils/css-mappings/eui-avatar.ts +51 -9
  160. package/addon/utils/css-mappings/eui-badge.ts +6 -2
  161. package/addon/utils/css-mappings/eui-beta-badge.ts +22 -0
  162. package/addon/utils/css-mappings/eui-bottom-bar.ts +8 -1
  163. package/addon/utils/css-mappings/eui-button-empty.ts +4 -4
  164. package/addon/utils/css-mappings/eui-button-icon.ts +19 -6
  165. package/addon/utils/css-mappings/eui-button.ts +2 -1
  166. package/addon/utils/css-mappings/eui-card-select.ts +1 -11
  167. package/addon/utils/css-mappings/eui-card.ts +1 -18
  168. package/addon/utils/css-mappings/{eui-code-block-impl.ts → eui-code-block.ts} +0 -0
  169. package/addon/utils/css-mappings/eui-description-list.ts +29 -0
  170. package/addon/utils/css-mappings/eui-empty-prompt.ts +17 -0
  171. package/addon/utils/css-mappings/eui-flyout.ts +21 -1
  172. package/addon/utils/css-mappings/eui-header-links.ts +27 -0
  173. package/addon/utils/css-mappings/eui-health.ts +17 -0
  174. package/addon/utils/css-mappings/eui-icon.ts +93 -70
  175. package/addon/utils/css-mappings/eui-image.ts +17 -2
  176. package/addon/utils/css-mappings/eui-link.ts +21 -0
  177. package/addon/utils/css-mappings/eui-list-group.ts +5 -1
  178. package/addon/utils/css-mappings/eui-modal.ts +5 -1
  179. package/addon/utils/css-mappings/eui-page-body.ts +25 -0
  180. package/addon/utils/css-mappings/eui-page-content-body.ts +17 -0
  181. package/addon/utils/css-mappings/eui-page-content.ts +7 -1
  182. package/addon/utils/css-mappings/eui-page-header.ts +17 -0
  183. package/addon/utils/css-mappings/eui-page-side-bar.ts +17 -0
  184. package/addon/utils/css-mappings/eui-panel.ts +1 -0
  185. package/addon/utils/css-mappings/eui-progress-data.ts +0 -1
  186. package/addon/utils/css-mappings/eui-progress.ts +0 -2
  187. package/addon/utils/css-mappings/eui-range-levels.ts +22 -4
  188. package/addon/utils/css-mappings/eui-tabs.ts +3 -1
  189. package/addon/utils/css-mappings/eui-text-color.ts +3 -2
  190. package/addon/utils/css-mappings/index.ts +23 -3
  191. package/addon/utils/detect-element-resize.js +248 -0
  192. package/addon/utils/markdown/markdown-types.ts +10 -11
  193. package/addon/utils/markdown/plugins/markdown-add-components/index.ts +1 -0
  194. package/addon/utils/markdown/plugins/{markdown-add-components.ts → markdown-add-components/processor.ts} +14 -7
  195. package/addon/utils/markdown/plugins/markdown-checkbox/index.ts +9 -0
  196. package/addon/utils/markdown/plugins/{markdown-checkbox.ts → markdown-checkbox/parser.ts} +3 -5
  197. package/addon/utils/markdown/plugins/markdown-default-plugins/index.ts +12 -0
  198. package/addon/utils/markdown/plugins/{markdown-default-plugins.ts → markdown-default-plugins/parsing-plugins.ts} +13 -25
  199. package/addon/utils/markdown/plugins/markdown-default-plugins/plugins.ts +32 -0
  200. package/addon/utils/markdown/plugins/markdown-default-plugins/processing-plugins.ts +67 -0
  201. package/addon/utils/markdown/plugins/markdown-default-plugins/ui-plugins.ts +27 -0
  202. package/addon/utils/markdown/plugins/markdown-tooltip/index.ts +2 -0
  203. package/addon/utils/markdown/plugins/{markdown-tooltip.ts → markdown-tooltip/parser.ts} +3 -23
  204. package/addon/utils/markdown/plugins/markdown-tooltip/plugin.ts +17 -0
  205. package/addon/utils/markdown/plugins/to-dom.ts +3 -1
  206. package/addon/utils/markdown/remark/remark-prismjs.ts +41 -0
  207. package/addon/utils/popover/index.ts +87 -35
  208. package/addon/utils/range/index.ts +1 -0
  209. package/addon/utils/transition.ts +10 -3
  210. package/addon/version.ts +6 -0
  211. package/app/components/eui-auto-sizer/index.js +1 -0
  212. package/app/components/eui-avatar/index.js +1 -1
  213. package/app/components/eui-badge-group/badge-group-item/index.js +1 -1
  214. package/app/components/eui-badge-group/index.js +1 -1
  215. package/app/components/eui-breadcrumbs/index.js +1 -0
  216. package/app/components/eui-button-icon/index.js +1 -1
  217. package/app/components/eui-card-select/index.js +1 -0
  218. package/app/components/{eui-code-block-impl → eui-code-block/controls}/index.js +1 -1
  219. package/app/components/{eui-code-block-impl/code-block-controls → eui-code-block/full-screen-display}/index.js +1 -1
  220. package/app/components/eui-code-block/virtualized/index.js +1 -0
  221. package/app/components/eui-combo-box/create-option/index.js +1 -1
  222. package/app/components/eui-comment/eui-comment-timeline/index.js +1 -1
  223. package/app/components/eui-comment/index.js +1 -1
  224. package/app/components/eui-description-list/index.js +1 -0
  225. package/app/components/eui-description-list-description/index.js +1 -0
  226. package/app/components/eui-description-list-title/index.js +1 -0
  227. package/app/components/eui-dual-range/index.js +1 -1
  228. package/app/components/eui-empty-prompt/index.js +1 -0
  229. package/app/components/eui-field-number/index.js +1 -1
  230. package/app/components/eui-field-password/index.js +1 -1
  231. package/app/components/eui-field-search/index.js +1 -1
  232. package/app/components/eui-field-text/index.js +1 -1
  233. package/app/components/eui-file-picker/index.js +1 -1
  234. package/app/components/eui-form/index.js +1 -1
  235. package/app/components/eui-form-control-layout/index.js +1 -1
  236. package/app/components/eui-form-control-layout-clear-button/index.js +1 -1
  237. package/app/components/eui-form-control-layout-custom-icon/index.js +1 -1
  238. package/app/components/eui-form-control-layout-delimited/index.js +1 -1
  239. package/app/components/eui-form-control-layout-icons/index.js +1 -1
  240. package/app/components/eui-form-error-text/index.js +1 -1
  241. package/app/components/eui-form-fieldset/index.js +1 -1
  242. package/app/components/eui-form-help-text/index.js +1 -1
  243. package/app/components/eui-form-label/index.js +1 -1
  244. package/app/components/eui-form-legend/index.js +1 -1
  245. package/app/components/eui-form-row/index.js +1 -1
  246. package/app/components/eui-header-alert/index.js +1 -0
  247. package/app/components/eui-header-breadcrumbs/index.js +1 -0
  248. package/app/components/eui-header-links/index.js +1 -0
  249. package/app/components/eui-hide-for/index.js +1 -0
  250. package/app/components/eui-image.js +1 -1
  251. package/app/components/eui-key-pad-menu/index.js +1 -0
  252. package/app/components/eui-key-pad-menu/key/index.js +1 -0
  253. package/app/components/eui-key-pad-menu-item/index.js +1 -0
  254. package/app/components/eui-link/index.js +1 -0
  255. package/app/components/eui-list-group/index.js +1 -1
  256. package/app/components/eui-list-group-item/index.js +1 -1
  257. package/app/components/eui-loading-logo/index.js +1 -0
  258. package/app/components/eui-overlay-mask.js +1 -1
  259. package/app/components/eui-page/index.js +1 -1
  260. package/app/components/eui-page-body/index.js +1 -1
  261. package/app/components/eui-page-content/index.js +1 -1
  262. package/app/components/eui-page-content-body/index.js +1 -1
  263. package/app/components/eui-page-content-header/index.js +1 -1
  264. package/app/components/eui-page-content-header-section/index.js +1 -1
  265. package/app/components/eui-page-header/index.js +1 -1
  266. package/app/components/eui-page-header-content/index.js +1 -0
  267. package/app/components/eui-page-header-section/index.js +1 -1
  268. package/app/components/eui-page-template/index.js +1 -0
  269. package/app/components/eui-panel/index.js +1 -1
  270. package/app/components/eui-popover/index.js +1 -1
  271. package/app/components/eui-popover-footer/index.js +1 -1
  272. package/app/components/eui-popover-title/index.js +1 -1
  273. package/app/components/eui-portal/index.js +1 -1
  274. package/app/components/eui-progress/index.js +1 -1
  275. package/app/components/eui-radio/index.js +1 -1
  276. package/app/components/eui-radio-group/index.js +1 -1
  277. package/app/components/eui-range/index.js +1 -1
  278. package/app/components/eui-range-highlight/index.js +1 -1
  279. package/app/components/eui-range-input/index.js +1 -1
  280. package/app/components/eui-range-label/index.js +1 -1
  281. package/app/components/eui-range-levels/index.js +1 -1
  282. package/app/components/eui-range-slider/index.js +1 -1
  283. package/app/components/eui-range-thumb/index.js +1 -1
  284. package/app/components/eui-range-ticks/index.js +1 -1
  285. package/app/components/eui-range-tooltip/index.js +1 -1
  286. package/app/components/eui-range-track/index.js +1 -1
  287. package/app/components/eui-range-wrapper/index.js +1 -1
  288. package/app/components/eui-select/index.js +1 -1
  289. package/app/components/eui-show-for/index.js +1 -0
  290. package/app/components/eui-side-nav/index.js +1 -1
  291. package/app/components/eui-side-nav-item/button/index.js +1 -1
  292. package/app/components/eui-side-nav-item/index.js +1 -1
  293. package/app/components/eui-spacer/index.js +1 -1
  294. package/app/components/eui-split-panel/inner/index.js +1 -0
  295. package/app/components/eui-split-panel/outer/index.js +1 -0
  296. package/app/components/eui-switch/index.js +1 -1
  297. package/app/components/eui-tab/index.js +1 -1
  298. package/app/components/eui-tabs/index.js +1 -1
  299. package/app/components/eui-text/index.js +1 -1
  300. package/app/components/eui-text-align/index.js +1 -1
  301. package/app/components/eui-text-area/index.js +1 -1
  302. package/app/components/eui-text-color/index.js +1 -1
  303. package/app/components/eui-title/index.js +1 -1
  304. package/app/components/eui-tool-tip/index.js +1 -1
  305. package/app/components/eui-tool-tip-popover/index.js +1 -1
  306. package/app/helpers/eui-palette.js +1 -1
  307. package/app/helpers/hex-to-rgb.js +1 -1
  308. package/app/initializers/eui-config.js +1 -0
  309. package/app/utils/copy-to-clipboard.js +1 -0
  310. package/docs/display/avatar-demo/demo1.md +43 -49
  311. package/docs/display/avatar-demo/demo2.md +42 -0
  312. package/docs/display/avatar-demo/demo3.md +33 -0
  313. package/docs/display/avatar-demo/demo4.md +53 -0
  314. package/docs/display/avatar-demo/demo5.md +38 -0
  315. package/docs/display/avatar.md +1 -1
  316. package/docs/display/badge-demo/demo1.md +78 -137
  317. package/docs/display/badge-demo/demo2.md +32 -0
  318. package/docs/display/badge-demo/demo3.md +70 -0
  319. package/docs/display/badge-demo/demo4.md +27 -0
  320. package/docs/display/badge-demo/demo5.md +31 -0
  321. package/docs/display/badge-demo/demo6.md +59 -0
  322. package/docs/display/badge-demo/demo7.md +97 -0
  323. package/docs/display/badge-demo/demo8.md +19 -0
  324. package/docs/display/badge.md +1 -1
  325. package/docs/display/callout-demo/demo1.md +29 -81
  326. package/docs/display/callout-demo/demo2.md +28 -0
  327. package/docs/display/callout-demo/demo3.md +29 -0
  328. package/docs/display/callout-demo/demo4.md +26 -0
  329. package/docs/display/callout.md +9 -1
  330. package/docs/display/card/basic-card-demo/demo1.md +22 -316
  331. package/docs/display/card/basic-card.md +9 -1
  332. package/docs/display/card/beta-badge-demo/demo1.md +47 -0
  333. package/docs/display/card/beta-badge.md +9 -0
  334. package/docs/display/card/checkable-demo/demo1.md +20 -94
  335. package/docs/display/card/checkable-demo/demo2.md +63 -0
  336. package/docs/display/card/checkable.md +9 -1
  337. package/docs/display/card/custom-children-demo/demo1.md +93 -0
  338. package/docs/display/card/custom-children.md +9 -0
  339. package/docs/display/card/footer-demo/demo1.md +77 -0
  340. package/docs/display/card/footer.md +9 -0
  341. package/docs/display/card/images-demo/demo1.md +57 -0
  342. package/docs/display/card/images.md +9 -0
  343. package/docs/display/card/layout-demo/demo1.md +40 -0
  344. package/docs/display/card/layout.md +9 -0
  345. package/docs/display/card/selectable-demo/demo1.md +60 -53
  346. package/docs/display/card/selectable.md +9 -1
  347. package/docs/display/comment-list.md +1 -1
  348. package/docs/display/description-list-demo/demo1.md +53 -0
  349. package/docs/display/description-list-demo/demo2.md +43 -0
  350. package/docs/display/description-list-demo/demo3.md +58 -0
  351. package/docs/display/description-list-demo/demo4.md +42 -0
  352. package/docs/display/description-list-demo/demo5.md +62 -0
  353. package/docs/display/description-list-demo/demo6.md +46 -0
  354. package/docs/display/description-list.md +1 -0
  355. package/docs/display/empty-prompt-demo/demo1.md +25 -0
  356. package/docs/display/empty-prompt-demo/demo2.md +16 -0
  357. package/docs/display/empty-prompt-demo/demo3.md +67 -0
  358. package/docs/display/empty-prompt-demo/demo4.md +21 -0
  359. package/docs/display/empty-prompt-demo/demo5.md +33 -0
  360. package/docs/display/empty-prompt-demo/demo6.md +43 -0
  361. package/docs/display/empty-prompt-demo/demo7.md +162 -0
  362. package/docs/display/empty-prompt-demo/demo8.md +57 -0
  363. package/docs/display/empty-prompt.md +1 -0
  364. package/docs/display/health-demo/demo1.md +11 -8
  365. package/docs/display/health-demo/demo2.md +31 -0
  366. package/docs/display/health.md +9 -1
  367. package/docs/display/icons-demo/demo1.md +270 -57
  368. package/docs/display/icons-demo/demo2.md +76 -0
  369. package/docs/display/icons-demo/demo3.md +76 -0
  370. package/docs/display/icons-demo/demo4.md +104 -0
  371. package/docs/display/icons-demo/demo5.md +64 -0
  372. package/docs/display/icons-demo/demo6.md +63 -0
  373. package/docs/display/icons-demo/demo7.md +101 -0
  374. package/docs/display/icons-demo/demo8.md +47 -0
  375. package/docs/display/icons.md +1 -1
  376. package/docs/display/image-demo/demo1.md +15 -50
  377. package/docs/display/image-demo/demo2.md +35 -0
  378. package/docs/display/image-demo/demo3.md +75 -0
  379. package/docs/display/image-demo/demo4.md +80 -0
  380. package/docs/display/image.md +9 -1
  381. package/docs/display/list-group.md +1 -1
  382. package/docs/display/loading/logo-demo/demo1.md +15 -0
  383. package/docs/display/loading/logo.md +1 -0
  384. package/docs/display/progress-demo/demo1.md +10 -5
  385. package/docs/display/progress-demo/demo2.md +11 -26
  386. package/docs/display/progress-demo/demo3.md +27 -0
  387. package/docs/display/progress-demo/demo4.md +77 -0
  388. package/docs/display/progress.md +1 -1
  389. package/docs/display/stat-demo/demo1.md +0 -118
  390. package/docs/display/stat-demo/demo2.md +24 -22
  391. package/docs/display/stat-demo/demo3.md +39 -0
  392. package/docs/display/stat-demo/demo4.md +50 -0
  393. package/docs/display/stat-demo/demo5.md +25 -0
  394. package/docs/display/stat-demo/demo6.md +40 -0
  395. package/docs/display/stat-demo/demo7.md +84 -0
  396. package/docs/display/stat.md +8 -1
  397. package/docs/display/text-demo/demo1.md +79 -130
  398. package/docs/display/text-demo/demo2.md +71 -0
  399. package/docs/display/text-demo/demo3.md +39 -0
  400. package/docs/display/text.md +12 -1
  401. package/docs/display/title-demo/demo1.md +50 -26
  402. package/docs/display/title.md +1 -1
  403. package/docs/display/tool-tip-demo/demo1.md +26 -71
  404. package/docs/display/tool-tip-demo/demo2.md +33 -30
  405. package/docs/display/tool-tip-demo/demo3.md +50 -0
  406. package/docs/display/tool-tip-demo/demo4.md +74 -0
  407. package/docs/display/tool-tip.md +11 -1
  408. package/docs/editors/code/code-block-demo/demo1.md +21 -40
  409. package/docs/editors/code/code-block-demo/demo2.md +35 -0
  410. package/docs/editors/code/code-block-demo/demo3.md +43 -0
  411. package/docs/editors/code/code-block-demo/demo4.md +28 -0
  412. package/docs/editors/code/code-block-demo/demo5.md +42 -0
  413. package/docs/editors/code/code-block-demo/demo6.md +42 -0
  414. package/docs/editors/code/code-block-demo/demo7.md +853 -0
  415. package/docs/editors/code/code-block-demo/demo8.md +855 -0
  416. package/docs/editors/code/code-block.md +21 -1
  417. package/docs/editors/code/inline-demo/demo1.md +6 -3
  418. package/docs/editors/code/inline.md +1 -1
  419. package/docs/editors/markdown-editor/base-editor-demo/demo1.md +9 -28
  420. package/docs/editors/markdown-editor/base-editor.md +1 -1
  421. package/docs/forms/form-controls/checkbox/demo/demo1.md +49 -0
  422. package/docs/forms/form-controls/checkbox/index.md +26 -0
  423. package/docs/forms/form-controls/{checkbox-group-demo → checkbox-group/demo}/demo1.md +4 -13
  424. package/docs/forms/form-controls/checkbox-group/index.md +27 -0
  425. package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo1.md +8 -2
  426. package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo2.md +10 -8
  427. package/docs/forms/form-controls/combo-box/demo/demo3.md +60 -0
  428. package/docs/forms/form-controls/{combo-box-demo/demo3.md → combo-box/demo/demo4.md} +17 -14
  429. package/docs/forms/form-controls/combo-box/demo/demo5.md +151 -0
  430. package/docs/forms/form-controls/combo-box/index.md +6 -0
  431. package/docs/forms/form-controls/file-picker/demo/demo1.md +29 -0
  432. package/docs/forms/form-controls/file-picker/demo/demo2.md +44 -0
  433. package/docs/forms/form-controls/file-picker/demo/demo3.md +45 -0
  434. package/docs/forms/form-controls/file-picker/demo/demo4.md +63 -0
  435. package/docs/forms/form-controls/file-picker/index.md +22 -0
  436. package/docs/forms/form-controls/{form-control-layout-demo → form-control-layout/demo}/demo1.md +0 -0
  437. package/docs/forms/form-controls/form-control-layout/index.md +30 -0
  438. package/docs/forms/form-controls/{form-control-layout-delimited-demo → form-control-layout-delimited/demo}/demo1.md +41 -37
  439. package/docs/forms/form-controls/form-control-layout-delimited/index.md +24 -0
  440. package/docs/forms/form-controls/number-field/demo/demo1.md +20 -0
  441. package/docs/forms/form-controls/{number-field-demo/demo1.md → number-field/demo/demo2.md} +23 -11
  442. package/docs/forms/form-controls/number-field/index.md +12 -0
  443. package/docs/forms/form-controls/password-field/demo/demo1.md +19 -0
  444. package/docs/forms/form-controls/{password-field-demo/demo1.md → password-field/demo/demo2.md} +12 -8
  445. package/docs/forms/form-controls/password-field/index.md +19 -0
  446. package/docs/forms/form-controls/radio/demo/demo1.md +43 -0
  447. package/docs/forms/form-controls/radio/index.md +24 -0
  448. package/docs/forms/form-controls/radio-group/demo/demo1.md +50 -0
  449. package/docs/forms/form-controls/radio-group/index.md +18 -0
  450. package/docs/forms/form-controls/range/demo/demo1.md +96 -0
  451. package/docs/forms/form-controls/range/demo/demo2.md +62 -0
  452. package/docs/forms/form-controls/{range-demo → range/demo}/demo3.md +10 -12
  453. package/docs/forms/form-controls/{range-demo → range/demo}/demo4.md +16 -18
  454. package/docs/forms/form-controls/{range-demo → range/demo}/demo5.md +18 -20
  455. package/docs/forms/form-controls/range/demo/demo6.md +57 -0
  456. package/docs/forms/form-controls/range/demo/demo7.md +350 -0
  457. package/docs/forms/form-controls/range/index.md +18 -0
  458. package/docs/forms/form-controls/search-field/demo/demo1.md +29 -0
  459. package/docs/forms/form-controls/search-field/index.md +14 -0
  460. package/docs/forms/form-controls/select/demo/demo1.md +29 -0
  461. package/docs/forms/form-controls/select/demo/demo2.md +44 -0
  462. package/docs/forms/form-controls/{select-demo/demo1.md → select/demo/demo3.md} +20 -10
  463. package/docs/forms/form-controls/select/index.md +19 -0
  464. package/docs/forms/form-controls/{switch-demo → switch/demo}/demo1.md +10 -10
  465. package/docs/forms/form-controls/switch/index.md +13 -0
  466. package/docs/forms/form-controls/text-field/demo/demo1.md +35 -0
  467. package/docs/forms/form-controls/text-field/demo/demo2.md +40 -0
  468. package/docs/forms/form-controls/{text-field-demo/demo2.md → text-field/demo/demo3.md} +14 -17
  469. package/docs/forms/form-controls/{text-field-demo/demo1.md → text-field/demo/demo4.md} +18 -32
  470. package/docs/forms/form-controls/text-field/index.md +14 -0
  471. package/docs/forms/form-controls/textarea/demo/demo1.md +21 -0
  472. package/docs/forms/form-controls/textarea/demo/demo2.md +24 -0
  473. package/docs/forms/form-controls/textarea/index.md +13 -0
  474. package/docs/forms/form-layouts/described-form-groups-demo/demo1.md +13 -4
  475. package/docs/forms/form-layouts/described-form-groups.md +1 -1
  476. package/docs/layout/accordion-demo/demo1.md +21 -102
  477. package/docs/layout/accordion-demo/demo2.md +76 -0
  478. package/docs/layout/accordion-demo/demo3.md +25 -0
  479. package/docs/layout/accordion-demo/demo4.md +26 -0
  480. package/docs/layout/accordion-demo/demo5.md +65 -0
  481. package/docs/layout/accordion-demo/demo6.md +78 -0
  482. package/docs/layout/accordion-demo/demo7.md +66 -0
  483. package/docs/layout/accordion-demo/demo8.md +64 -0
  484. package/docs/layout/accordion-demo/demo9.md +114 -0
  485. package/docs/layout/accordion.md +39 -9
  486. package/docs/layout/bottom-bar-demo/demo1.md +32 -49
  487. package/docs/layout/bottom-bar-demo/demo2.md +54 -0
  488. package/docs/layout/bottom-bar-demo/demo3.md +81 -0
  489. package/docs/layout/bottom-bar.md +1 -1
  490. package/docs/layout/flex.md +1 -1
  491. package/docs/layout/flyout-demo/demo1.md +19 -11
  492. package/docs/layout/flyout-demo/demo2.md +43 -28
  493. package/docs/layout/flyout-demo/demo3.md +99 -0
  494. package/docs/layout/flyout-demo/demo4.md +115 -0
  495. package/docs/layout/flyout-demo/demo5.md +59 -0
  496. package/docs/layout/flyout-demo/demo6.md +57 -0
  497. package/docs/layout/flyout-demo/demo7.md +51 -0
  498. package/docs/layout/flyout.md +1 -1
  499. package/docs/layout/header-demo/demo1.md +284 -35
  500. package/docs/layout/header-demo/demo2.md +42 -0
  501. package/docs/layout/header-demo/demo3.md +48 -0
  502. package/docs/layout/header-demo/demo4.md +57 -0
  503. package/docs/layout/header-demo/demo5.md +232 -0
  504. package/docs/layout/header-demo/demo6.md +85 -0
  505. package/docs/layout/header-demo/demo7.md +94 -0
  506. package/docs/layout/header.md +1 -1
  507. package/docs/layout/horizontal-rule.md +1 -1
  508. package/docs/layout/modal-demo/demo1.md +64 -167
  509. package/docs/layout/modal-demo/demo2.md +126 -0
  510. package/docs/layout/modal-demo/demo3.md +55 -0
  511. package/docs/layout/modal-demo/demo4.md +65 -0
  512. package/docs/layout/modal-demo/demo5.md +96 -0
  513. package/docs/layout/modal.md +1 -1
  514. package/docs/layout/page-demo/demo1.md +96 -3
  515. package/docs/layout/page-demo/demo10.md +42 -0
  516. package/docs/layout/page-demo/demo2.md +46 -0
  517. package/docs/layout/page-demo/demo3.md +50 -0
  518. package/docs/layout/page-demo/demo4.md +38 -0
  519. package/docs/layout/page-demo/demo5.md +30 -0
  520. package/docs/layout/page-demo/demo6.md +51 -0
  521. package/docs/layout/page-demo/demo7.md +59 -0
  522. package/docs/layout/page-demo/demo8.md +19 -0
  523. package/docs/layout/page-demo/demo9.md +29 -0
  524. package/docs/layout/page.md +1 -1
  525. package/docs/layout/panel-demo/demo1.md +28 -19
  526. package/docs/layout/panel-demo/demo2.md +22 -0
  527. package/docs/layout/panel-demo/demo3.md +27 -0
  528. package/docs/layout/panel-demo/demo4.md +46 -0
  529. package/docs/layout/panel-demo/demo5.md +81 -0
  530. package/docs/layout/panel.md +7 -1
  531. package/docs/layout/popover-demo/demo1.md +42 -300
  532. package/docs/layout/popover-demo/demo10.md +72 -0
  533. package/docs/layout/popover-demo/demo2.md +306 -96
  534. package/docs/layout/popover-demo/demo3.md +20 -12
  535. package/docs/layout/popover-demo/demo4.md +118 -0
  536. package/docs/layout/popover-demo/demo5.md +252 -0
  537. package/docs/layout/popover-demo/demo6.md +44 -0
  538. package/docs/layout/popover-demo/demo7.md +44 -0
  539. package/docs/layout/popover-demo/demo8.md +50 -0
  540. package/docs/layout/popover-demo/demo9.md +80 -0
  541. package/docs/layout/popover.md +1 -1
  542. package/docs/navigation/breadcrumbs-demo/demo1.md +77 -0
  543. package/docs/navigation/breadcrumbs-demo/demo2.md +61 -0
  544. package/docs/navigation/breadcrumbs-demo/demo3.md +61 -0
  545. package/docs/navigation/breadcrumbs-demo/demo4.md +61 -0
  546. package/docs/navigation/breadcrumbs-demo/demo5.md +61 -0
  547. package/docs/navigation/breadcrumbs-demo/demo6.md +61 -0
  548. package/docs/navigation/breadcrumbs.md +1 -0
  549. package/docs/navigation/button-demo/demo1.md +210 -158
  550. package/docs/navigation/button.md +1 -1
  551. package/docs/navigation/collapsible-nav-demo/demo1.md +21 -44
  552. package/docs/navigation/collapsible-nav-demo/demo2.md +108 -0
  553. package/docs/navigation/collapsible-nav.md +1 -1
  554. package/docs/navigation/key-pad-menu-demo/demo1.md +77 -0
  555. package/docs/navigation/key-pad-menu-demo/demo2.md +102 -0
  556. package/docs/navigation/key-pad-menu-demo/demo3.md +54 -0
  557. package/docs/navigation/key-pad-menu-demo/demo4.md +71 -0
  558. package/docs/navigation/key-pad-menu-demo/demo5.md +65 -0
  559. package/docs/navigation/key-pad-menu.md +1 -0
  560. package/docs/navigation/link-demo/demo1.md +44 -0
  561. package/docs/navigation/link-demo/demo2.md +41 -0
  562. package/docs/navigation/link-demo/demo3.md +45 -0
  563. package/docs/navigation/link-demo/demo4.md +61 -0
  564. package/docs/navigation/link.md +1 -0
  565. package/docs/navigation/side-nav-demo/demo1.md +34 -18
  566. package/docs/navigation/side-nav.md +1 -1
  567. package/docs/navigation/steps-demo/demo1.md +16 -18
  568. package/docs/navigation/steps-demo/demo2.md +18 -21
  569. package/docs/navigation/steps-demo/demo3.md +12 -10
  570. package/docs/navigation/steps-demo/demo4.md +84 -0
  571. package/docs/navigation/steps-demo/demo5.md +29 -0
  572. package/docs/navigation/steps.md +1 -1
  573. package/docs/navigation/tabs-demo/demo1.md +50 -148
  574. package/docs/navigation/tabs-demo/demo2.md +73 -0
  575. package/docs/navigation/tabs-demo/demo3.md +109 -0
  576. package/docs/navigation/tabs-demo/demo4.md +81 -0
  577. package/docs/navigation/tabs-demo/demo5.md +86 -0
  578. package/docs/navigation/tabs.md +1 -1
  579. package/docs/utilities/auto-sizer-demo/demo1.md +34 -0
  580. package/docs/utilities/auto-sizer.md +1 -0
  581. package/docs/utilities/copy-demo/demo1.md +37 -0
  582. package/docs/utilities/copy-demo/demo2.md +70 -0
  583. package/docs/utilities/copy.md +1 -0
  584. package/docs/utilities/mutation-observer.md +1 -1
  585. package/docs/utilities/outside-click-detector.md +1 -1
  586. package/docs/utilities/overlay-mask.md +1 -1
  587. package/docs/utilities/portal.md +1 -1
  588. package/docs/utilities/resize-observer.md +1 -1
  589. package/docs/utilities/responsive-demo/demo1.md +108 -0
  590. package/docs/utilities/responsive.md +1 -0
  591. package/index.js +8 -3
  592. package/package.json +13 -7
  593. package/CHANGELOG.md +0 -1345
  594. package/addon/components/eui-code-block-impl/code-block-controls/index.hbs +0 -33
  595. package/addon/components/eui-code-block-impl/index.hbs +0 -111
  596. package/addon/components/eui-code-block-impl/index.ts +0 -121
  597. package/addon/components/eui-flyout-body/banner/index.hbs +0 -3
  598. package/addon/components/eui-flyout-body/content/index.hbs +0 -3
  599. package/addon/helpers/create-event.ts +0 -30
  600. package/addon/helpers/get-tab-id.ts +0 -17
  601. package/addon/modifiers/focus-tab.ts +0 -19
  602. package/addon/modifiers/get-cursor-node.ts +0 -54
  603. package/addon/modifiers/invalidate-indeterminate.ts +0 -10
  604. package/addon/modifiers/on-event-simulate-event.ts +0 -32
  605. package/app/components/eui-card/eui-card-select/index.js +0 -1
  606. package/app/components/eui-flyout-body/banner/index.js +0 -1
  607. package/app/components/eui-flyout-body/content/index.js +0 -1
  608. package/app/helpers/create-event.js +0 -1
  609. package/app/helpers/get-tab-id.js +0 -1
  610. package/app/modifiers/fixed-header.js +0 -1
  611. package/app/modifiers/focus-tab.js +0 -1
  612. package/app/modifiers/get-cursor-node.js +0 -1
  613. package/app/modifiers/invalidate-indeterminate.js +0 -1
  614. package/app/modifiers/on-event-simulate-event.js +0 -1
  615. package/docs/forms/form-controls/checkbox-demo/demo1.md +0 -40
  616. package/docs/forms/form-controls/checkbox-group.md +0 -1
  617. package/docs/forms/form-controls/checkbox.md +0 -1
  618. package/docs/forms/form-controls/combo-box.md +0 -1
  619. package/docs/forms/form-controls/file-picker-demo/demo1.md +0 -28
  620. package/docs/forms/form-controls/file-picker.md +0 -1
  621. package/docs/forms/form-controls/form-control-layout-delimited.md +0 -1
  622. package/docs/forms/form-controls/form-control-layout.md +0 -1
  623. package/docs/forms/form-controls/number-field.md +0 -1
  624. package/docs/forms/form-controls/password-field.md +0 -1
  625. package/docs/forms/form-controls/radio-demo/demo1.md +0 -39
  626. package/docs/forms/form-controls/radio-group-demo/demo1.md +0 -60
  627. package/docs/forms/form-controls/radio-group.md +0 -1
  628. package/docs/forms/form-controls/radio.md +0 -1
  629. package/docs/forms/form-controls/range-demo/demo1.md +0 -61
  630. package/docs/forms/form-controls/range-demo/demo2.md +0 -59
  631. package/docs/forms/form-controls/range-demo/demo6.md +0 -59
  632. package/docs/forms/form-controls/range.md +0 -1
  633. package/docs/forms/form-controls/search-field-demo/demo1.md +0 -31
  634. package/docs/forms/form-controls/search-field.md +0 -1
  635. package/docs/forms/form-controls/select.md +0 -1
  636. package/docs/forms/form-controls/switch.md +0 -1
  637. package/docs/forms/form-controls/text-field.md +0 -1
  638. package/docs/forms/form-controls/textarea-demo/demo1.md +0 -36
  639. package/docs/forms/form-controls/textarea.md +0 -1
@@ -0,0 +1,78 @@
1
+ ---
2
+ order: 6
3
+ ---
4
+
5
+ # Loading state
6
+
7
+ <!-- <EuiText>
8
+ Use the
9
+ <EuiCode>isLoading</EuiCode>
10
+ prop when not all of the accordion's content is ready yet. When using
11
+ <EuiCode>isLoading</EuiCode>, the content of
12
+ <EuiCode>extraAction</EuiCode>
13
+ is replaced with a loading spinner.<br /><br />
14
+ Manage the content of the accordion using
15
+ <EuiCode>isLoadingMessage</EuiCode>. By default, it is set to
16
+ <EuiCode>false</EuiCode>
17
+ and the content will remain unaltered. Set it to
18
+ <EuiCode>true</EuiCode>
19
+ to show a default loading message or pass a node to show a custom loading
20
+ message.
21
+ </EuiText> -->
22
+
23
+ ```hbs template
24
+ <EuiFlexGroup>
25
+ <EuiFlexItem>
26
+ <EuiText>
27
+ isLoadingMessage:
28
+ </EuiText>
29
+ </EuiFlexItem>
30
+ <EuiFlexItem @grow={{false}}>
31
+ <EuiButtonEmpty {{on 'click' (fn (mut this.isLoadingMessage) false)}}>
32
+ False
33
+ </EuiButtonEmpty>
34
+ </EuiFlexItem>
35
+ <EuiFlexItem @grow={{false}}>
36
+ <EuiButtonEmpty {{on 'click' (fn (mut this.isLoadingMessage) true)}}>
37
+ True
38
+ </EuiButtonEmpty>
39
+ </EuiFlexItem>
40
+ <EuiFlexItem @grow={{false}}>
41
+ <EuiButtonEmpty
42
+ {{on
43
+ 'click'
44
+ (fn (mut this.isLoadingMessage) 'This is a custom loading message')
45
+ }}
46
+ >
47
+ Custom
48
+ </EuiButtonEmpty>
49
+ </EuiFlexItem>
50
+ </EuiFlexGroup>
51
+ <EuiSpacer />
52
+ <EuiAccordion
53
+ @isLoading={{true}}
54
+ @isLoadingMessage={{this.isLoadingMessage}}
55
+ @extraAction={{true}}
56
+ >
57
+ <:buttonContent>
58
+ Accordion is loading, click to toggle
59
+ </:buttonContent>
60
+ <:content>
61
+ <EuiPanel @color='subdued'>
62
+ Opened content
63
+ </EuiPanel>
64
+ </:content>
65
+ <:extraAction>
66
+ <EuiButton size='s'>Extra action!</EuiButton>
67
+ </:extraAction>
68
+ </EuiAccordion>
69
+ ```
70
+
71
+ ```js component
72
+ import Component from '@glimmer/component';
73
+ import { tracked } from '@glimmer/tracking';
74
+
75
+ export default class AccordionDemo1Component extends Component {
76
+ @tracked isLoadingMessage = false;
77
+ }
78
+ ```
@@ -0,0 +1,66 @@
1
+ ---
2
+ order: 7
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'>
14
+ <:buttonContent>
15
+ Click me to toggle close / open
16
+ </:buttonContent>
17
+ <:content>
18
+ <EuiButton
19
+ @size='s'
20
+ @iconType='plusInCircleFilled'
21
+ {{on 'click' (fn this.incrementDecreaseRows 'add')}}
22
+ >
23
+ Increase height to
24
+ {{add this.counter 1}}
25
+ items
26
+ </EuiButton>
27
+ <EuiButton
28
+ @size='s'
29
+ @iconType='minusInCircleFilled'
30
+ {{on 'click' (fn this.incrementDecreaseRows 'sub')}}
31
+ @isDisabled={{eq this.counter 1}}
32
+ >
33
+ Decrease height to
34
+ {{sub this.counter 1}}
35
+ items
36
+ </EuiButton>
37
+ <EuiSpacer />
38
+ <EuiPanel @color='subdued'>
39
+ <ul>
40
+ {{#each (range 0 this.counter) as |row|}}
41
+ <li> Row {{row}}</li>
42
+ {{/each}}
43
+ </ul>
44
+ </EuiPanel>
45
+ </:content>
46
+ </EuiAccordion>
47
+ ```
48
+
49
+ ```js component
50
+ import Component from '@glimmer/component';
51
+ import { tracked } from '@glimmer/tracking';
52
+ import { action } from '@ember/object';
53
+
54
+ export default class AccordionDemo8Component extends Component {
55
+ @tracked counter = 1;
56
+
57
+ @action
58
+ incrementDecreaseRows(actionType) {
59
+ if (actionType == 'add') {
60
+ this.counter++;
61
+ } else {
62
+ this.counter--;
63
+ }
64
+ }
65
+ }
66
+ ```
@@ -0,0 +1,64 @@
1
+ ---
2
+ order: 8
3
+ ---
4
+
5
+ # Interactive content in the trigger
6
+
7
+ <EuiText>
8
+ <p>
9
+ Passing interactive content like links, buttons, or form elements as the
10
+ <EuiCode>buttonContent</EuiCode>, will cause issues with the wrapping button
11
+ element. To fix this, you can change this wrapping element to a div using
12
+ <EuiCode>buttonElement="div"</EuiCode>.
13
+ </p>
14
+ <p>
15
+ If you don't want the interactive content to trigger the accordion expansion,
16
+ you will have to apply
17
+ <EuiCode>e.stopPropagation</EuiCode>
18
+ to your element manually.
19
+ </p>
20
+ </EuiText>
21
+
22
+ ```hbs template
23
+ <EuiCallOut @iconType='accessibility' @color='warning'>
24
+ <:body>
25
+ <EuiText>
26
+ Accordions need a focusable button for accessibility, so changing the
27
+ element to anything other than a button will enforce the display of the
28
+ arrow.
29
+ </EuiText>
30
+ </:body>
31
+ </EuiCallOut>
32
+ <EuiSpacer />
33
+ <EuiAccordion @paddingSize='s' @buttonElement="div">
34
+ <:buttonContent>
35
+ <EuiText
36
+ onClick={{this.onClick}}
37
+ href='#/layout/accordion#interactive-content-in-the-trigger'
38
+ >
39
+ This is a nested link
40
+ </EuiText>
41
+ </:buttonContent>
42
+ <:content>
43
+ <EuiPanel @color='subdued'>
44
+ Any content inside of
45
+ <strong>EuiAccordion</strong>
46
+ will appear here.
47
+ </EuiPanel>
48
+ </:content>
49
+ </EuiAccordion>
50
+ ```
51
+
52
+ ```js component
53
+ import Component from '@glimmer/component';
54
+ import { tracked } from '@glimmer/tracking';
55
+ import { action } from '@ember/object';
56
+
57
+ export default class AccordionDemo8Component extends Component {
58
+
59
+ @action
60
+ onClick(e) {
61
+ e.stopPropagation();
62
+ }
63
+ }
64
+ ```
@@ -0,0 +1,114 @@
1
+ ---
2
+ order: 9
3
+ ---
4
+
5
+ # Styled for forms
6
+
7
+ <EuiText>
8
+ <p>
9
+ Since accordions are unstyled by default, EUI also provides a few classes you
10
+ can add to parts of the EuiAccordion to give it more style, like when using
11
+ with forms.
12
+ <ul>
13
+ <li><EuiCode>.euiAccordionForm</EuiCode>: Applied to the
14
+ <EuiCode>className</EuiCode>, adds top and bottom borders</li>
15
+ <li><EuiCode>.euiAccordionForm__button</EuiCode> : Applied to the
16
+ <EuiCode>buttonClassName</EuiCode>, adds extra padding to the button for
17
+ better spacing</li>
18
+ <li><EuiCode>.euiAccordionForm__extraAction</EuiCode> : Applied to the button
19
+ passed to
20
+ <EuiCode>extraAction</EuiCode>, will visually hide it until hover or focus</li>
21
+ </ul>
22
+ </p>
23
+ <p>
24
+ We also recommend creating a fieldset/legend combination for better
25
+ accessibility and DOM structure by passing
26
+ <EuiCode>element="fieldset"</EuiCode>. This will set the entire accordion as a
27
+ <EuiCode>"fieldset"</EuiCode>
28
+ and automatically change the buttonElement to a
29
+ <EuiCode>"legend"</EuiCode>.
30
+ </p>
31
+ </EuiText>
32
+
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
+ >
47
+ <div>
48
+ <EuiFlexGroup
49
+ @gutterSize='s'
50
+ @alignItems='center'
51
+ @responsive={{false}}
52
+ >
53
+ <EuiFlexItem @grow={{false}}>
54
+ <EuiIcon @type='logoWebhook' @size='m' />
55
+ </EuiFlexItem>
56
+
57
+ <EuiFlexItem>
58
+ <EuiTitle @size='xs'>
59
+ <h3>Webhook</h3>
60
+ </EuiTitle>
61
+ </EuiFlexItem>
62
+ </EuiFlexGroup>
63
+
64
+ <EuiText @size='s'>
65
+ <p>
66
+ <EuiTextColor @color='subdued'>
67
+ Will send a POST request to www.example.com/some/path/
68
+ </EuiTextColor>
69
+ </p>
70
+ </EuiText>
71
+ </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>
82
+
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>
92
+
93
+ <EuiSpacer @size='m' />
94
+
95
+ <EuiFormRow @label='Body'>
96
+ <EuiTextArea @placeholder='I am a textarea, put some content in me!' />
97
+ </EuiFormRow>
98
+ </EuiForm>
99
+ </:content>
100
+ </EuiAccordion>
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 AccordionDemo8Component extends Component {
109
+ @action
110
+ onClick(e) {
111
+ e.stopPropagation();
112
+ }
113
+ }
114
+ ```
@@ -1,9 +1,39 @@
1
- <EuiPageHeader>
2
- <EuiPageHeaderSection>
3
- <EuiTitle @size="l">
4
- <h1>
5
- Accordion
6
- </h1>
7
- </EuiTitle>
8
- </EuiPageHeaderSection>
9
- </EuiPageHeader>
1
+ <EuiPageHeader @pageTitle="Accordion"/>
2
+ <EuiCallOut>
3
+ <:body>
4
+ <EuiText>
5
+ Take care when including flex group content within accordions<br />
6
+ <strong>EuiFlexGroup's</strong>
7
+ negative margins can sometimes create scrollbars within
8
+ <strong>EuiAccordion</strong>
9
+ because of the overflow tricks used to hide content. If you run into this
10
+ issue make sure your paddingSize prop is large enough to account for the
11
+ <EuiCode>gutterSize</EuiCode>
12
+ of any nested flex groups.
13
+ </EuiText>
14
+ </:body>
15
+ </EuiCallOut>
16
+
17
+ <EuiSpacer />
18
+ <EuiTitle>
19
+ Simple and unstyled
20
+ </EuiTitle>
21
+ <EuiSpacer />
22
+
23
+ <EuiText>
24
+ <strong>EuiAccordion</strong>
25
+ has been purposely designed with minimal styles, allowing you to visually
26
+ enhance it as needed (see the accordion form example). The only styling
27
+ enforced by EUI is the caret icon, which indicates to users that the item can
28
+ be opened.<br /><br />
29
+ A
30
+ <EuiCode>buttonContent</EuiCode>
31
+ prop defines the content of the clickable area. On click it will expose the
32
+ children and animate based on the height of those children.<br /><br />
33
+ For styling needs, classes can be individually applied with
34
+ <EuiCode>className</EuiCode>
35
+ (for the entire accordion), and
36
+ <EuiCode>buttonClassName</EuiCode>
37
+ (for the clickable area).
38
+ </EuiText>
39
+ <EuiSpacer />
@@ -1,39 +1,60 @@
1
- ```hbs template
1
+ ---
2
+ order: 1
3
+ ---
4
+
5
+ # Basic
6
+
2
7
  <EuiText>
3
- <b>EuiBottomBar</b> is a simple wrapper component that does nothing but fix a bottom 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.
8
+ <p>
9
+ <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.
10
+ </p>
11
+ <p>
12
+ Like many of our other wrapper components, <strong>EuiBottomBar</strong> accepts a <EuiCode>paddingSize</EuiCode> prop, which can be set to <EuiCode>s | m (default) | l | none</EuiCode>.
13
+ </p>
4
14
  </EuiText>
5
- <EuiSpacer/>
6
15
 
7
- <EuiButton @color="primary" {{on "click" (set this "basicBottomBarActive" (not this.basicBottomBarActive))}}>
16
+ ```hbs template
17
+ <EuiButton
18
+ @color='primary'
19
+ {{on
20
+ 'click'
21
+ (set this 'basicBottomBarActive' (not this.basicBottomBarActive))
22
+ }}
23
+ >
8
24
  Toggle appearance of the bottom bar
9
25
  </EuiButton>
10
26
 
11
27
  {{#if this.basicBottomBarActive}}
12
28
  <EuiBottomBar>
13
- <EuiFlexGroup @justifyContent="spaceBetween">
29
+ <EuiFlexGroup @justifyContent='spaceBetween'>
14
30
  <EuiFlexItem @grow={{false}}>
15
- <EuiFlexGroup @gutterSize="s">
31
+ <EuiFlexGroup @gutterSize='s'>
16
32
  <EuiFlexItem @grow={{false}}>
17
- <EuiButton @color="ghost" @size="s" @iconType="help">
33
+ <EuiButton @color='ghost' @size='s' @iconType='help'>
18
34
  Help
19
35
  </EuiButton>
20
36
  </EuiFlexItem>
21
37
  <EuiFlexItem @grow={{false}}>
22
- <EuiButton @color="ghost" @size="s" @iconType="user">
38
+ <EuiButton @color='ghost' @size='s' @iconType='user'>
23
39
  Add user
24
40
  </EuiButton>
25
41
  </EuiFlexItem>
26
42
  </EuiFlexGroup>
27
43
  </EuiFlexItem>
28
44
  <EuiFlexItem @grow={{false}}>
29
- <EuiFlexGroup @gutterSize="s">
45
+ <EuiFlexGroup @gutterSize='s'>
30
46
  <EuiFlexItem @grow={{false}}>
31
- <EuiButtonEmpty @color="ghost" @size="s" @iconType="cross">
47
+ <EuiButtonEmpty @color='ghost' @size='s' @iconType='cross'>
32
48
  Discard
33
49
  </EuiButtonEmpty>
34
50
  </EuiFlexItem>
35
51
  <EuiFlexItem @grow={{false}}>
36
- <EuiButton @color="primary" @fill={{true}} @size="s" @iconType="check">
52
+ <EuiButton
53
+ @color='primary'
54
+ @fill={{true}}
55
+ @size='s'
56
+ @iconType='check'
57
+ >
37
58
  Save
38
59
  </EuiButton>
39
60
  </EuiFlexItem>
@@ -42,44 +63,6 @@
42
63
  </EuiFlexGroup>
43
64
  </EuiBottomBar>
44
65
  {{/if}}
45
-
46
- <EuiSpacer/>
47
-
48
- <EuiTitle>
49
- Displacement
50
- </EuiTitle>
51
- <EuiText>
52
- There is an affordForDisplacement prop (defaulting to true), which determines whether the component makes room for itself by adding bottom padding equivalent to its own height on the document body element. Setting this to false can be useful to minimize scrollbar visibility but will cause the bottom bar to overlap body content.
53
- </EuiText>
54
- <EuiSpacer/>
55
- <EuiButton @color="primary" {{on "click" (queue
56
- (set this "affordForDisplacement" true)
57
- (set this "displacedBottomBarActive" true)
58
- )}}>
59
- Show bottom bar
60
- </EuiButton>
61
- <EuiButton @color="primary" {{on "click" (queue
62
- (set this "affordForDisplacement" false)
63
- (set this "displacedBottomBarActive" true)
64
- )}}>
65
- Show bottom bar (without affordForDisplacement behavior)
66
- </EuiButton>
67
- {{#if this.displacedBottomBarActive}}
68
- <EuiBottomBar @affordForDisplacement={{this.affordForDisplacement}}>
69
- <EuiFlexGroup @justifyContent="flexEnd">
70
- <EuiFlexItem @grow={{false}}>
71
- <EuiButtonEmpty
72
- @color="ghost"
73
- @size="s"
74
- @iconType="cross"
75
- {{on "click" (set this "displacedBottomBarActive" false)}}
76
- >
77
- close
78
- </EuiButtonEmpty>
79
- </EuiFlexItem>
80
- </EuiFlexGroup>
81
- </EuiBottomBar>
82
- {{/if}}
83
66
  ```
84
67
 
85
68
  ```js component
@@ -0,0 +1,54 @@
1
+ ---
2
+ order: 2
3
+ ---
4
+
5
+ # Positions
6
+
7
+ <EuiText>
8
+ <p>
9
+ Bottom bars default to a fixed position, in a portal at the bottom of the
10
+ browser window. Alternatively, you can change the <EuiCode>position</EuiCode> to <EuiCode>sticky</EuiCode> where
11
+ it will render in place but stick to the window only as the window edge
12
+ nears. The <EuiCode>static</EuiCode> position reverts back to default DOM behavior.
13
+ </p>
14
+ <p>
15
+ You can
16
+ also apply a different set of positioning locations just by adjusting them
17
+ in with the <EuiCode>top | right | bottom | left</EuiCode> props.
18
+ </p>
19
+ </EuiText>
20
+
21
+ ```hbs template
22
+ <div>
23
+ <EuiText>
24
+ <p>
25
+ When scrolling past this example block, the
26
+ <strong>EuiBottomBar</strong>
27
+ will stick to the bottom of the browser window (with a 10px offset), but
28
+ keeps it within the bounds of its parent.
29
+ </p>
30
+ </EuiText>
31
+ <EuiSpacer @size='xl' />
32
+ <EuiSpacer @size='xl' />
33
+ <EuiBottomBar
34
+ @landmarkHeading='Page level controls'
35
+ @position='sticky'
36
+ @bottom={{10}}
37
+ >
38
+ <EuiText color='ghost' textAlign='center'>
39
+ <p>Scroll to see!</p>
40
+ </EuiText>
41
+ </EuiBottomBar>
42
+ </div>
43
+ ```
44
+
45
+ ```js component
46
+ import Component from '@glimmer/component';
47
+ import { tracked } from '@glimmer/tracking';
48
+
49
+ export default class BottomBarDemo1Component extends Component {
50
+ @tracked basicBottomBarActive = false;
51
+ @tracked displacedBottomBarActive = false;
52
+ @tracked affordForDisplacement = true;
53
+ }
54
+ ```
@@ -0,0 +1,81 @@
1
+ ---
2
+ order: 3
3
+ ---
4
+
5
+ # Displacement
6
+
7
+ <EuiText>
8
+ <p>
9
+ There is an <EuiCode>affordForDisplacement</EuiCode> prop (defaulting to <EuiCode>true</EuiCode>), which determines
10
+ whether the component makes room for itself by adding bottom padding
11
+ equivalent to its own height on the document <EuiCode @language="html">body</EuiCode> element. Setting this to
12
+ <EuiCode>false</EuiCode> can be useful to minimize scrollbar visibility but will cause the bottom
13
+ bar to overlap body content.
14
+ </p>
15
+ <p>
16
+ You can
17
+ also apply a different set of positioning locations just by adjusting them
18
+ in with the <EuiCode>top | right | bottom | left</EuiCode> props.
19
+ </p>
20
+ </EuiText>
21
+
22
+ ```hbs template
23
+ <EuiFlexGroup>
24
+ <EuiFlexItem>
25
+ <EuiButton
26
+ @color='primary'
27
+ {{on
28
+ 'click'
29
+ (queue
30
+ (set this 'affordForDisplacement' true)
31
+ (set this 'displacedBottomBarActive' true)
32
+ )
33
+ }}
34
+ >
35
+ Show bottom bar
36
+ </EuiButton>
37
+ </EuiFlexItem>
38
+ <EuiFlexItem>
39
+ <EuiButton
40
+ @color='primary'
41
+ {{on
42
+ 'click'
43
+ (queue
44
+ (set this 'affordForDisplacement' false)
45
+ (set this 'displacedBottomBarActive' true)
46
+ )
47
+ }}
48
+ >
49
+ Show bottom bar (without affordForDisplacement behavior)
50
+ </EuiButton>
51
+ </EuiFlexItem>
52
+ </EuiFlexGroup>
53
+ {{#if this.displacedBottomBarActive}}
54
+ <EuiBottomBar @affordForDisplacement={{this.affordForDisplacement}}>
55
+ <EuiFlexGroup @justifyContent='flexEnd'>
56
+ <EuiFlexItem @grow={{false}}>
57
+ <EuiButtonEmpty
58
+ @color='ghost'
59
+ @size='s'
60
+ @iconType='cross'
61
+ {{on 'click' (set this 'displacedBottomBarActive' false)}}
62
+ >
63
+ close
64
+ </EuiButtonEmpty>
65
+ </EuiFlexItem>
66
+ </EuiFlexGroup>
67
+ </EuiBottomBar>
68
+ {{/if}}
69
+ <EuiSpacer />
70
+ ```
71
+
72
+ ```js component
73
+ import Component from '@glimmer/component';
74
+ import { tracked } from '@glimmer/tracking';
75
+
76
+ export default class BottomBarDemo1Component extends Component {
77
+ @tracked basicBottomBarActive = false;
78
+ @tracked displacedBottomBarActive = false;
79
+ @tracked affordForDisplacement = true;
80
+ }
81
+ ```
@@ -1 +1 @@
1
- # Bottom Bar
1
+ <EuiPageHeader @pageTitle="Bottom bar"/>
@@ -1 +1 @@
1
- # Flex
1
+ <EuiPageHeader @pageTitle="Flex"/>
@@ -2,30 +2,38 @@
2
2
  order: 1
3
3
  ---
4
4
 
5
- # Demo 1
5
+ # EuiFlyout
6
6
 
7
- Click on the hamburger icon in the Header Nav to open the flyout!
7
+ <EuiText>
8
+ <p>
9
+ <strong>EuiFlyout</strong> is a fixed position panel that pops in from the side of the window. It should be used to reveal more detailed contextual information or to provide complex forms without losing the user's current state. It is a good alternative to <a href="/docs/core/docs/layout/modal">modals</a> when the action is not transient.
10
+ </p>
11
+ <p>
12
+ Like modals, you control the visibilty of the flyout using your own state management, but <strong>EuiFlyout</strong> requires an <EuiCode>onClose</EuiCode> handler for it's internal dismiss buttons.
13
+ </p>
14
+ </EuiText>
8
15
 
9
16
  ```hbs template
10
- <EuiButton {{on "click" this.openFlyout}}>
17
+ <EuiButton {{on 'click' this.openFlyout}}>
11
18
  Small Flyout
12
19
  </EuiButton>
13
20
  {{#if this.flyoutOpen}}
14
- <EuiFlyout @ownFocus={{true}} @size="s" @onClose={{this.closeFlyout}}>
21
+ <EuiFlyout
22
+ @size='s'
23
+ @onClose={{this.closeFlyout}}
24
+ >
15
25
  <EuiFlyoutHeader @hasBorder={{true}}>
16
- <EuiTitle @size="l">Small Welcome!</EuiTitle>
26
+ <EuiTitle @size='l'>Small Welcome!</EuiTitle>
17
27
  </EuiFlyoutHeader>
18
28
  <EuiFlyoutBody>
19
- <EuiFlyoutBody::Content>
20
- Content
21
- </EuiFlyoutBody::Content>
29
+ Content
22
30
  </EuiFlyoutBody>
23
31
  <EuiFlyoutFooter>
24
- <EuiFlexGroup @justifyContent="spaceBetween" @gutterSize="s">
25
- <EuiButton {{on "click" this.closeFlyout}}>
32
+ <EuiFlexGroup @justifyContent='spaceBetween' @gutterSize='s'>
33
+ <EuiButton {{on 'click' this.closeFlyout}}>
26
34
  Cancel
27
35
  </EuiButton>
28
- <EuiButton @fill={{true}} {{on "click" this.closeFlyout}}>
36
+ <EuiButton @fill={{true}} {{on 'click' this.closeFlyout}}>
29
37
  Send
30
38
  </EuiButton>
31
39
  </EuiFlexGroup>