@ember-eui/core 4.3.0 → 5.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (635) 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 +8 -5
  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-tabs/index.hbs +6 -9
  137. package/addon/components/eui-tool-tip/index.hbs +6 -7
  138. package/addon/components/eui-tool-tip/index.ts +27 -11
  139. package/addon/helpers/arg-or-default.ts +4 -1
  140. package/addon/helpers/class-names.ts +2 -0
  141. package/addon/helpers/eui-palette.ts +4 -1
  142. package/addon/helpers/get-range-tick.ts +53 -8
  143. package/addon/helpers/get-tab-id.ts +8 -2
  144. package/addon/helpers/hex-to-rgb.ts +4 -1
  145. package/addon/helpers/inline-styles.ts +10 -3
  146. package/addon/helpers/is-within-number.ts +4 -1
  147. package/addon/helpers/starts-with.ts +3 -1
  148. package/addon/helpers/unique-id.ts +4 -1
  149. package/addon/initializers/eui-config.ts +12 -0
  150. package/addon/modifiers/mutation-observer.ts +4 -1
  151. package/addon/modifiers/outside-click-detector.ts +4 -4
  152. package/addon/styles/ember-eui.css +2 -10
  153. package/addon/utils/accesibility/cascading-menu-keys.ts +8 -1
  154. package/addon/utils/breakpoint.ts +114 -0
  155. package/addon/utils/code/utils.ts +304 -0
  156. package/addon/utils/color/color_palette.ts +3 -3
  157. package/addon/utils/color/eui_palettes.ts +23 -6
  158. package/addon/utils/css-mappings/eui-avatar.ts +51 -9
  159. package/addon/utils/css-mappings/eui-badge.ts +6 -2
  160. package/addon/utils/css-mappings/eui-beta-badge.ts +22 -0
  161. package/addon/utils/css-mappings/eui-bottom-bar.ts +8 -1
  162. package/addon/utils/css-mappings/eui-button-empty.ts +4 -4
  163. package/addon/utils/css-mappings/eui-button-icon.ts +19 -6
  164. package/addon/utils/css-mappings/eui-button.ts +2 -1
  165. package/addon/utils/css-mappings/eui-card-select.ts +1 -11
  166. package/addon/utils/css-mappings/eui-card.ts +1 -18
  167. package/addon/utils/css-mappings/{eui-code-block-impl.ts → eui-code-block.ts} +0 -0
  168. package/addon/utils/css-mappings/eui-description-list.ts +29 -0
  169. package/addon/utils/css-mappings/eui-empty-prompt.ts +17 -0
  170. package/addon/utils/css-mappings/eui-flyout.ts +21 -1
  171. package/addon/utils/css-mappings/eui-header-links.ts +27 -0
  172. package/addon/utils/css-mappings/eui-health.ts +17 -0
  173. package/addon/utils/css-mappings/eui-icon.ts +93 -70
  174. package/addon/utils/css-mappings/eui-image.ts +17 -2
  175. package/addon/utils/css-mappings/eui-link.ts +21 -0
  176. package/addon/utils/css-mappings/eui-list-group.ts +5 -1
  177. package/addon/utils/css-mappings/eui-modal.ts +5 -1
  178. package/addon/utils/css-mappings/eui-page-body.ts +25 -0
  179. package/addon/utils/css-mappings/eui-page-content-body.ts +17 -0
  180. package/addon/utils/css-mappings/eui-page-content.ts +7 -1
  181. package/addon/utils/css-mappings/eui-page-header.ts +17 -0
  182. package/addon/utils/css-mappings/eui-page-side-bar.ts +17 -0
  183. package/addon/utils/css-mappings/eui-panel.ts +1 -0
  184. package/addon/utils/css-mappings/eui-progress-data.ts +0 -1
  185. package/addon/utils/css-mappings/eui-progress.ts +0 -2
  186. package/addon/utils/css-mappings/eui-range-levels.ts +22 -4
  187. package/addon/utils/css-mappings/eui-tabs.ts +3 -1
  188. package/addon/utils/css-mappings/eui-text-color.ts +3 -2
  189. package/addon/utils/css-mappings/index.ts +23 -3
  190. package/addon/utils/detect-element-resize.js +248 -0
  191. package/addon/utils/markdown/markdown-types.ts +10 -11
  192. package/addon/utils/markdown/plugins/markdown-add-components/index.ts +1 -0
  193. package/addon/utils/markdown/plugins/{markdown-add-components.ts → markdown-add-components/processor.ts} +14 -7
  194. package/addon/utils/markdown/plugins/markdown-checkbox/index.ts +9 -0
  195. package/addon/utils/markdown/plugins/{markdown-checkbox.ts → markdown-checkbox/parser.ts} +3 -5
  196. package/addon/utils/markdown/plugins/markdown-default-plugins/index.ts +12 -0
  197. package/addon/utils/markdown/plugins/{markdown-default-plugins.ts → markdown-default-plugins/parsing-plugins.ts} +13 -25
  198. package/addon/utils/markdown/plugins/markdown-default-plugins/plugins.ts +32 -0
  199. package/addon/utils/markdown/plugins/markdown-default-plugins/processing-plugins.ts +67 -0
  200. package/addon/utils/markdown/plugins/markdown-default-plugins/ui-plugins.ts +27 -0
  201. package/addon/utils/markdown/plugins/markdown-tooltip/index.ts +2 -0
  202. package/addon/utils/markdown/plugins/{markdown-tooltip.ts → markdown-tooltip/parser.ts} +3 -23
  203. package/addon/utils/markdown/plugins/markdown-tooltip/plugin.ts +17 -0
  204. package/addon/utils/markdown/plugins/to-dom.ts +3 -1
  205. package/addon/utils/markdown/remark/remark-prismjs.ts +41 -0
  206. package/addon/utils/popover/index.ts +87 -35
  207. package/addon/utils/range/index.ts +1 -0
  208. package/addon/utils/transition.ts +10 -3
  209. package/addon/version.ts +6 -0
  210. package/app/components/eui-auto-sizer/index.js +1 -0
  211. package/app/components/eui-avatar/index.js +1 -1
  212. package/app/components/eui-badge-group/badge-group-item/index.js +1 -1
  213. package/app/components/eui-badge-group/index.js +1 -1
  214. package/app/components/eui-breadcrumbs/index.js +1 -0
  215. package/app/components/eui-button-icon/index.js +1 -1
  216. package/app/components/eui-card-select/index.js +1 -0
  217. package/app/components/{eui-code-block-impl → eui-code-block/controls}/index.js +1 -1
  218. package/app/components/{eui-code-block-impl/code-block-controls → eui-code-block/full-screen-display}/index.js +1 -1
  219. package/app/components/eui-code-block/virtualized/index.js +1 -0
  220. package/app/components/eui-combo-box/create-option/index.js +1 -1
  221. package/app/components/eui-comment/eui-comment-timeline/index.js +1 -1
  222. package/app/components/eui-comment/index.js +1 -1
  223. package/app/components/eui-description-list/index.js +1 -0
  224. package/app/components/eui-description-list-description/index.js +1 -0
  225. package/app/components/eui-description-list-title/index.js +1 -0
  226. package/app/components/eui-dual-range/index.js +1 -1
  227. package/app/components/eui-empty-prompt/index.js +1 -0
  228. package/app/components/eui-field-number/index.js +1 -1
  229. package/app/components/eui-field-password/index.js +1 -1
  230. package/app/components/eui-field-search/index.js +1 -1
  231. package/app/components/eui-field-text/index.js +1 -1
  232. package/app/components/eui-file-picker/index.js +1 -1
  233. package/app/components/eui-form/index.js +1 -1
  234. package/app/components/eui-form-control-layout/index.js +1 -1
  235. package/app/components/eui-form-control-layout-clear-button/index.js +1 -1
  236. package/app/components/eui-form-control-layout-custom-icon/index.js +1 -1
  237. package/app/components/eui-form-control-layout-delimited/index.js +1 -1
  238. package/app/components/eui-form-control-layout-icons/index.js +1 -1
  239. package/app/components/eui-form-error-text/index.js +1 -1
  240. package/app/components/eui-form-fieldset/index.js +1 -1
  241. package/app/components/eui-form-help-text/index.js +1 -1
  242. package/app/components/eui-form-label/index.js +1 -1
  243. package/app/components/eui-form-legend/index.js +1 -1
  244. package/app/components/eui-form-row/index.js +1 -1
  245. package/app/components/eui-header-alert/index.js +1 -0
  246. package/app/components/eui-header-breadcrumbs/index.js +1 -0
  247. package/app/components/eui-header-links/index.js +1 -0
  248. package/app/components/eui-hide-for/index.js +1 -0
  249. package/app/components/eui-image.js +1 -1
  250. package/app/components/eui-key-pad-menu/index.js +1 -0
  251. package/app/components/eui-key-pad-menu/key/index.js +1 -0
  252. package/app/components/eui-key-pad-menu-item/index.js +1 -0
  253. package/app/components/eui-link/index.js +1 -0
  254. package/app/components/eui-list-group/index.js +1 -1
  255. package/app/components/eui-list-group-item/index.js +1 -1
  256. package/app/components/eui-loading-logo/index.js +1 -0
  257. package/app/components/eui-overlay-mask.js +1 -1
  258. package/app/components/eui-page/index.js +1 -1
  259. package/app/components/eui-page-body/index.js +1 -1
  260. package/app/components/eui-page-content/index.js +1 -1
  261. package/app/components/eui-page-content-body/index.js +1 -1
  262. package/app/components/eui-page-content-header/index.js +1 -1
  263. package/app/components/eui-page-content-header-section/index.js +1 -1
  264. package/app/components/eui-page-header/index.js +1 -1
  265. package/app/components/eui-page-header-content/index.js +1 -0
  266. package/app/components/eui-page-header-section/index.js +1 -1
  267. package/app/components/eui-page-template/index.js +1 -0
  268. package/app/components/eui-panel/index.js +1 -1
  269. package/app/components/eui-popover/index.js +1 -1
  270. package/app/components/eui-popover-footer/index.js +1 -1
  271. package/app/components/eui-popover-title/index.js +1 -1
  272. package/app/components/eui-portal/index.js +1 -1
  273. package/app/components/eui-progress/index.js +1 -1
  274. package/app/components/eui-radio/index.js +1 -1
  275. package/app/components/eui-radio-group/index.js +1 -1
  276. package/app/components/eui-range/index.js +1 -1
  277. package/app/components/eui-range-highlight/index.js +1 -1
  278. package/app/components/eui-range-input/index.js +1 -1
  279. package/app/components/eui-range-label/index.js +1 -1
  280. package/app/components/eui-range-levels/index.js +1 -1
  281. package/app/components/eui-range-slider/index.js +1 -1
  282. package/app/components/eui-range-thumb/index.js +1 -1
  283. package/app/components/eui-range-ticks/index.js +1 -1
  284. package/app/components/eui-range-tooltip/index.js +1 -1
  285. package/app/components/eui-range-track/index.js +1 -1
  286. package/app/components/eui-range-wrapper/index.js +1 -1
  287. package/app/components/eui-select/index.js +1 -1
  288. package/app/components/eui-show-for/index.js +1 -0
  289. package/app/components/eui-side-nav/index.js +1 -1
  290. package/app/components/eui-side-nav-item/button/index.js +1 -1
  291. package/app/components/eui-side-nav-item/index.js +1 -1
  292. package/app/components/eui-spacer/index.js +1 -1
  293. package/app/components/eui-split-panel/inner/index.js +1 -0
  294. package/app/components/eui-split-panel/outer/index.js +1 -0
  295. package/app/components/eui-switch/index.js +1 -1
  296. package/app/components/eui-tab/index.js +1 -1
  297. package/app/components/eui-tabs/index.js +1 -1
  298. package/app/components/eui-text/index.js +1 -1
  299. package/app/components/eui-text-align/index.js +1 -1
  300. package/app/components/eui-text-area/index.js +1 -1
  301. package/app/components/eui-text-color/index.js +1 -1
  302. package/app/components/eui-title/index.js +1 -1
  303. package/app/components/eui-tool-tip/index.js +1 -1
  304. package/app/components/eui-tool-tip-popover/index.js +1 -1
  305. package/app/helpers/eui-palette.js +1 -1
  306. package/app/helpers/hex-to-rgb.js +1 -1
  307. package/app/initializers/eui-config.js +1 -0
  308. package/app/utils/copy-to-clipboard.js +1 -0
  309. package/docs/display/avatar-demo/demo1.md +43 -49
  310. package/docs/display/avatar-demo/demo2.md +42 -0
  311. package/docs/display/avatar-demo/demo3.md +33 -0
  312. package/docs/display/avatar-demo/demo4.md +53 -0
  313. package/docs/display/avatar-demo/demo5.md +38 -0
  314. package/docs/display/avatar.md +1 -1
  315. package/docs/display/badge-demo/demo1.md +78 -137
  316. package/docs/display/badge-demo/demo2.md +32 -0
  317. package/docs/display/badge-demo/demo3.md +70 -0
  318. package/docs/display/badge-demo/demo4.md +27 -0
  319. package/docs/display/badge-demo/demo5.md +31 -0
  320. package/docs/display/badge-demo/demo6.md +59 -0
  321. package/docs/display/badge-demo/demo7.md +97 -0
  322. package/docs/display/badge-demo/demo8.md +19 -0
  323. package/docs/display/badge.md +1 -1
  324. package/docs/display/callout-demo/demo1.md +29 -81
  325. package/docs/display/callout-demo/demo2.md +28 -0
  326. package/docs/display/callout-demo/demo3.md +29 -0
  327. package/docs/display/callout-demo/demo4.md +26 -0
  328. package/docs/display/callout.md +9 -1
  329. package/docs/display/card/basic-card-demo/demo1.md +22 -316
  330. package/docs/display/card/basic-card.md +9 -1
  331. package/docs/display/card/beta-badge-demo/demo1.md +47 -0
  332. package/docs/display/card/beta-badge.md +9 -0
  333. package/docs/display/card/checkable-demo/demo1.md +20 -94
  334. package/docs/display/card/checkable-demo/demo2.md +63 -0
  335. package/docs/display/card/checkable.md +9 -1
  336. package/docs/display/card/custom-children-demo/demo1.md +93 -0
  337. package/docs/display/card/custom-children.md +9 -0
  338. package/docs/display/card/footer-demo/demo1.md +77 -0
  339. package/docs/display/card/footer.md +9 -0
  340. package/docs/display/card/images-demo/demo1.md +57 -0
  341. package/docs/display/card/images.md +9 -0
  342. package/docs/display/card/layout-demo/demo1.md +40 -0
  343. package/docs/display/card/layout.md +9 -0
  344. package/docs/display/card/selectable-demo/demo1.md +60 -53
  345. package/docs/display/card/selectable.md +9 -1
  346. package/docs/display/comment-list.md +1 -1
  347. package/docs/display/description-list-demo/demo1.md +53 -0
  348. package/docs/display/description-list-demo/demo2.md +43 -0
  349. package/docs/display/description-list-demo/demo3.md +58 -0
  350. package/docs/display/description-list-demo/demo4.md +42 -0
  351. package/docs/display/description-list-demo/demo5.md +62 -0
  352. package/docs/display/description-list-demo/demo6.md +46 -0
  353. package/docs/display/description-list.md +1 -0
  354. package/docs/display/empty-prompt-demo/demo1.md +25 -0
  355. package/docs/display/empty-prompt-demo/demo2.md +16 -0
  356. package/docs/display/empty-prompt-demo/demo3.md +67 -0
  357. package/docs/display/empty-prompt-demo/demo4.md +21 -0
  358. package/docs/display/empty-prompt-demo/demo5.md +33 -0
  359. package/docs/display/empty-prompt-demo/demo6.md +43 -0
  360. package/docs/display/empty-prompt-demo/demo7.md +162 -0
  361. package/docs/display/empty-prompt-demo/demo8.md +57 -0
  362. package/docs/display/empty-prompt.md +1 -0
  363. package/docs/display/health-demo/demo1.md +11 -8
  364. package/docs/display/health-demo/demo2.md +31 -0
  365. package/docs/display/health.md +9 -1
  366. package/docs/display/icons-demo/demo1.md +270 -57
  367. package/docs/display/icons-demo/demo2.md +76 -0
  368. package/docs/display/icons-demo/demo3.md +76 -0
  369. package/docs/display/icons-demo/demo4.md +104 -0
  370. package/docs/display/icons-demo/demo5.md +64 -0
  371. package/docs/display/icons-demo/demo6.md +63 -0
  372. package/docs/display/icons-demo/demo7.md +101 -0
  373. package/docs/display/icons-demo/demo8.md +47 -0
  374. package/docs/display/icons.md +1 -1
  375. package/docs/display/image-demo/demo1.md +15 -50
  376. package/docs/display/image-demo/demo2.md +35 -0
  377. package/docs/display/image-demo/demo3.md +75 -0
  378. package/docs/display/image-demo/demo4.md +80 -0
  379. package/docs/display/image.md +9 -1
  380. package/docs/display/list-group.md +1 -1
  381. package/docs/display/loading/logo-demo/demo1.md +15 -0
  382. package/docs/display/loading/logo.md +1 -0
  383. package/docs/display/progress-demo/demo1.md +10 -5
  384. package/docs/display/progress-demo/demo2.md +11 -26
  385. package/docs/display/progress-demo/demo3.md +27 -0
  386. package/docs/display/progress-demo/demo4.md +77 -0
  387. package/docs/display/progress.md +1 -1
  388. package/docs/display/stat-demo/demo1.md +0 -118
  389. package/docs/display/stat-demo/demo2.md +24 -22
  390. package/docs/display/stat-demo/demo3.md +39 -0
  391. package/docs/display/stat-demo/demo4.md +50 -0
  392. package/docs/display/stat-demo/demo5.md +25 -0
  393. package/docs/display/stat-demo/demo6.md +40 -0
  394. package/docs/display/stat-demo/demo7.md +84 -0
  395. package/docs/display/stat.md +8 -1
  396. package/docs/display/text-demo/demo1.md +79 -130
  397. package/docs/display/text-demo/demo2.md +71 -0
  398. package/docs/display/text-demo/demo3.md +39 -0
  399. package/docs/display/text.md +12 -1
  400. package/docs/display/title-demo/demo1.md +50 -26
  401. package/docs/display/title.md +1 -1
  402. package/docs/display/tool-tip-demo/demo1.md +26 -71
  403. package/docs/display/tool-tip-demo/demo2.md +33 -30
  404. package/docs/display/tool-tip-demo/demo3.md +50 -0
  405. package/docs/display/tool-tip-demo/demo4.md +74 -0
  406. package/docs/display/tool-tip.md +11 -1
  407. package/docs/editors/code/code-block-demo/demo1.md +21 -40
  408. package/docs/editors/code/code-block-demo/demo2.md +35 -0
  409. package/docs/editors/code/code-block-demo/demo3.md +43 -0
  410. package/docs/editors/code/code-block-demo/demo4.md +28 -0
  411. package/docs/editors/code/code-block-demo/demo5.md +42 -0
  412. package/docs/editors/code/code-block-demo/demo6.md +42 -0
  413. package/docs/editors/code/code-block-demo/demo7.md +853 -0
  414. package/docs/editors/code/code-block-demo/demo8.md +855 -0
  415. package/docs/editors/code/code-block.md +21 -1
  416. package/docs/editors/code/inline-demo/demo1.md +6 -3
  417. package/docs/editors/code/inline.md +1 -1
  418. package/docs/editors/markdown-editor/base-editor-demo/demo1.md +9 -28
  419. package/docs/editors/markdown-editor/base-editor.md +1 -1
  420. package/docs/forms/form-controls/checkbox/demo/demo1.md +49 -0
  421. package/docs/forms/form-controls/checkbox/index.md +26 -0
  422. package/docs/forms/form-controls/{checkbox-group-demo → checkbox-group/demo}/demo1.md +4 -13
  423. package/docs/forms/form-controls/checkbox-group/index.md +27 -0
  424. package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo1.md +8 -2
  425. package/docs/forms/form-controls/{combo-box-demo → combo-box/demo}/demo2.md +10 -8
  426. package/docs/forms/form-controls/combo-box/demo/demo3.md +60 -0
  427. package/docs/forms/form-controls/{combo-box-demo/demo3.md → combo-box/demo/demo4.md} +17 -14
  428. package/docs/forms/form-controls/combo-box/demo/demo5.md +151 -0
  429. package/docs/forms/form-controls/combo-box/index.md +6 -0
  430. package/docs/forms/form-controls/file-picker/demo/demo1.md +29 -0
  431. package/docs/forms/form-controls/file-picker/demo/demo2.md +44 -0
  432. package/docs/forms/form-controls/file-picker/demo/demo3.md +45 -0
  433. package/docs/forms/form-controls/file-picker/demo/demo4.md +63 -0
  434. package/docs/forms/form-controls/file-picker/index.md +22 -0
  435. package/docs/forms/form-controls/{form-control-layout-demo → form-control-layout/demo}/demo1.md +0 -0
  436. package/docs/forms/form-controls/form-control-layout/index.md +30 -0
  437. package/docs/forms/form-controls/{form-control-layout-delimited-demo → form-control-layout-delimited/demo}/demo1.md +41 -37
  438. package/docs/forms/form-controls/form-control-layout-delimited/index.md +24 -0
  439. package/docs/forms/form-controls/number-field/demo/demo1.md +20 -0
  440. package/docs/forms/form-controls/{number-field-demo/demo1.md → number-field/demo/demo2.md} +23 -11
  441. package/docs/forms/form-controls/number-field/index.md +12 -0
  442. package/docs/forms/form-controls/password-field/demo/demo1.md +19 -0
  443. package/docs/forms/form-controls/{password-field-demo/demo1.md → password-field/demo/demo2.md} +12 -8
  444. package/docs/forms/form-controls/password-field/index.md +19 -0
  445. package/docs/forms/form-controls/radio/demo/demo1.md +43 -0
  446. package/docs/forms/form-controls/radio/index.md +24 -0
  447. package/docs/forms/form-controls/radio-group/demo/demo1.md +50 -0
  448. package/docs/forms/form-controls/radio-group/index.md +18 -0
  449. package/docs/forms/form-controls/range/demo/demo1.md +96 -0
  450. package/docs/forms/form-controls/range/demo/demo2.md +62 -0
  451. package/docs/forms/form-controls/{range-demo → range/demo}/demo3.md +10 -12
  452. package/docs/forms/form-controls/{range-demo → range/demo}/demo4.md +16 -18
  453. package/docs/forms/form-controls/{range-demo → range/demo}/demo5.md +18 -20
  454. package/docs/forms/form-controls/range/demo/demo6.md +57 -0
  455. package/docs/forms/form-controls/range/demo/demo7.md +350 -0
  456. package/docs/forms/form-controls/range/index.md +18 -0
  457. package/docs/forms/form-controls/search-field/demo/demo1.md +29 -0
  458. package/docs/forms/form-controls/search-field/index.md +14 -0
  459. package/docs/forms/form-controls/select/demo/demo1.md +29 -0
  460. package/docs/forms/form-controls/select/demo/demo2.md +44 -0
  461. package/docs/forms/form-controls/{select-demo/demo1.md → select/demo/demo3.md} +20 -10
  462. package/docs/forms/form-controls/select/index.md +19 -0
  463. package/docs/forms/form-controls/{switch-demo → switch/demo}/demo1.md +10 -10
  464. package/docs/forms/form-controls/switch/index.md +13 -0
  465. package/docs/forms/form-controls/text-field/demo/demo1.md +35 -0
  466. package/docs/forms/form-controls/text-field/demo/demo2.md +40 -0
  467. package/docs/forms/form-controls/{text-field-demo/demo2.md → text-field/demo/demo3.md} +14 -17
  468. package/docs/forms/form-controls/{text-field-demo/demo1.md → text-field/demo/demo4.md} +18 -32
  469. package/docs/forms/form-controls/text-field/index.md +14 -0
  470. package/docs/forms/form-controls/textarea/demo/demo1.md +21 -0
  471. package/docs/forms/form-controls/textarea/demo/demo2.md +24 -0
  472. package/docs/forms/form-controls/textarea/index.md +13 -0
  473. package/docs/forms/form-layouts/described-form-groups-demo/demo1.md +13 -4
  474. package/docs/forms/form-layouts/described-form-groups.md +1 -1
  475. package/docs/layout/accordion-demo/demo1.md +21 -102
  476. package/docs/layout/accordion-demo/demo2.md +76 -0
  477. package/docs/layout/accordion-demo/demo3.md +25 -0
  478. package/docs/layout/accordion-demo/demo4.md +26 -0
  479. package/docs/layout/accordion-demo/demo5.md +65 -0
  480. package/docs/layout/accordion-demo/demo6.md +78 -0
  481. package/docs/layout/accordion-demo/demo7.md +66 -0
  482. package/docs/layout/accordion-demo/demo8.md +64 -0
  483. package/docs/layout/accordion-demo/demo9.md +114 -0
  484. package/docs/layout/accordion.md +39 -9
  485. package/docs/layout/bottom-bar-demo/demo1.md +32 -49
  486. package/docs/layout/bottom-bar-demo/demo2.md +54 -0
  487. package/docs/layout/bottom-bar-demo/demo3.md +81 -0
  488. package/docs/layout/bottom-bar.md +1 -1
  489. package/docs/layout/flex.md +1 -1
  490. package/docs/layout/flyout-demo/demo1.md +19 -11
  491. package/docs/layout/flyout-demo/demo2.md +43 -28
  492. package/docs/layout/flyout-demo/demo3.md +99 -0
  493. package/docs/layout/flyout-demo/demo4.md +115 -0
  494. package/docs/layout/flyout-demo/demo5.md +59 -0
  495. package/docs/layout/flyout-demo/demo6.md +57 -0
  496. package/docs/layout/flyout-demo/demo7.md +51 -0
  497. package/docs/layout/flyout.md +1 -1
  498. package/docs/layout/header-demo/demo1.md +284 -35
  499. package/docs/layout/header-demo/demo2.md +42 -0
  500. package/docs/layout/header-demo/demo3.md +48 -0
  501. package/docs/layout/header-demo/demo4.md +57 -0
  502. package/docs/layout/header-demo/demo5.md +232 -0
  503. package/docs/layout/header-demo/demo6.md +85 -0
  504. package/docs/layout/header-demo/demo7.md +94 -0
  505. package/docs/layout/header.md +1 -1
  506. package/docs/layout/horizontal-rule.md +1 -1
  507. package/docs/layout/modal-demo/demo1.md +64 -167
  508. package/docs/layout/modal-demo/demo2.md +126 -0
  509. package/docs/layout/modal-demo/demo3.md +55 -0
  510. package/docs/layout/modal-demo/demo4.md +65 -0
  511. package/docs/layout/modal-demo/demo5.md +96 -0
  512. package/docs/layout/modal.md +1 -1
  513. package/docs/layout/page-demo/demo1.md +96 -3
  514. package/docs/layout/page-demo/demo10.md +42 -0
  515. package/docs/layout/page-demo/demo2.md +46 -0
  516. package/docs/layout/page-demo/demo3.md +50 -0
  517. package/docs/layout/page-demo/demo4.md +38 -0
  518. package/docs/layout/page-demo/demo5.md +30 -0
  519. package/docs/layout/page-demo/demo6.md +51 -0
  520. package/docs/layout/page-demo/demo7.md +59 -0
  521. package/docs/layout/page-demo/demo8.md +19 -0
  522. package/docs/layout/page-demo/demo9.md +29 -0
  523. package/docs/layout/page.md +1 -1
  524. package/docs/layout/panel-demo/demo1.md +28 -19
  525. package/docs/layout/panel-demo/demo2.md +22 -0
  526. package/docs/layout/panel-demo/demo3.md +27 -0
  527. package/docs/layout/panel-demo/demo4.md +46 -0
  528. package/docs/layout/panel-demo/demo5.md +81 -0
  529. package/docs/layout/panel.md +7 -1
  530. package/docs/layout/popover-demo/demo1.md +42 -300
  531. package/docs/layout/popover-demo/demo10.md +72 -0
  532. package/docs/layout/popover-demo/demo2.md +306 -96
  533. package/docs/layout/popover-demo/demo3.md +20 -12
  534. package/docs/layout/popover-demo/demo4.md +118 -0
  535. package/docs/layout/popover-demo/demo5.md +252 -0
  536. package/docs/layout/popover-demo/demo6.md +44 -0
  537. package/docs/layout/popover-demo/demo7.md +44 -0
  538. package/docs/layout/popover-demo/demo8.md +50 -0
  539. package/docs/layout/popover-demo/demo9.md +80 -0
  540. package/docs/layout/popover.md +1 -1
  541. package/docs/navigation/breadcrumbs-demo/demo1.md +77 -0
  542. package/docs/navigation/breadcrumbs-demo/demo2.md +61 -0
  543. package/docs/navigation/breadcrumbs-demo/demo3.md +61 -0
  544. package/docs/navigation/breadcrumbs-demo/demo4.md +61 -0
  545. package/docs/navigation/breadcrumbs-demo/demo5.md +61 -0
  546. package/docs/navigation/breadcrumbs-demo/demo6.md +61 -0
  547. package/docs/navigation/breadcrumbs.md +1 -0
  548. package/docs/navigation/button-demo/demo1.md +210 -158
  549. package/docs/navigation/button.md +1 -1
  550. package/docs/navigation/collapsible-nav-demo/demo1.md +21 -44
  551. package/docs/navigation/collapsible-nav-demo/demo2.md +108 -0
  552. package/docs/navigation/collapsible-nav.md +1 -1
  553. package/docs/navigation/key-pad-menu-demo/demo1.md +77 -0
  554. package/docs/navigation/key-pad-menu-demo/demo2.md +102 -0
  555. package/docs/navigation/key-pad-menu-demo/demo3.md +54 -0
  556. package/docs/navigation/key-pad-menu-demo/demo4.md +71 -0
  557. package/docs/navigation/key-pad-menu-demo/demo5.md +65 -0
  558. package/docs/navigation/key-pad-menu.md +1 -0
  559. package/docs/navigation/link-demo/demo1.md +44 -0
  560. package/docs/navigation/link-demo/demo2.md +41 -0
  561. package/docs/navigation/link-demo/demo3.md +45 -0
  562. package/docs/navigation/link-demo/demo4.md +61 -0
  563. package/docs/navigation/link.md +1 -0
  564. package/docs/navigation/side-nav-demo/demo1.md +34 -18
  565. package/docs/navigation/side-nav.md +1 -1
  566. package/docs/navigation/steps-demo/demo1.md +16 -18
  567. package/docs/navigation/steps-demo/demo2.md +18 -21
  568. package/docs/navigation/steps-demo/demo3.md +12 -10
  569. package/docs/navigation/steps-demo/demo4.md +84 -0
  570. package/docs/navigation/steps-demo/demo5.md +29 -0
  571. package/docs/navigation/steps.md +1 -1
  572. package/docs/navigation/tabs-demo/demo1.md +38 -111
  573. package/docs/navigation/tabs-demo/demo2.md +56 -0
  574. package/docs/navigation/tabs-demo/demo3.md +79 -0
  575. package/docs/navigation/tabs-demo/demo4.md +102 -0
  576. package/docs/navigation/tabs.md +1 -1
  577. package/docs/utilities/auto-sizer-demo/demo1.md +34 -0
  578. package/docs/utilities/auto-sizer.md +1 -0
  579. package/docs/utilities/copy-demo/demo1.md +37 -0
  580. package/docs/utilities/copy-demo/demo2.md +70 -0
  581. package/docs/utilities/copy.md +1 -0
  582. package/docs/utilities/mutation-observer.md +1 -1
  583. package/docs/utilities/outside-click-detector.md +1 -1
  584. package/docs/utilities/overlay-mask.md +1 -1
  585. package/docs/utilities/portal.md +1 -1
  586. package/docs/utilities/resize-observer.md +1 -1
  587. package/docs/utilities/responsive-demo/demo1.md +108 -0
  588. package/docs/utilities/responsive.md +1 -0
  589. package/index.js +8 -3
  590. package/package.json +13 -7
  591. package/CHANGELOG.md +0 -1340
  592. package/addon/components/eui-code-block-impl/code-block-controls/index.hbs +0 -33
  593. package/addon/components/eui-code-block-impl/index.hbs +0 -111
  594. package/addon/components/eui-code-block-impl/index.ts +0 -121
  595. package/addon/components/eui-flyout-body/banner/index.hbs +0 -3
  596. package/addon/components/eui-flyout-body/content/index.hbs +0 -3
  597. package/addon/helpers/create-event.ts +0 -30
  598. package/addon/modifiers/focus-tab.ts +0 -19
  599. package/addon/modifiers/get-cursor-node.ts +0 -54
  600. package/addon/modifiers/invalidate-indeterminate.ts +0 -10
  601. package/addon/modifiers/on-event-simulate-event.ts +0 -32
  602. package/app/components/eui-card/eui-card-select/index.js +0 -1
  603. package/app/components/eui-flyout-body/banner/index.js +0 -1
  604. package/app/components/eui-flyout-body/content/index.js +0 -1
  605. package/app/helpers/create-event.js +0 -1
  606. package/app/modifiers/fixed-header.js +0 -1
  607. package/app/modifiers/focus-tab.js +0 -1
  608. package/app/modifiers/get-cursor-node.js +0 -1
  609. package/app/modifiers/invalidate-indeterminate.js +0 -1
  610. package/app/modifiers/on-event-simulate-event.js +0 -1
  611. package/docs/forms/form-controls/checkbox-demo/demo1.md +0 -40
  612. package/docs/forms/form-controls/checkbox-group.md +0 -1
  613. package/docs/forms/form-controls/checkbox.md +0 -1
  614. package/docs/forms/form-controls/combo-box.md +0 -1
  615. package/docs/forms/form-controls/file-picker-demo/demo1.md +0 -28
  616. package/docs/forms/form-controls/file-picker.md +0 -1
  617. package/docs/forms/form-controls/form-control-layout-delimited.md +0 -1
  618. package/docs/forms/form-controls/form-control-layout.md +0 -1
  619. package/docs/forms/form-controls/number-field.md +0 -1
  620. package/docs/forms/form-controls/password-field.md +0 -1
  621. package/docs/forms/form-controls/radio-demo/demo1.md +0 -39
  622. package/docs/forms/form-controls/radio-group-demo/demo1.md +0 -60
  623. package/docs/forms/form-controls/radio-group.md +0 -1
  624. package/docs/forms/form-controls/radio.md +0 -1
  625. package/docs/forms/form-controls/range-demo/demo1.md +0 -61
  626. package/docs/forms/form-controls/range-demo/demo2.md +0 -59
  627. package/docs/forms/form-controls/range-demo/demo6.md +0 -59
  628. package/docs/forms/form-controls/range.md +0 -1
  629. package/docs/forms/form-controls/search-field-demo/demo1.md +0 -31
  630. package/docs/forms/form-controls/search-field.md +0 -1
  631. package/docs/forms/form-controls/select.md +0 -1
  632. package/docs/forms/form-controls/switch.md +0 -1
  633. package/docs/forms/form-controls/text-field.md +0 -1
  634. package/docs/forms/form-controls/textarea-demo/demo1.md +0 -36
  635. package/docs/forms/form-controls/textarea.md +0 -1
