@elastic/eui 88.2.0 → 88.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/dist/eui_theme_dark.css +0 -25
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +0 -25
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accordion/accordion.js +35 -208
  6. package/es/components/accordion/accordion.styles.js +3 -95
  7. package/es/components/accordion/accordion_children/accordion_children.js +101 -0
  8. package/es/components/accordion/accordion_children/accordion_children.styles.js +39 -0
  9. package/es/components/accordion/accordion_children/accordion_children_loading.js +31 -0
  10. package/es/components/accordion/accordion_children/index.js +9 -0
  11. package/es/components/accordion/accordion_trigger/accordion_arrow.js +41 -0
  12. package/es/components/accordion/accordion_trigger/accordion_arrow.styles.js +46 -0
  13. package/es/components/accordion/accordion_trigger/accordion_button.js +51 -0
  14. package/es/components/accordion/accordion_trigger/accordion_button.styles.js +26 -0
  15. package/es/components/accordion/accordion_trigger/accordion_trigger.js +87 -0
  16. package/es/components/accordion/accordion_trigger/index.js +9 -0
  17. package/es/components/avatar/avatar.js +1 -1
  18. package/es/components/badge/badge.js +1 -1
  19. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  20. package/es/components/basic_table/basic_table.js +1 -1
  21. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  22. package/es/components/basic_table/in_memory_table.js +1 -1
  23. package/es/components/button/button_display/_button_display.js +1 -1
  24. package/es/components/button/button_display/_button_display_content.js +1 -1
  25. package/es/components/button/button_empty/button_empty.js +1 -1
  26. package/es/components/button/button_group/button_group.js +1 -1
  27. package/es/components/button/button_group/button_group_button.js +1 -1
  28. package/es/components/button/button_icon/button_icon.js +1 -1
  29. package/es/components/call_out/call_out.js +1 -1
  30. package/es/components/card/card.js +1 -1
  31. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  32. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +1 -1
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -2
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  35. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +3 -3
  36. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +2 -2
  37. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  38. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +3 -3
  39. package/es/components/comment_list/comment.js +2 -2
  40. package/es/components/comment_list/comment_event.js +1 -1
  41. package/es/components/comment_list/comment_list.js +2 -2
  42. package/es/components/comment_list/comment_timeline.js +1 -1
  43. package/es/components/datagrid/body/data_grid_body.js +13 -13
  44. package/es/components/datagrid/body/data_grid_body_custom.js +13 -13
  45. package/es/components/datagrid/body/data_grid_body_virtualized.js +13 -13
  46. package/es/components/datagrid/body/data_grid_cell.js +24 -24
  47. package/es/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  48. package/es/components/datagrid/body/header/data_grid_header_row.js +13 -13
  49. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  50. package/es/components/datagrid/data_grid.js +13 -13
  51. package/es/components/datagrid/utils/in_memory.js +12 -12
  52. package/es/components/date_picker/date_picker.js +2 -2
  53. package/es/components/date_picker/date_picker_range.js +1 -1
  54. package/es/components/empty_prompt/empty_prompt.js +1 -1
  55. package/es/components/facet/facet_button.js +1 -1
  56. package/es/components/form/field_number/field_number.js +1 -1
  57. package/es/components/form/field_text/field_text.js +2 -2
  58. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  59. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  60. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  61. package/es/components/header/header_links/header_link.js +1 -1
  62. package/es/components/header/header_links/header_links.js +1 -1
  63. package/es/components/header/header_logo/header_logo.js +1 -1
  64. package/es/components/header/header_section/header_section_item_button.js +1 -1
  65. package/es/components/icon/assets/grabOmnidirectional.js +33 -0
  66. package/es/components/icon/assets/transitionLeftIn.js +36 -0
  67. package/es/components/icon/assets/transitionLeftOut.js +36 -0
  68. package/es/components/icon/assets/transitionTopIn.js +36 -0
  69. package/es/components/icon/assets/transitionTopOut.js +36 -0
  70. package/es/components/icon/icon.js +1 -1
  71. package/es/components/icon/icon_map.js +5 -0
  72. package/es/components/inline_edit/inline_edit_form.js +49 -13
  73. package/es/components/inline_edit/inline_edit_text.js +22 -23
  74. package/es/components/inline_edit/inline_edit_title.js +22 -23
  75. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  76. package/es/components/list_group/list_group.js +2 -2
  77. package/es/components/list_group/list_group_item.js +3 -3
  78. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  79. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  80. package/es/components/loading/loading_logo.js +1 -1
  81. package/es/components/markdown_editor/markdown_editor.js +1 -1
  82. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  83. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  84. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  85. package/es/components/notification/notification_event.js +2 -2
  86. package/es/components/notification/notification_event_meta.js +1 -1
  87. package/es/components/page/page_header/page_header_content.js +1 -1
  88. package/es/components/pagination/pagination_button.js +1 -1
  89. package/es/components/panel/split_panel/split_panel.js +9 -7
  90. package/es/components/panel/split_panel/split_panel.styles.js +40 -0
  91. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  92. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  93. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  94. package/es/components/suggest/suggest.js +1 -1
  95. package/es/components/suggest/suggest_item.js +1 -1
  96. package/es/components/table/table_header_button.js +1 -1
  97. package/es/components/text_truncate/utils.js +1 -1
  98. package/es/components/timeline/timeline_item_icon.js +1 -1
  99. package/es/components/toast/global_toast_list.js +51 -3
  100. package/es/components/toast/global_toast_list.styles.js +3 -2
  101. package/es/components/toast/toast.js +1 -1
  102. package/es/components/tool_tip/icon_tip.js +1 -1
  103. package/eui.d.ts +194 -44
  104. package/i18ntokens.json +60 -24
  105. package/lib/components/accordion/accordion.js +34 -207
  106. package/lib/components/accordion/accordion.styles.js +12 -109
  107. package/lib/components/accordion/accordion_children/accordion_children.js +111 -0
  108. package/lib/components/accordion/accordion_children/accordion_children.styles.js +45 -0
  109. package/lib/components/accordion/accordion_children/accordion_children_loading.js +38 -0
  110. package/lib/components/accordion/accordion_children/index.js +12 -0
  111. package/lib/components/accordion/accordion_trigger/accordion_arrow.js +48 -0
  112. package/lib/components/accordion/accordion_trigger/accordion_arrow.styles.js +51 -0
  113. package/lib/components/accordion/accordion_trigger/accordion_button.js +58 -0
  114. package/lib/components/accordion/accordion_trigger/accordion_button.styles.js +33 -0
  115. package/lib/components/accordion/accordion_trigger/accordion_trigger.js +93 -0
  116. package/lib/components/accordion/accordion_trigger/index.js +12 -0
  117. package/lib/components/avatar/avatar.js +1 -1
  118. package/lib/components/badge/badge.js +1 -1
  119. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  120. package/lib/components/basic_table/basic_table.js +1 -1
  121. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  122. package/lib/components/basic_table/in_memory_table.js +1 -1
  123. package/lib/components/button/button_display/_button_display.js +1 -1
  124. package/lib/components/button/button_display/_button_display_content.js +1 -1
  125. package/lib/components/button/button_empty/button_empty.js +1 -1
  126. package/lib/components/button/button_group/button_group.js +1 -1
  127. package/lib/components/button/button_group/button_group_button.js +1 -1
  128. package/lib/components/button/button_icon/button_icon.js +1 -1
  129. package/lib/components/call_out/call_out.js +1 -1
  130. package/lib/components/card/card.js +1 -1
  131. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  132. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +1 -1
  133. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -2
  134. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  135. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +3 -3
  136. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +2 -2
  137. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  138. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +3 -3
  139. package/lib/components/comment_list/comment.js +2 -2
  140. package/lib/components/comment_list/comment_event.js +1 -1
  141. package/lib/components/comment_list/comment_list.js +2 -2
  142. package/lib/components/comment_list/comment_timeline.js +1 -1
  143. package/lib/components/datagrid/body/data_grid_body.js +13 -13
  144. package/lib/components/datagrid/body/data_grid_body_custom.js +13 -13
  145. package/lib/components/datagrid/body/data_grid_body_virtualized.js +13 -13
  146. package/lib/components/datagrid/body/data_grid_cell.js +24 -24
  147. package/lib/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  148. package/lib/components/datagrid/body/header/data_grid_header_row.js +13 -13
  149. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  150. package/lib/components/datagrid/data_grid.js +13 -13
  151. package/lib/components/datagrid/utils/in_memory.js +12 -12
  152. package/lib/components/date_picker/date_picker.js +2 -2
  153. package/lib/components/date_picker/date_picker_range.js +1 -1
  154. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  155. package/lib/components/facet/facet_button.js +1 -1
  156. package/lib/components/form/field_number/field_number.js +1 -1
  157. package/lib/components/form/field_text/field_text.js +2 -2
  158. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  159. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  160. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  161. package/lib/components/header/header_links/header_link.js +1 -1
  162. package/lib/components/header/header_links/header_links.js +1 -1
  163. package/lib/components/header/header_logo/header_logo.js +1 -1
  164. package/lib/components/header/header_section/header_section_item_button.js +1 -1
  165. package/lib/components/icon/assets/grabOmnidirectional.js +41 -0
  166. package/lib/components/icon/assets/transitionLeftIn.js +44 -0
  167. package/lib/components/icon/assets/transitionLeftOut.js +44 -0
  168. package/lib/components/icon/assets/transitionTopIn.js +44 -0
  169. package/lib/components/icon/assets/transitionTopOut.js +44 -0
  170. package/lib/components/icon/icon.js +1 -1
  171. package/lib/components/icon/icon_map.js +5 -0
  172. package/lib/components/icon/svgs/grabOmnidirectional.svg +3 -0
  173. package/lib/components/icon/svgs/transitionLeftIn.svg +4 -0
  174. package/lib/components/icon/svgs/transitionLeftOut.svg +4 -0
  175. package/lib/components/icon/svgs/transitionTopIn.svg +4 -0
  176. package/lib/components/icon/svgs/transitionTopOut.svg +4 -0
  177. package/lib/components/inline_edit/inline_edit_form.js +58 -20
  178. package/lib/components/inline_edit/inline_edit_text.js +22 -23
  179. package/lib/components/inline_edit/inline_edit_title.js +22 -23
  180. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  181. package/lib/components/list_group/list_group.js +2 -2
  182. package/lib/components/list_group/list_group_item.js +3 -3
  183. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  184. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  185. package/lib/components/loading/loading_logo.js +1 -1
  186. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  187. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  188. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  189. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  190. package/lib/components/notification/notification_event.js +2 -2
  191. package/lib/components/notification/notification_event_meta.js +1 -1
  192. package/lib/components/page/page_header/page_header_content.js +1 -1
  193. package/lib/components/panel/split_panel/split_panel.js +9 -7
  194. package/lib/components/panel/split_panel/split_panel.styles.js +46 -0
  195. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  196. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  197. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  198. package/lib/components/suggest/suggest.js +1 -1
  199. package/lib/components/suggest/suggest_item.js +1 -1
  200. package/lib/components/table/table_header_button.js +1 -1
  201. package/lib/components/text_truncate/utils.js +1 -1
  202. package/lib/components/timeline/timeline_item_icon.js +1 -1
  203. package/lib/components/toast/global_toast_list.js +53 -4
  204. package/lib/components/toast/global_toast_list.styles.js +3 -2
  205. package/lib/components/toast/toast.js +1 -1
  206. package/lib/components/tool_tip/icon_tip.js +1 -1
  207. package/optimize/es/components/accordion/accordion.js +35 -203
  208. package/optimize/es/components/accordion/accordion.styles.js +3 -95
  209. package/optimize/es/components/accordion/accordion_children/accordion_children.js +91 -0
  210. package/optimize/es/components/accordion/accordion_children/accordion_children.styles.js +39 -0
  211. package/optimize/es/components/accordion/accordion_children/accordion_children_loading.js +31 -0
  212. package/optimize/es/components/accordion/accordion_children/index.js +9 -0
  213. package/optimize/es/components/accordion/accordion_trigger/accordion_arrow.js +36 -0
  214. package/optimize/es/components/accordion/accordion_trigger/accordion_arrow.styles.js +46 -0
  215. package/optimize/es/components/accordion/accordion_trigger/accordion_button.js +45 -0
  216. package/optimize/es/components/accordion/accordion_trigger/accordion_button.styles.js +26 -0
  217. package/optimize/es/components/accordion/accordion_trigger/accordion_trigger.js +80 -0
  218. package/optimize/es/components/accordion/accordion_trigger/index.js +9 -0
  219. package/optimize/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +1 -1
  220. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  221. package/optimize/es/components/icon/assets/grabOmnidirectional.js +32 -0
  222. package/optimize/es/components/icon/assets/transitionLeftIn.js +35 -0
  223. package/optimize/es/components/icon/assets/transitionLeftOut.js +35 -0
  224. package/optimize/es/components/icon/assets/transitionTopIn.js +35 -0
  225. package/optimize/es/components/icon/assets/transitionTopOut.js +35 -0
  226. package/optimize/es/components/icon/icon_map.js +5 -0
  227. package/optimize/es/components/inline_edit/inline_edit_form.js +32 -12
  228. package/optimize/es/components/inline_edit/inline_edit_text.js +6 -22
  229. package/optimize/es/components/inline_edit/inline_edit_title.js +6 -22
  230. package/optimize/es/components/list_group/list_group_item.js +1 -1
  231. package/optimize/es/components/panel/split_panel/split_panel.js +9 -7
  232. package/optimize/es/components/panel/split_panel/split_panel.styles.js +40 -0
  233. package/optimize/es/components/text_truncate/utils.js +1 -1
  234. package/optimize/es/components/toast/global_toast_list.js +39 -2
  235. package/optimize/es/components/toast/global_toast_list.styles.js +3 -2
  236. package/optimize/lib/components/accordion/accordion.js +34 -202
  237. package/optimize/lib/components/accordion/accordion.styles.js +12 -109
  238. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +101 -0
  239. package/optimize/lib/components/accordion/accordion_children/accordion_children.styles.js +45 -0
  240. package/optimize/lib/components/accordion/accordion_children/accordion_children_loading.js +38 -0
  241. package/optimize/lib/components/accordion/accordion_children/index.js +12 -0
  242. package/optimize/lib/components/accordion/accordion_trigger/accordion_arrow.js +43 -0
  243. package/optimize/lib/components/accordion/accordion_trigger/accordion_arrow.styles.js +51 -0
  244. package/optimize/lib/components/accordion/accordion_trigger/accordion_button.js +52 -0
  245. package/optimize/lib/components/accordion/accordion_trigger/accordion_button.styles.js +33 -0
  246. package/optimize/lib/components/accordion/accordion_trigger/accordion_trigger.js +86 -0
  247. package/optimize/lib/components/accordion/accordion_trigger/index.js +12 -0
  248. package/optimize/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +1 -1
  249. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  250. package/optimize/lib/components/icon/assets/grabOmnidirectional.js +41 -0
  251. package/optimize/lib/components/icon/assets/transitionLeftIn.js +44 -0
  252. package/optimize/lib/components/icon/assets/transitionLeftOut.js +44 -0
  253. package/optimize/lib/components/icon/assets/transitionTopIn.js +44 -0
  254. package/optimize/lib/components/icon/assets/transitionTopOut.js +44 -0
  255. package/optimize/lib/components/icon/icon_map.js +5 -0
  256. package/optimize/lib/components/icon/svgs/grabOmnidirectional.svg +3 -0
  257. package/optimize/lib/components/icon/svgs/transitionLeftIn.svg +4 -0
  258. package/optimize/lib/components/icon/svgs/transitionLeftOut.svg +4 -0
  259. package/optimize/lib/components/icon/svgs/transitionTopIn.svg +4 -0
  260. package/optimize/lib/components/icon/svgs/transitionTopOut.svg +4 -0
  261. package/optimize/lib/components/inline_edit/inline_edit_form.js +33 -16
  262. package/optimize/lib/components/inline_edit/inline_edit_text.js +6 -22
  263. package/optimize/lib/components/inline_edit/inline_edit_title.js +6 -22
  264. package/optimize/lib/components/list_group/list_group_item.js +1 -1
  265. package/optimize/lib/components/panel/split_panel/split_panel.js +9 -7
  266. package/optimize/lib/components/panel/split_panel/split_panel.styles.js +46 -0
  267. package/optimize/lib/components/text_truncate/utils.js +1 -1
  268. package/optimize/lib/components/toast/global_toast_list.js +41 -3
  269. package/optimize/lib/components/toast/global_toast_list.styles.js +3 -2
  270. package/package.json +3 -3
  271. package/src/components/index.scss +0 -1
  272. package/test-env/components/accordion/accordion.js +34 -202
  273. package/test-env/components/accordion/accordion.styles.js +12 -109
  274. package/test-env/components/accordion/accordion_children/accordion_children.js +105 -0
  275. package/test-env/components/accordion/accordion_children/accordion_children.styles.js +45 -0
  276. package/test-env/components/accordion/accordion_children/accordion_children_loading.js +38 -0
  277. package/test-env/components/accordion/accordion_children/index.js +12 -0
  278. package/test-env/components/accordion/accordion_trigger/accordion_arrow.js +47 -0
  279. package/test-env/components/accordion/accordion_trigger/accordion_arrow.styles.js +51 -0
  280. package/test-env/components/accordion/accordion_trigger/accordion_button.js +52 -0
  281. package/test-env/components/accordion/accordion_trigger/accordion_button.styles.js +33 -0
  282. package/test-env/components/accordion/accordion_trigger/accordion_trigger.js +93 -0
  283. package/test-env/components/accordion/accordion_trigger/index.js +12 -0
  284. package/test-env/components/avatar/avatar.js +1 -1
  285. package/test-env/components/badge/badge.js +1 -1
  286. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  287. package/test-env/components/basic_table/basic_table.js +1 -1
  288. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  289. package/test-env/components/basic_table/in_memory_table.js +1 -1
  290. package/test-env/components/button/button_display/_button_display.js +1 -1
  291. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  292. package/test-env/components/button/button_empty/button_empty.js +1 -1
  293. package/test-env/components/button/button_group/button_group.js +1 -1
  294. package/test-env/components/button/button_group/button_group_button.js +1 -1
  295. package/test-env/components/button/button_icon/button_icon.js +1 -1
  296. package/test-env/components/call_out/call_out.js +1 -1
  297. package/test-env/components/card/card.js +1 -1
  298. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  299. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +1 -1
  300. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -2
  301. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  302. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +3 -3
  303. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +2 -2
  304. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  305. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +3 -3
  306. package/test-env/components/comment_list/comment.js +2 -2
  307. package/test-env/components/comment_list/comment_event.js +1 -1
  308. package/test-env/components/comment_list/comment_list.js +2 -2
  309. package/test-env/components/comment_list/comment_timeline.js +1 -1
  310. package/test-env/components/datagrid/body/data_grid_body.js +13 -13
  311. package/test-env/components/datagrid/body/data_grid_body_custom.js +13 -13
  312. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +13 -13
  313. package/test-env/components/datagrid/body/data_grid_cell.js +24 -24
  314. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  315. package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -13
  316. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  317. package/test-env/components/datagrid/data_grid.js +13 -13
  318. package/test-env/components/datagrid/utils/in_memory.js +12 -12
  319. package/test-env/components/date_picker/date_picker.js +2 -2
  320. package/test-env/components/date_picker/date_picker_range.js +1 -1
  321. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  322. package/test-env/components/facet/facet_button.js +1 -1
  323. package/test-env/components/form/field_number/field_number.js +1 -1
  324. package/test-env/components/form/field_text/field_text.js +2 -2
  325. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  326. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  327. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  328. package/test-env/components/header/header_links/header_link.js +1 -1
  329. package/test-env/components/header/header_links/header_links.js +1 -1
  330. package/test-env/components/header/header_logo/header_logo.js +1 -1
  331. package/test-env/components/header/header_section/header_section_item_button.js +1 -1
  332. package/test-env/components/icon/assets/grabOmnidirectional.js +41 -0
  333. package/test-env/components/icon/assets/transitionLeftIn.js +44 -0
  334. package/test-env/components/icon/assets/transitionLeftOut.js +44 -0
  335. package/test-env/components/icon/assets/transitionTopIn.js +44 -0
  336. package/test-env/components/icon/assets/transitionTopOut.js +44 -0
  337. package/test-env/components/icon/icon_map.js +5 -0
  338. package/test-env/components/inline_edit/inline_edit_form.js +49 -17
  339. package/test-env/components/inline_edit/inline_edit_text.js +22 -23
  340. package/test-env/components/inline_edit/inline_edit_title.js +22 -23
  341. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  342. package/test-env/components/list_group/list_group.js +2 -2
  343. package/test-env/components/list_group/list_group_item.js +3 -3
  344. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  345. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  346. package/test-env/components/loading/loading_logo.js +1 -1
  347. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  348. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  349. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  350. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  351. package/test-env/components/notification/notification_event.js +2 -2
  352. package/test-env/components/notification/notification_event_meta.js +1 -1
  353. package/test-env/components/page/page_header/page_header_content.js +1 -1
  354. package/test-env/components/panel/split_panel/split_panel.js +9 -7
  355. package/test-env/components/panel/split_panel/split_panel.styles.js +46 -0
  356. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  357. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  358. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  359. package/test-env/components/suggest/suggest.js +1 -1
  360. package/test-env/components/suggest/suggest_item.js +1 -1
  361. package/test-env/components/table/table_header_button.js +1 -1
  362. package/test-env/components/text_truncate/utils.js +1 -1
  363. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  364. package/test-env/components/toast/global_toast_list.js +53 -4
  365. package/test-env/components/toast/global_toast_list.styles.js +3 -2
  366. package/test-env/components/toast/toast.js +1 -1
  367. package/test-env/components/tool_tip/icon_tip.js +1 -1
  368. package/src/components/panel/_index.scss +0 -1
  369. package/src/components/panel/_panel.scss +0 -9
  370. package/src/components/panel/split_panel/_index.scss +0 -1
  371. package/src/components/panel/split_panel/_split_panel.scss +0 -21
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["className", "size", "heading", "defaultValue", "placeholder", "inputAriaLabel", "startWithEditOpen", "readModeProps", "editModeProps", "isLoading", "isInvalid", "isReadOnly"];
4
+ var _excluded = ["className", "size", "heading", "readModeProps", "isReadOnly"];
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
7
  /*
@@ -25,14 +25,7 @@ export var EuiInlineEditTitle = function EuiInlineEditTitle(_ref) {
25
25
  _ref$size = _ref.size,
26
26
  size = _ref$size === void 0 ? 'm' : _ref$size,
27
27
  heading = _ref.heading,
28
- defaultValue = _ref.defaultValue,
29
- placeholder = _ref.placeholder,
30
- inputAriaLabel = _ref.inputAriaLabel,
31
- startWithEditOpen = _ref.startWithEditOpen,
32
28
  _readModeProps = _ref.readModeProps,
33
- editModeProps = _ref.editModeProps,
34
- isLoading = _ref.isLoading,
35
- isInvalid = _ref.isInvalid,
36
29
  isReadOnly = _ref.isReadOnly,
37
30
  rest = _objectWithoutProperties(_ref, _excluded);
38
31
  var classes = classNames('euiInlineEditTitle', className);
@@ -52,22 +45,13 @@ export var EuiInlineEditTitle = function EuiInlineEditTitle(_ref) {
52
45
  role: 'paragraph'
53
46
  });
54
47
  }, [_readModeProps, isReadOnly, heading]);
55
- var formProps = {
56
- sizes: sizes,
57
- defaultValue: defaultValue,
58
- placeholder: placeholder,
59
- inputAriaLabel: inputAriaLabel,
60
- startWithEditOpen: startWithEditOpen,
61
- readModeProps: readModeProps,
62
- editModeProps: editModeProps,
63
- isLoading: isLoading,
64
- isInvalid: isInvalid,
65
- isReadOnly: isReadOnly
66
- };
67
48
  return ___EmotionJSX(EuiInlineEditForm, _extends({
68
49
  css: cssStyles,
69
- className: classes
70
- }, rest, formProps), function (titleReadModeValue) {
50
+ className: classes,
51
+ readModeProps: readModeProps,
52
+ isReadOnly: isReadOnly,
53
+ sizes: sizes
54
+ }, rest), function (titleReadModeValue) {
71
55
  return ___EmotionJSX(EuiTitle, {
72
56
  size: size,
73
57
  className: "eui-textTruncate"
@@ -170,7 +170,7 @@ export var EuiListGroupItem = function EuiListGroupItem(_ref) {
170
170
  }, toolTipProps, {
171
171
  anchorClassName: anchorClasses,
172
172
  anchorProps: anchorPropsAndCss
173
- }), itemContent));
173
+ }), ___EmotionJSX(React.Fragment, null, itemContent, extraActionNode)));
174
174
  } else {
175
175
  itemContent = ___EmotionJSX("li", {
176
176
  className: classes,
@@ -12,8 +12,9 @@ var _excluded = ["children", "className"],
12
12
 
13
13
  import React from 'react';
14
14
  import classNames from 'classnames';
15
- import { EuiPanel } from '../panel';
16
15
  import { useIsWithinBreakpoints } from '../../../services/breakpoint';
16
+ import { EuiPanel } from '../panel';
17
+ import { euiSplitPanelOuterStyles, euiSplitPanelInnerStyles } from './split_panel.styles';
17
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
18
19
  /**
19
20
  * Consumed via `EuiSplitPanel.Inner`.
@@ -32,7 +33,8 @@ export var _EuiSplitPanelInner = function _EuiSplitPanelInner(_ref) {
32
33
  };
33
34
  return ___EmotionJSX(EuiPanel, _extends({
34
35
  element: "div",
35
- className: classes
36
+ className: classes,
37
+ css: euiSplitPanelInnerStyles.euiSplitPanelInner
36
38
  }, panelProps, rest), children);
37
39
  };
38
40
  /**
@@ -48,14 +50,14 @@ export var _EuiSplitPanelOuter = function _EuiSplitPanelOuter(_ref2) {
48
50
  responsive = _ref2$responsive === void 0 ? ['xs', 's'] : _ref2$responsive,
49
51
  rest = _objectWithoutProperties(_ref2, _excluded2);
50
52
  var isResponsive = useIsWithinBreakpoints(responsive, !!responsive);
51
- var classes = classNames('euiSplitPanel', {
52
- 'euiSplitPanel--row': direction === 'row',
53
- 'euiSplitPanel-isResponsive': isResponsive
54
- }, className);
53
+ var styles = euiSplitPanelOuterStyles;
54
+ var cssStyles = [styles.euiSplitPanelOuter, direction === 'row' && !isResponsive ? styles.row : styles.column];
55
+ var classes = classNames('euiSplitPanel', className);
55
56
  return ___EmotionJSX(EuiPanel, _extends({
56
57
  paddingSize: "none",
57
58
  grow: false,
58
- className: classes
59
+ className: classes,
60
+ css: cssStyles
59
61
  }, rest), children);
60
62
  };
61
63
  export var EuiSplitPanel = {
@@ -0,0 +1,40 @@
1
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
2
+ /*
3
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
4
+ * or more contributor license agreements. Licensed under the Elastic License
5
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
6
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
7
+ * Side Public License, v 1.
8
+ */
9
+
10
+ import { css } from '@emotion/react';
11
+ import { logicalCSS } from '../../../global_styling';
12
+ export var euiSplitPanelOuterStyles = {
13
+ euiSplitPanelOuter: /*#__PURE__*/css("display:flex;", logicalCSS('min-width', 0), " overflow:hidden;;label:euiSplitPanelOuter;"),
14
+ column: process.env.NODE_ENV === "production" ? {
15
+ name: "ll8kmq-column",
16
+ styles: "flex-direction:column;label:column;"
17
+ } : {
18
+ name: "ll8kmq-column",
19
+ styles: "flex-direction:column;label:column;",
20
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
21
+ },
22
+ row: process.env.NODE_ENV === "production" ? {
23
+ name: "15mvjmo-row",
24
+ styles: "flex-direction:row;label:row;"
25
+ } : {
26
+ name: "15mvjmo-row",
27
+ styles: "flex-direction:row;label:row;",
28
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
29
+ }
30
+ };
31
+ export var euiSplitPanelInnerStyles = {
32
+ euiSplitPanelInner: process.env.NODE_ENV === "production" ? {
33
+ name: "1k62yu6-euiSplitPanelInner",
34
+ styles: "flex-basis:0%;transform:none!important;box-shadow:none!important;label:euiSplitPanelInner;"
35
+ } : {
36
+ name: "1k62yu6-euiSplitPanelInner",
37
+ styles: "flex-basis:0%;transform:none!important;box-shadow:none!important;label:euiSplitPanelInner;",
38
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
39
+ }
40
+ };
@@ -45,7 +45,7 @@ var _TruncationUtils = /*#__PURE__*/_createClass(function _TruncationUtils(_ref)
45
45
  */
46
46
  _defineProperty(this, "checkIfTruncationIsNeeded", function () {
47
47
  _this.setTextToCheck(_this.fullText);
48
- if (_this.availableWidth > _this.textWidth) {
48
+ if (_this.availableWidth >= _this.textWidth) {
49
49
  return false;
50
50
  }
51
51
  });
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
- var _excluded = ["className", "toasts", "dismissToast", "toastLifeTimeMs", "side"],
5
+ var _excluded = ["className", "toasts", "dismissToast", "toastLifeTimeMs", "onClearAllToasts", "side", "showClearAllButtonAt"],
6
6
  _excluded2 = ["text", "toastLifeTimeMs"];
7
7
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
8
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -22,6 +22,8 @@ import { Timer } from '../../services/time';
22
22
  import { EuiGlobalToastListItem } from './global_toast_list_item';
23
23
  import { EuiToast } from './toast';
24
24
  import { euiGlobalToastListStyles } from './global_toast_list.styles';
25
+ import { EuiButton } from '../button';
26
+ import { EuiI18n } from '../i18n';
25
27
  import { jsx as ___EmotionJSX } from "@emotion/react";
26
28
  var sideToClassNameMap = {
27
29
  left: 'euiGlobalToastList--left',
@@ -29,14 +31,18 @@ var sideToClassNameMap = {
29
31
  };
30
32
  export var SIDES = keysOf(sideToClassNameMap);
31
33
  export var TOAST_FADE_OUT_MS = 250;
34
+ export var CLEAR_ALL_TOASTS_THRESHOLD_DEFAULT = 3;
32
35
  export var EuiGlobalToastList = function EuiGlobalToastList(_ref) {
33
36
  var className = _ref.className,
34
37
  _ref$toasts = _ref.toasts,
35
38
  toasts = _ref$toasts === void 0 ? [] : _ref$toasts,
36
39
  dismissToastProp = _ref.dismissToast,
37
40
  toastLifeTimeMs = _ref.toastLifeTimeMs,
41
+ onClearAllToasts = _ref.onClearAllToasts,
38
42
  _ref$side = _ref.side,
39
43
  side = _ref$side === void 0 ? 'right' : _ref$side,
44
+ _ref$showClearAllButt = _ref.showClearAllButtonAt,
45
+ showClearAllButtonAt = _ref$showClearAllButt === void 0 ? CLEAR_ALL_TOASTS_THRESHOLD_DEFAULT : _ref$showClearAllButt,
40
46
  rest = _objectWithoutProperties(_ref, _excluded);
41
47
  var _useState = useState({}),
42
48
  _useState2 = _slicedToArray(_useState, 2),
@@ -109,7 +115,11 @@ export var EuiGlobalToastList = function EuiGlobalToastList(_ref) {
109
115
  }
110
116
  };
111
117
  var onScroll = function onScroll() {
112
- if (listElement.current) {
118
+ // Given that this method also gets invoked by the synthetic scroll that happens when a new toast gets added,
119
+ // we want to evaluate if the scroll bottom has been reached only when the user is interacting with the toast,
120
+ // this way we always retain the scroll position the user has set despite adding in new toasts.
121
+ // User interaction is determined through the handler registered for mouseEnter and mouseLeave events.
122
+ if (listElement.current && isUserInteracting.current) {
113
123
  isScrolledToBottom.current = listElement.current.scrollHeight - listElement.current.scrollTop === listElement.current.clientHeight;
114
124
  }
115
125
  };
@@ -223,6 +233,33 @@ export var EuiGlobalToastList = function EuiGlobalToastList(_ref) {
223
233
  onBlur: onMouseLeave
224
234
  }, rest), text));
225
235
  });
