@elastic/eui 113.3.0 → 114.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. package/es/components/avatar/avatar.js +1 -1
  2. package/es/components/badge/badge.js +1 -1
  3. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  4. package/es/components/basic_table/basic_table.js +4 -4
  5. package/es/components/basic_table/in_memory_table.js +4 -4
  6. package/es/components/button/button_display/_button_display_content.js +1 -1
  7. package/es/components/button/button_empty/button_empty.js +1 -1
  8. package/es/components/button/button_icon/button_icon.js +1 -1
  9. package/es/components/button/split_button/split_button.js +13 -0
  10. package/es/components/button/split_button/split_button_actions.js +15 -0
  11. package/es/components/call_out/call_out.js +1 -1
  12. package/es/components/card/card.js +1 -1
  13. package/es/components/collapsible_nav/collapsible_nav.js +6 -1
  14. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  15. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  16. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  17. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  18. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  19. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  20. package/es/components/color_picker/color_picker.js +31 -8
  21. package/es/components/comment_list/comment.js +2 -2
  22. package/es/components/comment_list/comment_event.js +1 -1
  23. package/es/components/comment_list/comment_list.js +2 -2
  24. package/es/components/comment_list/comment_timeline.js +1 -1
  25. package/es/components/context_menu/context_menu_item.js +1 -1
  26. package/es/components/datagrid/body/cell/data_grid_cell.js +12 -12
  27. package/es/components/datagrid/body/data_grid_body.js +7 -7
  28. package/es/components/datagrid/body/data_grid_body_custom.js +7 -7
  29. package/es/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  30. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  31. package/es/components/datagrid/controls/column_sorting.js +7 -7
  32. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  33. package/es/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  34. package/es/components/datagrid/utils/in_memory.js +6 -6
  35. package/es/components/datagrid/utils/scrolling.js +39 -10
  36. package/es/components/date_picker/date_picker.js +2 -2
  37. package/es/components/date_picker/date_picker_range.js +1 -1
  38. package/es/components/empty_prompt/empty_prompt.js +1 -1
  39. package/es/components/flyout/_flyout_overlay.js +34 -4
  40. package/es/components/flyout/flyout.component.js +13 -9
  41. package/es/components/flyout/flyout.js +10 -2
  42. package/es/components/flyout/flyout.styles.js +2 -2
  43. package/es/components/flyout/flyout_menu.js +4 -3
  44. package/es/components/flyout/flyout_resizable.js +6 -1
  45. package/es/components/flyout/manager/actions.js +5 -2
  46. package/es/components/flyout/manager/activity_stage.js +45 -43
  47. package/es/components/flyout/manager/flyout_child.js +2 -1
  48. package/es/components/flyout/manager/flyout_managed.js +36 -18
  49. package/es/components/flyout/manager/flyout_managed.styles.js +4 -16
  50. package/es/components/flyout/manager/reducer.js +116 -57
  51. package/es/components/flyout/manager/store.js +13 -6
  52. package/es/components/form/field_number/field_number.js +2 -2
  53. package/es/components/form/field_text/field_text.js +2 -2
  54. package/es/components/form/form_control_button/form_control_button.js +1 -1
  55. package/es/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  56. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  57. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  58. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  59. package/es/components/form/text_area/text_area.js +2 -2
  60. package/es/components/header/header_links/header_link.js +1 -1
  61. package/es/components/header/header_links/header_links.js +1 -1
  62. package/es/components/header/header_logo/header_logo.js +1 -1
  63. package/es/components/header/header_section/header_section_item_button.js +1 -1
  64. package/es/components/icon/assets/transition_bottom_in.js +37 -0
  65. package/es/components/icon/assets/transition_bottom_out.js +37 -0
  66. package/es/components/icon/icon.js +1 -1
  67. package/es/components/icon/icon_map.js +6 -0
  68. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  69. package/es/components/list_group/list_group.js +2 -2
  70. package/es/components/list_group/list_group_item.js +2 -2
  71. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  72. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  73. package/es/components/loading/loading_logo.js +1 -1
  74. package/es/components/markdown_editor/markdown_editor.js +1 -1
  75. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  76. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  77. package/es/components/markdown_editor/markdown_editor_help_button.js +5 -3
  78. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  79. package/es/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +2 -1
  80. package/es/components/markdown_editor/plugins/remark/remark_intraword_underscore.js +172 -0
  81. package/es/components/overlay_mask/overlay_mask.js +10 -3
  82. package/es/components/page/page_header/page_header_content.js +1 -1
  83. package/es/components/pagination/pagination_button.js +1 -1
  84. package/es/components/search_bar/filters/field_value_toggle_filter.js +42 -99
  85. package/es/components/search_bar/search_filters.js +18 -46
  86. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  87. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  88. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  89. package/es/components/table/mobile/table_header_mobile.js +1 -1
  90. package/es/components/table/table_header_cell.js +1 -1
  91. package/es/components/table/utils.js +29 -9
  92. package/es/components/timeline/timeline_item_icon.js +1 -1
  93. package/es/components/toast/global_toast_list.js +1 -1
  94. package/es/components/toast/toast.js +1 -1
  95. package/es/components/tool_tip/icon_tip.js +1 -1
  96. package/es/components/tree_view/tree_view_item.styles.js +1 -1
  97. package/es/services/hooks/index.js +8 -8
  98. package/es/services/hooks/useIsPointerDown.js +6 -15
  99. package/es/services/index.js +1 -1
  100. package/eui.d.ts +130 -71
  101. package/i18ntokens.json +661 -643
  102. package/lib/components/avatar/avatar.js +1 -1
  103. package/lib/components/badge/badge.js +1 -1
  104. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  105. package/lib/components/basic_table/basic_table.js +4 -4
  106. package/lib/components/basic_table/in_memory_table.js +4 -4
  107. package/lib/components/button/button_display/_button_display_content.js +1 -1
  108. package/lib/components/button/button_empty/button_empty.js +1 -1
  109. package/lib/components/button/button_icon/button_icon.js +1 -1
  110. package/lib/components/button/split_button/split_button.js +13 -0
  111. package/lib/components/button/split_button/split_button_actions.js +15 -0
  112. package/lib/components/call_out/call_out.js +1 -1
  113. package/lib/components/card/card.js +1 -1
  114. package/lib/components/collapsible_nav/collapsible_nav.js +6 -1
  115. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  116. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  117. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  118. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  119. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  120. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  121. package/lib/components/color_picker/color_picker.js +30 -7
  122. package/lib/components/comment_list/comment.js +2 -2
  123. package/lib/components/comment_list/comment_event.js +1 -1
  124. package/lib/components/comment_list/comment_list.js +2 -2
  125. package/lib/components/comment_list/comment_timeline.js +1 -1
  126. package/lib/components/context_menu/context_menu_item.js +1 -1
  127. package/lib/components/datagrid/body/cell/data_grid_cell.js +12 -12
  128. package/lib/components/datagrid/body/data_grid_body.js +7 -7
  129. package/lib/components/datagrid/body/data_grid_body_custom.js +7 -7
  130. package/lib/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  131. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  132. package/lib/components/datagrid/controls/column_sorting.js +7 -7
  133. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  134. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  135. package/lib/components/datagrid/utils/in_memory.js +6 -6
  136. package/lib/components/datagrid/utils/scrolling.js +37 -8
  137. package/lib/components/date_picker/date_picker.js +2 -2
  138. package/lib/components/date_picker/date_picker_range.js +1 -1
  139. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  140. package/lib/components/flyout/_flyout_overlay.js +33 -3
  141. package/lib/components/flyout/flyout.component.js +13 -9
  142. package/lib/components/flyout/flyout.js +10 -2
  143. package/lib/components/flyout/flyout.styles.js +2 -2
  144. package/lib/components/flyout/flyout_menu.js +4 -3
  145. package/lib/components/flyout/flyout_resizable.js +6 -1
  146. package/lib/components/flyout/manager/actions.js +5 -2
  147. package/lib/components/flyout/manager/activity_stage.js +45 -43
  148. package/lib/components/flyout/manager/flyout_child.js +2 -1
  149. package/lib/components/flyout/manager/flyout_managed.js +46 -31
  150. package/lib/components/flyout/manager/flyout_managed.styles.js +3 -15
  151. package/lib/components/flyout/manager/reducer.js +116 -57
  152. package/lib/components/flyout/manager/store.js +13 -6
  153. package/lib/components/form/field_number/field_number.js +2 -2
  154. package/lib/components/form/field_text/field_text.js +2 -2
  155. package/lib/components/form/form_control_button/form_control_button.js +1 -1
  156. package/lib/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  157. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  158. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  159. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  160. package/lib/components/form/text_area/text_area.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/transition_bottom_in.js +44 -0
  166. package/lib/components/icon/assets/transition_bottom_out.js +44 -0
  167. package/lib/components/icon/icon.js +1 -1
  168. package/lib/components/icon/icon_map.js +10 -0
  169. package/lib/components/icon/svgs/transition_bottom_in.svg +1 -0
  170. package/lib/components/icon/svgs/transition_bottom_out.svg +1 -0
  171. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  172. package/lib/components/list_group/list_group.js +2 -2
  173. package/lib/components/list_group/list_group_item.js +2 -2
  174. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  175. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  176. package/lib/components/loading/loading_logo.js +1 -1
  177. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  178. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  179. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  180. package/lib/components/markdown_editor/markdown_editor_help_button.js +5 -3
  181. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  182. package/lib/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +2 -1
  183. package/lib/components/markdown_editor/plugins/remark/remark_intraword_underscore.js +179 -0
  184. package/lib/components/overlay_mask/overlay_mask.js +10 -3
  185. package/lib/components/page/page_header/page_header_content.js +1 -1
  186. package/lib/components/pagination/pagination_button.js +1 -1
  187. package/lib/components/search_bar/filters/field_value_toggle_filter.js +44 -101
  188. package/lib/components/search_bar/search_filters.js +20 -45
  189. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  190. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  191. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  192. package/lib/components/table/mobile/table_header_mobile.js +1 -1
  193. package/lib/components/table/table_header_cell.js +1 -1
  194. package/lib/components/table/utils.js +30 -10
  195. package/lib/components/timeline/timeline_item_icon.js +1 -1
  196. package/lib/components/toast/global_toast_list.js +1 -1
  197. package/lib/components/toast/toast.js +1 -1
  198. package/lib/components/tool_tip/icon_tip.js +1 -1
  199. package/lib/components/tree_view/tree_view_item.styles.js +1 -1
  200. package/lib/services/hooks/index.js +60 -91
  201. package/lib/services/hooks/useIsPointerDown.js +7 -14
  202. package/lib/services/index.js +70 -11
  203. package/optimize/es/components/color_picker/color_picker.js +31 -8
  204. package/optimize/es/components/datagrid/utils/scrolling.js +39 -10
  205. package/optimize/es/components/flyout/_flyout_overlay.js +34 -4
  206. package/optimize/es/components/flyout/flyout.component.js +13 -9
  207. package/optimize/es/components/flyout/flyout.js +4 -1
  208. package/optimize/es/components/flyout/flyout.styles.js +2 -2
  209. package/optimize/es/components/flyout/flyout_menu.js +2 -1
  210. package/optimize/es/components/flyout/manager/actions.js +5 -2
  211. package/optimize/es/components/flyout/manager/activity_stage.js +45 -43
  212. package/optimize/es/components/flyout/manager/flyout_managed.js +33 -16
  213. package/optimize/es/components/flyout/manager/flyout_managed.styles.js +4 -16
  214. package/optimize/es/components/flyout/manager/reducer.js +116 -57
  215. package/optimize/es/components/flyout/manager/store.js +13 -6
  216. package/optimize/es/components/icon/assets/transition_bottom_in.js +36 -0
  217. package/optimize/es/components/icon/assets/transition_bottom_out.js +36 -0
  218. package/optimize/es/components/icon/icon_map.js +6 -0
  219. package/optimize/es/components/markdown_editor/markdown_editor_help_button.js +5 -3
  220. package/optimize/es/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +2 -1
  221. package/optimize/es/components/markdown_editor/plugins/remark/remark_intraword_underscore.js +172 -0
  222. package/optimize/es/components/overlay_mask/overlay_mask.js +4 -2
  223. package/optimize/es/components/search_bar/filters/field_value_toggle_filter.js +43 -66
  224. package/optimize/es/components/search_bar/search_filters.js +18 -40
  225. package/optimize/es/components/table/mobile/table_header_mobile.js +1 -1
  226. package/optimize/es/components/table/utils.js +29 -9
  227. package/optimize/es/components/tree_view/tree_view_item.styles.js +1 -1
  228. package/optimize/es/services/hooks/index.js +8 -8
  229. package/optimize/es/services/hooks/useIsPointerDown.js +6 -10
  230. package/optimize/es/services/index.js +1 -1
  231. package/optimize/lib/components/color_picker/color_picker.js +30 -7
  232. package/optimize/lib/components/datagrid/utils/scrolling.js +37 -8
  233. package/optimize/lib/components/flyout/_flyout_overlay.js +33 -3
  234. package/optimize/lib/components/flyout/flyout.component.js +13 -9
  235. package/optimize/lib/components/flyout/flyout.js +4 -1
  236. package/optimize/lib/components/flyout/flyout.styles.js +2 -2
  237. package/optimize/lib/components/flyout/flyout_menu.js +2 -1
  238. package/optimize/lib/components/flyout/manager/actions.js +5 -2
  239. package/optimize/lib/components/flyout/manager/activity_stage.js +45 -43
  240. package/optimize/lib/components/flyout/manager/flyout_managed.js +38 -24
  241. package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +3 -16
  242. package/optimize/lib/components/flyout/manager/reducer.js +116 -57
  243. package/optimize/lib/components/flyout/manager/store.js +13 -6
  244. package/optimize/lib/components/icon/assets/transition_bottom_in.js +44 -0
  245. package/optimize/lib/components/icon/assets/transition_bottom_out.js +44 -0
  246. package/optimize/lib/components/icon/icon_map.js +10 -0
  247. package/optimize/lib/components/icon/svgs/transition_bottom_in.svg +1 -0
  248. package/optimize/lib/components/icon/svgs/transition_bottom_out.svg +1 -0
  249. package/optimize/lib/components/markdown_editor/markdown_editor_help_button.js +5 -3
  250. package/optimize/lib/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +2 -1
  251. package/optimize/lib/components/markdown_editor/plugins/remark/remark_intraword_underscore.js +179 -0
  252. package/optimize/lib/components/overlay_mask/overlay_mask.js +4 -2
  253. package/optimize/lib/components/search_bar/filters/field_value_toggle_filter.js +45 -69
  254. package/optimize/lib/components/search_bar/search_filters.js +19 -40
  255. package/optimize/lib/components/table/mobile/table_header_mobile.js +1 -1
  256. package/optimize/lib/components/table/utils.js +30 -10
  257. package/optimize/lib/components/tree_view/tree_view_item.styles.js +1 -1
  258. package/optimize/lib/services/hooks/index.js +60 -91
  259. package/optimize/lib/services/hooks/useIsPointerDown.js +5 -10
  260. package/optimize/lib/services/index.js +70 -11
  261. package/package.json +5 -4
  262. package/test-env/components/avatar/avatar.js +1 -1
  263. package/test-env/components/badge/badge.js +1 -1
  264. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  265. package/test-env/components/basic_table/basic_table.js +4 -4
  266. package/test-env/components/basic_table/in_memory_table.js +4 -4
  267. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  268. package/test-env/components/button/button_empty/button_empty.js +1 -1
  269. package/test-env/components/button/button_icon/button_icon.js +1 -1
  270. package/test-env/components/button/split_button/split_button.js +13 -0
  271. package/test-env/components/button/split_button/split_button_actions.js +15 -0
  272. package/test-env/components/call_out/call_out.js +1 -1
  273. package/test-env/components/card/card.js +1 -1
  274. package/test-env/components/collapsible_nav/collapsible_nav.js +6 -1
  275. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  276. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  277. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  278. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  279. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  280. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  281. package/test-env/components/color_picker/color_picker.js +30 -7
  282. package/test-env/components/comment_list/comment.js +2 -2
  283. package/test-env/components/comment_list/comment_event.js +1 -1
  284. package/test-env/components/comment_list/comment_list.js +2 -2
  285. package/test-env/components/comment_list/comment_timeline.js +1 -1
  286. package/test-env/components/context_menu/context_menu_item.js +1 -1
  287. package/test-env/components/datagrid/body/cell/data_grid_cell.js +12 -12
  288. package/test-env/components/datagrid/body/data_grid_body.js +7 -7
  289. package/test-env/components/datagrid/body/data_grid_body_custom.js +7 -7
  290. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  291. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  292. package/test-env/components/datagrid/controls/column_sorting.js +7 -7
  293. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  294. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  295. package/test-env/components/datagrid/utils/in_memory.js +6 -6
  296. package/test-env/components/datagrid/utils/scrolling.js +37 -8
  297. package/test-env/components/date_picker/date_picker.js +2 -2
  298. package/test-env/components/date_picker/date_picker_range.js +1 -1
  299. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  300. package/test-env/components/flyout/_flyout_overlay.js +33 -3
  301. package/test-env/components/flyout/flyout.component.js +13 -9
  302. package/test-env/components/flyout/flyout.styles.js +2 -2
  303. package/test-env/components/flyout/flyout_menu.js +4 -3
  304. package/test-env/components/flyout/flyout_resizable.js +6 -1
  305. package/test-env/components/flyout/manager/actions.js +5 -2
  306. package/test-env/components/flyout/manager/activity_stage.js +45 -43
  307. package/test-env/components/flyout/manager/flyout_child.js +2 -1
  308. package/test-env/components/flyout/manager/flyout_managed.js +40 -25
  309. package/test-env/components/flyout/manager/flyout_managed.styles.js +3 -16
  310. package/test-env/components/flyout/manager/reducer.js +116 -57
  311. package/test-env/components/flyout/manager/store.js +13 -6
  312. package/test-env/components/form/field_number/field_number.js +2 -2
  313. package/test-env/components/form/field_text/field_text.js +2 -2
  314. package/test-env/components/form/form_control_button/form_control_button.js +1 -1
  315. package/test-env/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  316. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  317. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  318. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  319. package/test-env/components/form/text_area/text_area.js +2 -2
  320. package/test-env/components/header/header_links/header_link.js +1 -1
  321. package/test-env/components/header/header_links/header_links.js +1 -1
  322. package/test-env/components/header/header_logo/header_logo.js +1 -1
  323. package/test-env/components/header/header_section/header_section_item_button.js +1 -1
  324. package/test-env/components/icon/assets/transition_bottom_in.js +44 -0
  325. package/test-env/components/icon/assets/transition_bottom_out.js +44 -0
  326. package/test-env/components/icon/icon_map.js +10 -0
  327. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  328. package/test-env/components/list_group/list_group.js +2 -2
  329. package/test-env/components/list_group/list_group_item.js +2 -2
  330. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  331. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  332. package/test-env/components/loading/loading_logo.js +1 -1
  333. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  334. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  335. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  336. package/test-env/components/markdown_editor/markdown_editor_help_button.js +5 -3
  337. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  338. package/test-env/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +2 -1
  339. package/test-env/components/markdown_editor/plugins/remark/remark_intraword_underscore.js +179 -0
  340. package/test-env/components/overlay_mask/overlay_mask.js +10 -3
  341. package/test-env/components/page/page_header/page_header_content.js +1 -1
  342. package/test-env/components/pagination/pagination_button.js +1 -1
  343. package/test-env/components/search_bar/filters/field_value_toggle_filter.js +44 -96
  344. package/test-env/components/search_bar/search_filters.js +19 -39
  345. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  346. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  347. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  348. package/test-env/components/table/mobile/table_header_mobile.js +1 -1
  349. package/test-env/components/table/table_header_cell.js +1 -1
  350. package/test-env/components/table/utils.js +30 -10
  351. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  352. package/test-env/components/toast/global_toast_list.js +1 -1
  353. package/test-env/components/toast/toast.js +1 -1
  354. package/test-env/components/tool_tip/icon_tip.js +1 -1
  355. package/test-env/components/tree_view/tree_view_item.styles.js +1 -1
  356. package/test-env/services/hooks/index.js +60 -91
  357. package/test-env/services/hooks/useIsPointerDown.js +5 -10
  358. package/test-env/services/index.js +70 -11
