@elastic/eui 114.3.0 → 116.0.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 (387) hide show
  1. package/es/components/basic_table/basic_table.js +3 -6
  2. package/es/components/basic_table/collapsed_item_actions.js +1 -3
  3. package/es/components/basic_table/default_item_action.js +0 -1
  4. package/es/components/basic_table/in_memory_table.js +3 -6
  5. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  6. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  7. package/es/components/color_picker/color_picker_swatch.js +1 -2
  8. package/es/components/combo_box/combo_box.a11y.js +5 -5
  9. package/es/components/combo_box/combo_box.js +61 -53
  10. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +147 -84
  11. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
  12. package/es/components/context_menu/context_menu.js +19 -21
  13. package/es/components/context_menu/context_menu.styles.js +5 -2
  14. package/es/components/context_menu/context_menu_item.js +69 -58
  15. package/es/components/context_menu/context_menu_item.styles.js +14 -28
  16. package/es/components/context_menu/context_menu_panel.js +37 -21
  17. package/es/components/context_menu/context_menu_panel.styles.js +7 -2
  18. package/es/components/context_menu/context_menu_panel_title.js +124 -0
  19. package/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
  20. package/es/components/context_menu/index.js +2 -1
  21. package/es/components/datagrid/body/cell/data_grid_cell.js +35 -29
  22. package/es/components/datagrid/body/data_grid_body.js +23 -17
  23. package/es/components/datagrid/body/data_grid_body_custom.js +23 -17
  24. package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  25. package/es/components/datagrid/body/header/column_actions.js +1 -2
  26. package/es/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  27. package/es/components/datagrid/controls/column_sorting.js +23 -17
  28. package/es/components/datagrid/controls/display_selector.js +1 -2
  29. package/es/components/datagrid/controls/fullscreen_selector.js +1 -2
  30. package/es/components/datagrid/controls/keyboard_shortcuts.js +1 -2
  31. package/es/components/datagrid/utils/in_memory.js +23 -17
  32. package/es/components/filter_group/filter_group.a11y.js +8 -2
  33. package/es/components/filter_group/filter_select_item.js +36 -17
  34. package/es/components/flyout/flyout_menu.js +1 -4
  35. package/es/components/form/checkbox/checkbox.js +6 -6
  36. package/es/components/form/checkbox/checkbox.styles.js +1 -22
  37. package/es/components/form/checkbox/checkbox_control.js +78 -0
  38. package/es/components/form/checkbox/checkbox_control.styles.js +40 -0
  39. package/es/components/form/checkbox/index.js +1 -0
  40. package/es/components/form/form.styles.js +2 -1
  41. package/es/components/form/radio/radio.styles.js +1 -1
  42. package/es/components/form/super_select/super_select.js +118 -99
  43. package/es/components/form/super_select/super_select.styles.js +4 -8
  44. package/es/components/form/super_select/super_select_item.js +10 -18
  45. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -2
  46. package/es/components/link/external_link_icon.js +4 -2
  47. package/es/components/list_group/list_group.js +20 -34
  48. package/es/components/list_group/list_group.styles.js +2 -16
  49. package/es/components/list_group/list_group_item.js +75 -87
  50. package/es/components/list_group/list_group_item.styles.js +17 -61
  51. package/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
  52. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  53. package/es/components/list_item_layout/_list_item_layout.js +692 -0
  54. package/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
  55. package/es/components/list_item_layout/index.js +9 -0
  56. package/es/components/markdown_editor/markdown_editor.js +1 -1
  57. package/es/components/markdown_editor/markdown_editor_drop_zone.js +6 -3
  58. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  59. package/es/components/markdown_editor/markdown_editor_toolbar.js +14 -10
  60. package/es/components/portal/portal.js +72 -117
  61. package/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
  62. package/es/components/search_bar/filters/field_value_toggle_group_filter.js +42 -91
  63. package/es/components/selectable/selectable.js +1 -0
  64. package/es/components/selectable/selectable_list/selectable_list.js +52 -36
  65. package/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
  66. package/es/components/selectable/selectable_list/selectable_list_item.js +45 -152
  67. package/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
  68. package/es/components/selectable/selectable_search/selectable_search.js +4 -1
  69. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  70. package/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  71. package/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  72. package/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  73. package/es/components/table/table_header_cell.js +1 -2
  74. package/es/components/tool_tip/icon_tip.js +4 -8
  75. package/es/components/tool_tip/tool_tip.js +233 -261
  76. package/es/components/tool_tip/tool_tip.styles.js +10 -18
  77. package/es/components/tool_tip/tool_tip_anchor.js +3 -3
  78. package/es/components/tool_tip/tool_tip_manager.js +1 -0
  79. package/es/components/tool_tip/tool_tip_popover.js +7 -7
  80. package/es/global_styling/mixins/_helpers.js +32 -11
  81. package/es/test/rtl/component_helpers.d.ts +0 -3
  82. package/es/test/rtl/component_helpers.js +40 -62
  83. package/eui.d.ts +10463 -8188
  84. package/i18ntokens.json +2607 -2589
  85. package/lib/components/basic_table/basic_table.js +3 -6
  86. package/lib/components/basic_table/collapsed_item_actions.js +1 -3
  87. package/lib/components/basic_table/default_item_action.js +0 -1
  88. package/lib/components/basic_table/in_memory_table.js +3 -6
  89. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  90. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  91. package/lib/components/color_picker/color_picker_swatch.js +1 -2
  92. package/lib/components/combo_box/combo_box.a11y.js +5 -5
  93. package/lib/components/combo_box/combo_box.js +61 -53
  94. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
  95. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  96. package/lib/components/context_menu/context_menu.js +20 -22
  97. package/lib/components/context_menu/context_menu.styles.js +4 -1
  98. package/lib/components/context_menu/context_menu_item.js +70 -59
  99. package/lib/components/context_menu/context_menu_item.styles.js +13 -27
  100. package/lib/components/context_menu/context_menu_panel.js +37 -21
  101. package/lib/components/context_menu/context_menu_panel.styles.js +7 -2
  102. package/lib/components/context_menu/context_menu_panel_title.js +130 -0
  103. package/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
  104. package/lib/components/context_menu/index.js +8 -1
  105. package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -29
  106. package/lib/components/datagrid/body/data_grid_body.js +23 -17
  107. package/lib/components/datagrid/body/data_grid_body_custom.js +23 -17
  108. package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  109. package/lib/components/datagrid/body/header/column_actions.js +1 -2
  110. package/lib/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  111. package/lib/components/datagrid/controls/column_sorting.js +23 -17
  112. package/lib/components/datagrid/controls/display_selector.js +1 -2
  113. package/lib/components/datagrid/controls/fullscreen_selector.js +1 -2
  114. package/lib/components/datagrid/controls/keyboard_shortcuts.js +1 -2
  115. package/lib/components/datagrid/utils/in_memory.js +23 -17
  116. package/lib/components/filter_group/filter_group.a11y.js +8 -2
  117. package/lib/components/filter_group/filter_select_item.js +35 -16
  118. package/lib/components/flyout/flyout_menu.js +1 -4
  119. package/lib/components/form/checkbox/checkbox.js +6 -6
  120. package/lib/components/form/checkbox/checkbox.styles.js +1 -22
  121. package/lib/components/form/checkbox/checkbox_control.js +84 -0
  122. package/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
  123. package/lib/components/form/checkbox/index.js +7 -0
  124. package/lib/components/form/form.styles.js +2 -1
  125. package/lib/components/form/radio/radio.styles.js +1 -1
  126. package/lib/components/form/super_select/super_select.js +116 -97
  127. package/lib/components/form/super_select/super_select.styles.js +4 -8
  128. package/lib/components/form/super_select/super_select_item.js +13 -18
  129. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -2
  130. package/lib/components/link/external_link_icon.js +4 -2
  131. package/lib/components/list_group/list_group.js +21 -35
  132. package/lib/components/list_group/list_group.styles.js +2 -16
  133. package/lib/components/list_group/list_group_item.js +75 -87
  134. package/lib/components/list_group/list_group_item.styles.js +17 -61
  135. package/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
  136. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  137. package/lib/components/list_item_layout/_list_item_layout.js +699 -0
  138. package/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
  139. package/lib/components/list_item_layout/index.js +12 -0
  140. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  141. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +6 -3
  142. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  143. package/lib/components/markdown_editor/markdown_editor_toolbar.js +12 -10
  144. package/lib/components/portal/portal.js +73 -118
  145. package/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
  146. package/lib/components/search_bar/filters/field_value_toggle_group_filter.js +44 -93
  147. package/lib/components/selectable/selectable.js +1 -0
  148. package/lib/components/selectable/selectable_list/selectable_list.js +50 -34
  149. package/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  150. package/lib/components/selectable/selectable_list/selectable_list_item.js +44 -152
  151. package/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  152. package/lib/components/selectable/selectable_search/selectable_search.js +4 -1
  153. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  154. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  155. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  156. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  157. package/lib/components/table/table_header_cell.js +1 -2
  158. package/lib/components/tool_tip/icon_tip.js +4 -8
  159. package/lib/components/tool_tip/tool_tip.js +240 -266
  160. package/lib/components/tool_tip/tool_tip.styles.js +8 -16
  161. package/lib/components/tool_tip/tool_tip_anchor.js +2 -2
  162. package/lib/components/tool_tip/tool_tip_manager.js +1 -0
  163. package/lib/components/tool_tip/tool_tip_popover.js +6 -6
  164. package/lib/global_styling/mixins/_helpers.js +33 -12
  165. package/lib/test/rtl/component_helpers.d.ts +0 -3
  166. package/lib/test/rtl/component_helpers.js +41 -63
  167. package/optimize/es/components/basic_table/collapsed_item_actions.js +1 -3
  168. package/optimize/es/components/basic_table/default_item_action.js +0 -1
  169. package/optimize/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
  170. package/optimize/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  171. package/optimize/es/components/combo_box/combo_box.a11y.js +5 -5
  172. package/optimize/es/components/combo_box/combo_box.js +60 -52
  173. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -83
  174. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
  175. package/optimize/es/components/context_menu/context_menu.js +18 -13
  176. package/optimize/es/components/context_menu/context_menu.styles.js +5 -2
  177. package/optimize/es/components/context_menu/context_menu_item.js +55 -53
  178. package/optimize/es/components/context_menu/context_menu_item.styles.js +14 -28
  179. package/optimize/es/components/context_menu/context_menu_panel.js +36 -17
  180. package/optimize/es/components/context_menu/context_menu_panel.styles.js +7 -2
  181. package/optimize/es/components/context_menu/context_menu_panel_title.js +53 -0
  182. package/optimize/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
  183. package/optimize/es/components/context_menu/index.js +2 -1
  184. package/optimize/es/components/datagrid/body/header/column_actions.js +1 -2
  185. package/optimize/es/components/datagrid/controls/display_selector.js +1 -2
  186. package/optimize/es/components/datagrid/controls/fullscreen_selector.js +1 -2
  187. package/optimize/es/components/datagrid/controls/keyboard_shortcuts.js +1 -2
  188. package/optimize/es/components/filter_group/filter_group.a11y.js +8 -2
  189. package/optimize/es/components/filter_group/filter_select_item.js +36 -17
  190. package/optimize/es/components/flyout/flyout_menu.js +1 -4
  191. package/optimize/es/components/form/checkbox/checkbox.js +6 -6
  192. package/optimize/es/components/form/checkbox/checkbox.styles.js +1 -22
  193. package/optimize/es/components/form/checkbox/checkbox_control.js +48 -0
  194. package/optimize/es/components/form/checkbox/checkbox_control.styles.js +40 -0
  195. package/optimize/es/components/form/checkbox/index.js +1 -0
  196. package/optimize/es/components/form/form.styles.js +2 -1
  197. package/optimize/es/components/form/radio/radio.styles.js +1 -1
  198. package/optimize/es/components/form/super_select/super_select.js +118 -90
  199. package/optimize/es/components/form/super_select/super_select.styles.js +4 -8
  200. package/optimize/es/components/form/super_select/super_select_item.js +10 -14
  201. package/optimize/es/components/key_pad_menu/key_pad_menu_item.js +1 -2
  202. package/optimize/es/components/link/external_link_icon.js +4 -2
  203. package/optimize/es/components/list_group/list_group.js +7 -14
  204. package/optimize/es/components/list_group/list_group.styles.js +2 -16
  205. package/optimize/es/components/list_group/list_group_item.js +62 -80
  206. package/optimize/es/components/list_group/list_group_item.styles.js +17 -61
  207. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
  208. package/optimize/es/components/list_item_layout/_list_item_layout.js +353 -0
  209. package/optimize/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
  210. package/optimize/es/components/list_item_layout/index.js +9 -0
  211. package/optimize/es/components/markdown_editor/markdown_editor_drop_zone.js +5 -2
  212. package/optimize/es/components/markdown_editor/markdown_editor_toolbar.js +13 -9
  213. package/optimize/es/components/portal/portal.js +65 -91
  214. package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
  215. package/optimize/es/components/search_bar/filters/field_value_toggle_group_filter.js +43 -66
  216. package/optimize/es/components/selectable/selectable_list/selectable_list.js +48 -33
  217. package/optimize/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
  218. package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +41 -143
  219. package/optimize/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
  220. package/optimize/es/components/selectable/selectable_search/selectable_search.js +4 -1
  221. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  222. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  223. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  224. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  225. package/optimize/es/components/tool_tip/icon_tip.js +3 -5
  226. package/optimize/es/components/tool_tip/tool_tip.js +227 -250
  227. package/optimize/es/components/tool_tip/tool_tip.styles.js +10 -18
  228. package/optimize/es/components/tool_tip/tool_tip_anchor.js +3 -3
  229. package/optimize/es/components/tool_tip/tool_tip_manager.js +1 -0
  230. package/optimize/es/components/tool_tip/tool_tip_popover.js +7 -7
  231. package/optimize/es/global_styling/mixins/_helpers.js +32 -11
  232. package/optimize/es/test/rtl/component_helpers.d.ts +0 -3
  233. package/optimize/es/test/rtl/component_helpers.js +40 -62
  234. package/optimize/lib/components/basic_table/collapsed_item_actions.js +1 -3
  235. package/optimize/lib/components/basic_table/default_item_action.js +0 -1
  236. package/optimize/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
  237. package/optimize/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  238. package/optimize/lib/components/combo_box/combo_box.a11y.js +5 -5
  239. package/optimize/lib/components/combo_box/combo_box.js +60 -52
  240. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +143 -81
  241. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  242. package/optimize/lib/components/context_menu/context_menu.js +19 -14
  243. package/optimize/lib/components/context_menu/context_menu.styles.js +4 -1
  244. package/optimize/lib/components/context_menu/context_menu_item.js +56 -54
  245. package/optimize/lib/components/context_menu/context_menu_item.styles.js +13 -27
  246. package/optimize/lib/components/context_menu/context_menu_panel.js +36 -17
  247. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +7 -2
  248. package/optimize/lib/components/context_menu/context_menu_panel_title.js +59 -0
  249. package/optimize/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
  250. package/optimize/lib/components/context_menu/index.js +8 -1
  251. package/optimize/lib/components/datagrid/body/header/column_actions.js +1 -2
  252. package/optimize/lib/components/datagrid/controls/display_selector.js +1 -2
  253. package/optimize/lib/components/datagrid/controls/fullscreen_selector.js +1 -2
  254. package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.js +1 -2
  255. package/optimize/lib/components/filter_group/filter_group.a11y.js +8 -2
  256. package/optimize/lib/components/filter_group/filter_select_item.js +35 -16
  257. package/optimize/lib/components/flyout/flyout_menu.js +1 -4
  258. package/optimize/lib/components/form/checkbox/checkbox.js +6 -6
  259. package/optimize/lib/components/form/checkbox/checkbox.styles.js +1 -22
  260. package/optimize/lib/components/form/checkbox/checkbox_control.js +54 -0
  261. package/optimize/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
  262. package/optimize/lib/components/form/checkbox/index.js +7 -0
  263. package/optimize/lib/components/form/form.styles.js +2 -1
  264. package/optimize/lib/components/form/radio/radio.styles.js +1 -1
  265. package/optimize/lib/components/form/super_select/super_select.js +116 -88
  266. package/optimize/lib/components/form/super_select/super_select.styles.js +4 -8
  267. package/optimize/lib/components/form/super_select/super_select_item.js +13 -14
  268. package/optimize/lib/components/key_pad_menu/key_pad_menu_item.js +1 -2
  269. package/optimize/lib/components/link/external_link_icon.js +4 -2
  270. package/optimize/lib/components/list_group/list_group.js +8 -15
  271. package/optimize/lib/components/list_group/list_group.styles.js +2 -16
  272. package/optimize/lib/components/list_group/list_group_item.js +62 -80
  273. package/optimize/lib/components/list_group/list_group_item.styles.js +17 -61
  274. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
  275. package/optimize/lib/components/list_item_layout/_list_item_layout.js +361 -0
  276. package/optimize/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
  277. package/optimize/lib/components/list_item_layout/index.js +12 -0
  278. package/optimize/lib/components/markdown_editor/markdown_editor_drop_zone.js +5 -2
  279. package/optimize/lib/components/markdown_editor/markdown_editor_toolbar.js +13 -9
  280. package/optimize/lib/components/portal/portal.js +68 -93
  281. package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
  282. package/optimize/lib/components/search_bar/filters/field_value_toggle_group_filter.js +45 -69
  283. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +46 -31
  284. package/optimize/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  285. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +41 -143
  286. package/optimize/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  287. package/optimize/lib/components/selectable/selectable_search/selectable_search.js +4 -1
  288. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  289. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  290. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  291. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  292. package/optimize/lib/components/tool_tip/icon_tip.js +3 -5
  293. package/optimize/lib/components/tool_tip/tool_tip.js +229 -251
  294. package/optimize/lib/components/tool_tip/tool_tip.styles.js +8 -16
  295. package/optimize/lib/components/tool_tip/tool_tip_anchor.js +2 -2
  296. package/optimize/lib/components/tool_tip/tool_tip_manager.js +1 -0
  297. package/optimize/lib/components/tool_tip/tool_tip_popover.js +6 -6
  298. package/optimize/lib/global_styling/mixins/_helpers.js +33 -12
  299. package/optimize/lib/test/rtl/component_helpers.d.ts +0 -3
  300. package/optimize/lib/test/rtl/component_helpers.js +41 -63
  301. package/package.json +5 -13
  302. package/test-env/components/basic_table/basic_table.js +3 -6
  303. package/test-env/components/basic_table/collapsed_item_actions.js +1 -3
  304. package/test-env/components/basic_table/default_item_action.js +0 -1
  305. package/test-env/components/basic_table/in_memory_table.js +3 -6
  306. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  307. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  308. package/test-env/components/color_picker/color_picker_swatch.js +1 -2
  309. package/test-env/components/combo_box/combo_box.a11y.js +5 -5
  310. package/test-env/components/combo_box/combo_box.js +61 -53
  311. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
  312. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  313. package/test-env/components/context_menu/context_menu.js +20 -22
  314. package/test-env/components/context_menu/context_menu.styles.js +4 -1
  315. package/test-env/components/context_menu/context_menu_item.js +67 -59
  316. package/test-env/components/context_menu/context_menu_item.styles.js +13 -27
  317. package/test-env/components/context_menu/context_menu_panel.js +37 -21
  318. package/test-env/components/context_menu/context_menu_panel.styles.js +7 -2
  319. package/test-env/components/context_menu/context_menu_panel_title.js +129 -0
  320. package/test-env/components/context_menu/context_menu_panel_title.styles.js +26 -0
  321. package/test-env/components/context_menu/index.js +8 -1
  322. package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -29
  323. package/test-env/components/datagrid/body/data_grid_body.js +23 -17
  324. package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -17
  325. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  326. package/test-env/components/datagrid/body/header/column_actions.js +1 -2
  327. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  328. package/test-env/components/datagrid/controls/column_sorting.js +23 -17
  329. package/test-env/components/datagrid/controls/display_selector.js +1 -2
  330. package/test-env/components/datagrid/controls/fullscreen_selector.js +1 -2
  331. package/test-env/components/datagrid/controls/keyboard_shortcuts.js +1 -2
  332. package/test-env/components/datagrid/utils/in_memory.js +23 -17
  333. package/test-env/components/filter_group/filter_group.a11y.js +8 -2
  334. package/test-env/components/filter_group/filter_select_item.js +35 -16
  335. package/test-env/components/flyout/flyout_menu.js +1 -4
  336. package/test-env/components/form/checkbox/checkbox.js +6 -6
  337. package/test-env/components/form/checkbox/checkbox.styles.js +1 -22
  338. package/test-env/components/form/checkbox/checkbox_control.js +83 -0
  339. package/test-env/components/form/checkbox/checkbox_control.styles.js +44 -0
  340. package/test-env/components/form/checkbox/index.js +7 -0
  341. package/test-env/components/form/form.styles.js +2 -1
  342. package/test-env/components/form/radio/radio.styles.js +1 -1
  343. package/test-env/components/form/super_select/super_select.js +116 -97
  344. package/test-env/components/form/super_select/super_select.styles.js +4 -8
  345. package/test-env/components/form/super_select/super_select_item.js +13 -18
  346. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -2
  347. package/test-env/components/link/external_link_icon.js +4 -2
  348. package/test-env/components/list_group/list_group.js +21 -35
  349. package/test-env/components/list_group/list_group.styles.js +2 -16
  350. package/test-env/components/list_group/list_group_item.js +75 -87
  351. package/test-env/components/list_group/list_group_item.styles.js +17 -61
  352. package/test-env/components/list_group/list_group_item_extra_action.styles.js +5 -5
  353. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  354. package/test-env/components/list_item_layout/_list_item_layout.js +691 -0
  355. package/test-env/components/list_item_layout/_list_item_layout.styles.js +97 -0
  356. package/test-env/components/list_item_layout/index.js +12 -0
  357. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  358. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +6 -3
  359. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  360. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +14 -10
  361. package/test-env/components/portal/portal.js +70 -113
  362. package/test-env/components/search_bar/filters/field_value_selection_filter.js +2 -1
  363. package/test-env/components/search_bar/filters/field_value_toggle_group_filter.js +44 -88
  364. package/test-env/components/selectable/selectable.js +1 -0
  365. package/test-env/components/selectable/selectable_list/selectable_list.js +50 -34
  366. package/test-env/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  367. package/test-env/components/selectable/selectable_list/selectable_list_item.js +42 -147
  368. package/test-env/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  369. package/test-env/components/selectable/selectable_search/selectable_search.js +4 -1
  370. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  371. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  372. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  373. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  374. package/test-env/components/table/table_header_cell.js +1 -2
  375. package/test-env/components/tool_tip/icon_tip.js +4 -8
  376. package/test-env/components/tool_tip/tool_tip.js +230 -256
  377. package/test-env/components/tool_tip/tool_tip.styles.js +8 -16
  378. package/test-env/components/tool_tip/tool_tip_anchor.js +2 -2
  379. package/test-env/components/tool_tip/tool_tip_manager.js +1 -0
  380. package/test-env/components/tool_tip/tool_tip_popover.js +6 -6
  381. package/test-env/global_styling/mixins/_helpers.js +33 -12
  382. package/test-env/test/rtl/component_helpers.js +41 -63
  383. package/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
  384. package/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
  385. package/optimize/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
  386. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
  387. package/test-env/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