236
+ if (showClearAllButtonAt && toasts.length >= showClearAllButtonAt) {
237
+ var dismissAllToasts = function dismissAllToasts() {
238
+ toasts.forEach(function (toast) {
239
+ return dismissToastProp(toast);
240
+ });
241
+ onClearAllToasts === null || onClearAllToasts === void 0 ? void 0 : onClearAllToasts();
242
+ };
243
+ renderedToasts.push(___EmotionJSX(EuiI18n, {
244
+ key: "euiClearAllToasts",
245
+ tokens: ['euiGlobalToastList.clearAllToastsButtonAriaLabel', 'euiGlobalToastList.clearAllToastsButtonDisplayText'],
246
+ defaults: ['Clear all toast notifications', 'Clear all']
247
+ }, function (_ref2) {
248
+ var _ref3 = _slicedToArray(_ref2, 2),
249
+ clearAllToastsButtonAriaLabel = _ref3[0],
250
+ clearAllToastsButtonDisplayText = _ref3[1];
251
+ return ___EmotionJSX(EuiGlobalToastListItem, {
252
+ isDismissed: false
253
+ }, ___EmotionJSX(EuiButton, {
254
+ fill: true,
255
+ color: "text",
256
+ onClick: dismissAllToasts,
257
+ css: [styles.euiGlobalToastListDismissButton, ";label:EuiGlobalToastList;"],
258
+ "aria-label": clearAllToastsButtonAriaLabel,
259
+ "data-test-subj": "euiClearAllToastsButton"
260
+ }, clearAllToastsButtonDisplayText));
261
+ }));
262
+ }
226
263
  var classes = classNames('euiGlobalToastList', className);