@@ -11,6 +11,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
+ var _react2 = require("@emotion/react");
14
15
  var _reactDom = require("react-dom");
15
16
  var _services = require("../../../services");
16
17
  var _i18n = require("../../i18n");
@@ -25,24 +26,22 @@ var _hooks = require("./hooks");
25
26
  var _selectors = require("./selectors");
26
27
  var _store = require("./store");
27
28
  var _validation = require("./validation");
28
- var _react2 = require("@emotion/react");
29
- var _excluded = ["id", "onClose", "onActive", "level", "size", "minWidth", "css", "flyoutMenuProps"];
30
- /*
29
+ var _excluded = ["id", "onClose", "onActive", "level", "size", "minWidth", "historyKey", "css", "flyoutMenuProps"];
30
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
31
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
32
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
33
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
34
+ 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)."; } /*
31
35
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
32
36
  * or more contributor license agreements. Licensed under the Elastic License
33
37
  * 2.0 and the Server Side Public License, v 1; you may not use this file except
34
38
  * in compliance with, at your election, the Elastic License 2.0 or the Server
35
39
  * Side Public License, v 1.
36
- */
37
- /**
40
+ */ /**
38
41
  * Props for `EuiManagedFlyout`, the internal persistent flyout used by
39
42
  * the manager. Extends base flyout props and requires a `level` to
40
43
  * distinguish `main` vs `child` behavior.
41
44
  */