@@ -0,0 +1,37 @@
1
+ import Component from '@glimmer/component';
2
+ import {
3
+ EuiBreakpointSize,
4
+ isWithinBreakpoints
5
+ } from '../../../utils/breakpoint';
6
+ import { modifier } from 'ember-modifier';
7
+ import { tracked } from '@glimmer/tracking';
8
+
9
+ const isWithinBreakpointsModifier = modifier(function (
10
+ _element: Element,
11
+ _pos: unknown[],
12
+ {
13
+ sizes,
14
+ isActive = true,
15
+ setIsWithinBreakpointsValue
16
+ }: {
17
+ sizes: EuiBreakpointSize[];
18
+ isActive: boolean;
19
+ setIsWithinBreakpointsValue: (value: boolean) => void;
20
+ }
21
+ ) {
22
+ function handleResize() {
23
+ setIsWithinBreakpointsValue(isWithinBreakpoints(window.innerWidth, sizes));
24
+ }
25
+
26
+ if (isActive) {
27
+ window.removeEventListener('resize', handleResize);
28
+ window.addEventListener('resize', handleResize);
29
+ handleResize();
30
+ }
31
+
32
+ return () => window.removeEventListener('resize', handleResize);
33
+ });
34
+ export default class EuiSplitPanelOuterComponent extends Component {
35
+ isWithinBreakpointsModifier = isWithinBreakpointsModifier;
36
+ @tracked isResponsive = false;
37
+ }
@@ -8,14 +8,31 @@
8
8
  ...attributes