227
264
  return ___EmotionJSX("div", _extends({
228
265
  "aria-live": "polite",
@@ -22,7 +22,8 @@ export var euiGlobalToastListStyles = function euiGlobalToastListStyles(euiTheme
22
22
  euiGlobalToastList: /*#__PURE__*/css(euiScrollBarStyles(euiThemeContext), " display:flex;flex-direction:column;align-items:stretch;position:fixed;z-index:", euiTheme.levels.toast, ";", logicalCSS('bottom', 0), " ", logicalCSS('width', "".concat(euiToastWidth, "px")), logicalCSS('max-height', '100vh'), logicalCSSWithFallback('overflow-y', 'auto'), "scrollbar-width:none;&::-webkit-scrollbar{", logicalSizeCSS(0, 0), ";}&:not(:empty){", logicalCSS('padding-left', euiTheme.size.base), " ", logicalCSS('padding-right', euiTheme.size.base), " ", logicalCSS('padding-vertical', euiTheme.size.base), ";}", euiMaxBreakpoint(euiThemeContext, 'm'), "{&:not(:empty){", logicalCSS('left', 0), " ", logicalCSS('width', '100%'), ";}};label:euiGlobalToastList;"),
23
23
  // Variants
24
24
  right: /*#__PURE__*/css("&:not(:empty){", logicalCSS('right', 0), ";", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-left', "".concat(euiTheme.base * 4, "px")), ";}};label:right;"),
25
- left: /*#__PURE__*/css("&:not(:empty){", logicalCSS('left', 0), ";", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-right', "".concat(euiTheme.base * 4, "px")), ";}};label:left;")
25
+ left: /*#__PURE__*/css("&:not(:empty){", logicalCSS('left', 0), ";", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-right', "".concat(euiTheme.base * 4, "px")), ";}};label:left;"),
26
+ euiGlobalToastListDismissButton: /*#__PURE__*/css("position:sticky;", logicalCSS('bottom', '0%'), ";;label:euiGlobalToastListDismissButton;")
26
27
  };
27
28
  };
28
29
  export var euiGlobalToastListItemStyles = function euiGlobalToastListItemStyles(_ref) {
@@ -30,7 +31,7 @@ export var euiGlobalToastListItemStyles = function euiGlobalToastListItemStyles(
30
31
  var euiShowToast = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from {\n transform: translateY(", ") scale(.9);\n opacity: 0;\n }\n\n to {\n transform: translateY(0) scale(1);\n opacity: 1;\n }\n"])), euiTheme.size.l);
31
32
  return {
32
33
  // Base
33
- euiGlobalToastListItem: /*#__PURE__*/css(logicalCSS('margin-bottom', euiTheme.size.base), " animation:", euiTheme.animation.normal, " ", euiShowToast, " ", euiTheme.animation.resistance, ";opacity:1;&:first-child{", logicalCSS('margin-top', 'auto'), ";}&:last-child{", logicalCSS('margin-bottom', 0), ";};label:euiGlobalToastListItem;"),
34
+ euiGlobalToastListItem: /*#__PURE__*/css("flex-shrink:0;", logicalCSS('margin-bottom', euiTheme.size.base), " animation:", euiTheme.animation.normal, " ", euiShowToast, " ", euiTheme.animation.resistance, ";opacity:1;&:first-child{", logicalCSS('margin-top', 'auto'), ";}&:last-child{", logicalCSS('margin-bottom', 0), ";};label:euiGlobalToastListItem;"),
34
35
  // States
35
36
  dismissed: /*#__PURE__*/css("transition:opacity ", euiTheme.animation.normal, ";opacity:0;;label:dismissed;")
36
37
  };
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.PADDING_SIZES = exports.EuiAccordionClass = exports.EuiAccordion = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -18,18 +17,13 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
18
17
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
18
  var _react = _interopRequireWildcard(require("react"));
20
19
  var _classnames = _interopRequireDefault(require("classnames"));
21
- var _tabbable = require("tabbable");
22
- var _loading = require("../loading");
23
- var _resize_observer = require("../observer/resize_observer");
24
- var _text = require("../text");
25
- var _i18n = require("../i18n");
26
20
  var _services = require("../../services");
27
- var _button = require("../button");
21
+ var _loading = require("../loading");
22
+ var _accordion_trigger = require("./accordion_trigger");
23
+ var _accordion_children = require("./accordion_children");
28
24
  var _accordion = require("./accordion.styles");
29
- var _global_styling = require("../../global_styling");
30
25
  var _react2 = require("@emotion/react");
31
- var _excluded = ["children", "buttonContent", "className", "id", "element", "buttonClassName", "buttonContentClassName", "extraAction", "paddingSize", "borders", "initialIsOpen", "arrowDisplay", "forceState", "isLoading", "isLoadingMessage", "isDisabled", "buttonProps", "buttonElement", "arrowProps", "theme"],
32
- _excluded2 = ["paddingSize", "className", "css"];
26
+ var _excluded = ["children", "className", "id", "element", "buttonElement", "buttonProps", "buttonClassName", "buttonContentClassName", "buttonContent", "arrowDisplay", "arrowProps", "extraAction", "paddingSize", "borders", "initialIsOpen", "forceState", "isLoading", "isLoadingMessage", "isDisabled", "theme"];
33
27
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
34
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
29
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
@@ -52,18 +46,9 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
52
46
  args[_key] = arguments[_key];
53
47
  }
54
48
  _this = _super.call.apply(_super, [this].concat(args));
55
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childContent", null);
56
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childWrapper", null);
57
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "tabbableChildren", null);
58
49
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
59
50
  isOpen: _this.props.forceState ? _this.props.forceState === 'open' : _this.props.initialIsOpen
60
51
  });
61
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentHeight", function () {
62
- requestAnimationFrame(function () {
63
- var height = _this.childContent && _this.isOpen ? _this.childContent.clientHeight : 0;
64
- _this.childWrapper && _this.childWrapper.setAttribute('style', (0, _global_styling.logicalCSS)('height', "".concat(height, "px")));
65
- });
66
- });
67
52
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onToggle", function () {
68
53
  var forceState = _this.props.forceState;
69
54
  if (forceState) {
@@ -76,57 +61,11 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
76
61
  };
77
62
  }, function () {
78
63
  var _this$props$onToggle2, _this$props2;
79
- if (_this.state.isOpen && _this.childWrapper) {
80
- _this.childWrapper.focus();
81
- }
82
64
  (_this$props$onToggle2 = (_this$props2 = _this.props).onToggle) === null || _this$props$onToggle2 === void 0 ? void 0 : _this$props$onToggle2.call(_this$props2, _this.state.isOpen);
83
65
  });