42
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
43
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
44
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
45
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
46
45
  var useFlyoutManager = function useFlyoutManager() {
47
46
  var context = (0, _hooks.useFlyoutManager)();
48
47
  if (!context) {
@@ -58,17 +57,26 @@ var useFlyoutManager = function useFlyoutManager() {
58
57
  * - width tracking for responsive layouts
59
58
  * - lifecycle stage transitions and data attributes for styling
60
59
  */
61
- var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
62
- var _managerSessions, _managerState$layoutM, _managerState$flyouts, _managerState$session, _managerState$flyouts2;
63
- var id = _ref.id,
64
- onCloseProp = _ref.onClose,
65
- onActiveProp = _ref.onActive,
66
- level = _ref.level,
67
- sizeProp = _ref.size,
68
- minWidth = _ref.minWidth,
69
- customCss = _ref.css,
70
- _flyoutMenuProps = _ref.flyoutMenuProps,
71
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
60
+ var _ref = process.env.NODE_ENV === "production" ? {
61
+ name: "1wrw3pf-EuiManagedFlyout",
62
+ styles: "animation-duration:0s!important;label:EuiManagedFlyout;"
63
+ } : {
64
+ name: "1wrw3pf-EuiManagedFlyout",
65
+ styles: "animation-duration:0s!important;label:EuiManagedFlyout;",
66
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
67
+ };
68
+ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
69
+ var _managerSessions, _managerState$layoutM, _managerState$flyouts, _managerState$session, _managerState$flyouts2, _managerSessions$leng, _session$childHistory, _session$childHistory2;
70
+ var id = _ref2.id,
71
+ onCloseProp = _ref2.onClose,
72
+ onActiveProp = _ref2.onActive,
73
+ level = _ref2.level,
74
+ sizeProp = _ref2.size,
75
+ minWidth = _ref2.minWidth,
76
+ historyKey = _ref2.historyKey,
77
+ customCss = _ref2.css,
78
+ _flyoutMenuProps = _ref2.flyoutMenuProps,
79
+ props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
72
80
  var flyoutId = (0, _hooks.useFlyoutId)(id);
73
81
  var _useState = (0, _react.useState)(null),
74
82
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -104,6 +112,9 @@ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwar
104
112
  var parentSize = session !== null && session !== void 0 && session.mainFlyoutId ? managerState === null || managerState === void 0 || (_managerState$flyouts2 = managerState.flyouts.find(function (f) {
105
113
  return f.flyoutId === session.mainFlyoutId;
106
114
  })) === null || _managerState$flyouts2 === void 0 ? void 0 : _managerState$flyouts2.size : undefined;
115
+
116
+ // Animate opening only for the first main flyout (sole session) or first child (no prior child in session).
117
+ var shouldAnimateOpening = level === _const.LEVEL_MAIN ? ((_managerSessions$leng = managerSessions === null || managerSessions === void 0 ? void 0 : managerSessions.length) !== null && _managerSessions$leng !== void 0 ? _managerSessions$leng : 0) <= 1 && (currentSession === null || currentSession === void 0 ? void 0 : currentSession.mainFlyoutId) === flyoutId : ((_session$childHistory = session === null || session === void 0 || (_session$childHistory2 = session.childHistory) === null || _session$childHistory2 === void 0 ? void 0 : _session$childHistory2.length) !== null && _session$childHistory !== void 0 ? _session$childHistory : 0) === 0;
107
118
  var styles = (0, _services.useEuiMemoizedStyles)(_flyout_managed.euiManagedFlyoutStyles);
108
119
 
109
120
  // Set default size based on level: main defaults to 'm', child defaults to 's'
@@ -164,7 +175,7 @@ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwar
164
175
  // Register with flyout manager context when open, remove when closed
165
176
  // Using useLayoutEffect to run synchronously before DOM updates
166
177
  (0, _react.useLayoutEffect)(function () {
167
- addFlyout(flyoutId, title, level, size, _flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.iconType, typeof minWidth === 'number' ? minWidth : undefined);
178
+ addFlyout(flyoutId, title, level, size, level === _const.LEVEL_MAIN ? historyKey : undefined, _flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.iconType, typeof minWidth === 'number' ? minWidth : undefined);
168
179
  return function () {
169
180
  var currentStoreState = (0, _store.getFlyoutManagerStore)().getState();
170
181
  var stillInStore = currentStoreState.flyouts.some(function (f) {
@@ -180,7 +191,7 @@ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwar
180
191
  }
181
192
  wasRegisteredRef.current = false;
182
193
  };
183
- }, [flyoutId, title, level, size, minWidth, _flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.iconType, addFlyout, closeFlyout, closeAllFlyouts]);
194
+ }, [flyoutId, title, level, size, minWidth, historyKey, _flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.iconType, addFlyout, closeFlyout, closeAllFlyouts]);
184
195
 
185
196
  // Detect when flyout has been removed from manager state (e.g., via Back button)
186
197
  // and trigger onClose callback to notify the parent component
@@ -240,7 +251,8 @@ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwar
240
251
  }, [flyoutId, level, isActive, width, setFlyoutWidth]);