@@ -1,6 +1,9 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "className", "hasPanel", "icon", "buttonRef", "disabled", "layoutAlign", "toolTipContent", "toolTipProps", "href", "target", "rel", "size", "color"];
4
+ var _excluded = ["children", "className", "hasPanel", "icon", "buttonRef", "disabled", "layoutAlign", "toolTipContent", "toolTipProps", "href", "target", "rel", "color", "external"];
5
+ 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; }
6
+ 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) { _defineProperty(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; }
4
7
  /*
5
8
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
9
  * or more contributor license agreements. Licensed under the Elastic License
@@ -15,10 +18,9 @@ import { useEuiMemoizedStyles, getSecureRelForTarget, cloneElementWithCss } from
15
18
  import { validateHref } from '../../services/security/href_validator';
16
19
  import { keysOf } from '../common';
17
20
  import { EuiIcon } from '../icon';
18
- import { EuiToolTip } from '../tool_tip';
19
21
  import { euiContextMenuItemStyles } from './context_menu_item.styles';
22
+ import { EuiListItemLayout } from '../list_item_layout';
20
23
  import { jsx as ___EmotionJSX } from "@emotion/react";
21
- export var SIZES = ['s', 'm'];
22
24
  var layoutAlignToClassNames = {
23
25
  center: null,
24
26
  top: 'euiContextMenu__itemLayout--top',
@@ -39,15 +41,17 @@ export var EuiContextMenuItem = function EuiContextMenuItem(_ref) {
39
41
  href = _ref.href,
40
42
  target = _ref.target,
41
43
  rel = _ref.rel,
42
- _ref$size = _ref.size,
43
- size = _ref$size === void 0 ? 'm' : _ref$size,
44
- color = _ref.color,
44
+ _ref$color = _ref.color,
45
+ color = _ref$color === void 0 ? 'text' : _ref$color,
46
+ external = _ref.external,
45
47
  rest = _objectWithoutProperties(_ref, _excluded);
46
48
  var isHrefValid = !href || validateHref(href);
47
49
  var disabled = _disabled || !isHrefValid;
48
50
  var classes = classNames('euiContextMenuItem', className);
51
+ var anchorClasses = classNames('eui-displayBlock', toolTipProps === null || toolTipProps === void 0 ? void 0 : toolTipProps.anchorClassName);
49
52
  var styles = useEuiMemoizedStyles(euiContextMenuItemStyles);
50
- var cssStyles = [styles.euiContextMenuItem, styles.sizes[size], styles.layoutAlign[layoutAlign], disabled && styles.disabled, !disabled && color && styles.colors[color]];
53
+ var cssStyles = [styles.euiContextMenuItem, styles.layoutAlign[layoutAlign], !disabled && color !== 'text' && styles.colors[color]];
54
+ var textStyles = [styles.text.euiContextMenuItem__text];
51
55
  var iconInstance = icon && (typeof icon === 'string' ? ___EmotionJSX(EuiIcon, {
52
56
  type: icon,
53
57
  size: "m",
@@ -65,52 +69,50 @@ export var EuiContextMenuItem = function EuiContextMenuItem(_ref) {
65
69
  className: "euiContextMenu__arrow",
66
70
  css: styles.euiContextMenuItem__arrow
67
71
  });
68
- var textStyles = [styles.text.euiContextMenuItem__text, size === 's' && styles.text.s];
69
- var buttonContent = ___EmotionJSX(React.Fragment, null, iconInstance, ___EmotionJSX("span", {
70
- className: "euiContextMenuItem__text",
71
- css: textStyles
72
- }, children), arrow);
73
- var button;
74
- // <a> elements don't respect the `disabled` attribute. So if we're disabled, we'll just pretend
75
- // this is a button and piggyback off its disabled styles.
76
- if (href && !disabled) {
77
- var secureRel = getSecureRelForTarget({
78
- href: href,
79
- target: target,
80
- rel: rel
81
- });
82
- button = ___EmotionJSX("a", _extends({
83
- css: cssStyles,
84
- className: classes,
85
- href: href,
86
- target: target,
87
- rel: secureRel,
88
- ref: buttonRef
89
- }, rest), buttonContent);
90
- } else if (href || rest.onClick || toolTipContent) {
91
- button = ___EmotionJSX("button", _extends({
92
- disabled: disabled,
93
- css: cssStyles,
94
- className: classes,
95
- type: "button",
96
- ref: buttonRef
97
- }, rest), buttonContent);
98
- } else {
99
- button = ___EmotionJSX("div", _extends({
100
- css: cssStyles,
101
- className: classes,
102
- ref: buttonRef
103
- }, rest), buttonContent);
104
- }
105
- if (toolTipContent) {
106
- var anchorClasses = classNames('eui-displayBlock', toolTipProps === null || toolTipProps === void 0 ? void 0 : toolTipProps.anchorClassName);
107
- return ___EmotionJSX(EuiToolTip, _extends({
108
- position: "right"
109
- }, toolTipProps, {
72
+ var isLink = href && !disabled;
73
+ var isButton = !isLink && (href || rest.onClick || toolTipContent);
74
+ var commonProps = {
75
+ css: cssStyles,
76
+ className: classes
77
+ };
78
+ var buttonProps = isButton ? _objectSpread({
79
+ element: 'button',
80
+ type: 'button',
81
+ ref: buttonRef
82
+ }, rest) : {};
83
+ var secureRel = isLink ? getSecureRelForTarget({
84
+ href: href,
85
+ target: target,
86
+ rel: rel
87
+ }) : undefined;
88
+ var linkProps = isLink ? _objectSpread({
89
+ element: 'a',
90
+ href: href,
91
+ target: target,
92
+ rel: secureRel,
93
+ ref: buttonRef,
94
+ external: external
95
+ }, rest) : {};
96
+ var divProps = !isButton && !isLink ? _objectSpread({
97
+ element: 'div',
98
+ ref: buttonRef
99
+ }, rest) : {};
100
+ var props = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, commonProps), divProps), buttonProps), linkProps);
101
+ return ___EmotionJSX(EuiListItemLayout, _extends({}, props, {
102
+ role: props.role,
103
+ showIndicator: false,
104
+ prepend: iconInstance,
105
+ append: arrow,
106
+ textWrap: "wrap",
107
+ isDisabled: disabled,
108
+ textProps: {
109
+ className: 'euiContextMenuItem__text',
110
+ css: textStyles
111
+ },
112
+ tooltipProps: toolTipContent ? _objectSpread(_objectSpread({}, toolTipProps), {}, {
113
+ position: 'right',
110
114
  anchorClassName: anchorClasses,
111
115
  content: toolTipContent
112
- }), button);
113
- } else {
114
- return button;
115
- }
116
+ }) : undefined
117
+ }), children);
116
118
  };
@@ -8,7 +8,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
8
8
  */
9
9
 
10
10
  import { css } from '@emotion/react';
11
- import { logicalCSS, logicalTextAlignCSS, euiFontSize, EXTENDED_BUTTON_COLORS, euiButtonEmptyColor } from '../../global_styling';
11
+ import { logicalCSS, euiButtonEmptyColor, EXTENDED_BUTTON_COLORS } from '../../global_styling';
12
12
  var _ref = process.env.NODE_ENV === "production" ? {
13
13
  name: "4ak4s8-euiContextMenuItem__arrow",
14
14
  styles: "align-self:flex-end;label:euiContextMenuItem__arrow;"
@@ -34,48 +34,34 @@ var _ref3 = process.env.NODE_ENV === "production" ? {
34
34
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
35
35
  };
36
36
  var _ref4 = process.env.NODE_ENV === "production" ? {
37
- name: "1msaet2-bottom",
38
- styles: "align-items:flex-end;label:bottom;"
37
+ name: "flyqrm-center",
38
+ styles: ".euiListItemLayout__prepend{align-self:center;};label:center;"
39
39
  } : {
40
- name: "1msaet2-bottom",
41
- styles: "align-items:flex-end;label:bottom;",
40
+ name: "flyqrm-center",
41
+ styles: ".euiListItemLayout__prepend{align-self:center;};label:center;",
42
42
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
43
43
  };
44
44
  var _ref5 = process.env.NODE_ENV === "production" ? {
45
- name: "1gnwbvd-top",
46
- styles: "align-items:flex-start;label:top;"
45
+ name: "1qfbla9-euiContextMenuItem",
46
+ styles: "display:flex;label:euiContextMenuItem;"
47
47
  } : {
48
- name: "1gnwbvd-top",
49
- styles: "align-items:flex-start;label:top;",
50
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
51
- };
52
- var _ref6 = process.env.NODE_ENV === "production" ? {
53
- name: "8391db-center",
54
- styles: "align-items:center;label:center;"
55
- } : {
56
- name: "8391db-center",
57
- styles: "align-items:center;label:center;",
48
+ name: "1qfbla9-euiContextMenuItem",
49
+ styles: "display:flex;label:euiContextMenuItem;",
58
50
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
59
51
  };
60
52
  export var euiContextMenuItemStyles = function euiContextMenuItemStyles(euiThemeContext) {
61
53
  var euiTheme = euiThemeContext.euiTheme;
62
54
  return {
63
- euiContextMenuItem: /*#__PURE__*/css("display:flex;gap:", euiTheme.size.s, ";", logicalCSS('width', '100%'), " ", logicalTextAlignCSS('left'), " color:", euiTheme.colors.textParagraph, ";outline-offset:-", euiTheme.focus.width, ";&:where(a, button):not(:disabled){&:hover,&:focus{text-decoration:underline;}&:focus{background-color:", euiTheme.focus.backgroundColor, ";}};label:euiContextMenuItem;"),
64
- disabled: /*#__PURE__*/css("color:", euiTheme.colors.textDisabled, ";cursor:default;;label:disabled;"),
55
+ euiContextMenuItem: _ref5,
65
56
  layoutAlign: {
66
- center: _ref6,
67
- top: _ref5,
68
- bottom: _ref4
69
- },
70
- sizes: {
71
- m: /*#__PURE__*/css("padding:", euiTheme.size.m, ";;label:m;"),
72
- s: /*#__PURE__*/css("padding:", euiTheme.size.s, ";;label:s;")
57
+ center: _ref4,
58
+ top: /*#__PURE__*/css(".euiListItemLayout__prepend{align-self:flex-start;", logicalCSS('margin-top', euiTheme.size.s), ";};label:top;"),
59
+ bottom: /*#__PURE__*/css(".euiListItemLayout__prepend{align-self:flex-end;", logicalCSS('margin-bottom', euiTheme.size.s), ";};label:bottom;")
73
60
  },
74
61
  // Children
75
62
  euiContextMenu__icon: _ref3,
76
63
  text: {
77
- euiContextMenuItem__text: _ref2,
78
- s: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";;label:s;")
64
+ euiContextMenuItem__text: _ref2
79
65
  },
80
66
  euiContextMenuItem__arrow: _ref,
81
67
  // Colors - maps button color names to text color overrides
@@ -6,7 +6,7 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstruct
6
6
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
7
  import _inherits from "@babel/runtime/helpers/inherits";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- var _excluded = ["stylesMemoizer", "children", "className", "onClose", "title", "onHeightChange", "transitionType", "transitionDirection", "onTransitionComplete", "onUseKeyboardToNavigate", "items", "initialFocusedItemIndex", "showNextPanel", "showPreviousPanel", "size"];
9
+ var _excluded = ["stylesMemoizer", "children", "className", "onClose", "title", "onHeightChange", "transitionType", "transitionDirection", "onTransitionComplete", "onUseKeyboardToNavigate", "items", "initialFocusedItemIndex", "showNextPanel", "showPreviousPanel"];
10
10
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
11
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
12
12
  /*
@@ -20,12 +20,12 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
20
20
  import React, { cloneElement, Component } from 'react';
21
21
  import classNames from 'classnames';
22
22
  import { tabbable } from 'tabbable';
23
- import { withEuiStylesMemoizer, keys } from '../../services';
23
+ import { withEuiStylesMemoizer, keys, htmlIdGenerator } from '../../services';
24
24
  import { EuiResizeObserver } from '../observer/resize_observer';
25
25
  import { EuiContextMenuItem } from './context_menu_item';
26
26
  import { euiContextMenuPanelStyles } from './context_menu_panel.styles';
27
+ import { EuiContextMenuPanelTitle } from './context_menu_panel_title';
27
28
  import { jsx as ___EmotionJSX } from "@emotion/react";
28
- export var SIZES = ['s', 'm'];
29
29
  export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
30
30
  function EuiContextMenuPanelClass(props) {
31
31
  var _this;
@@ -71,6 +71,20 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
71
71
  });
72
72
  (_this$state$menuItems = _this.state.menuItems[nextFocusedItemIndex]) === null || _this$state$menuItems === void 0 || _this$state$menuItems.focus();
73
73
  });
74
+ /* Ensures that on initial focus of a menuitem the index is updated.
75
+ Otherwise `focusMenuItem()`is not initialized when pressing a key as `onKeyDown`
76
+ only fires on key press after the focus moved into the component */
77
+ _defineProperty(_this, "setInitialFocusedItemIndex", function (event) {
78
+ var _this$props$items2;
79
+ if (!((_this$props$items2 = _this.props.items) !== null && _this$props$items2 !== void 0 && _this$props$items2.length) || !_this.state.menuItems.length || _this.state.focusedItemIndex !== undefined) return;
80
+ var target = event.target;
81
+ var currentIndex = _this.state.menuItems.indexOf(target);
82
+ if (currentIndex >= 0) {
83
+ _this.setState({
84
+ focusedItemIndex: currentIndex
85
+ });
86
+ }
87
+ });
74
88
  _defineProperty(_this, "onKeyDown", function (event) {
75
89
  // If this panel contains items you can use the left arrow key to go back at any time.
76
90
  // But if it doesn't contain items, then you have to focus on the back button specifically,
@@ -151,6 +165,7 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
151
165
  _this.getInitialPopoverParent();
152
166
  _this.findMenuItems();
153
167
  });
168
+ _defineProperty(_this, "rootId", htmlIdGenerator());
154
169
  _this.state = {
155
170
  prevProps: {
156
171
  items: _this.props.items
@@ -333,26 +348,26 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
333
348
  initialFocusedItemIndex = _this$props2.initialFocusedItemIndex,
334
349
  showNextPanel = _this$props2.showNextPanel,
335
350
  showPreviousPanel = _this$props2.showPreviousPanel,
336
- size = _this$props2.size,
337
351
  rest = _objectWithoutProperties(_this$props2, _excluded);
352
+ var titleId = this.rootId('euiContextMenuPanelTitle');
338
353
  var classes = classNames('euiContextMenuPanel', className);
339
354
  var styles = stylesMemoizer(euiContextMenuPanelStyles);
340
355
  var cssStyles = [styles.euiContextMenuPanel, transitionDirection && transitionType && styles[transitionDirection][transitionType]];
341
- var panelTitle = title && ___EmotionJSX(EuiContextMenuItem, {
342
- css: styles.euiContextMenuPanel__title,
356
+ var panelTitle = title && ___EmotionJSX(EuiContextMenuPanelTitle, {
357
+ title: title,
358
+ id: titleId,
343
359
  className: "euiContextMenuPanel__title",
344
- onClick: onClose,
360
+ onClose: onClose,
345
361
  buttonRef: function buttonRef(node) {
346
- if (onClose) _this3.backButton = node;
347
- },
348
- "data-test-subj": onClose ? 'contextMenuPanelTitleButton' : 'contextMenuPanelTitle',
349
- icon: onClose && 'chevronSingleLeft'
350
- }, title);
351
- var content = items && items.length ? items.map(function (MenuItem) {
352
- var cloneProps = {};
353
- if (size) {
354
- cloneProps.size = size;
362
+ _this3.backButton = node;
355
363
  }
364
+ });
365
+ var isMenu = !!(items && items.length);
366
+ var content = items && items.length ? items.map(function (MenuItem) {
367
+ var _MenuItem$props$role, _MenuItem$props;
368
+ var cloneProps = {
369
+ role: (_MenuItem$props$role = (_MenuItem$props = MenuItem.props) === null || _MenuItem$props === void 0 ? void 0 : _MenuItem$props.role) !== null && _MenuItem$props$role !== void 0 ? _MenuItem$props$role : 'menuitem'
370
+ };
356
371
  return MenuItem.type === EuiContextMenuItem ? /*#__PURE__*/cloneElement(MenuItem, cloneProps) : MenuItem;
357
372
  }) : children;
358
373
  return ___EmotionJSX("div", _extends({
@@ -368,7 +383,11 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
368
383
  }
369
384
  }, function (resizeRef) {
370
385
  return ___EmotionJSX("div", {
371
- ref: resizeRef
386
+ ref: resizeRef,
387
+ role: isMenu ? 'menu' : undefined,
388
+ className: "euiContextMenuPanel__list",
389
+ "aria-labelledby": title ? titleId : undefined,
390
+ onFocus: _this3.setInitialFocusedItemIndex
372
391
  }, content);
373
392
  }));
374
393
  }
@@ -11,11 +11,15 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
11
11
  import { css, keyframes } from '@emotion/react';
12
12
  import { logicalCSS, euiCantAnimate } from '../../global_styling';
13
13
  import { euiTitle } from '../title/title.styles';
14
+ import { euiListItemVariables } from '../list_item_layout/_list_item_layout.styles';
14
15
  import { euiContextMenuVariables } from './context_menu.styles';
15
16
  export var euiContextMenuPanelStyles = function euiContextMenuPanelStyles(euiThemeContext) {
16
17
  var euiTheme = euiThemeContext.euiTheme;
17
18
  var _euiContextMenuVariab = euiContextMenuVariables(euiThemeContext),
18
19
  panelWidth = _euiContextMenuVariab.panelWidth;
20
+ var _euiListItemVariables = euiListItemVariables(euiThemeContext),
21
+ spacing = _euiListItemVariables.spacing,
22
+ textPadding = _euiListItemVariables.textPadding;
19
23
  var animations = {
20
24
  transitioning: /*#__PURE__*/css("pointer-events:none;animation-fill-mode:forwards;animation-duration:", euiTheme.animation.normal, ";animation-timing-function:", euiTheme.animation.resistance, ";", euiCantAnimate, "{animation-duration:0s;};label:transitioning;"),
21
25
  inLeft: keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% { transform: translateX(", "); }\n 100% { transform: translateX(0); }\n "])), panelWidth),
@@ -24,7 +28,7 @@ export var euiContextMenuPanelStyles = function euiContextMenuPanelStyles(euiThe
24
28
  outRight: keyframes(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n 0% { transform: translateX(0); }\n 100% { transform: translateX(", "); }\n "])), panelWidth)
25
29
  };
26
30
  return {
27
- euiContextMenuPanel: /*#__PURE__*/css(logicalCSS('width', '100%'), " visibility:visible;outline-offset:-", euiTheme.focus.width, ";&:focus{outline:none;};label:euiContextMenuPanel;"),
31
+ euiContextMenuPanel: /*#__PURE__*/css(logicalCSS('width', '100%'), " padding:", euiTheme.size.s, ";visibility:visible;outline-offset:-", euiTheme.focus.width, ";&:focus{outline:none;};label:euiContextMenuPanel;"),
28
32
  // Panel animations
29
33
  next: {
30
34
  in: /*#__PURE__*/css(animations.transitioning, " animation-name:", animations.inLeft, ";;label:in;"),
@@ -35,6 +39,7 @@ export var euiContextMenuPanelStyles = function euiContextMenuPanelStyles(euiThe
35
39
  out: /*#__PURE__*/css(animations.transitioning, " animation-name:", animations.outRight, ";;label:out;")
36
40
  },
37
41
  // Children
38
- euiContextMenuPanel__title: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), " ", logicalCSS('border-bottom', euiTheme.border.thin), " &:enabled:focus{background-color:unset;};label:euiContextMenuPanel__title;")
42
+ euiContextMenuPanel__title: /*#__PURE__*/css("display:flex;align-items:center;gap:", spacing.horizontal, ";", euiTitle(euiThemeContext, 'xxs'), " ", logicalCSS('padding-horizontal', spacing.horizontal), ";;label:euiContextMenuPanel__title;"),
43
+ euiContextMenuPanel__label: /*#__PURE__*/css("flex-grow:1;overflow:hidden;", logicalCSS('padding-horizontal', textPadding.horizontal), " ", logicalCSS('padding-vertical', textPadding.vertical), ";;label:euiContextMenuPanel__label;")
39
44
  };
40
45
  };
@@ -0,0 +1,53 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["component", "id", "title", "buttonRef", "className", "onClose", "buttonProps"];
4
+ /*
5
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
+ * or more contributor license agreements. Licensed under the Elastic License
7
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
8
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
9
+ * Side Public License, v 1.
10
+ */
11
+
12
+ import React from 'react';
13
+ import classNames from 'classnames';
14
+ import { useEuiMemoizedStyles } from '../../services';
15
+ import { EuiButtonIcon } from '../button';
16
+ import { useEuiI18n } from '../i18n';
17
+ import { euiContextMenuPanelTitleStyles } from './context_menu_panel_title.styles';
18
+ import { jsx as ___EmotionJSX } from "@emotion/react";
19
+ export var EuiContextMenuPanelTitle = function EuiContextMenuPanelTitle(props) {
20
+ var _props$component = props.component,
21
+ Component = _props$component === void 0 ? 'h2' : _props$component,
22
+ id = props.id,
23
+ title = props.title,
24
+ buttonRef = props.buttonRef,
25
+ className = props.className,
26
+ onClose = props.onClose,
27
+ buttonProps = props.buttonProps,
28
+ rest = _objectWithoutProperties(props, _excluded);
29
+ var classes = classNames('euiContextMenuPanelTitle', className);
30
+ var styles = useEuiMemoizedStyles(euiContextMenuPanelTitleStyles);
31
+ var closeButtonId = "".concat(id, "-closeButton");
32
+ var buttonAriaLabel = useEuiI18n('euiContextMenuPanelTitle.ariaLabel', 'Close current panel:');
33
+ return ___EmotionJSX("div", _extends({
34
+ className: classes,
35
+ css: styles.euiContextMenuPanelTitle,
36
+ "data-test-subj": "contextMenuPanelTitle"
37
+ }, rest), onClose && ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiButtonIcon, _extends({
38
+ buttonRef: buttonRef,
39
+ color: "text",
40
+ iconType: "chevronSingleLeft",
41
+ onClick: onClose,
42
+ "data-test-subj": "contextMenuPanelTitleButton",
43
+ id: closeButtonId,
44
+ "aria-label": buttonAriaLabel
45
+ // Uses aria-labelledby to combine aria-label with the panel title for screen readers.
46
+ ,
47
+ "aria-labelledby": "".concat(closeButtonId, " ").concat(id)
48
+ }, buttonProps))), ___EmotionJSX(Component, {
49
+ className: "euiContextMenuPanelTitle__text",
50
+ css: styles.text,
51
+ id: id
52
+ }, title));
53
+ };
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import { css } from '@emotion/react';
10
+ import { logicalCSS } from '../../global_styling';
11
+ import { euiTitle } from '../title/title.styles';
12
+ import { euiListItemVariables } from '../list_item_layout/_list_item_layout.styles';
13
+ export var euiContextMenuPanelTitleStyles = function euiContextMenuPanelTitleStyles(euiThemeContext) {
14
+ var _euiListItemVariables = euiListItemVariables(euiThemeContext),
15
+ textPadding = _euiListItemVariables.textPadding;
16
+ return {
17
+ euiContextMenuPanelTitle: /*#__PURE__*/css("display:flex;align-items:center;", logicalCSS('padding-horizontal', textPadding.horizontal), " ", euiTitle(euiThemeContext, 'xxs'), ";;label:euiContextMenuPanelTitle;"),
18
+ text: /*#__PURE__*/css("flex-grow:1;overflow:hidden;", logicalCSS('padding-vertical', textPadding.vertical), " ", logicalCSS('padding-horizontal', textPadding.horizontal), ";;label:text;")
19
+ };
20
+ };
@@ -8,4 +8,5 @@
8
8
 
9
9
  export { EuiContextMenu } from './context_menu';
10
10
  export { EuiContextMenuPanel } from './context_menu_panel';
11
- export { EuiContextMenuItem } from './context_menu_item';
11
+ export { EuiContextMenuItem } from './context_menu_item';
12
+ export { EuiContextMenuPanelTitle } from './context_menu_panel_title';
@@ -127,7 +127,7 @@ export var ColumnActions = /*#__PURE__*/memo(function (_ref) {
127
127
  var styles = useEuiMemoizedStyles(euiDataGridHeaderCellStyles);
128
128
  return ___EmotionJSX(EuiPopover, _extends({
129
129
  display: "block",
130
- panelPaddingSize: "none",
130
+ panelPaddingSize: "s",
131
131
  offset: 7,
132
132
  anchorPosition: "downRight",
133
133
  css: styles.euiDataGridHeaderCell__popover,
@@ -146,7 +146,6 @@ export var ColumnActions = /*#__PURE__*/memo(function (_ref) {
146
146
  closePopover: closePopover
147
147
  }, popoverArrowNavigationProps), ___EmotionJSX(EuiListGroup, {
148
148
  listItems: columnActions,
149
- gutterSize: "none",
150
149
  "data-test-subj": "dataGridHeaderCellActionGroup-".concat(id)
151
150
  }));
152
151
  });
@@ -353,8 +353,7 @@ export var useDataGridDisplaySelector = function useDataGridDisplaySelector(show
353
353
  },
354
354
  panelClassName: "euiDataGrid__displayPopoverPanel",
355
355
  button: ___EmotionJSX(EuiToolTip, {
356
- content: buttonLabel,
357
- delay: "long"
356
+ content: buttonLabel
358
357
  }, ___EmotionJSX(EuiButtonIcon, {
359
358
  size: "xs",
360
359
  iconType: "controls",
@@ -32,8 +32,7 @@ export var useDataGridFullScreenSelector = function useDataGridFullScreenSelecto
32
32
  fullScreenButtonActive = _useEuiI18n2[1];
33
33
  var fullScreenSelector = useMemo(function () {
34
34
  return ___EmotionJSX(EuiToolTip, {
35
- content: isFullScreen ? ___EmotionJSX(React.Fragment, null, fullScreenButtonActive, " (", ___EmotionJSX("kbd", null, "esc"), ")") : fullScreenButton,
36
- delay: "long"
35
+ content: isFullScreen ? ___EmotionJSX(React.Fragment, null, fullScreenButtonActive, " (", ___EmotionJSX("kbd", null, "esc"), ")") : fullScreenButton
37
36
  }, ___EmotionJSX(EuiButtonIcon, {
38
37
  size: "xs",
39
38
  iconType: isFullScreen ? 'fullScreenExit' : 'fullScreen',
@@ -35,8 +35,7 @@ export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts(
35
35
  anchorPosition: "downRight",
36
36
  panelPaddingSize: "none",
37
37
  button: ___EmotionJSX(EuiToolTip, {
38
- content: title,
39
- delay: "long"
38
+ content: title
40
39
  }, ___EmotionJSX(EuiButtonIcon, {
41
40
  size: "xs",
42
41
  iconType: "keyboard",
@@ -233,10 +233,16 @@ describe('EuiFilterGroup multiselect example', function () {
233
233
  cy.realPress('Tab');
234
234
  cy.repeatRealPress('ArrowDown', 4);
235
235
  cy.realPress('Enter');
236
- cy.get('li[aria-selected="true"]').find('span.euiSelectableListItem__text').should('have.text', 'Dmitri Shostakovich. Checked option. To exclude this option, press Enter.');
236
+ cy.get('input[role="combobox"]').then(function ($input) {
237
+ var activeOptionId = $input.attr('aria-activedescendant');
238
+ cy.get("li[id=\"".concat(activeOptionId, "\"]")).find('span.euiSelectableListItem__text').should('have.text', 'Dmitri Shostakovich. Checked option. To exclude this option, press Enter.');
239
+ });
237
240
  cy.realPress('ArrowDown');
238
241
  cy.repeatRealPress('Enter');
239
- cy.get('li[aria-selected="true"]').find('span.euiSelectableListItem__text').should('have.text', 'Felix Mendelssohn-Bartholdy. Excluded option. To uncheck this option, press Enter.');
242
+ cy.get('input[role="combobox"]').then(function ($input) {
243
+ var activeOptionId = $input.attr('aria-activedescendant');
244
+ cy.get("li[id=\"".concat(activeOptionId, "\"]")).find('span.euiSelectableListItem__text').should('have.text', 'Felix Mendelssohn-Bartholdy. Excluded option. To uncheck this option, press Enter.');
245
+ });
240
246
  cy.checkAxe();
241
247
  });
242
248
  it('has zero violations when filtering by searchbox', function () {
@@ -19,7 +19,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
19
19
  * Side Public License, v 1.
20
20
  */
21
21
 
22
- import React, { Component, createRef } from 'react';
22
+ import React, { Component, createRef, isValidElement } from 'react';
23
23
  import classNames from 'classnames';
24
24
  import { withEuiTheme } from '../../services';
25
25
  import { EuiFlexGroup, EuiFlexItem } from '../flex';
@@ -87,6 +87,18 @@ export var EuiFilterSelectItemClass = /*#__PURE__*/function (_Component) {
87
87
  }
88
88
  _inherits(EuiFilterSelectItemClass, _Component);
89
89
  return _createClass(EuiFilterSelectItemClass, [{
90
+ key: "componentDidMount",
91
+ value: function componentDidMount() {
92
+ var _this$props2 = this.props,
93
+ isFocused = _this$props2.isFocused,
94
+ toolTipContent = _this$props2.toolTipContent,
95
+ disabled = _this$props2.disabled,
96
+ children = _this$props2.children;
97
+ if ( /*#__PURE__*/isValidElement(children) && !disabled && toolTipContent) {
98
+ this.toggleToolTip(isFocused !== null && isFocused !== void 0 ? isFocused : false);
99
+ }
100
+ }
101
+ }, {
90
102
  key: "componentDidUpdate",
91
103
  value: function componentDidUpdate(prevProps) {
92
104
  if (this.props.isFocused && !prevProps.isFocused) {
@@ -95,31 +107,39 @@ export var EuiFilterSelectItemClass = /*#__PURE__*/function (_Component) {
95
107
  block: 'nearest'
96
108
  });
97
109
  }
110
+ var _this$props3 = this.props,
111
+ isFocused = _this$props3.isFocused,
112
+ toolTipContent = _this$props3.toolTipContent,
113
+ disabled = _this$props3.disabled,
114
+ children = _this$props3.children;
115
+ if ( /*#__PURE__*/isValidElement(children) && !disabled && toolTipContent && isFocused !== prevProps.isFocused) {
116
+ this.toggleToolTip(isFocused !== null && isFocused !== void 0 ? isFocused : false);
117
+ }
98
118
  }
99
119
  }, {
100
120
  key: "render",
101
121
  value: function render() {
102
- var _this$props2 = this.props,
103
- theme = _this$props2.theme,
104
- children = _this$props2.children,
105
- className = _this$props2.className,
106
- disabled = _this$props2.disabled,
107
- checked = _this$props2.checked,
108
- isFocused = _this$props2.isFocused,
109
- showIcons = _this$props2.showIcons,
110
- toolTipContent = _this$props2.toolTipContent,
111
- toolTipProps = _this$props2.toolTipProps,
112
- style = _this$props2.style,
113
- truncateContent = _this$props2.truncateContent,
114
- forwardRef = _this$props2.forwardRef,
115
- rest = _objectWithoutProperties(_this$props2, _excluded);
122
+ var _this$props4 = this.props,
123
+ theme = _this$props4.theme,
124
+ children = _this$props4.children,
125
+ className = _this$props4.className,
126
+ disabled = _this$props4.disabled,
127
+ checked = _this$props4.checked,
128
+ isFocused = _this$props4.isFocused,
129
+ showIcons = _this$props4.showIcons,
130
+ toolTipContent = _this$props4.toolTipContent,
131
+ toolTipProps = _this$props4.toolTipProps,
132
+ style = _this$props4.style,
133
+ truncateContent = _this$props4.truncateContent,
134
+ forwardRef = _this$props4.forwardRef,
135
+ rest = _objectWithoutProperties(_this$props4, _excluded);
116
136
  var styles = euiFilterSelectItemStyles(theme);
117
137
  var cssStyles = [styles.euiFilterSelectItem, isFocused && styles.isFocused];
118
138
  var classes = classNames('euiFilterSelectItem', className);
119
139
  var hasToolTip =
120
140
  // we're using isValidElement here as EuiToolTipAnchor uses
121
141
  // cloneElement to enhance the element with required attributes
122
- /*#__PURE__*/React.isValidElement(children) && !disabled && toolTipContent;
142
+ /*#__PURE__*/isValidElement(children) && !disabled && toolTipContent;
123
143
  var anchorProps = undefined;
124
144
  if (hasToolTip) {
125
145
  var _toolTipProps$anchorP, _toolTipProps$anchorP2;
@@ -129,7 +149,6 @@ export var EuiFilterSelectItemClass = /*#__PURE__*/function (_Component) {
129
149
  }) : {
130
150
  style: style
131
151
  };
132
- this.toggleToolTip(isFocused !== null && isFocused !== void 0 ? isFocused : false);
133
152
  }
134
153
  var iconNode;
135
154
  if (showIcons) {
@@ -69,14 +69,11 @@ var HistoryPopover = function HistoryPopover(_ref) {
69
69
  },
70
70
  panelPaddingSize: "xs",
71
71
  anchorPosition: "downLeft"
72
- }, ___EmotionJSX(EuiListGroup, {
73
- gutterSize: "none"
74
- }, items.map(function (item, index) {
72
+ }, ___EmotionJSX(EuiListGroup, null, items.map(function (item, index) {
75
73
  return ___EmotionJSX(EuiListGroupItem, {
76
74
  key: "history-item-".concat(index),
77
75
  label: item.title,
78
76
  iconType: item.iconType,
79
- size: "s",
80
77
  onClick: function onClick() {
81
78
  item.onClick();
82
79
  setIsPopoverOpen(false);