84
66
  }
85
67
  });
86
- // When accordions are closed, tabbable children should not be present in the tab order
87
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "preventTabbing", function () {
88
- if (_this.childContent) {
89
- // Re-check for children on every close - content can change dynamically
90
- _this.tabbableChildren = (0, _tabbable.tabbable)(_this.childContent);
91
- _this.tabbableChildren.forEach(function (element) {
92
- // If the element has an existing `tabIndex` set, make sure we can restore it
93
- var originalTabIndex = element.getAttribute('tabIndex');
94
- if (originalTabIndex) {
95
- element.setAttribute('data-original-tabindex', originalTabIndex);
96
- }
97
- element.setAttribute('tabIndex', '-1');
98
- });
99
- }
100
- });
101
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "enableTabbing", function () {
102
- // If no tabbable children were set, we don't need to re-enable anything
103
- if (_this.tabbableChildren) {
104
- _this.tabbableChildren.forEach(function (element) {
105
- var originalTabIndex = element.getAttribute('data-original-tabindex');
106
- if (originalTabIndex) {
107
- // If the element originally had an existing `tabIndex` set, restore it
108
- element.setAttribute('tabIndex', originalTabIndex);
109
- element.removeAttribute('data-original-tabindex');
110
- } else {
111
- // If not, remove the tabIndex property
112
- element.removeAttribute('tabIndex');
113
- }
114
- });
115
- // Cleanup - unset the list of children
116
- _this.tabbableChildren = null;
117
- }
118
- });
119
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentRef", function (node) {
120
- _this.childContent = node;
121
- });
122
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "generatedId", (0, _services.htmlIdGenerator)()());
123
- // Storing resize/observer refs as an instance variable is a performance optimization
124
- // and also resolves https://github.com/elastic/eui/issues/5903
125
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resizeRef", function () {});
126
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "observerRef", function (ref) {
127
- _this.setChildContentRef(ref);
128
- _this.resizeRef(ref);
129
- });
130
69
  return _this;