241
252
  var _useFlyoutActivitySta = (0, _activity_stage.useFlyoutActivityStage)({
242
253
  flyoutId: flyoutId,
243
- level: level
254
+ level: level,
255
+ shouldAnimate: false
244
256
  }),
245
257
  activityStage = _useFlyoutActivitySta.activityStage,
246
258
  onAnimationEnd = _useFlyoutActivitySta.onAnimationEnd;
@@ -271,7 +283,9 @@ var EuiManagedFlyout = exports.EuiManagedFlyout = /*#__PURE__*/(0, _react.forwar
271
283
  }, (0, _react2.jsx)(_flyout.EuiFlyoutComponent, (0, _extends2.default)({
272
284
  id: flyoutId,
273
285
  ref: combinedRef,
274
- css: [styles.managedFlyout, customCss, styles.stage(activityStage, props.side, level), ";label:EuiManagedFlyout;"]
286
+ css: [styles.managedFlyout, customCss, styles.stage(activityStage, props.side, level),
287
+ // Suppress EuiFlyout's built-in opening animation for non-initial flyouts.
288
+ !shouldAnimateOpening && _ref, ";label:EuiManagedFlyout;"]
275
289
  }, _objectSpread(_objectSpread({}, props), {}, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
276
290
  onClose: onClose,
277
291
  size: size,
@@ -1,16 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.euiManagedFlyoutStyles = void 0;
8
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
7
  var _react = require("@emotion/react");
10
8
  var _global_styling = require("../../../global_styling");
11
9
  var _const = require("./const");
12
10
  var _const2 = require("../const");
13
- var _templateObject, _templateObject2;
14
11
  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)."; } /*
15
12
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
16
13
  * or more contributor license agreements. Licensed under the Elastic License
@@ -37,16 +34,6 @@ var euiManagedFlyoutStyles = exports.euiManagedFlyoutStyles = function euiManage
37
34
  stage: function stage(activeStage) {
38
35
  var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _const2.DEFAULT_SIDE;
39
36
  var level = arguments.length > 2 ? arguments[2] : undefined;
40
- // Animation for moving flyout backwards in 3D space (z-axis) when inactive
41
- var euiFlyoutSlideBack3D = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n from {\n transform: translateZ(0) translateX(0) scale(1);\n filter: blur(0px);\n opacity: 1;\n }\n to {\n transform: translateZ(-1500px) translateX(", ") scale(0.5);\n filter: blur(3px);\n opacity: 0.6;\n }\n "])), side === 'left' ? 'calc(-100vw - 100%)' : 'calc(100vw + 100%)');
42
-
43
- // Animation for bringing flyout forward from 3D space when transitioning to active
44
- var euiFlyoutSlideForward3D = (0, _react.keyframes)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n from {\n transform: translateZ(-500px) translateX(", ") scale(0.85);\n filter: blur(3px);\n opacity: 0.6;\n }\n to {\n transform: translateZ(0) translateX(0) scale(1);\n filter: blur(0px);\n opacity: 1;\n }\n "])), side === 'left' ? 'calc(-100vw - 100%)' : 'calc(100vw + 100%)');
45
- // When flyout is becoming inactive, animate backwards in 3D space
46
- var inactiveTransition = /*#__PURE__*/(0, _react.css)(_global_styling.euiCanAnimate, "{animation:", euiFlyoutSlideBack3D, " ", euiTheme.animation.extraSlow, " ", euiTheme.animation.resistance, " forwards;pointer-events:none;};label:inactiveTransition;");
47
-
48
- // When flyout is becoming active from a backgrounded state, animate forward in 3D space
49
- var returningTransition = /*#__PURE__*/(0, _react.css)(_global_styling.euiCanAnimate, "{animation:", euiFlyoutSlideForward3D, " ", euiTheme.animation.normal, " ", euiTheme.animation.resistance, " forwards;};label:returningTransition;");
50
37
  var noTransition = /*#__PURE__*/(0, _react.css)(_global_styling.euiCanAnimate, "{animation:none;opacity:1;};label:noTransition;");
51
38
  var activeFlyout = /*#__PURE__*/(0, _react.css)("z-index:", parseInt(euiTheme.levels.flyout) + 1, ";pointer-events:auto;;label:activeFlyout;");
52
39
  var inactiveFlyout = /*#__PURE__*/(0, _react.css)(side === 'left' ? (0, _global_styling.logicalCSS)('right', '100vw') : (0, _global_styling.logicalCSS)('left', '100vw'), " transform:translateX(", side === 'left' ? 'calc(-100vw - 100%)' : 'calc(100vw + 100%)', ");;label:inactiveFlyout;");
@@ -58,15 +45,15 @@ var euiManagedFlyoutStyles = exports.euiManagedFlyoutStyles = function euiManage
58
45
  case _const.STAGE_ACTIVE:
59
46
  return [activeFlyout, noTransition];
60
47
  case _const.STAGE_BACKGROUNDING:
61
- return [inactiveTransition];
48
+ return [inactiveFlyout, noTransition];
62
49
  case _const.STAGE_BACKGROUNDED:
63
50
  return [inactiveFlyout, noTransition];
64
51
  case _const.STAGE_RETURNING:
65
- return [activeFlyout, returningTransition];
52
+ return [activeFlyout, noTransition];
66
53
  case _const.STAGE_INACTIVE:
67
54
  return [inactiveFlyout, noTransition];
68
55
  case _const.STAGE_CLOSING:
69
- return [inactiveTransition];
56
+ return [inactiveFlyout, noTransition];
70
57
  }
71
58
  },
72
59
  managedFlyout: _ref
@@ -32,6 +32,28 @@ var initialState = exports.initialState = {
32
32
  currentZIndex: 0,
33
33
  unmanagedFlyouts: []
34
34
  };
35
+ var addSessionFlyoutsToRemove = function addSessionFlyoutsToRemove(session, flyoutsToRemove) {
36
+ var _session$childHistory;
37
+ flyoutsToRemove.add(session.mainFlyoutId);
38
+ if (session.childFlyoutId) {
39
+ flyoutsToRemove.add(session.childFlyoutId);
40
+ }
41
+ ((_session$childHistory = session.childHistory) !== null && _session$childHistory !== void 0 ? _session$childHistory : []).forEach(function (e) {
42
+ return flyoutsToRemove.add(e.flyoutId);
43
+ });
44
+ };
45
+ var moveHistoryGroupToTop = function moveHistoryGroupToTop(sessions, historyKey) {
46
+ var groupSessions = [];
47
+ var otherSessions = [];
48
+ sessions.forEach(function (session) {
49
+ if (session.historyKey === historyKey) {
50
+ groupSessions.push(session);
51
+ } else {
52
+ otherSessions.push(session);
53
+ }
54
+ });
55
+ return [].concat(otherSessions, groupSessions);
56
+ };
35
57
 
36
58
  /**
37
59
  * Reducer handling all flyout manager actions and state transitions.
@@ -80,6 +102,7 @@ function flyoutManagerReducer() {
80
102
  title = action.title,
81
103
  level = action.level,
82
104
  size = action.size,
105
+ historyKey = action.historyKey,
83
106
  iconType = action.iconType,
84
107
  minWidth = action.minWidth;
85
108
  var isDuplicate = state.flyouts.some(function (f) {
@@ -106,7 +129,8 @@ function flyoutManagerReducer() {
106
129
  iconType: iconType,
107
130
  childFlyoutId: null,
108
131
  childHistory: [],
109
- zIndex: state.currentZIndex
132
+ zIndex: state.currentZIndex,
133
+ historyKey: historyKey !== null && historyKey !== void 0 ? historyKey : Symbol()
110
134
  };
111
135
  return _objectSpread(_objectSpread({}, state), {}, {
112
136
  sessions: [].concat((0, _toConsumableArray2.default)(state.sessions), [newSession]),
@@ -233,8 +257,8 @@ function flyoutManagerReducer() {
233
257
  });
234
258
  }
235
259
  var owningSessionIndex = state.sessions.findIndex(function (session) {
236
- var _session$childHistory;
237
- return session.childFlyoutId === action.flyoutId || ((_session$childHistory = session.childHistory) !== null && _session$childHistory !== void 0 ? _session$childHistory : []).some(function (entry) {
260
+ var _session$childHistory2;
261
+ return session.childFlyoutId === action.flyoutId || ((_session$childHistory2 = session.childHistory) !== null && _session$childHistory2 !== void 0 ? _session$childHistory2 : []).some(function (entry) {
238
262
  return entry.flyoutId === action.flyoutId;
239
263
  });
240
264
  });
@@ -266,21 +290,37 @@ function flyoutManagerReducer() {
266
290
  });
267
291
  }
268
292
 
269
- // Unregister all flyouts.
293
+ // Unregister all flyouts (within the current history group only).
270
294
  case _actions.ACTION_CLOSE_ALL:
271
295
  {
272
296
  if (state.sessions.length === 0) {
273
297
  return state;
274
298
  }
299
+ var _currentSessionIndex = state.sessions.length - 1;
300
+ var _currentSession = state.sessions[_currentSessionIndex];
301
+ var currentKey = _currentSession.historyKey;
275
302
 
276
- // Reset current z-index to 0 only if no unmanaged flyouts remain.
303
+ // Remove all sessions that have the current historyKey (entire group)
304
+ var _newSessions = state.sessions.filter(function (s) {
305
+ return s.historyKey !== currentKey;
306
+ });
307
+ var _flyoutsToRemove = new Set();
308
+ state.sessions.forEach(function (session) {
309
+ if (session.historyKey === currentKey) {
310
+ addSessionFlyoutsToRemove(session, _flyoutsToRemove);
311
+ }
312
+ });
313
+ var _newFlyouts3 = state.flyouts.filter(function (f) {
314
+ return !_flyoutsToRemove.has(f.flyoutId);
315
+ });
277
316
  var _newCurrentZIndex2 = state.currentZIndex;
278
- if (state.unmanagedFlyouts.length === 0) {
317
+ if (_newSessions.length === 0 && state.unmanagedFlyouts.length === 0) {
279
318
  _newCurrentZIndex2 = 0;
280
319
  }
281
- return _objectSpread(_objectSpread({}, initialState), {}, {
282
- currentZIndex: _newCurrentZIndex2,
283
- unmanagedFlyouts: state.unmanagedFlyouts
320
+ return _objectSpread(_objectSpread({}, state), {}, {
321
+ sessions: _newSessions,
322
+ flyouts: _newFlyouts3,
323
+ currentZIndex: _newCurrentZIndex2
284
324
  });
285
325
  }
286
326
 
@@ -292,8 +332,8 @@ function flyoutManagerReducer() {
292
332
  return state;
293
333
  }
294
334
  var _updatedSessions2 = (0, _toConsumableArray2.default)(state.sessions);
295
- var _currentSessionIndex = _updatedSessions2.length - 1;
296
- _updatedSessions2[_currentSessionIndex] = _objectSpread(_objectSpread({}, _updatedSessions2[_currentSessionIndex]), {}, {
335
+ var _currentSessionIndex2 = _updatedSessions2.length - 1;
336
+ _updatedSessions2[_currentSessionIndex2] = _objectSpread(_objectSpread({}, _updatedSessions2[_currentSessionIndex2]), {}, {
297
337
  childFlyoutId: action.flyoutId
298
338
  });
299
339
  return _objectSpread(_objectSpread({}, state), {}, {
@@ -339,51 +379,50 @@ function flyoutManagerReducer() {
339
379
  });
340
380
  }
341
381
 
342
- // Go back: pop child history when any, else pop current session
382
+ // Go back: pop child history when any, else pop current session (only within same historyKey).
343
383
  case _actions.ACTION_GO_BACK:
344
384
  {
345
- var _currentSession$child3, _currentSession$child4;
385
+ var _currentSession2$chil;
346
386
  if (state.sessions.length === 0) {
347
387
  return state;
348
388
  }
349
- var _currentSessionIndex2 = state.sessions.length - 1;
350
- var _currentSession = state.sessions[_currentSessionIndex2];
351
- var _childHistory = (_currentSession$child3 = _currentSession.childHistory) !== null && _currentSession$child3 !== void 0 ? _currentSession$child3 : [];
389
+ var _currentSessionIndex3 = state.sessions.length - 1;
390
+ var _currentSession2 = state.sessions[_currentSessionIndex3];
391
+ var _childHistory = (_currentSession2$chil = _currentSession2.childHistory) !== null && _currentSession2$chil !== void 0 ? _currentSession2$chil : [];
352
392
  if (_childHistory.length > 0) {
353
393
  // Pop one child: set current child to the last entry in history, remove the current child flyout
354
394
  var popped = _childHistory[_childHistory.length - 1];
355
395
  var newChildHistory = _childHistory.slice(0, -1);
356
396
  var _updatedSessions3 = (0, _toConsumableArray2.default)(state.sessions);
357
- _updatedSessions3[_currentSessionIndex2] = _objectSpread(_objectSpread({}, _currentSession), {}, {
397
+ _updatedSessions3[_currentSessionIndex3] = _objectSpread(_objectSpread({}, _currentSession2), {}, {
358
398
  childHistory: newChildHistory,
359
399
  childFlyoutId: popped.flyoutId,
360
400
  childTitle: popped.title,
361
401
  childIconType: popped.iconType
362
402
  });
363
- var _newFlyouts3 = state.flyouts.filter(function (f) {
364
- return f.flyoutId !== _currentSession.childFlyoutId;
403
+ var _newFlyouts4 = state.flyouts.filter(function (f) {
404
+ return f.flyoutId !== _currentSession2.childFlyoutId;
365
405
  });
366
406
  return _objectSpread(_objectSpread({}, state), {}, {
367
407
  sessions: _updatedSessions3,
368
- flyouts: _newFlyouts3
408
+ flyouts: _newFlyouts4
369
409
  });
370
410
  }
371
411
 
372
412
  // No child history: pop current session (main + all its children)
373
- var _flyoutsToRemove = new Set([_currentSession.mainFlyoutId]);
374
- if (_currentSession.childFlyoutId) {
375
- _flyoutsToRemove.add(_currentSession.childFlyoutId);
376
- }
377
- ((_currentSession$child4 = _currentSession.childHistory) !== null && _currentSession$child4 !== void 0 ? _currentSession$child4 : []).forEach(function (e) {
378
- return _flyoutsToRemove.add(e.flyoutId);
413
+ var _flyoutsToRemove2 = new Set();
414
+ addSessionFlyoutsToRemove(_currentSession2, _flyoutsToRemove2);
415
+ var sessionsWithoutCurrent = state.sessions.slice(0, _currentSessionIndex3);
416
+ var hasRemainingInCurrentGroup = sessionsWithoutCurrent.some(function (s) {
417
+ return s.historyKey === _currentSession2.historyKey;
379
418
  });
380
- var _newFlyouts4 = state.flyouts.filter(function (f) {
381
- return !_flyoutsToRemove.has(f.flyoutId);
419
+ var _newSessions2 = hasRemainingInCurrentGroup ? moveHistoryGroupToTop(sessionsWithoutCurrent, _currentSession2.historyKey) : sessionsWithoutCurrent;
420
+ var _newFlyouts5 = state.flyouts.filter(function (f) {
421
+ return !_flyoutsToRemove2.has(f.flyoutId);
382
422
  });
383
- var _newSessions = state.sessions.slice(0, _currentSessionIndex2);
384
423
  return _objectSpread(_objectSpread({}, state), {}, {
385
- sessions: _newSessions,
386
- flyouts: _newFlyouts4
424
+ sessions: _newSessions2,
425
+ flyouts: _newFlyouts5
387
426
  });
388
427
  }
389
428
 
@@ -392,11 +431,11 @@ function flyoutManagerReducer() {
392
431
  {
393
432
  var _flyoutId3 = action.flyoutId,
394
433
  _level = action.level;
395
- var _currentSessionIndex3 = state.sessions.length - 1;
434
+ var _currentSessionIndex4 = state.sessions.length - 1;
396
435
  if (_level === _const.LEVEL_CHILD && state.sessions.length > 0) {
397
- var _currentSession2$chil;
398
- var _currentSession2 = state.sessions[_currentSessionIndex3];
399
- var _childHistory2 = (_currentSession2$chil = _currentSession2.childHistory) !== null && _currentSession2$chil !== void 0 ? _currentSession2$chil : [];
436
+ var _currentSession3$chil;
437
+ var _currentSession3 = state.sessions[_currentSessionIndex4];
438
+ var _childHistory2 = (_currentSession3$chil = _currentSession3.childHistory) !== null && _currentSession3$chil !== void 0 ? _currentSession3$chil : [];
400
439
  var targetIndex = _childHistory2.findIndex(function (entry) {
401
440
  return entry.flyoutId === _flyoutId3;
402
441
  });
@@ -405,18 +444,18 @@ function flyoutManagerReducer() {
405
444
  }
406
445
  var targetEntry = _childHistory2[targetIndex];
407
446
  var _newChildHistory = _childHistory2.slice(0, targetIndex);
408
- var _flyoutsToRemove2 = new Set();
409
- if (_currentSession2.childFlyoutId) {
410
- _flyoutsToRemove2.add(_currentSession2.childFlyoutId);
447
+ var _flyoutsToRemove3 = new Set();
448
+ if (_currentSession3.childFlyoutId) {
449
+ _flyoutsToRemove3.add(_currentSession3.childFlyoutId);
411
450
  }
412
451
  _childHistory2.slice(targetIndex + 1).forEach(function (e) {
413
- _flyoutsToRemove2.add(e.flyoutId);
452
+ _flyoutsToRemove3.add(e.flyoutId);
414
453
  });
415
- var _newFlyouts5 = state.flyouts.filter(function (f) {
416
- return !_flyoutsToRemove2.has(f.flyoutId);
454
+ var _newFlyouts6 = state.flyouts.filter(function (f) {
455
+ return !_flyoutsToRemove3.has(f.flyoutId);
417
456
  });
418
457
  var _updatedSessions4 = (0, _toConsumableArray2.default)(state.sessions);
419
- _updatedSessions4[_currentSessionIndex3] = _objectSpread(_objectSpread({}, _currentSession2), {}, {
458
+ _updatedSessions4[_currentSessionIndex4] = _objectSpread(_objectSpread({}, _currentSession3), {}, {
420
459
  childHistory: _newChildHistory,
421
460
  childFlyoutId: targetEntry.flyoutId,
422
461
  childTitle: targetEntry.title,
@@ -424,7 +463,7 @@ function flyoutManagerReducer() {
424
463
  });
425
464
  return _objectSpread(_objectSpread({}, state), {}, {
426
465
  sessions: _updatedSessions4,
427
- flyouts: _newFlyouts5
466
+ flyouts: _newFlyouts6
428
467
  });
429
468
  }
430
469
 
@@ -435,25 +474,45 @@ function flyoutManagerReducer() {
435
474
  if (targetSessionIndex === -1) {
436
475
  return state; // Target flyout not found
437
476
  }
477
+ var _currentSession4 = state.sessions[_currentSessionIndex4];
478
+ var targetSession = state.sessions[targetSessionIndex];
479
+
480
+ // Group-local navigation: keep other history groups, remove only newer sessions in target's group,
481
+ // then bring that group to the top.
482
+ if (targetSession.historyKey === _currentSession4.historyKey) {
483
+ var _flyoutsToRemove4 = new Set();
484
+ var sessionsAfterTargetInGroup = state.sessions.filter(function (session, index) {
485
+ return index > targetSessionIndex && session.historyKey === targetSession.historyKey;
486
+ });
487
+ sessionsAfterTargetInGroup.forEach(function (session) {
488
+ addSessionFlyoutsToRemove(session, _flyoutsToRemove4);
489
+ });
490
+ var sessionsWithoutRemoved = state.sessions.filter(function (session) {
491
+ return !sessionsAfterTargetInGroup.some(function (removed) {
492
+ return removed.mainFlyoutId === session.mainFlyoutId;
493
+ });
494
+ });
495
+ var reorderedSessions = moveHistoryGroupToTop(sessionsWithoutRemoved, targetSession.historyKey);
496
+ var _newFlyouts7 = state.flyouts.filter(function (f) {
497
+ return !_flyoutsToRemove4.has(f.flyoutId);
498
+ });
499
+ return _objectSpread(_objectSpread({}, state), {}, {
500
+ sessions: reorderedSessions,
501
+ flyouts: _newFlyouts7
502
+ });
503
+ }
438
504
  var sessionsToClose = state.sessions.slice(targetSessionIndex + 1);
439
- var _flyoutsToRemove3 = new Set();
505
+ var _flyoutsToRemove5 = new Set();
440
506
  sessionsToClose.forEach(function (session) {
441
- var _session$childHistory2;
442
- _flyoutsToRemove3.add(session.mainFlyoutId);
443
- if (session.childFlyoutId) {
444
- _flyoutsToRemove3.add(session.childFlyoutId);
445
- }
446
- ((_session$childHistory2 = session.childHistory) !== null && _session$childHistory2 !== void 0 ? _session$childHistory2 : []).forEach(function (e) {
447
- return _flyoutsToRemove3.add(e.flyoutId);
448
- });
507
+ addSessionFlyoutsToRemove(session, _flyoutsToRemove5);
449
508
  });
450
- var _newFlyouts6 = state.flyouts.filter(function (f) {
451
- return !_flyoutsToRemove3.has(f.flyoutId);
509
+ var _newFlyouts8 = state.flyouts.filter(function (f) {
510
+ return !_flyoutsToRemove5.has(f.flyoutId);
452
511
  });
453
- var _newSessions2 = state.sessions.slice(0, targetSessionIndex + 1);
512
+ var _newSessions3 = state.sessions.slice(0, targetSessionIndex + 1);
454
513
  return _objectSpread(_objectSpread({}, state), {}, {
455
- sessions: _newSessions2,
456
- flyouts: _newFlyouts6
514
+ sessions: _newSessions3,
515
+ flyouts: _newFlyouts8
457
516
  });
458
517
  }
459
518
 
@@ -54,8 +54,15 @@ function createStore() {
54
54
  var _currentSession$child;
55
55
  var currentSessionIndex = currentState.sessions.length - 1;
56
56
  var currentSession = currentSessionIndex >= 0 ? currentState.sessions[currentSessionIndex] : null;
57
+ if (!currentSession) {
58
+ return [];
59
+ }
57
60
  var previousSessions = currentState.sessions.slice(0, currentSessionIndex);
58
- var childHistory = (_currentSession$child = currentSession === null || currentSession === void 0 ? void 0 : currentSession.childHistory) !== null && _currentSession$child !== void 0 ? _currentSession$child : [];
61
+ // Only include sessions in the same history group (same historyKey reference)
62
+ var previousSessionsInGroup = previousSessions.filter(function (session) {
63
+ return session.historyKey === currentSession.historyKey;
64
+ });
65
+ var childHistory = (_currentSession$child = currentSession.childHistory) !== null && _currentSession$child !== void 0 ? _currentSession$child : [];
59
66
  var childItems = (0, _toConsumableArray2.default)(childHistory).reverse().map(function (entry) {
60
67
  return {
61
68
  title: entry.title,
@@ -66,11 +73,11 @@ function createStore() {
66
73
  };
67
74
  });
68
75
 
69
- // Previous sessions: list each session's current child then its child history (so all travelled entries appear)
76
+ // Previous sessions (same group): list each session's current child then its child history
70
77
  var previousSessionItems = [];
71
78
  var _loop = function _loop() {
72
79
  var _session$childHistory;
73
- var session = previousSessions[i];
80
+ var session = previousSessionsInGroup[i];
74
81
  var mainTitle = session.title;
75
82
  var mainFlyoutId = session.mainFlyoutId;
76
83
  var history = (_session$childHistory = session.childHistory) !== null && _session$childHistory !== void 0 ? _session$childHistory : [];
@@ -108,7 +115,7 @@ function createStore() {
108
115
  });
109
116
  }
110
117
  };
111
- for (var i = previousSessions.length - 1; i >= 0; i--) {
118
+ for (var i = previousSessionsInGroup.length - 1; i >= 0; i--) {
112
119
  _loop();
113
120
  }
114
121
  return [].concat((0, _toConsumableArray2.default)(childItems), previousSessionItems);
@@ -147,8 +154,8 @@ function createStore() {
147
154
  subscribe: subscribe,
148
155
  subscribeToEvents: subscribeToEvents,
149
156
  dispatch: dispatch,
150
- addFlyout: function addFlyout(flyoutId, title, level, size, iconType, minWidth) {
151
- return dispatch((0, _actions.addFlyout)(flyoutId, title, level, size, iconType, minWidth));
157
+ addFlyout: function addFlyout(flyoutId, title, level, size, historyKey, iconType, minWidth) {
158
+ return dispatch((0, _actions.addFlyout)(flyoutId, title, level, size, historyKey, iconType, minWidth));
152
159
  },
153
160
  closeFlyout: function closeFlyout(flyoutId) {
154
161
  return dispatch((0, _actions.closeFlyout)(flyoutId));
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.icon = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var React = _interopRequireWildcard(require("react"));
12
+ var _react2 = require("@emotion/react");
13
+ var _excluded = ["title", "titleId"];
14
+ /*
15
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
16
+ * or more contributor license agreements. Licensed under the Elastic License
17
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
18
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
19
+ * Side Public License, v 1.
20
+ */
21
+ // THIS IS A GENERATED FILE. DO NOT MODIFY MANUALLY. @see scripts/compile-icons.js
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ var EuiIconTransitionBottomIn = function EuiIconTransitionBottomIn(_ref) {
25
+ var title = _ref.title,
26
+ titleId = _ref.titleId,
27
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
28
+ return (0, _react2.jsx)("svg", (0, _extends2.default)({
29
+ xmlns: "http://www.w3.org/2000/svg",
30
+ width: 16,
31
+ height: 16,
32
+ viewBox: "0 0 16 16",
33
+ "aria-labelledby": titleId
34
+ }, props), title ? (0, _react2.jsx)("title", {
35
+ id: titleId
36
+ }, title) : null, (0, _react2.jsx)("path", {
37
+ d: "M7.5 9V5.207L5.854 6.854l-.708-.708L8 3.293l2.854 2.853-.707.708L8.5 5.207V9z"
38
+ }), (0, _react2.jsx)("path", {
39
+ fillRule: "evenodd",
40
+ d: "M2 15a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1zM14 2H2v8h12zm0 9.793V11h-.793l-3 3h1.586zM11.793 11h-1.586l-3 3h1.586zm-3 0H7.207l-3 3h1.586zm-3 0H4.207L2 13.207V14h.793zm-3 0H2v.793zM14 13.207l-.793.793H14z",
41
+ clipRule: "evenodd"
42
+ }));
43
+ };
44
+ var icon = exports.icon = EuiIconTransitionBottomIn;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.icon = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var React = _interopRequireWildcard(require("react"));
12
+ var _react2 = require("@emotion/react");
13
+ var _excluded = ["title", "titleId"];
14
+ /*
15
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
16
+ * or more contributor license agreements. Licensed under the Elastic License
17
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
18
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
19
+ * Side Public License, v 1.
20
+ */
21
+ // THIS IS A GENERATED FILE. DO NOT MODIFY MANUALLY. @see scripts/compile-icons.js
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ var EuiIconTransitionBottomOut = function EuiIconTransitionBottomOut(_ref) {
25
+ var title = _ref.title,
26
+ titleId = _ref.titleId,
27
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
28
+ return (0, _react2.jsx)("svg", (0, _extends2.default)({
29
+ xmlns: "http://www.w3.org/2000/svg",
30
+ width: 16,
31
+ height: 16,
32
+ viewBox: "0 0 16 16",
33
+ "aria-labelledby": titleId
34
+ }, props), title ? (0, _react2.jsx)("title", {
35
+ id: titleId
36
+ }, title) : null, (0, _react2.jsx)("path", {
37
+ d: "M8.5 3.293v3.793l1.646-1.647.707.707L8 9 5.146 6.146l.708-.707L7.5 7.086V3.293z"
38
+ }), (0, _react2.jsx)("path", {
39
+ fillRule: "evenodd",
40
+ d: "M2 15a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1zM14 2H2v8h12zm0 9.793V11h-.793l-3 3h1.586zM11.793 11h-1.586l-3 3h1.586zm-3 0H7.207l-3 3h1.586zm-3 0H4.207L2 13.207V14h.793zm-3 0H2v.793zM14 13.207l-.793.793H14z",
41
+ clipRule: "evenodd"
42
+ }));
43
+ };
44
+ var icon = exports.icon = EuiIconTransitionBottomOut;
@@ -2987,6 +2987,16 @@ var typeToPathMap = exports.typeToPathMap = {
2987
2987
  });