9
9
  >
10
10
  {{#if (eq @status "complete")}}
11
- <EuiIcon @iconClasses="euiStepNumber__icon" @type="check" @size={{iconSize}} />
11
+ <EuiIcon
12
+ @iconClasses="euiStepNumber__icon"
13
+ @type="check"
14
+ @size={{iconSize}}
15
+ />
12
16
  {{else if (eq @status "warning")}}
13
- <EuiIcon @iconClasses="euiStepNumber__icon" @type="alert" @size={{iconSize}} />
17
+ <EuiIcon
18
+ @iconClasses="euiStepNumber__icon"
19
+ @type="alert"
20
+ @size={{iconSize}}
21
+ />
14
22
  {{else if (eq @status "danger")}}
15
- <EuiIcon @iconClasses="euiStepNumber__icon" @type="cross" @size={{iconSize}} />
23
+ <EuiIcon
24
+ @iconClasses="euiStepNumber__icon"
25
+ @type="cross"
26
+ @size={{iconSize}}
27
+ />
16
28
  {{else if (eq @status "loading")}}
17
- <EuiLoadingSpinner class="euiStepNumber__loader" @size={{if (eq iconSize "s") "l" "xl"}} />
29
+ <span {{screen-reader-only}}>{{@stepAriaLabel}}</span>
30
+ <EuiLoadingSpinner
31
+ class="euiStepNumber__loader"
32
+ @size={{if (eq iconSize "s") "l" "xl"}}
33
+ />
18
34
  {{else}}
35
+ <span {{screen-reader-only}}>{{@stepAriaLabel}}</span>
19
36
  <span class="euiStepNumber__number" aria-hidden="true">
20
37
  {{@number}}
21
38
  </span>
@@ -1,3 +1,9 @@
1
- <div class="euiSteps" ...attributes>
1
+ <div
2
+
3
+ class={{class-names
4
+ "euiSteps"
5
+ status=(arg-or-default @status "incomplete")
6
+ }}
7
+ ...attributes>
2
8
  {{yield}}
3
9
  </div>
@@ -1,49 +1,63 @@
1
1
  {{#let (arg-or-default @id (unique-id)) as |id|}}
2
- {{#let
3
- (eq @selectedTabId id)
4
- (fn @onClick id)
5
- (fn (optional @focusFn) id) as |isSelected onClick focusFn|
6
- }}
7
- {{#if (and @href (not @disabled))}}
8
- <a
9
- id={{id}}
10
- role="tab"
11
- aria-selected={{isSelected}}
12
- class={{class-names
13
- "euiTab"
14
- (if isSelected "euiTab-isSelected")
15
- (if @disabled "euiTab-isDisabled")
16
- }}
17
- href={{@href}}
18
- disabled={{@disabled}}
19
- ...attributes
20
- {{on "click" onClick}}
21
- {{focus-tab @selectedTabId @disabled focusFn}}
22
- >
23
- <span class="euiTab__content">
24
- {{yield}}
2
+ {{#if (and @href (not @disabled))}}
3
+ <a
4
+ id={{id}}
5
+ role="tab"
6
+ aria-selected={{not (not @isSelected)}}
7
+ class={{class-names
8
+ "euiTab"
9
+ (if @isSelected "euiTab-isSelected")
10
+ (if @disabled "euiTab-isDisabled")
11
+ }}
12
+ href={{@href}}
13
+ disabled={{@disabled}}
14
+ ...attributes
15
+ >
16
+ {{#if (has-block "prepend")}}
17
+ <span className="euiTab__prepend">
18
+ {{yield to="prepend"}}
25
19
  </span>
26
- </a>
27
- {{else}}
28
- <button
29
- id={{id}}
30
- role="tab"
31
- aria-selected={{isSelected}}
32
- type="button"
33
- class={{class-names
34
- "euiTab"
35
- (if isSelected "euiTab-isSelected")
36
- (if @disabled "euiTab-isDisabled")
37
- }}
38
- disabled={{@disabled}}
39
- ...attributes
40
- {{on "click" onClick}}
41
- {{focus-tab @selectedTabId @disabled focusFn}}
42
- >
43
- <span class="euiTab__content">
44
- {{yield}}
20
+ {{/if}}
21
+
22
+ <span class="euiTab__content">
23
+ {{yield}}
24
+ </span>
25
+
26
+ {{#if (has-block "append")}}
27
+ <span className="euiTab__append">
28
+ {{yield to="append"}}
45
29
  </span>
46
- </button>
47
- {{/if}}
48
- {{/let}}
49
- {{/let}}
30
+ {{/if}}
31
+ </a>
32
+ {{else}}
33
+ <button
34
+ id={{id}}
35
+ role="tab"
36
+ aria-selected={{not (not @isSelected)}}
37
+ type="button"
38
+ class={{class-names
39
+ "euiTab"
40
+ (if @isSelected "euiTab-isSelected")
41
+ (if @disabled "euiTab-isDisabled")
42
+ }}
43
+ disabled={{@disabled}}
44
+ ...attributes
45
+ >
46
+ {{#if (has-block "prepend")}}
47
+ <span className="euiTab__prepend">
48
+ {{yield to="prepend"}}
49
+ </span>
50
+ {{/if}}
51
+
52
+ <span class="euiTab__content">
53
+ {{yield}}
54
+ </span>
55
+
56
+ {{#if (has-block "append")}}
57
+ <span className="euiTab__append">
58
+ {{yield to="append"}}
59
+ </span>
60
+ {{/if}}
61
+ </button>
62
+ {{/if}}
63
+ {{/let}}
@@ -0,0 +1,23 @@
1
+ import Component from '@glimmer/component';
2
+ import { scheduleOnce } from '@ember/runloop';
3
+ import { modifier } from 'ember-modifier';
4
+
5
+ const focusTabModifier = modifier(function focusTab(
6
+ _element: HTMLElement,
7
+ [tabId, selectedTabId, isDisabled, focusFn, onFocusFn]: [
8
+ string | number,
9
+ Tab,
10
+ boolean,
11
+ (...args: unknown[]) => any,
12
+ (...args: unknown[]) => any
13
+ ]
14
+ ) {
15
+ if (selectedTabId === undefined && !isDisabled) {
16
+ scheduleOnce('afterRender', null, focusFn, tabId);
17
+ scheduleOnce('afterRender', null, onFocusFn, tabId);
18
+ }
19
+ });
20
+
21
+ export default class EuiTabComponent extends Component {
22
+ focusTabModifier = focusTabModifier;
23
+ }
@@ -1,8 +1,12 @@
1
- {{#let (use-state (get-tab-id @selectedTab)) as |selectedTab|}}
1
+ {{#let
2
+ (if (eq @display "condensed") false (arg-or-default @bottomBorder true))
3
+ as |bottomBorder|
4
+ }}
2
5
  <div
3
6
  role="tablist"
4
7
  class={{class-names
5
8
  (if (arg-or-default @expand false) "euiTabs--expand")
9
+ (if bottomBorder "euiTabs--bottomBorder")
6
10
  @className
7
11
  componentName="EuiTabs"
8
12
  display=(arg-or-default @display "default")
@@ -10,13 +14,6 @@
10
14
  }}
11
15
  ...attributes
12
16
  >
13
- {{yield
14
- (component
15
- "eui-tab"
16
- onClick=selectedTab.setState
17
- selectedTabId=selectedTab.value
18
- focusFn=selectedTab.setState
19
- )
20
- }}
17
+ {{yield}}
21
18
  </div>
22
19
  {{/let}}
@@ -7,8 +7,8 @@
7
7
  <span
8
8
  {{did-insert this.updateAttachTo}}
9
9
  {{did-update this.updateAttachTo @attachTo}}
10
- {{did-update (if (eq @isShown true) this.showToolTip this.hideToolTip) @isShown}}
11
- {{did-insert (if (eq @isShown true) this.showToolTip this.hideToolTip)}}
10
+ {{did-update (if (eq @isShown true) this.onFocus this.onBlur) @isShown}}
11
+ {{did-insert (if (eq @isShown true) this.onFocus this.onBlur)}}
12
12
  ></span>
13
13
  {{else}}
14
14
  <span
@@ -20,12 +20,11 @@
20
20
  }}
21
21
  {{did-insert this.didInsertAnchor}}
22
22
  {{on "mouseover" this.showToolTip}}
23
- {{on "keyup" this.onKeyUp}}
24
- {{on "focusin" this.showToolTip}}
25
- {{on "focusout" this.hideToolTip}}
23
+ {{on "focusin" this.onFocus}}
24
+ {{on "focusout" this.onBlur}}
26
25
  {{on "mouseout" this.onMouseOut}}
27
- {{did-update (if (eq @isShown true) this.showToolTip this.hideToolTip) @isShown}}
28
- {{did-insert (if (eq @isShown true) this.showToolTip this.hideToolTip)}}
26
+ {{did-update (if (eq @isShown true) this.onFocus this.onBlur) @isShown}}
27
+ {{did-insert (if (eq @isShown true) this.onFocus this.onBlur)}}
29
28
  >
30
29
  {{#if hasAnchorBlock}}
31
30
  {{yield this.id to="anchor"}}
@@ -22,6 +22,7 @@ interface ToolTipStyles {
22
22
  right?: string | 'auto';
23
23
  opacity?: string;
24
24
  visibility?: 'hidden';
25
+ display?: 'inlineBlock';
25
26
  }
26
27
 
27
28
  const displayToClassNameMap = {
@@ -39,7 +40,8 @@ const DEFAULT_TOOLTIP_STYLES: ToolTipStyles = {
39
40
  // the tooltip before it is positioned
40
41
  opacity: '0',
41
42
  // prevent accidental mouse interaction while positioning
42
- visibility: 'hidden'
43
+ visibility: 'hidden',
44
+ display: 'inlineBlock'
43
45
  };
44
46
 
45
47
  type EuiTooltipArgs = {
@@ -85,6 +87,8 @@ type EuiTooltipArgs = {
85
87
  * hidden.
86
88
  */
87
89
  onMouseOut?: (event: MouseEvent) => void;
90
+ onFocus?: () => void;
91
+ onBlur?: () => void;
88
92
  };
89
93
 
90
94
  export default class EuiToolTip extends Component<EuiTooltipArgs> {
@@ -96,6 +100,7 @@ export default class EuiToolTip extends Component<EuiTooltipArgs> {
96
100
 
97
101
  //STATE
98
102
  @tracked visible = false;
103
+ @tracked hasFocus = false;
99
104
  @tracked calculatedPosition: ToolTipPositions = this.position;
100
105
  @tracked toolTipStyles: ToolTipStyles = DEFAULT_TOOLTIP_STYLES;
101
106
  @tracked arrowStyles: undefined | { left: string; top: string };
@@ -123,24 +128,22 @@ export default class EuiToolTip extends Component<EuiTooltipArgs> {
123
128
 
124
129
  @action
125
130
  setupAttachToHandlers(): void {
126
- if (this.attachTo) {
131
+ if (this._attachTo) {
127
132
  this.attachTo?.addEventListener('mousemove', this.showToolTip);
128
- this.attachTo?.addEventListener('keyup', this.onKeyUp);
129
- this.attachTo?.addEventListener('focusin', this.showToolTip);
133
+ this.attachTo?.addEventListener('focusin', this.onFocus);
130
134
  this.attachTo?.addEventListener('mouseout', this.onMouseOut);
131
- this.attachTo?.addEventListener('focusout', this.hideToolTip);
135
+ this.attachTo?.addEventListener('focusout', this.onBlur);
132
136
  this.positionToolTip();
133
137
  }
134
138
  }
135
139
 
136
140
  @action
137
141
  removeAttachToHandlers(): void {
138
- if (this.attachTo) {
142
+ if (this._attachTo) {
139
143
  this.attachTo?.removeEventListener('mousemove', this.showToolTip);
140
- this.attachTo?.removeEventListener('keyup', this.onKeyUp);
141
- this.attachTo?.removeEventListener('focusin', this.showToolTip);
144
+ this.attachTo?.removeEventListener('focusin', this.onFocus);
142
145
  this.attachTo?.removeEventListener('mouseout', this.onMouseOut);
143
- this.attachTo?.removeEventListener('focusout', this.hideToolTip);
146
+ this.attachTo?.removeEventListener('focusout', this.onBlur);
144
147
  }
145
148
  }
146
149
 
@@ -163,7 +166,6 @@ export default class EuiToolTip extends Component<EuiTooltipArgs> {
163
166
  super.willDestroy();
164
167
  this.clearAnimationTimeout();
165
168
  this.removeAttachToHandlers();
166
- window.removeEventListener('mousemove', this.hasFocusMouseMoveListener);
167
169
  }
168
170
 
169
171
  @action
@@ -298,6 +300,18 @@ export default class EuiToolTip extends Component<EuiTooltipArgs> {
298
300
  }
299
301
  }
300
302
 
303
+ @action
304
+ onFocus(): void {
305
+ this.hasFocus = true;
306
+ this.showToolTip();
307
+ }
308
+
309
+ @action
310
+ onBlur(): void {
311
+ this.hasFocus = false;
312
+ this.hideToolTip();
313
+ }
314
+
301
315
  @action
302
316
  onMouseOut(event: MouseEvent): void {
303
317
  // Prevent mousing over children from hiding the tooltip by testing for whether the mouse has
@@ -307,7 +321,9 @@ export default class EuiToolTip extends Component<EuiTooltipArgs> {
307
321
  (this._anchor != null &&
308
322
  !this._anchor.contains(event.relatedTarget as Node))
309
323
  ) {
310
- this.hideToolTip();
324
+ if (!this.hasFocus) {
325
+ this.hideToolTip();
326
+ }
311
327
  }
312
328
 
313
329
  if (this.args.onMouseOut) {
@@ -8,7 +8,10 @@ import { assert } from '@ember/debug';
8
8
  * @property {unknown} 0 - value to be returned if it's defined
9
9
  * @property {unknown} 1 - default value to be returned if value is undefined
10
10
  */
11
- export function argOrDefault([value, defaultValue]: [unknown, unknown]): unknown {
11
+ export function argOrDefault([value, defaultValue]: [
12
+ unknown,
13
+ unknown
14
+ ]): unknown {
12
15
  assert('`defaultValue` must be provided', defaultValue !== undefined);
13
16
  return value !== undefined ? value : defaultValue;
14
17
  }
@@ -9,8 +9,10 @@ interface IObjectKeys {
9
9
  }
10
10
  interface Options extends IObjectKeys {
11
11
  size: string;
12
+ side: string;
12
13
  paddingSize: string;
13
14
  textAlign: string;
15
+ textStyle: string;
14
16
  color: string;
15
17
  verticalPosition: string;
16
18
  horizontalPosition: string;
@@ -32,6 +32,9 @@ export const PALETTES = {
32
32
 
33
33
  export type palette_keys = keyof typeof PALETTES;
34
34
 
35
- export default helper(function ([paletteName, steps]: [palette_keys, number]): EuiPalette {
35
+ export default helper(function ([paletteName, steps]: [
36
+ palette_keys,
37
+ number
38
+ ]): EuiPalette {
36
39
  return PALETTES[paletteName](steps);
37
40
  });
@@ -1,19 +1,61 @@
1
1
  import { helper } from '@ember/component/helper';
2
+ import { EUI_THUMB_SIZE } from '../utils/range';
2
3
 
3
4
  export interface EuiRangeTick {
4
5
  value: number;
5
6
  label: string;
6
7
  }
7
8
 
8
- export function getRangeTick([ticks, tickValue, min, max, percentageWidth]: [
9
- EuiRangeTick[],
10
- number,
11
- number,
12
- number,
13
- number
14
- ]) {
9
+ export function calculateOffset(
10
+ position: number,
11
+ value: number,
12
+ bound: number
13
+ ) {
14
+ const threshold = 30;
15
+ let offset = value === bound ? 0 : EUI_THUMB_SIZE / 2;
16
+ if (offset !== 0) {
17
+ // Estimating offset by eye. Trying to account for range scaling at both ends.
18
+ offset =
19
+ position <= threshold ? offset + (1 / position) * threshold : offset;
20
+ offset =
21
+ position >= 100 - threshold
22
+ ? offset - (1 / (100 - position)) * threshold
23
+ : offset;
24
+ }
25
+ return offset;
26
+ }
27
+
28
+ export function calculateThumbPosition(
29
+ value: number,
30
+ min: number,
31
+ max: number,
32
+ width: number,
33
+ thumbSize: number = EUI_THUMB_SIZE
34
+ ): number {
35
+ // Calculate the left position based on value
36
+ const decimal = (value - min) / (max - min);
37
+ // Must be between 0-100%
38
+ let valuePosition = decimal <= 1 ? decimal : 1;
39
+ valuePosition = valuePosition >= 0 ? valuePosition : 0;
40
+
41
+ const trackWidth = width ?? 0;
42
+ const thumbToTrackRatio = thumbSize / trackWidth;
43
+ const trackPositionScale = (1 - thumbToTrackRatio) * 100;
44
+
45
+ return valuePosition * trackPositionScale;
46
+ }
47
+
48
+ export function getRangeTick([
49
+ ticks,
50
+ tickValue,
51
+ min,
52
+ max,
53
+ percentageWidth,
54
+ trackWidth = 0
55
+ ]: [EuiRangeTick[], number, number, number, number, number]) {
15
56
  let tickStyle: string = '';
16
57
  let customTick;
58
+
17
59
  if (ticks) {
18
60
  customTick = ticks.find((o) => o.value === tickValue);
19
61
 
@@ -21,7 +63,10 @@ export function getRangeTick([ticks, tickValue, min, max, percentageWidth]: [
21
63
  tickStyle = `left: ${((customTick.value - min) / (max - min)) * 100}%;`;
22
64
  }
23
65
  } else {
24
- tickStyle = `width: ${tickStyle} ${percentageWidth}%`;
66
+ let position = calculateThumbPosition(tickValue, min, max, trackWidth);
67
+
68
+ tickStyle = `left: calc(${position}% + ${EUI_THUMB_SIZE / 2}px);`;
69
+ tickStyle += `width: ${percentageWidth}%;`;
25
70
  }
26
71
 
27
72
  return {
@@ -1,7 +1,10 @@
1
1
  import { helper } from '@ember/component/helper';
2
2
  import { assert } from '@ember/debug';
3
3
 
4
- export function getTabId([tabOrId]: [Tab | string | number]): string | number | undefined {
4
+ export function getTabId([tabOrId]: [Tab | string | number]):
5
+ | string
6
+ | number
7
+ | undefined {
5
8
  if (tabOrId === undefined) {
6
9
  return;
7
10
  }
@@ -10,7 +13,10 @@ export function getTabId([tabOrId]: [Tab | string | number]): string | number |
10
13
  return tabOrId;
11
14
  }
12
15
 
13
- assert('The passed `tab` object needs to have the `id` property', tabOrId.id !== undefined);
16
+ assert(
17
+ 'The passed `tab` object needs to have the `id` property',
18
+ tabOrId.id !== undefined
19
+ );
14
20
  return tabOrId.id;
15
21
  }
16
22
 
@@ -25,7 +25,10 @@ import { helper } from '@ember/component/helper';
25
25
  export function hexToRgb(hex: string): rgbDef {
26
26
  // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF")
27
27
  const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
28
- hex = hex.replace(shorthandRegex, (_m, r1, g1, b1) => r1 + r1 + g1 + g1 + b1 + b1);
28
+ hex = hex.replace(
29
+ shorthandRegex,
30
+ (_m, r1, g1, b1) => r1 + r1 + g1 + g1 + b1 + b1
31
+ );
29
32
 
30
33
  const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex)!;
31
34
 
@@ -16,12 +16,16 @@ export function inlineStyles(_: unknown, params: InlineStylesParams) {
16
16
  let componentStyles = {};
17
17
 
18
18
  if (componentName) {
19
- assert(`Could not find component ${componentName} in cssMappings.`, cssMappings[componentName]);
19
+ assert(
20
+ `Could not find component ${componentName} in cssMappings.`,
21
+ cssMappings[componentName]
22
+ );
20
23
  assert(
21
24
  `Could not find inlineStyles in ${componentName}'s cssMapping.`,
22
25
  cssMappings[componentName].inlineStyles
23
26
  );
24
- componentStyles = cssMappings[componentName].inlineStyles?.(componentArgs) || {};
27
+ componentStyles =
28
+ cssMappings[componentName].inlineStyles?.(componentArgs) || {};
25
29
  }
26
30
 
27
31
  let finalProperties: FinalProperties = {
@@ -30,7 +34,10 @@ export function inlineStyles(_: unknown, params: InlineStylesParams) {
30
34
  };
31
35
 
32
36
  for (let property in finalProperties) {
33
- if (property === 'background-image' && finalProperties[property] !== 'none') {
37
+ if (
38
+ property === 'background-image' &&
39
+ finalProperties[property] !== 'none'
40
+ ) {
34
41
  finalProperties[property] = `url(${finalProperties[property]})`;
35
42
  } else {
36
43
  finalProperties[property] = `${finalProperties[property]}`;
@@ -7,7 +7,10 @@ type Comparator = {
7
7
  value: number | string;
8
8
  };
9
9
 
10
- export function isWithinRange(_: unknown[], { min, max, value }: Comparator): boolean {
10
+ export function isWithinRange(
11
+ _: unknown[],
12
+ { min, max, value }: Comparator
13
+ ): boolean {
11
14
  return isWithin(min, max, value);
12
15
  }
13
16
 
@@ -1,6 +1,8 @@
1
1
  import { helper } from '@ember/component/helper';
2
2
 
3
- export function startsWith([needle, word]: [string, string] /*, hash*/): boolean {
3
+ export function startsWith(
4
+ [needle, word]: [string, string] /*, hash*/
5
+ ): boolean {
4
6
  return word?.startsWith(needle) || false;
5
7
  }
6
8
 
@@ -13,7 +13,10 @@ interface Identifiable {
13
13
  *
14
14
  * @param { any } ref
15
15
  */
16
- export function uniqueId(_?: any[], { ref }: { ref?: Identifiable } = {}): string {
16
+ export function uniqueId(
17
+ _?: any[],
18
+ { ref }: { ref?: Identifiable } = {}
19
+ ): string {
17
20
  return isPresent(ref) ? guidFor(ref) : guidFor({});
18
21
  }
19
22
 
@@ -0,0 +1,12 @@
1
+ //@ts-ignore
2
+ import { registerLibrary } from '@ember-eui/core/version';
3
+ // import 'ember-basic-dropdown/vendor/ember-basic-dropdown.css';
4
+ // import '@elastic/eui/dist/eui_theme_amsterdam_light.css';
5
+
6
+ export function initialize(): void {
7
+ registerLibrary();
8
+ }
9
+
10
+ export default {
11
+ initialize
12
+ };
@@ -1,6 +1,9 @@
1
1
  import { modifier } from 'ember-modifier';
2
2
 
3
- const hasOwnProperty = function (obj: MutationObserverInit, name: string): boolean {
3
+ const hasOwnProperty = function (
4
+ obj: MutationObserverInit,
5
+ name: string
6
+ ): boolean {
4
7
  return Object.prototype.hasOwnProperty.call(obj, name);
5
8
  };
6
9
 
@@ -31,7 +31,7 @@ export default class OutsideClickDetector extends Modifier<OutsideClickDetectorM
31
31
  return;
32
32
  }
33
33
 
34
- const event = (e as unknown) as EuiEvent;
34
+ const event = e as unknown as EuiEvent;
35
35
 
36
36
  if (
37
37
  (event.euiGeneratedBy && event.euiGeneratedBy.includes(this.id)) ||
@@ -78,9 +78,9 @@ export default class OutsideClickDetector extends Modifier<OutsideClickDetectorM
78
78
  // of detector ids that have been encountered;
79
79
 
80
80
  if (event.hasOwnProperty('euiGeneratedBy')) {
81
- ((event as unknown) as EuiEvent).euiGeneratedBy.push(this.id);
81
+ (event as unknown as EuiEvent).euiGeneratedBy.push(this.id);
82
82
  } else {
83
- ((event as unknown) as EuiEvent).euiGeneratedBy = [this.id];
83
+ (event as unknown as EuiEvent).euiGeneratedBy = [this.id];
84
84
  }
85
85
  if (cb) cb(event);
86
86
  }
@@ -88,7 +88,7 @@ export default class OutsideClickDetector extends Modifier<OutsideClickDetectorM
88
88
  @action
89
89
  onChildMouseDown(event: MouseEvent): void {
90
90
  this.onChildClick(event, (e) => {
91
- const nativeEvent = (e as unknown) as EuiEvent;
91
+ const nativeEvent = e as unknown as EuiEvent;
92
92
  this.capturedDownIds = nativeEvent.euiGeneratedBy;
93
93
  if (this.args.named.onMouseDown) this.args.named.onMouseDown(e);
94
94
  if (this.args.named.onTouchStart) this.args.named.onTouchStart(e);