131
70
  }
132
71
  (0, _createClass2.default)(EuiAccordionClass, [{
@@ -134,173 +73,66 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
134
73
  get: function get() {
135
74
  return this.props.forceState ? this.props.forceState === 'open' : this.state.isOpen;
136
75
  }
137
- }, {
138
- key: "componentDidMount",
139
- value: function componentDidMount() {
140
- this.setChildContentHeight();
141
- if (!this.isOpen) this.preventTabbing();
142
- }
143
- }, {
144
- key: "componentDidUpdate",
145
- value: function componentDidUpdate(prevProps, prevState) {
146
- this.setChildContentHeight();
147
- if (prevProps.forceState === 'open' && this.props.forceState === 'closed' || prevState.isOpen === true && this.state.isOpen === false) {
148
- this.preventTabbing();
149
- }
150
- if (prevProps.forceState === 'closed' && this.props.forceState === 'open' || prevState.isOpen === false && this.state.isOpen === true) {
151
- this.enableTabbing();
152
- }
153
- }
154
76
  }, {
155
77
  key: "render",
156
78
  value: function render() {
157
- var _buttonProps$id,
158
- _this2 = this;
79
+ var _buttonProps$id;
159
80
  var _this$props3 = this.props,
160
81
  children = _this$props3.children,
161
- buttonContent = _this$props3.buttonContent,
162
82
  className = _this$props3.className,
163
83
  id = _this$props3.id,
164
84
  _this$props3$element = _this$props3.element,
165
85
  Element = _this$props3$element === void 0 ? 'div' : _this$props3$element,
86
+ buttonElement = _this$props3.buttonElement,
87
+ buttonProps = _this$props3.buttonProps,
166
88
  buttonClassName = _this$props3.buttonClassName,
167
89
  buttonContentClassName = _this$props3.buttonContentClassName,
90
+ buttonContent = _this$props3.buttonContent,
91
+ arrowDisplay = _this$props3.arrowDisplay,
92
+ arrowProps = _this$props3.arrowProps,
168
93
  extraAction = _this$props3.extraAction,
169
94
  paddingSize = _this$props3.paddingSize,
170
95
  borders = _this$props3.borders,
171
96
  initialIsOpen = _this$props3.initialIsOpen,
172
- arrowDisplay = _this$props3.arrowDisplay,
173
97
  forceState = _this$props3.forceState,
174
98
  isLoading = _this$props3.isLoading,
175
99
  isLoadingMessage = _this$props3.isLoadingMessage,
176
100
  isDisabled = _this$props3.isDisabled,
177
- _buttonProps = _this$props3.buttonProps,
178
- _this$props3$buttonEl = _this$props3.buttonElement,
179
- _ButtonElement = _this$props3$buttonEl === void 0 ? 'button' : _this$props3$buttonEl,
180
- arrowProps = _this$props3.arrowProps,
181
101
  theme = _this$props3.theme,
182
102
  rest = (0, _objectWithoutProperties2.default)(_this$props3, _excluded);
183
- var _ref = _buttonProps || {},
184
- buttonPaddingSize = _ref.paddingSize,
185
- buttonPropsClassName = _ref.className,
186
- buttonPropsCss = _ref.css,
187
- buttonProps = (0, _objectWithoutProperties2.default)(_ref, _excluded2);
188
-
189
- // Force button element to be a legend if the element is a fieldset
190
- var ButtonElement = Element === 'fieldset' ? 'legend' : _ButtonElement;
191
- var buttonElementIsFocusable = ButtonElement === 'button';
192
-
193
- // Force visibility of arrow button if button element is not focusable
194
- var _arrowDisplay = arrowDisplay === 'none' && !buttonElementIsFocusable ? 'left' : arrowDisplay;
195
103
  var classes = (0, _classnames.default)('euiAccordion', {
196
104
  'euiAccordion-isOpen': this.isOpen
197
105
  }, className);
198
106
  var styles = (0, _accordion.euiAccordionStyles)(theme);
199
107
  var cssStyles = [styles.euiAccordion, borders !== 'none' && styles.borders.borders, borders !== 'none' && styles.borders[borders]];
200
- var childrenClasses = (0, _classnames.default)('euiAccordion__children', {
201
- 'euiAccordion__children-isLoading': isLoading
202
- });
203
- var buttonClasses = (0, _classnames.default)('euiAccordion__button', buttonClassName, buttonPropsClassName);
204
- var buttonContentClasses = (0, _classnames.default)('euiAccordion__buttonContent', buttonContentClassName);
205
- var iconButtonClasses = (0, _classnames.default)('euiAccordion__iconButton', {
206
- 'euiAccordion__iconButton-isOpen': this.isOpen,
207
- 'euiAccordion__iconButton--right': _arrowDisplay === 'right'
208
- }, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.className);
209
-
210
- // Emotion styles
211
- var buttonStyles = (0, _accordion.euiAccordionButtonStyles)(theme);
212
- var cssButtonStyles = [buttonStyles.euiAccordion__button, isDisabled && buttonStyles.disabled].concat((0, _toConsumableArray2.default)(buttonPaddingSize ? [buttonStyles[buttonPaddingSize], arrowDisplay === 'left' && buttonStyles.arrowLeft, arrowDisplay === 'right' && buttonStyles.arrowRight] : []), [buttonPropsCss]);
213
- var childrenStyles = (0, _accordion.euiAccordionChildrenStyles)(theme);
214
- var cssChildrenStyles = [childrenStyles.euiAccordion__children, isLoading && childrenStyles.isLoading, paddingSize && paddingSize !== 'none' && childrenStyles[paddingSize]];
215
- var childWrapperStyles = (0, _accordion.euiAccordionChildWrapperStyles)(theme);
216
- var cssChildWrapperStyles = [childWrapperStyles.euiAccordion__childWrapper, this.isOpen && childWrapperStyles.isOpen];
217
- var iconButtonStyles = (0, _accordion.euiAccordionIconButtonStyles)(theme);
218
- var cssIconButtonStyles = [iconButtonStyles.euiAccordion__iconButton, this.isOpen && iconButtonStyles.isOpen, _arrowDisplay === 'right' && iconButtonStyles.arrowRight, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.css];
219
- var optionalActionStyles = (0, _accordion.euiAccordionOptionalActionStyles)();
220
- var cssOptionalActionStyles = [optionalActionStyles.euiAccordion__optionalAction];
221
- var spinnerStyles = (0, _accordion.euiAccordionSpinnerStyles)(theme);
222
- var cssSpinnerStyles = [spinnerStyles.euiAccordion__spinner];
223
- var triggerWrapperStyles = (0, _accordion.euiAccordionTriggerWrapperStyles)();
224
- var cssTriggerWrapperStyles = [triggerWrapperStyles.euiAccordion__triggerWrapper];
225
- var iconButton;
226
- var buttonId = (_buttonProps$id = buttonProps.id) !== null && _buttonProps$id !== void 0 ? _buttonProps$id : this.generatedId;
227
- if (_arrowDisplay !== 'none') {
228
- iconButton = (0, _react2.jsx)(_button.EuiButtonIcon, (0, _extends2.default)({
229
- color: "text"
230
- }, arrowProps, {
231
- className: iconButtonClasses,
232
- css: cssIconButtonStyles,
233
- iconType: "arrowRight",
234
- onClick: this.onToggle,
235
- "aria-controls": id,
236
- "aria-expanded": this.isOpen,
237
- "aria-labelledby": buttonId,
238
- tabIndex: buttonElementIsFocusable ? -1 : 0,
239
- isDisabled: isDisabled
240
- }));
241
- }
242
- var optionalAction = null;
243
- if (isLoading || extraAction) {
244
- optionalAction = (0, _react2.jsx)("div", {
245
- className: "euiAccordion__optionalAction",
246
- css: cssOptionalActionStyles
247
- }, isLoading ? (0, _react2.jsx)(_loading.EuiLoadingSpinner, null) : extraAction);
248
- }
249
- var childrenContent;
250
- if (isLoading && isLoadingMessage) {
251
- childrenContent = (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_loading.EuiLoadingSpinner, {
252
- className: "euiAccordion__spinner",
253
- css: cssSpinnerStyles
254
- }), (0, _react2.jsx)(_text.EuiText, {
255
- size: "s"
256
- }, (0, _react2.jsx)("p", null, isLoadingMessage !== true ? isLoadingMessage : (0, _react2.jsx)(_i18n.EuiI18n, {
257
- token: "euiAccordion.isLoading",
258
- default: "Loading"
259
- }))));
260
- } else {
261
- childrenContent = children;
262
- }
263
- var button = (0, _react2.jsx)(ButtonElement, (0, _extends2.default)({}, buttonProps, {
264
- id: buttonId,
265
- className: buttonClasses,
266
- css: cssButtonStyles,
267
- "aria-controls": id
268
- // `aria-expanded` is only a valid attribute on interactive controls - axe-core throws a violation otherwise
269
- ,
270
- "aria-expanded": ButtonElement === 'button' ? this.isOpen : undefined,
271
- onClick: isDisabled ? undefined : this.onToggle,
272
- type: ButtonElement === 'button' ? 'button' : undefined,
273
- disabled: ButtonElement === 'button' ? isDisabled : undefined
274
- }), (0, _react2.jsx)("span", {
275
- className: buttonContentClasses
276
- }, buttonContent));
108
+ var buttonId = (_buttonProps$id = buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.id) !== null && _buttonProps$id !== void 0 ? _buttonProps$id : this.generatedId;
277
109
  return (0, _react2.jsx)(Element, (0, _extends2.default)({
278
110
  className: classes,
279
111
  css: cssStyles
280
- }, rest), (0, _react2.jsx)("div", {
281
- className: "euiAccordion__triggerWrapper",
282
- css: cssTriggerWrapperStyles
283
- }, _arrowDisplay === 'left' && iconButton, button, optionalAction, _arrowDisplay === 'right' && iconButton), (0, _react2.jsx)("div", {
284
- className: "euiAccordion__childWrapper",
285
- css: cssChildWrapperStyles,
286
- ref: function ref(node) {
287
- _this2.childWrapper = node;
288
- },
289
- tabIndex: -1,
290
- role: "region",
112
+ }, rest), (0, _react2.jsx)(_accordion_trigger.EuiAccordionTrigger, {
113
+ ariaControlsId: id,
114
+ buttonId: buttonId
115
+ // Force button element to be a legend if the element is a fieldset
116
+ ,
117
+ buttonElement: Element === 'fieldset' ? 'legend' : buttonElement,
118
+ buttonClassName: buttonClassName,
119
+ buttonContent: buttonContent,
120
+ buttonContentClassName: buttonContentClassName,
121
+ buttonProps: buttonProps,
122
+ arrowProps: arrowProps,
123
+ arrowDisplay: arrowDisplay,
124
+ isDisabled: isDisabled,
125
+ isOpen: this.isOpen,
126
+ onToggle: this.onToggle,
127
+ extraAction: isLoading ? (0, _react2.jsx)(_loading.EuiLoadingSpinner, null) : extraAction
128
+ }), (0, _react2.jsx)(_accordion_children.EuiAccordionChildren, {
129
+ id: id,
291
130
  "aria-labelledby": buttonId,
292
- id: id
293
- }, (0, _react2.jsx)(_resize_observer.EuiResizeObserver, {
294
- onResize: this.setChildContentHeight
295
- }, function (resizeRef) {
296
- _this2.resizeRef = resizeRef;
297
- return (0, _react2.jsx)("div", {
298
- ref: _this2.observerRef
299
- }, (0, _react2.jsx)("div", {
300
- className: childrenClasses,
301
- css: cssChildrenStyles
302
- }, childrenContent));
303
- })));
131
+ paddingSize: paddingSize,
132
+ isLoading: isLoading,
133
+ isLoadingMessage: isLoadingMessage,
134
+ isOpen: this.isOpen
135
+ }, children));
304
136
  }
305
137
  }]);
306
138
  return EuiAccordionClass;