2988
2988
  },
2989
2989
  // NOTE: To be deprecated in favor of presentation,
2990
+ transitionBottomIn: function transitionBottomIn() {
2991
+ return Promise.resolve().then(function () {
2992
+ return _interopRequireWildcard(require('./assets/transition_bottom_in'));
2993
+ });
2994
+ },
2995
+ transitionBottomOut: function transitionBottomOut() {
2996
+ return Promise.resolve().then(function () {
2997
+ return _interopRequireWildcard(require('./assets/transition_bottom_out'));
2998
+ });
2999
+ },
2990
3000
  transitionLeftIn: function transitionLeftIn() {
2991
3001
  return Promise.resolve().then(function () {
2992
3002
  return _interopRequireWildcard(require('./assets/transition_left_in'));
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M7.5 9V5.207L5.854 6.854l-.708-.708L8 3.293l2.854 2.853-.707.708L8.5 5.207V9z"/><path fill-rule="evenodd" d="M2 15a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1zM14 2H2v8h12zm0 9.793V11h-.793l-3 3h1.586zM11.793 11h-1.586l-3 3h1.586zm-3 0H7.207l-3 3h1.586zm-3 0H4.207L2 13.207V14h.793zm-3 0H2v.793zM14 13.207l-.793.793H14z" clip-rule="evenodd"/></svg>