@elastic/eui 91.0.0 → 91.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 (382) hide show
  1. package/dist/eui_theme_dark.css +191 -124
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +191 -124
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accordion/accordion.a11y.js +1 -3
  6. package/es/components/basic_table/action_types.js +5 -0
  7. package/es/components/basic_table/basic_table.a11y.js +1 -2
  8. package/es/components/basic_table/basic_table.js +8 -8
  9. package/es/components/basic_table/collapsed_item_actions.js +120 -249
  10. package/es/components/basic_table/custom_item_action.js +9 -95
  11. package/es/components/basic_table/default_item_action.js +23 -14
  12. package/es/components/basic_table/in_memory_table.a11y.js +13 -11
  13. package/es/components/basic_table/in_memory_table.js +8 -8
  14. package/es/components/breadcrumbs/breadcrumb.js +11 -7
  15. package/es/components/breadcrumbs/breadcrumb.styles.js +5 -0
  16. package/es/components/button/button_display/_button_display.js +5 -3
  17. package/es/components/button/button_display/_button_display_content.js +8 -4
  18. package/es/components/button/button_empty/button_empty.js +9 -7
  19. package/es/components/button/button_group/button_group.js +5 -3
  20. package/es/components/button/button_group/button_group_button.js +5 -3
  21. package/es/components/card/card.a11y.js +5 -18
  22. package/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  23. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  24. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  25. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -101
  26. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  27. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +67 -81
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -102
  31. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  32. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +7 -90
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  35. package/es/components/combo_box/combo_box.js +1 -1
  36. package/es/components/context_menu/context_menu_item.js +16 -8
  37. package/es/components/context_menu/context_menu_item.styles.js +1 -1
  38. package/es/components/datagrid/body/data_grid_body.js +16 -6
  39. package/es/components/datagrid/body/data_grid_body_custom.js +16 -6
  40. package/es/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  41. package/es/components/datagrid/body/data_grid_cell.js +67 -44
  42. package/es/components/datagrid/body/data_grid_cell_actions.js +12 -12
  43. package/es/components/datagrid/body/data_grid_cell_popover.js +43 -10
  44. package/es/components/datagrid/body/header/data_grid_header_cell.js +65 -34
  45. package/es/components/datagrid/body/header/data_grid_header_row.js +16 -6
  46. package/es/components/datagrid/controls/column_selector.js +19 -39
  47. package/es/components/datagrid/controls/column_sorting.js +18 -29
  48. package/es/components/datagrid/controls/data_grid_toolbar_control.js +154 -0
  49. package/es/components/datagrid/controls/display_selector.js +0 -1
  50. package/es/components/datagrid/controls/fullscreen_selector.js +2 -6
  51. package/es/components/datagrid/controls/index.js +2 -1
  52. package/es/components/datagrid/index.js +1 -1
  53. package/es/components/datagrid/utils/in_memory.js +16 -6
  54. package/es/components/datagrid/utils/row_heights.js +1 -1
  55. package/es/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  56. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  57. package/es/components/error_boundary/error_boundary.a11y.js +1 -1
  58. package/es/components/expression/expression.a11y.js +2 -4
  59. package/es/components/facet/facet_button.js +5 -3
  60. package/es/components/filter_group/filter_button.js +2 -2
  61. package/es/components/focus_trap/focus_trap.a11y.js +3 -3
  62. package/es/components/form/range/range.a11y.js +5 -10
  63. package/es/components/form/super_select/super_select.js +3 -2
  64. package/es/components/form/super_select/super_select_control.js +13 -20
  65. package/es/components/header/header.a11y.js +1 -1
  66. package/es/components/header/header_links/header_link.js +7 -5
  67. package/es/components/header/header_section/header_section_item_button.js +7 -5
  68. package/es/components/image/image.a11y.js +1 -2
  69. package/es/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  70. package/es/components/link/external_link_icon.js +51 -0
  71. package/es/components/link/link.js +6 -20
  72. package/es/components/link/link.styles.js +2 -5
  73. package/es/components/list_group/list_group.js +6 -1
  74. package/es/components/list_group/list_group_item.js +14 -4
  75. package/es/components/list_group/list_group_item.styles.js +2 -1
  76. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  77. package/es/components/notification/notification_event.a11y.js +1 -2
  78. package/es/components/notification/notification_event.js +7 -5
  79. package/es/components/pagination/pagination_button.js +7 -5
  80. package/es/components/popover/popover.js +4 -1
  81. package/es/components/resizable_container/resizable_container.a11y.js +4 -8
  82. package/es/components/search_bar/search_bar.a11y.js +3 -6
  83. package/es/components/selectable/selectable.js +16 -1
  84. package/es/components/selectable/selectable_list/selectable_list.js +227 -78
  85. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  86. package/es/components/text/text.styles.js +2 -2
  87. package/es/components/text_truncate/text_truncate.js +33 -10
  88. package/eui.d.ts +466 -136
  89. package/i18ntokens.json +224 -260
  90. package/lib/components/accordion/accordion.a11y.js +1 -3
  91. package/lib/components/basic_table/action_types.js +8 -2
  92. package/lib/components/basic_table/basic_table.a11y.js +1 -2
  93. package/lib/components/basic_table/basic_table.js +8 -8
  94. package/lib/components/basic_table/collapsed_item_actions.js +128 -257
  95. package/lib/components/basic_table/custom_item_action.js +18 -104
  96. package/lib/components/basic_table/default_item_action.js +23 -14
  97. package/lib/components/basic_table/in_memory_table.a11y.js +13 -11
  98. package/lib/components/basic_table/in_memory_table.js +8 -8
  99. package/lib/components/breadcrumbs/breadcrumb.js +11 -7
  100. package/lib/components/breadcrumbs/breadcrumb.styles.js +5 -0
  101. package/lib/components/button/button_display/_button_display.js +5 -3
  102. package/lib/components/button/button_display/_button_display_content.js +8 -4
  103. package/lib/components/button/button_empty/button_empty.js +9 -7
  104. package/lib/components/button/button_group/button_group.js +5 -3
  105. package/lib/components/button/button_group/button_group_button.js +5 -3
  106. package/lib/components/card/card.a11y.js +5 -18
  107. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  108. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  109. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  110. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -101
  111. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  112. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  113. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -80
  114. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  115. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -104
  116. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  117. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +7 -90
  118. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  119. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  120. package/lib/components/combo_box/combo_box.js +1 -1
  121. package/lib/components/context_menu/context_menu_item.js +16 -8
  122. package/lib/components/context_menu/context_menu_item.styles.js +1 -1
  123. package/lib/components/datagrid/body/data_grid_body.js +16 -6
  124. package/lib/components/datagrid/body/data_grid_body_custom.js +16 -6
  125. package/lib/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  126. package/lib/components/datagrid/body/data_grid_cell.js +67 -44
  127. package/lib/components/datagrid/body/data_grid_cell_actions.js +12 -13
  128. package/lib/components/datagrid/body/data_grid_cell_popover.js +43 -10
  129. package/lib/components/datagrid/body/header/data_grid_header_cell.js +65 -34
  130. package/lib/components/datagrid/body/header/data_grid_header_row.js +16 -6
  131. package/lib/components/datagrid/controls/column_selector.js +19 -39
  132. package/lib/components/datagrid/controls/column_sorting.js +18 -30
  133. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +159 -0
  134. package/lib/components/datagrid/controls/display_selector.js +0 -1
  135. package/lib/components/datagrid/controls/fullscreen_selector.js +2 -7
  136. package/lib/components/datagrid/controls/index.js +8 -1
  137. package/lib/components/datagrid/index.js +8 -1
  138. package/lib/components/datagrid/utils/in_memory.js +16 -6
  139. package/lib/components/datagrid/utils/row_heights.js +1 -1
  140. package/lib/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  141. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  142. package/lib/components/error_boundary/error_boundary.a11y.js +1 -1
  143. package/lib/components/expression/expression.a11y.js +2 -4
  144. package/lib/components/facet/facet_button.js +5 -3
  145. package/lib/components/filter_group/filter_button.js +2 -2
  146. package/lib/components/focus_trap/focus_trap.a11y.js +3 -3
  147. package/lib/components/form/range/range.a11y.js +5 -10
  148. package/lib/components/form/super_select/super_select.js +3 -2
  149. package/lib/components/form/super_select/super_select_control.js +12 -19
  150. package/lib/components/header/header.a11y.js +1 -1
  151. package/lib/components/header/header_links/header_link.js +7 -5
  152. package/lib/components/header/header_section/header_section_item_button.js +7 -5
  153. package/lib/components/image/image.a11y.js +1 -2
  154. package/lib/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  155. package/lib/components/link/external_link_icon.js +57 -0
  156. package/lib/components/link/link.js +6 -20
  157. package/lib/components/link/link.styles.js +1 -4
  158. package/lib/components/list_group/list_group.js +6 -1
  159. package/lib/components/list_group/list_group_item.js +14 -4
  160. package/lib/components/list_group/list_group_item.styles.js +2 -1
  161. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  162. package/lib/components/notification/notification_event.a11y.js +1 -2
  163. package/lib/components/notification/notification_event.js +7 -5
  164. package/lib/components/popover/popover.js +4 -1
  165. package/lib/components/resizable_container/resizable_container.a11y.js +4 -8
  166. package/lib/components/search_bar/search_bar.a11y.js +3 -6
  167. package/lib/components/selectable/selectable.js +16 -1
  168. package/lib/components/selectable/selectable_list/selectable_list.js +227 -78
  169. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  170. package/lib/components/text/text.styles.js +2 -2
  171. package/lib/components/text_truncate/text_truncate.js +32 -9
  172. package/optimize/es/components/accordion/accordion.a11y.js +1 -3
  173. package/optimize/es/components/basic_table/action_types.js +5 -0
  174. package/optimize/es/components/basic_table/basic_table.a11y.js +1 -2
  175. package/optimize/es/components/basic_table/collapsed_item_actions.js +116 -169
  176. package/optimize/es/components/basic_table/custom_item_action.js +10 -83
  177. package/optimize/es/components/basic_table/default_item_action.js +23 -14
  178. package/optimize/es/components/basic_table/in_memory_table.a11y.js +13 -11
  179. package/optimize/es/components/breadcrumbs/breadcrumb.js +11 -7
  180. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +5 -0
  181. package/optimize/es/components/button/button_display/_button_display_content.js +3 -1
  182. package/optimize/es/components/button/button_empty/button_empty.js +2 -2
  183. package/optimize/es/components/card/card.a11y.js +5 -18
  184. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  185. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  186. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  187. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  188. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  189. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  190. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  191. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -23
  192. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  193. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +6 -10
  194. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -5
  195. package/optimize/es/components/context_menu/context_menu_item.js +9 -6
  196. package/optimize/es/components/context_menu/context_menu_item.styles.js +1 -1
  197. package/optimize/es/components/datagrid/body/data_grid_cell.js +38 -30
  198. package/optimize/es/components/datagrid/body/data_grid_cell_actions.js +12 -12
  199. package/optimize/es/components/datagrid/body/data_grid_cell_popover.js +43 -10
  200. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +49 -28
  201. package/optimize/es/components/datagrid/controls/column_selector.js +19 -39
  202. package/optimize/es/components/datagrid/controls/column_sorting.js +18 -29
  203. package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +70 -0
  204. package/optimize/es/components/datagrid/controls/display_selector.js +0 -1
  205. package/optimize/es/components/datagrid/controls/fullscreen_selector.js +2 -6
  206. package/optimize/es/components/datagrid/controls/index.js +2 -1
  207. package/optimize/es/components/datagrid/index.js +1 -1
  208. package/optimize/es/components/datagrid/utils/row_heights.js +1 -1
  209. package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  210. package/optimize/es/components/error_boundary/error_boundary.a11y.js +1 -1
  211. package/optimize/es/components/expression/expression.a11y.js +2 -4
  212. package/optimize/es/components/filter_group/filter_button.js +2 -2
  213. package/optimize/es/components/focus_trap/focus_trap.a11y.js +3 -3
  214. package/optimize/es/components/form/range/range.a11y.js +5 -10
  215. package/optimize/es/components/form/super_select/super_select.js +3 -2
  216. package/optimize/es/components/form/super_select/super_select_control.js +13 -20
  217. package/optimize/es/components/header/header.a11y.js +1 -1
  218. package/optimize/es/components/image/image.a11y.js +1 -2
  219. package/optimize/es/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  220. package/optimize/es/components/link/external_link_icon.js +41 -0
  221. package/optimize/es/components/link/link.js +6 -20
  222. package/optimize/es/components/link/link.styles.js +2 -5
  223. package/optimize/es/components/list_group/list_group_item.js +8 -3
  224. package/optimize/es/components/list_group/list_group_item.styles.js +2 -1
  225. package/optimize/es/components/notification/notification_event.a11y.js +1 -2
  226. package/optimize/es/components/popover/popover.js +4 -1
  227. package/optimize/es/components/resizable_container/resizable_container.a11y.js +4 -8
  228. package/optimize/es/components/search_bar/search_bar.a11y.js +3 -6
  229. package/optimize/es/components/selectable/selectable_list/selectable_list.js +199 -76
  230. package/optimize/es/components/text/text.styles.js +2 -2
  231. package/optimize/es/components/text_truncate/text_truncate.js +26 -9
  232. package/optimize/lib/components/accordion/accordion.a11y.js +1 -3
  233. package/optimize/lib/components/basic_table/action_types.js +8 -2
  234. package/optimize/lib/components/basic_table/basic_table.a11y.js +1 -2
  235. package/optimize/lib/components/basic_table/collapsed_item_actions.js +123 -174
  236. package/optimize/lib/components/basic_table/custom_item_action.js +17 -91
  237. package/optimize/lib/components/basic_table/default_item_action.js +23 -14
  238. package/optimize/lib/components/basic_table/in_memory_table.a11y.js +13 -11
  239. package/optimize/lib/components/breadcrumbs/breadcrumb.js +11 -7
  240. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +5 -0
  241. package/optimize/lib/components/button/button_display/_button_display_content.js +3 -1
  242. package/optimize/lib/components/button/button_empty/button_empty.js +2 -2
  243. package/optimize/lib/components/card/card.a11y.js +5 -18
  244. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  245. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  246. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  247. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  248. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  249. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  250. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  251. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -26
  252. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  253. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +6 -10
  254. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -5
  255. package/optimize/lib/components/context_menu/context_menu_item.js +9 -6
  256. package/optimize/lib/components/context_menu/context_menu_item.styles.js +1 -1
  257. package/optimize/lib/components/datagrid/body/data_grid_cell.js +38 -30
  258. package/optimize/lib/components/datagrid/body/data_grid_cell_actions.js +12 -12
  259. package/optimize/lib/components/datagrid/body/data_grid_cell_popover.js +43 -10
  260. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +55 -36
  261. package/optimize/lib/components/datagrid/controls/column_selector.js +19 -39
  262. package/optimize/lib/components/datagrid/controls/column_sorting.js +18 -29
  263. package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +75 -0
  264. package/optimize/lib/components/datagrid/controls/display_selector.js +0 -1
  265. package/optimize/lib/components/datagrid/controls/fullscreen_selector.js +2 -6
  266. package/optimize/lib/components/datagrid/controls/index.js +8 -1
  267. package/optimize/lib/components/datagrid/index.js +8 -1
  268. package/optimize/lib/components/datagrid/utils/row_heights.js +1 -1
  269. package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  270. package/optimize/lib/components/error_boundary/error_boundary.a11y.js +1 -1
  271. package/optimize/lib/components/expression/expression.a11y.js +2 -4
  272. package/optimize/lib/components/filter_group/filter_button.js +2 -2
  273. package/optimize/lib/components/focus_trap/focus_trap.a11y.js +3 -3
  274. package/optimize/lib/components/form/range/range.a11y.js +5 -10
  275. package/optimize/lib/components/form/super_select/super_select.js +3 -2
  276. package/optimize/lib/components/form/super_select/super_select_control.js +12 -19
  277. package/optimize/lib/components/header/header.a11y.js +1 -1
  278. package/optimize/lib/components/image/image.a11y.js +1 -2
  279. package/optimize/lib/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  280. package/optimize/lib/components/link/external_link_icon.js +47 -0
  281. package/optimize/lib/components/link/link.js +6 -20
  282. package/optimize/lib/components/link/link.styles.js +1 -4
  283. package/optimize/lib/components/list_group/list_group_item.js +8 -3
  284. package/optimize/lib/components/list_group/list_group_item.styles.js +2 -1
  285. package/optimize/lib/components/notification/notification_event.a11y.js +1 -2
  286. package/optimize/lib/components/popover/popover.js +4 -1
  287. package/optimize/lib/components/resizable_container/resizable_container.a11y.js +4 -8
  288. package/optimize/lib/components/search_bar/search_bar.a11y.js +3 -6
  289. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +199 -76
  290. package/optimize/lib/components/text/text.styles.js +2 -2
  291. package/optimize/lib/components/text_truncate/text_truncate.js +25 -8
  292. package/package.json +4 -4
  293. package/src/components/datagrid/_data_grid_data_row.scss +139 -100
  294. package/src/components/datagrid/_mixins.scss +2 -2
  295. package/src/components/datagrid/body/header/_data_grid_header_row.scss +36 -28
  296. package/src/components/datagrid/controls/_data_grid_toolbar.scss +0 -5
  297. package/src/components/form/form_row/_form_row.scss +1 -1
  298. package/src/components/table/_responsive.scss +19 -0
  299. package/src/components/table/_table.scss +4 -9
  300. package/test-env/components/accordion/accordion.a11y.js +1 -3
  301. package/test-env/components/auto_sizer/auto_sizer.js +10 -3
  302. package/test-env/components/basic_table/action_types.js +8 -2
  303. package/test-env/components/basic_table/basic_table.a11y.js +1 -2
  304. package/test-env/components/basic_table/basic_table.js +8 -8
  305. package/test-env/components/basic_table/collapsed_item_actions.js +124 -251
  306. package/test-env/components/basic_table/custom_item_action.js +18 -100
  307. package/test-env/components/basic_table/default_item_action.js +23 -14
  308. package/test-env/components/basic_table/in_memory_table.a11y.js +13 -11
  309. package/test-env/components/basic_table/in_memory_table.js +8 -8
  310. package/test-env/components/breadcrumbs/breadcrumb.js +11 -7
  311. package/test-env/components/breadcrumbs/breadcrumb.styles.js +5 -0
  312. package/test-env/components/button/button_display/_button_display.js +5 -3
  313. package/test-env/components/button/button_display/_button_display_content.js +8 -4
  314. package/test-env/components/button/button_empty/button_empty.js +9 -7
  315. package/test-env/components/button/button_group/button_group.js +5 -3
  316. package/test-env/components/button/button_group/button_group_button.js +5 -3
  317. package/test-env/components/card/card.a11y.js +5 -18
  318. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  319. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  320. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  321. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -101
  322. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  323. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  324. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -80
  325. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  326. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -105
  327. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  328. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +7 -90
  329. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  330. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  331. package/test-env/components/combo_box/combo_box.js +1 -1
  332. package/test-env/components/context_menu/context_menu_item.js +16 -8
  333. package/test-env/components/context_menu/context_menu_item.styles.js +1 -1
  334. package/test-env/components/datagrid/body/data_grid_body.js +16 -6
  335. package/test-env/components/datagrid/body/data_grid_body_custom.js +16 -6
  336. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  337. package/test-env/components/datagrid/body/data_grid_cell.js +67 -44
  338. package/test-env/components/datagrid/body/data_grid_cell_actions.js +12 -12
  339. package/test-env/components/datagrid/body/data_grid_cell_popover.js +43 -10
  340. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +71 -42
  341. package/test-env/components/datagrid/body/header/data_grid_header_row.js +16 -6
  342. package/test-env/components/datagrid/controls/column_selector.js +19 -39
  343. package/test-env/components/datagrid/controls/column_sorting.js +18 -29
  344. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +158 -0
  345. package/test-env/components/datagrid/controls/display_selector.js +0 -1
  346. package/test-env/components/datagrid/controls/fullscreen_selector.js +2 -6
  347. package/test-env/components/datagrid/controls/index.js +8 -1
  348. package/test-env/components/datagrid/index.js +8 -1
  349. package/test-env/components/datagrid/utils/in_memory.js +16 -6
  350. package/test-env/components/datagrid/utils/row_heights.js +1 -1
  351. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  352. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  353. package/test-env/components/error_boundary/error_boundary.a11y.js +1 -1
  354. package/test-env/components/expression/expression.a11y.js +2 -4
  355. package/test-env/components/facet/facet_button.js +5 -3
  356. package/test-env/components/filter_group/filter_button.js +2 -2
  357. package/test-env/components/focus_trap/focus_trap.a11y.js +3 -3
  358. package/test-env/components/form/range/range.a11y.js +5 -10
  359. package/test-env/components/form/super_select/super_select.js +3 -2
  360. package/test-env/components/form/super_select/super_select_control.js +12 -19
  361. package/test-env/components/header/header.a11y.js +1 -1
  362. package/test-env/components/header/header_links/header_link.js +7 -5
  363. package/test-env/components/header/header_section/header_section_item_button.js +7 -5
  364. package/test-env/components/image/image.a11y.js +1 -2
  365. package/test-env/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  366. package/test-env/components/link/external_link_icon.js +56 -0
  367. package/test-env/components/link/link.js +6 -20
  368. package/test-env/components/link/link.styles.js +1 -4
  369. package/test-env/components/list_group/list_group.js +6 -1
  370. package/test-env/components/list_group/list_group_item.js +14 -4
  371. package/test-env/components/list_group/list_group_item.styles.js +2 -1
  372. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  373. package/test-env/components/notification/notification_event.a11y.js +1 -2
  374. package/test-env/components/notification/notification_event.js +7 -5
  375. package/test-env/components/popover/popover.js +4 -1
  376. package/test-env/components/resizable_container/resizable_container.a11y.js +4 -8
  377. package/test-env/components/search_bar/search_bar.a11y.js +3 -6
  378. package/test-env/components/selectable/selectable.js +16 -1
  379. package/test-env/components/selectable/selectable_list/selectable_list.js +227 -78
  380. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  381. package/test-env/components/text/text.styles.js +2 -2
  382. package/test-env/components/text_truncate/text_truncate.js +32 -9
package/eui.d.ts CHANGED
@@ -1708,8 +1708,6 @@ declare module '@elastic/eui/src/components/link/link.styles' {
1708
1708
  warning: import("@emotion/utils").SerializedStyles;
1709
1709
  ghost: import("@emotion/utils").SerializedStyles;
1710
1710
  text: import("@emotion/utils").SerializedStyles;
1711
- euiLink__screenReaderText: import("@emotion/utils").SerializedStyles;
1712
- euiLink__externalIcon: import("@emotion/utils").SerializedStyles;
1713
1711
  };
1714
1712
 
1715
1713
  }
@@ -3411,12 +3409,14 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
3411
3409
  iconSide?: ButtonContentIconSide;
3412
3410
  isLoading?: boolean;
3413
3411
  /**
3414
- * Object of props passed to the <span/> wrapping the content's text/children only (not icon)
3412
+ * Object of props passed to the `<span>` wrapping the content's text/children only (not icon)
3413
+ *
3414
+ * This span wrapper can be removed by passing `textProps={false}`.
3415
3415
  */
3416
- textProps?: HTMLAttributes<HTMLSpanElement> & CommonProps & {
3416
+ textProps?: (HTMLAttributes<HTMLSpanElement> & CommonProps & {
3417
3417
  ref?: Ref<HTMLSpanElement>;
3418
3418
  'data-text'?: string;
3419
- };
3419
+ }) | false;
3420
3420
  iconSize?: ButtonContentIconSize;
3421
3421
  isDisabled?: boolean;
3422
3422
  }
@@ -3594,7 +3594,7 @@ declare module '@elastic/eui/src/components/button/button_empty/button_empty' {
3594
3594
  type?: 'button' | 'submit';
3595
3595
  buttonRef?: Ref<HTMLButtonElement | HTMLAnchorElement>;
3596
3596
  /**
3597
- * Object of props passed to the <span/> wrapping the button's content
3597
+ * Object of props passed to the `<span>` wrapping the button's content
3598
3598
  */
3599
3599
  contentProps?: CommonProps & EuiButtonDisplayContentType;
3600
3600
  } type EuiButtonEmptyPropsForAnchor = PropsForAnchor<CommonEuiButtonEmptyProps>;
@@ -5261,7 +5261,7 @@ declare module '@elastic/eui/src/components/context_menu/context_menu_item.style
5261
5261
  declare module '@elastic/eui/src/components/context_menu/context_menu_item' {
5262
5262
  import React, { ButtonHTMLAttributes, FunctionComponent, ReactElement, ReactNode, Ref } from 'react';
5263
5263
  import { CommonProps } from '@elastic/eui/src/components/common';
5264
- import { ToolTipPositions } from '@elastic/eui/src/components/tool_tip';
5264
+ import { EuiToolTipProps, ToolTipPositions } from '@elastic/eui/src/components/tool_tip';
5265
5265
  export type EuiContextMenuItemIcon = ReactElement<any> | string | HTMLElement;
5266
5266
  export type EuiContextMenuItemLayoutAlignment = 'center' | 'top' | 'bottom';
5267
5267
  export const SIZES: readonly ["s", "m"];
@@ -5276,11 +5276,16 @@ declare module '@elastic/eui/src/components/context_menu/context_menu_item' {
5276
5276
  */
5277
5277
  toolTipContent?: ReactNode;
5278
5278
  /**
5279
- * Optional title for the tooltip
5279
+ * Optional configuration to pass to the underlying [EuiToolTip](/#/display/tooltip).
5280
+ * Accepts any prop that EuiToolTip does, except for `content` and `children`.
5281
+ */
5282
+ toolTipProps?: Partial<Omit<EuiToolTipProps, 'content' | 'children'>>;
5283
+ /**
5284
+ * @deprecated Use toolTipProps.title instead
5280
5285
  */
5281
5286
  toolTipTitle?: ReactNode;
5282
5287
  /**
5283
- * Dictates the position of the tooltip.
5288
+ * @deprecated Use tooltipProps.position instead
5284
5289
  */
5285
5290
  toolTipPosition?: ToolTipPositions;
5286
5291
  href?: string;
@@ -5897,6 +5902,12 @@ declare module '@elastic/eui/src/components/text_truncate/text_truncate' {
5897
5902
  * or highlighting
5898
5903
  */
5899
5904
  children?: (truncatedString: string) => ReactNode;
5905
+ /**
5906
+ * For some edge case scenarios, EuiTextTruncate's calculations may be off until
5907
+ * fonts are done loading or layout is done shifting or settling. Adding a delay
5908
+ * may help resolve any rendering issues.
5909
+ */
5910
+ calculationDelayMs?: number;
5900
5911
  };
5901
5912
  export const EuiTextTruncate: FunctionComponent<EuiTextTruncateProps>;
5902
5913
  export {};
@@ -7526,7 +7537,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select_contr
7526
7537
  import { CommonProps } from '@elastic/eui/src/components/common';
7527
7538
  import { EuiFormControlLayoutProps } from '@elastic/eui/src/components/form/form_control_layout';
7528
7539
  export interface EuiSuperSelectOption<T> {
7529
- value: T;
7540
+ value: NonNullable<T>;
7530
7541
  inputDisplay?: ReactNode;
7531
7542
  dropdownDisplay?: ReactNode;
7532
7543
  disabled?: boolean;
@@ -7567,7 +7578,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select_contr
7567
7578
  */
7568
7579
  append?: EuiFormControlLayoutProps['append'];
7569
7580
  }
7570
- export const EuiSuperSelectControl: <T extends string>(props: EuiSuperSelectControlProps<T>) => ReturnType<FunctionComponent<EuiSuperSelectControlProps<T>>>;
7581
+ export const EuiSuperSelectControl: <T = string>(props: EuiSuperSelectControlProps<T>) => ReturnType<FunctionComponent<EuiSuperSelectControlProps<T>>>;
7571
7582
 
7572
7583
  }
7573
7584
  declare module '@elastic/eui/src/components/form/super_select/super_select' {
@@ -7579,7 +7590,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7579
7590
  BACK = "back",
7580
7591
  FORWARD = "forward"
7581
7592
  }
7582
- export type EuiSuperSelectProps<T extends string> = CommonProps & Omit<EuiSuperSelectControlProps<T>, 'onChange' | 'onClick' | 'onFocus' | 'onBlur' | 'options' | 'value'> & {
7593
+ export type EuiSuperSelectProps<T = string> = CommonProps & Omit<EuiSuperSelectControlProps<T>, 'onChange' | 'onClick' | 'onFocus' | 'onBlur' | 'options' | 'value'> & {
7583
7594
  /**
7584
7595
  * Pass an array of options that must at least include:
7585
7596
  * `value`: storing unique value of item,
@@ -7587,7 +7598,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7587
7598
  * `dropdownDisplay` (optional): what shows for the item in the dropdown
7588
7599
  */
7589
7600
  options: Array<EuiSuperSelectOption<T>>;
7590
- valueOfSelected?: T;
7601
+ valueOfSelected?: NonNullable<T>;
7591
7602
  /**
7592
7603
  * Placeholder to display when the current selected value is empty.
7593
7604
  */
@@ -7626,7 +7637,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7626
7637
  */
7627
7638
  popoverProps?: Partial<CommonProps & Omit<EuiInputPopoverProps, 'isOpen'>>;
7628
7639
  };
7629
- export class EuiSuperSelect<T extends string> extends Component<EuiSuperSelectProps<T>> {
7640
+ export class EuiSuperSelect<T = string> extends Component<EuiSuperSelectProps<T>> {
7630
7641
  static defaultProps: {
7631
7642
  hasDividers: boolean;
7632
7643
  fullWidth: boolean;
@@ -9657,6 +9668,24 @@ declare module '@elastic/eui/src/components/bottom_bar' {
9657
9668
  export type { EuiBottomBarProps } from '@elastic/eui/src/components/bottom_bar/bottom_bar';
9658
9669
  export { EuiBottomBar } from '@elastic/eui/src/components/bottom_bar/bottom_bar';
9659
9670
 
9671
+ }
9672
+ declare module '@elastic/eui/src/components/link/external_link_icon' {
9673
+ import { FunctionComponent, AnchorHTMLAttributes } from 'react';
9674
+ import { EuiIconProps } from '@elastic/eui/src/components/icon';
9675
+ /**
9676
+ * DRY util for indicating external links both via icon and to
9677
+ * screen readers. Used internally by at EuiLink and EuiListGroupItem
9678
+ */
9679
+ export type EuiExternalLinkIconProps = {
9680
+ target?: AnchorHTMLAttributes<HTMLAnchorElement>['target'];
9681
+ /**
9682
+ * Set to true to show an icon indicating that it is an external link;
9683
+ * Defaults to true if `target="_blank"`
9684
+ */
9685
+ external?: boolean;
9686
+ };
9687
+ export const EuiExternalLinkIcon: FunctionComponent<EuiExternalLinkIconProps & Partial<EuiIconProps>>;
9688
+
9660
9689
  }
9661
9690
  declare module '@elastic/eui/src/components/link/link' {
9662
9691
  import React, { AnchorHTMLAttributes, ButtonHTMLAttributes, MouseEventHandler } from 'react';
@@ -9711,6 +9740,8 @@ declare module '@elastic/eui/src/components/breadcrumbs/breadcrumb.styles' {
9711
9740
  euiBreadcrumb__content: import("@emotion/utils").SerializedStyles;
9712
9741
  isTruncated: import("@emotion/utils").SerializedStyles;
9713
9742
  isTruncatedLast: import("@emotion/utils").SerializedStyles;
9743
+ euiBreadcrumb__popoverButton: import("@emotion/utils").SerializedStyles;
9744
+ euiBreadcrumb__popoverWrapper: import("@emotion/utils").SerializedStyles;
9714
9745
  page: import("@emotion/utils").SerializedStyles;
9715
9746
  application: import("@emotion/utils").SerializedStyles;
9716
9747
  applicationStyles: {
@@ -10934,13 +10965,14 @@ declare module '@elastic/eui/src/themes' {
10934
10965
  }
10935
10966
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_body_footer.styles' {
10936
10967
  import { UseEuiTheme } from '@elastic/eui/src/services';
10968
+ export const hideScrollbars = "\n scrollbar-width: none; /* Firefox */\n\n &::-webkit-scrollbar {\n display: none; /* Chrome, Edge, & Safari */\n }\n";
10937
10969
  export const euiCollapsibleNavBodyStyles: {
10938
10970
  euiCollapsibleNav__body: import("@emotion/utils").SerializedStyles;
10939
- readonly isPushCollapsed: import("@emotion/utils").SerializedStyles;
10940
- _isPushCollapsed: string;
10971
+ isPushCollapsed: import("@emotion/utils").SerializedStyles;
10941
10972
  };
10942
- export const euiCollapsibleNavFooterStyles: ({ euiTheme }: UseEuiTheme) => {
10973
+ export const euiCollapsibleNavFooterStyles: (euiThemeContext: UseEuiTheme) => {
10943
10974
  euiCollapsibleNav__footer: import("@emotion/utils").SerializedStyles;
10975
+ isPushCollapsed: import("@emotion/utils").SerializedStyles;
10944
10976
  };
10945
10977
 
10946
10978
  }
@@ -11019,7 +11051,7 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11019
11051
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button' {
11020
11052
  import { FunctionComponent } from 'react';
11021
11053
  import { EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
11022
- export const EuiCollapsedNavButton: FunctionComponent<EuiCollapsibleNavItemProps & {
11054
+ export const EuiCollapsedNavButton: FunctionComponent<Omit<EuiCollapsibleNavItemProps, 'items' | 'isCollapsible' | 'accordionProps'> & {
11023
11055
  hideToolTip?: boolean;
11024
11056
  }>;
11025
11057
 
@@ -11028,21 +11060,15 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11028
11060
  import { UseEuiTheme } from '@elastic/eui/src/services';
11029
11061
  export const euiCollapsedNavPopoverStyles: (euiThemeContext: UseEuiTheme) => {
11030
11062
  euiCollapsedNavPopover__panel: import("@emotion/utils").SerializedStyles;
11031
- euiCollapsedNavPopover__items: import("@emotion/utils").SerializedStyles;
11032
- };
11033
- export const euiCollapsedNavPopoverTitleStyles: (euiThemeContext: UseEuiTheme) => {
11034
11063
  euiCollapsedNavPopover__title: import("@emotion/utils").SerializedStyles;
11035
- link: import("@emotion/utils").SerializedStyles;
11036
- span: import("@emotion/utils").SerializedStyles;
11064
+ euiCollapsedNavPopover__items: import("@emotion/utils").SerializedStyles;
11037
11065
  };
11038
11066
 
11039
11067
  }
11040
11068
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover' {
11041
11069
  import { FunctionComponent } from 'react';
11042
11070
  import { EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
11043
- export const EuiCollapsedNavPopover: FunctionComponent<EuiCollapsibleNavItemProps & {
11044
- items: EuiCollapsibleNavItemProps['items'];
11045
- }>;
11071
+ export const EuiCollapsedNavPopover: FunctionComponent<Omit<EuiCollapsibleNavItemProps, 'isCollapsible' | 'accordionProps' | 'href' | 'linkProps'>>;
11046
11072
 
11047
11073
  }
11048
11074
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item' {
@@ -11078,7 +11104,7 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11078
11104
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link' {
11079
11105
  import { FunctionComponent, ReactNode } from 'react';
11080
11106
  import { EuiLinkProps } from '@elastic/eui/src/components/link';
11081
- import type { _SharedEuiCollapsibleNavItemProps, _EuiCollapsibleNavItemDisplayProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavLinkProps = Omit<EuiLinkProps, 'children'> & Omit<_SharedEuiCollapsibleNavItemProps, 'items' | 'isCollapsible' | 'accordionProps'> & _EuiCollapsibleNavItemDisplayProps & {
11107
+ import type { _SharedEuiCollapsibleNavItemProps, _EuiCollapsibleNavItemDisplayProps, EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavLinkProps = Omit<EuiLinkProps, 'children'> & _SharedEuiCollapsibleNavItemProps & _EuiCollapsibleNavItemDisplayProps & Pick<EuiCollapsibleNavItemProps, 'href' | 'linkProps'> & {
11082
11108
  children: ReactNode;
11083
11109
  isInteractive?: boolean;
11084
11110
  isNotAccordion?: boolean;
@@ -11102,8 +11128,8 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11102
11128
  import { UseEuiTheme } from '@elastic/eui/src/services';
11103
11129
  export const euiCollapsibleNavAccordionStyles: (euiThemeContext: UseEuiTheme) => {
11104
11130
  euiCollapsibleNavAccordion: import("@emotion/utils").SerializedStyles;
11105
- isTopItem: import("@emotion/utils").SerializedStyles;
11106
11131
  isSelected: import("@emotion/utils").SerializedStyles;
11132
+ isTopItem: import("@emotion/utils").SerializedStyles;
11107
11133
  isSubItem: import("@emotion/utils").SerializedStyles;
11108
11134
  euiCollapsibleNavAccordion__arrow: import("@emotion/utils").SerializedStyles;
11109
11135
  };
@@ -11111,9 +11137,8 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11111
11137
  }
11112
11138
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion' {
11113
11139
  import { FunctionComponent, ReactNode } from 'react';
11114
- import { EuiCollapsibleNavSubItemProps, _SharedEuiCollapsibleNavItemProps, _EuiCollapsibleNavItemDisplayProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavAccordionProps = Omit<_SharedEuiCollapsibleNavItemProps, 'items' | 'isCollapsible'> & _EuiCollapsibleNavItemDisplayProps & {
11140
+ import { type _SharedEuiCollapsibleNavItemProps, type _EuiCollapsibleNavItemDisplayProps, type EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavAccordionProps = _SharedEuiCollapsibleNavItemProps & _EuiCollapsibleNavItemDisplayProps & Pick<EuiCollapsibleNavItemProps, 'accordionProps'> & Required<Pick<EuiCollapsibleNavItemProps, 'items'>> & {
11115
11141
  buttonContent: ReactNode;
11116
- items: EuiCollapsibleNavSubItemProps[];
11117
11142
  };
11118
11143
  /**
11119
11144
  * Internal nav accordion component.
@@ -11128,9 +11153,8 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11128
11153
  }
11129
11154
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group' {
11130
11155
  import { FunctionComponent, ReactNode } from 'react';
11131
- import { EuiCollapsibleNavSubItemProps, _SharedEuiCollapsibleNavItemProps, _EuiCollapsibleNavItemDisplayProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavGroupProps = Omit<_SharedEuiCollapsibleNavItemProps, 'items' | 'accordionProps'> & _EuiCollapsibleNavItemDisplayProps & {
11156
+ import { type _SharedEuiCollapsibleNavItemProps, type _EuiCollapsibleNavItemDisplayProps, type EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item'; type EuiCollapsibleNavGroupProps = _SharedEuiCollapsibleNavItemProps & _EuiCollapsibleNavItemDisplayProps & Required<Pick<EuiCollapsibleNavItemProps, 'items'>> & {
11132
11157
  header: ReactNode;
11133
- items: EuiCollapsibleNavSubItemProps[];
11134
11158
  };
11135
11159
  /**
11136
11160
  * Internal nav group. Should look the same as an open accordion,
@@ -11151,19 +11175,54 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11151
11175
  import { EuiLinkProps } from '@elastic/eui/src/components/link';
11152
11176
  import { EuiAccordionProps } from '@elastic/eui/src/components/accordion';
11153
11177
  export type _SharedEuiCollapsibleNavItemProps = HTMLAttributes<HTMLElement> & CommonProps & {
11178
+ /**
11179
+ * Highlights whether an item is currently selected, e.g.
11180
+ * if the user is on the same page as the nav link
11181
+ */
11182
+ isSelected?: boolean;
11183
+ };
11184
+ export type EuiCollapsibleNavItemProps = _SharedEuiCollapsibleNavItemProps & {
11185
+ /**
11186
+ * Required text to render as the nav item title
11187
+ */
11188
+ title: string;
11189
+ /**
11190
+ * Allows customizing the title element.
11191
+ * Consider using a heading element for better accessibility.
11192
+ * Defaults to an unsemantic `span` or `div`, depending on context.
11193
+ */
11194
+ titleElement?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'div';
11195
+ /**
11196
+ * Optional icon to render to the left of title content
11197
+ */
11198
+ icon?: IconType;
11199
+ /**
11200
+ * Optional props to pass to the title icon
11201
+ */
11202
+ iconProps?: Partial<EuiIconProps>;
11203
+ } & ExclusiveUnion<{
11154
11204
  /**
11155
11205
  * The nav item link.
11206
+ *
11156
11207
  * If not included, and no `onClick` is specified, the nav item
11157
11208
  * will render as an non-interactive `<span>`.
11209
+ *
11210
+ * Should not be used together with `items`, as the title will
11211
+ * trigger the accordion collapse/expand action instead of a link.
11158
11212
  */
11159
11213
  href?: string;
11214
+ /**
11215
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
11216
+ */
11217
+ linkProps?: Partial<EuiLinkProps>;
11218
+ }, {
11160
11219
  /**
11161
11220
  * Will render either an accordion or group of nested child item links.
11162
11221
  *
11163
11222
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
11164
11223
  * subitem content, pass an object with a `renderItem` callback.
11165
11224
  */
11166
- items?: EuiCollapsibleNavSubItemProps[];
11225
+ items: EuiCollapsibleNavSubItemProps[];
11167
11226
  /**
11168
11227
  * If set to false, will (visually) render an always-open accordion that cannot
11169
11228
  * be toggled closed. Ignored if `items` is not passed.
@@ -11177,36 +11236,7 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11177
11236
  * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
11178
11237
  */
11179
11238
  accordionProps?: Partial<EuiAccordionProps>;
11180
- /**
11181
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
11182
- */
11183
- linkProps?: Partial<EuiLinkProps>;
11184
- /**
11185
- * Highlights whether an item is currently selected, e.g.
11186
- * if the user is on the same page as the nav link
11187
- */
11188
- isSelected?: boolean;
11189
- };
11190
- export type EuiCollapsibleNavItemProps = {
11191
- /**
11192
- * Required text to render as the nav item title
11193
- */
11194
- title: string;
11195
- /**
11196
- * Allows customizing the title element.
11197
- * Consider using a heading element for better accessibility.
11198
- * Defaults to an unsemantic `span` or `div`, depending on context.
11199
- */
11200
- titleElement?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'div';
11201
- /**
11202
- * Optional icon to render to the left of title content
11203
- */
11204
- icon?: IconType;
11205
- /**
11206
- * Optional props to pass to the title icon
11207
- */
11208
- iconProps?: Partial<EuiIconProps>;
11209
- } & _SharedEuiCollapsibleNavItemProps;
11239
+ }>;
11210
11240
  export type EuiCollapsibleNavCustomSubItem = {
11211
11241
  renderItem: () => ReactNode;
11212
11242
  };
@@ -11250,15 +11280,8 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
11250
11280
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group' {
11251
11281
  import { FunctionComponent, HTMLAttributes } from 'react';
11252
11282
  import { CommonProps } from '@elastic/eui/src/components/common';
11253
- import { EuiCollapsibleNavSubItemProps, EuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
11254
- export type EuiCollapsibleNavGroupProps = Omit<EuiCollapsibleNavItemProps, 'items' | 'accordionProps'> & {
11255
- /**
11256
- * Will render an array of `EuiCollapsibleNavItems`.
11257
- *
11258
- * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
11259
- * subitem content, pass an object with a `renderItem` callback.
11260
- */
11261
- items: EuiCollapsibleNavSubItemProps[];
11283
+ import { type EuiCollapsibleNavItemProps, type _SharedEuiCollapsibleNavItemProps } from '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item';
11284
+ export type EuiCollapsibleNavGroupProps = _SharedEuiCollapsibleNavItemProps & Pick<EuiCollapsibleNavItemProps, 'title' | 'titleElement' | 'icon' | 'iconProps'> & Required<Pick<EuiCollapsibleNavItemProps, 'items'>> & {
11262
11285
  /**
11263
11286
  * Optional props to pass to the wrapping div
11264
11287
  */
@@ -11953,7 +11976,7 @@ declare module '@elastic/eui/src/components/combo_box/combo_box' {
11953
11976
  /**
11954
11977
  * By default, EuiComboBox will truncate option labels at the end of
11955
11978
  * the string. You can use pass in a custom truncation configuration that
11956
- * accepts any prop that [EuiTextTruncate](/#/utilities/text-truncate) prop
11979
+ * accepts any [EuiTextTruncate](/#/utilities/text-truncation) prop,
11957
11980
  * except for `text` and `children`.
11958
11981
  *
11959
11982
  * Note: when searching, custom truncation props are ignored. The highlighted search
@@ -12501,6 +12524,7 @@ declare module '@elastic/eui/src/components/list_group/list_group_item.styles' {
12501
12524
  isDisabled: import("@emotion/utils").SerializedStyles;
12502
12525
  isActive: import("@emotion/utils").SerializedStyles;
12503
12526
  isClickable: import("@emotion/utils").SerializedStyles;
12527
+ externalIcon: import("@emotion/utils").SerializedStyles;
12504
12528
  };
12505
12529
  export const euiListGroupItemLabelStyles: () => {
12506
12530
  euiListGroupItem__label: import("@emotion/utils").SerializedStyles;
@@ -12552,8 +12576,13 @@ declare module '@elastic/eui/src/components/list_group/list_group_item' {
12552
12576
  * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
12553
12577
  */
12554
12578
  href?: string;
12555
- target?: string;
12556
12579
  rel?: string;
12580
+ target?: string;
12581
+ /**
12582
+ * Set to true to show an icon indicating that it is an external link;
12583
+ * Defaults to true if `target="_blank"`
12584
+ */
12585
+ external?: boolean;
12557
12586
  /**
12558
12587
  * Adds `EuiIcon` of `EuiIcon.type`
12559
12588
  */
@@ -13146,6 +13175,7 @@ declare module '@elastic/eui/src/components/datagrid/data_grid_types' {
13146
13175
  }): void;
13147
13176
  closeCellPopover(): void;
13148
13177
  setPopoverAnchor(anchor: HTMLElement): void;
13178
+ setPopoverAnchorPosition(position: 'downLeft' | 'downRight'): void;
13149
13179
  setPopoverContent(content: ReactNode): void;
13150
13180
  setCellPopoverProps: EuiDataGridCellPopoverElementProps['setCellPopoverProps'];
13151
13181
  }
@@ -13507,6 +13537,7 @@ declare module '@elastic/eui/src/components/datagrid/data_grid_types' {
13507
13537
  isEntered: boolean;
13508
13538
  enableInteractions: boolean;
13509
13539
  disableCellTabIndex: boolean;
13540
+ cellTextAlign: 'Left' | 'Right';
13510
13541
  }
13511
13542
  export type EuiDataGridCellValueProps = Omit<EuiDataGridCellProps, 'width' | 'interactiveCellId' | 'popoverContext' | 'rowManager'>;
13512
13543
  export interface EuiDataGridControlColumn {
@@ -13642,7 +13673,13 @@ declare module '@elastic/eui/src/components/datagrid/data_grid_types' {
13642
13673
  */
13643
13674
  columnId: string;
13644
13675
  /**
13645
- * React component representing the action displayed in the cell
13676
+ * React component representing the action displayed in the cell.
13677
+ *
13678
+ * On cell hover/focus, an EuiButtonIcon will be displayed that cannot
13679
+ * have its size or color customized, only its icon.
13680
+ *
13681
+ * On cell expand, an EuiButtonEmpty will be displayed in the cell popover
13682
+ * that can have any sizing, color, or text.
13646
13683
  */
13647
13684
  Component: typeof EuiButtonEmpty | typeof EuiButtonIcon;
13648
13685
  /**
@@ -14228,12 +14265,11 @@ declare module '@elastic/eui/src/components/datagrid/body/header' {
14228
14265
  declare module '@elastic/eui/src/components/datagrid/body/data_grid_cell_actions' {
14229
14266
  import React from 'react';
14230
14267
  import { EuiDataGridColumn } from '@elastic/eui/src/components/datagrid/data_grid_types';
14231
- export const EuiDataGridCellActions: ({ onExpandClick, column, rowIndex, colIndex, cellHeightType, }: {
14268
+ export const EuiDataGridCellActions: ({ onExpandClick, column, rowIndex, colIndex, }: {
14232
14269
  onExpandClick: () => void;
14233
14270
  column?: EuiDataGridColumn | undefined;
14234
14271
  rowIndex: number;
14235
14272
  colIndex: number;
14236
- cellHeightType: string;
14237
14273
  }) => React.JSX.Element;
14238
14274
  export const EuiDataGridCellPopoverActions: ({ rowIndex, colIndex, column, }: {
14239
14275
  column?: EuiDataGridColumn | undefined;
@@ -14330,6 +14366,7 @@ declare module '@elastic/eui/src/components/datagrid/body/data_grid_cell' {
14330
14366
  onBlur: () => void;
14331
14367
  preventTabbing: () => void;
14332
14368
  enableTabbing: () => void;
14369
+ setCellTextAlign: () => void;
14333
14370
  isExpandable: () => boolean;
14334
14371
  isPopoverOpen: () => boolean;
14335
14372
  handleCellPopover: () => void;
@@ -14540,6 +14577,15 @@ declare module '@elastic/eui/src/components/datagrid/controls/data_grid_toolbar'
14540
14577
  */
14541
14578
  export function getNestedObjectOptions<T>(controlOption: undefined | boolean | T, objectKey: keyof T): boolean;
14542
14579
 
14580
+ }
14581
+ declare module '@elastic/eui/src/components/datagrid/controls/data_grid_toolbar_control' {
14582
+ import { FunctionComponent } from 'react';
14583
+ import { EuiButtonEmptyProps } from '@elastic/eui/src/components/button';
14584
+ export type EuiDataGridToolbarControlProps = EuiButtonEmptyProps & {
14585
+ badgeContent?: number | string;
14586
+ };
14587
+ export const EuiDataGridToolbarControl: FunctionComponent<EuiDataGridToolbarControlProps>;
14588
+
14543
14589
  }
14544
14590
  declare module '@elastic/eui/src/components/datagrid/controls/column_selector' {
14545
14591
  import React, { ReactNode } from 'react';
@@ -14764,6 +14810,7 @@ declare module '@elastic/eui/src/components/datagrid/controls' {
14764
14810
  export { useDataGridKeyboardShortcuts } from '@elastic/eui/src/components/datagrid/controls/keyboard_shortcuts';
14765
14811
  export { useDataGridFullScreenSelector } from '@elastic/eui/src/components/datagrid/controls/fullscreen_selector';
14766
14812
  export { checkOrDefaultToolBarDisplayOptions, EuiDataGridToolbar, } from '@elastic/eui/src/components/datagrid/controls/data_grid_toolbar';
14813
+ export { EuiDataGridToolbarControl, type EuiDataGridToolbarControlProps, } from '@elastic/eui/src/components/datagrid/controls/data_grid_toolbar_control';
14767
14814
 
14768
14815
  }
14769
14816
  declare module '@elastic/eui/src/components/datagrid/utils/in_memory' {
@@ -14850,7 +14897,7 @@ declare module '@elastic/eui/src/components/datagrid/data_grid' {
14850
14897
  }
14851
14898
  declare module '@elastic/eui/src/components/datagrid' {
14852
14899
  export { EuiDataGrid } from '@elastic/eui/src/components/datagrid/data_grid';
14853
- export { useDataGridColumnSelector, useDataGridColumnSorting, useDataGridDisplaySelector, } from '@elastic/eui/src/components/datagrid/controls';
14900
+ export { useDataGridColumnSelector, useDataGridColumnSorting, useDataGridDisplaySelector, EuiDataGridToolbarControl, } from '@elastic/eui/src/components/datagrid/controls';
14854
14901
  export * from '@elastic/eui/src/components/datagrid/data_grid_types';
14855
14902
 
14856
14903
  }
@@ -19887,6 +19934,7 @@ declare module '@elastic/eui/src/components/search_bar/filters/is_filter' {
19887
19934
  declare module '@elastic/eui/src/components/selectable/selectable_option' {
19888
19935
  import React, { HTMLAttributes } from 'react';
19889
19936
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
19937
+ import type { EuiTextTruncateProps } from '@elastic/eui/src/components/text_truncate';
19890
19938
  export type EuiSelectableOptionCheckedType = 'on' | 'off' | 'mixed' | undefined;
19891
19939
  export type EuiSelectableOptionBase = CommonProps & {
19892
19940
  /**
@@ -19937,6 +19985,21 @@ declare module '@elastic/eui/src/components/selectable/selectable_option' {
19937
19985
  data?: {
19938
19986
  [key: string]: any;
19939
19987
  };
19988
+ /**
19989
+ * How to handle long text within the item.
19990
+ * Wrapping only works if `isVirtualization` is false.
19991
+ * @default 'truncate'
19992
+ */
19993
+ textWrap?: 'truncate' | 'wrap';
19994
+ /**
19995
+ * If textWrap is set to `truncate`, you can pass a custom truncation configuration
19996
+ * that accepts any [EuiTextTruncate](/#/utilities/text-truncation) prop except for
19997
+ * `text` and `children`.
19998
+ *
19999
+ * Note: when searching, custom truncation props are ignored. The highlighted search
20000
+ * text will always take precedence.
20001
+ */
20002
+ truncationProps?: Partial<Omit<EuiTextTruncateProps, 'text' | 'children'>>;
19940
20003
  }; type _EuiSelectableGroupLabelOption = Omit<EuiSelectableOptionBase, 'isGroupLabel'> & Exclude<HTMLAttributes<HTMLDivElement>, 'id'> & {
19941
20004
  isGroupLabel: true;
19942
20005
  };
@@ -20003,8 +20066,8 @@ declare module '@elastic/eui/src/components/selectable/selectable_message' {
20003
20066
  declare module '@elastic/eui/src/components/selectable/selectable_list/selectable_list_item' {
20004
20067
  import React, { Component, LiHTMLAttributes } from 'react';
20005
20068
  import { CommonProps } from '@elastic/eui/src/components/common';
20006
- import { EuiSelectableOptionCheckedType } from '@elastic/eui/src/components/selectable/selectable_option';
20007
20069
  import { EuiBadgeProps } from '@elastic/eui/src/components/badge';
20070
+ import type { EuiSelectableOption, EuiSelectableOptionCheckedType } from '@elastic/eui/src/components/selectable/selectable_option';
20008
20071
  export const PADDING_SIZES: ("s" | "none")[];
20009
20072
  export type EuiSelectablePaddingSize = (typeof PADDING_SIZES)[number];
20010
20073
  export type EuiSelectableListItemProps = LiHTMLAttributes<HTMLLIElement> & CommonProps & {
@@ -20051,7 +20114,7 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
20051
20114
  * How to handle long text within the item.
20052
20115
  * Wrapping only works if virtualization is off.
20053
20116
  */
20054
- textWrap?: 'truncate' | 'wrap';
20117
+ textWrap?: EuiSelectableOption['textWrap'];
20055
20118
  };
20056
20119
  export class EuiSelectableListItem extends Component<EuiSelectableListItemProps> {
20057
20120
  static defaultProps: {
@@ -20069,6 +20132,7 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
20069
20132
  import React, { Component, HTMLAttributes, ReactNode, CSSProperties } from 'react';
20070
20133
  import { FixedSizeList, ListProps, ListChildComponentProps as ReactWindowListChildComponentProps } from 'react-window';
20071
20134
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
20135
+ import { EuiAutoSizeHorizontal } from '@elastic/eui/src/components/auto_sizer';
20072
20136
  import { EuiSelectableOption } from '@elastic/eui/src/components/selectable/selectable_option';
20073
20137
  import { EuiSelectableOnChangeEvent } from '@elastic/eui/src/components/selectable/selectable';
20074
20138
  import { EuiSelectableListItemProps } from '@elastic/eui/src/components/selectable/selectable_list/selectable_list_item';
@@ -20126,6 +20190,15 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
20126
20190
  * Wrapping only works if virtualization is off.
20127
20191
  */
20128
20192
  textWrap?: EuiSelectableListItemProps['textWrap'];
20193
+ /**
20194
+ * If textWrap is set to `truncate`, you can pass a custom truncation configuration
20195
+ * that accepts any [EuiTextTruncate](/#/utilities/text-truncation) prop except for
20196
+ * `text` and `children`.
20197
+ *
20198
+ * Note: when searching, custom truncation props are ignored. The highlighted search
20199
+ * text will always take precedence.
20200
+ */
20201
+ truncationProps?: EuiSelectableOption['truncationProps'];
20129
20202
  } & EuiSelectableOptionsListVirtualizedProps;
20130
20203
  export type EuiSelectableListProps<T> = EuiSelectableOptionsListProps & {
20131
20204
  /**
@@ -20165,25 +20238,314 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
20165
20238
  makeOptionId: (index: number | undefined) => string;
20166
20239
  listId: string;
20167
20240
  setActiveOptionIndex: (index: number, cb?: () => void) => void;
20241
+ }; type State<T> = {
20242
+ defaultOptionWidth: number;
20243
+ optionArray: Array<EuiSelectableOption<T>>;
20244
+ itemData: Record<number, EuiSelectableOption<T>>;
20245
+ ariaPosInSetMap: Record<number, number>;
20246
+ ariaSetSize: number;
20168
20247
  };
20169
- export class EuiSelectableList<T> extends Component<EuiSelectableListProps<T>> {
20248
+ export class EuiSelectableList<T> extends Component<EuiSelectableListProps<T>, State<T>> {
20170
20249
  static defaultProps: {
20171
20250
  rowHeight: number;
20172
20251
  searchValue: string;
20173
20252
  isVirtualized: boolean;
20174
20253
  };
20254
+ constructor(props: EuiSelectableListProps<T>);
20175
20255
  listRef: FixedSizeList | null;
20176
20256
  listBoxRef: HTMLUListElement | null;
20177
20257
  setListRef: (ref: FixedSizeList | null) => void;
20178
20258
  removeScrollableTabStop: (ref: HTMLDivElement | null) => void;
20179
20259
  setListBoxRef: (ref: HTMLUListElement | null) => void;
20180
- componentDidUpdate(): void;
20181
- constructor(props: EuiSelectableListProps<T>);
20182
- ariaSetSize: number;
20183
- ariaPosInSetMap: Record<number, number>;
20184
- calculateAriaSetAttrs: (optionArray: Array<EuiSelectableOption<T>>) => void;
20260
+ componentDidUpdate(prevProps: EuiSelectableListProps<T>): void;
20261
+ calculateAriaSetAttrs: (optionArray: State<T>['optionArray']) => {
20262
+ ariaPosInSetMap: Record<number, number>;
20263
+ ariaSetSize: number;
20264
+ };
20185
20265
  ListRow: React.MemoExoticComponent<({ data, index, style }: ListChildComponentProps<T>) => React.JSX.Element>;
20186
- renderVirtualizedList: (heightIsFull: boolean, optionArray: EuiSelectableOption[]) => React.JSX.Element | null;
20266
+ renderVirtualizedList: () => React.JSX.Element | null;
20267
+ forceVirtualizedListRowRerender: () => void;
20268
+ focusBadgeOffset: number;
20269
+ calculateDefaultOptionWidth: ({ width: containerWidth, }: EuiAutoSizeHorizontal) => void;
20270
+ getTruncationProps: (option: EuiSelectableOption, isFocused: boolean) => {
20271
+ prefix?: string | undefined;
20272
+ slot?: string | undefined;
20273
+ style?: React.CSSProperties | undefined;
20274
+ title?: string | undefined;
20275
+ hidden?: boolean | undefined;
20276
+ content?: string | undefined;
20277
+ id?: string | undefined;
20278
+ onChange?: React.FormEventHandler<HTMLDivElement> | undefined;
20279
+ color?: string | undefined;
20280
+ className?: string | undefined;
20281
+ 'aria-label'?: string | undefined;
20282
+ 'data-test-subj'?: string | undefined;
20283
+ css?: import("@emotion/serialize").Interpolation<import("@emotion/react").Theme>;
20284
+ placeholder?: string | undefined;
20285
+ width: number | undefined;
20286
+ defaultChecked?: boolean | undefined;
20287
+ defaultValue?: string | number | readonly string[] | undefined;
20288
+ suppressContentEditableWarning?: boolean | undefined;
20289
+ suppressHydrationWarning?: boolean | undefined;
20290
+ accessKey?: string | undefined;
20291
+ autoFocus?: boolean | undefined;
20292
+ contentEditable?: "inherit" | (boolean | "true" | "false") | undefined;
20293
+ contextMenu?: string | undefined;
20294
+ dir?: string | undefined;
20295
+ draggable?: (boolean | "true" | "false") | undefined;
20296
+ lang?: string | undefined;
20297
+ nonce?: string | undefined;
20298
+ spellCheck?: (boolean | "true" | "false") | undefined;
20299
+ tabIndex?: number | undefined;
20300
+ translate?: "yes" | "no" | undefined;
20301
+ radioGroup?: string | undefined;
20302
+ role?: React.AriaRole | undefined;
20303
+ about?: string | undefined;
20304
+ datatype?: string | undefined;
20305
+ inlist?: any;
20306
+ property?: string | undefined;
20307
+ rel?: string | undefined;
20308
+ resource?: string | undefined;
20309
+ rev?: string | undefined;
20310
+ typeof?: string | undefined;
20311
+ vocab?: string | undefined;
20312
+ autoCapitalize?: string | undefined;
20313
+ autoCorrect?: string | undefined;
20314
+ autoSave?: string | undefined;
20315
+ itemProp?: string | undefined;
20316
+ itemScope?: boolean | undefined;
20317
+ itemType?: string | undefined;
20318
+ itemID?: string | undefined;
20319
+ itemRef?: string | undefined;
20320
+ results?: number | undefined;
20321
+ security?: string | undefined;
20322
+ unselectable?: "on" | "off" | undefined;
20323
+ inputMode?: "search" | "text" | "none" | "email" | "tel" | "url" | "numeric" | "decimal" | undefined;
20324
+ is?: string | undefined;
20325
+ 'aria-activedescendant'?: string | undefined;
20326
+ 'aria-atomic'?: (boolean | "true" | "false") | undefined;
20327
+ 'aria-autocomplete'?: "none" | "both" | "list" | "inline" | undefined;
20328
+ 'aria-braillelabel'?: string | undefined;
20329
+ 'aria-brailleroledescription'?: string | undefined;
20330
+ 'aria-busy'?: (boolean | "true" | "false") | undefined;
20331
+ 'aria-checked'?: boolean | "true" | "false" | "mixed" | undefined;
20332
+ 'aria-colcount'?: number | undefined;
20333
+ 'aria-colindex'?: number | undefined;
20334
+ 'aria-colindextext'?: string | undefined;
20335
+ 'aria-colspan'?: number | undefined;
20336
+ 'aria-controls'?: string | undefined;
20337
+ 'aria-current'?: boolean | "time" | "date" | "step" | "true" | "false" | "page" | "location" | undefined;
20338
+ 'aria-describedby'?: string | undefined;
20339
+ 'aria-description'?: string | undefined;
20340
+ 'aria-details'?: string | undefined;
20341
+ 'aria-disabled'?: (boolean | "true" | "false") | undefined;
20342
+ 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
20343
+ 'aria-errormessage'?: string | undefined;
20344
+ 'aria-expanded'?: (boolean | "true" | "false") | undefined;
20345
+ 'aria-flowto'?: string | undefined;
20346
+ 'aria-grabbed'?: (boolean | "true" | "false") | undefined;
20347
+ 'aria-haspopup'?: boolean | "dialog" | "menu" | "true" | "false" | "grid" | "listbox" | "tree" | undefined;
20348
+ 'aria-hidden'?: (boolean | "true" | "false") | undefined;
20349
+ 'aria-invalid'?: boolean | "true" | "false" | "grammar" | "spelling" | undefined;
20350
+ 'aria-keyshortcuts'?: string | undefined;
20351
+ 'aria-labelledby'?: string | undefined;
20352
+ 'aria-level'?: number | undefined;
20353
+ 'aria-live'?: "off" | "assertive" | "polite" | undefined;
20354
+ 'aria-modal'?: (boolean | "true" | "false") | undefined;
20355
+ 'aria-multiline'?: (boolean | "true" | "false") | undefined;
20356
+ 'aria-multiselectable'?: (boolean | "true" | "false") | undefined;
20357
+ 'aria-orientation'?: "horizontal" | "vertical" | undefined;
20358
+ 'aria-owns'?: string | undefined;
20359
+ 'aria-placeholder'?: string | undefined;
20360
+ 'aria-posinset'?: number | undefined;
20361
+ 'aria-pressed'?: boolean | "true" | "false" | "mixed" | undefined;
20362
+ 'aria-readonly'?: (boolean | "true" | "false") | undefined;
20363
+ 'aria-relevant'?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | undefined;
20364
+ 'aria-required'?: (boolean | "true" | "false") | undefined;
20365
+ 'aria-roledescription'?: string | undefined;
20366
+ 'aria-rowcount'?: number | undefined;
20367
+ 'aria-rowindex'?: number | undefined;
20368
+ 'aria-rowindextext'?: string | undefined;
20369
+ 'aria-rowspan'?: number | undefined;
20370
+ 'aria-selected'?: (boolean | "true" | "false") | undefined;
20371
+ 'aria-setsize'?: number | undefined;
20372
+ 'aria-sort'?: "none" | "ascending" | "descending" | "other" | undefined;
20373
+ 'aria-valuemax'?: number | undefined;
20374
+ 'aria-valuemin'?: number | undefined;
20375
+ 'aria-valuenow'?: number | undefined;
20376
+ 'aria-valuetext'?: string | undefined;
20377
+ dangerouslySetInnerHTML?: {
20378
+ __html: string | TrustedHTML;
20379
+ } | undefined;
20380
+ onCopy?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20381
+ onCopyCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20382
+ onCut?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20383
+ onCutCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20384
+ onPaste?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20385
+ onPasteCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
20386
+ onCompositionEnd?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20387
+ onCompositionEndCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20388
+ onCompositionStart?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20389
+ onCompositionStartCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20390
+ onCompositionUpdate?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20391
+ onCompositionUpdateCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
20392
+ onFocus?: React.FocusEventHandler<HTMLDivElement> | undefined;
20393
+ onFocusCapture?: React.FocusEventHandler<HTMLDivElement> | undefined;
20394
+ onBlur?: React.FocusEventHandler<HTMLDivElement> | undefined;
20395
+ onBlurCapture?: React.FocusEventHandler<HTMLDivElement> | undefined;
20396
+ onChangeCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20397
+ onBeforeInput?: React.FormEventHandler<HTMLDivElement> | undefined;
20398
+ onBeforeInputCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20399
+ onInput?: React.FormEventHandler<HTMLDivElement> | undefined;
20400
+ onInputCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20401
+ onReset?: React.FormEventHandler<HTMLDivElement> | undefined;
20402
+ onResetCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20403
+ onSubmit?: React.FormEventHandler<HTMLDivElement> | undefined;
20404
+ onSubmitCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20405
+ onInvalid?: React.FormEventHandler<HTMLDivElement> | undefined;
20406
+ onInvalidCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
20407
+ onLoad?: React.ReactEventHandler<HTMLDivElement> | undefined;
20408
+ onLoadCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20409
+ onError?: React.ReactEventHandler<HTMLDivElement> | undefined;
20410
+ onErrorCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20411
+ onKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20412
+ onKeyDownCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20413
+ onKeyPress?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20414
+ onKeyPressCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20415
+ onKeyUp?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20416
+ onKeyUpCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
20417
+ onAbort?: React.ReactEventHandler<HTMLDivElement> | undefined;
20418
+ onAbortCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20419
+ onCanPlay?: React.ReactEventHandler<HTMLDivElement> | undefined;
20420
+ onCanPlayCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20421
+ onCanPlayThrough?: React.ReactEventHandler<HTMLDivElement> | undefined;
20422
+ onCanPlayThroughCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20423
+ onDurationChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
20424
+ onDurationChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20425
+ onEmptied?: React.ReactEventHandler<HTMLDivElement> | undefined;
20426
+ onEmptiedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20427
+ onEncrypted?: React.ReactEventHandler<HTMLDivElement> | undefined;
20428
+ onEncryptedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20429
+ onEnded?: React.ReactEventHandler<HTMLDivElement> | undefined;
20430
+ onEndedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20431
+ onLoadedData?: React.ReactEventHandler<HTMLDivElement> | undefined;
20432
+ onLoadedDataCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20433
+ onLoadedMetadata?: React.ReactEventHandler<HTMLDivElement> | undefined;
20434
+ onLoadedMetadataCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20435
+ onLoadStart?: React.ReactEventHandler<HTMLDivElement> | undefined;
20436
+ onLoadStartCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20437
+ onPause?: React.ReactEventHandler<HTMLDivElement> | undefined;
20438
+ onPauseCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20439
+ onPlay?: React.ReactEventHandler<HTMLDivElement> | undefined;
20440
+ onPlayCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20441
+ onPlaying?: React.ReactEventHandler<HTMLDivElement> | undefined;
20442
+ onPlayingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20443
+ onProgress?: React.ReactEventHandler<HTMLDivElement> | undefined;
20444
+ onProgressCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20445
+ onRateChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
20446
+ onRateChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20447
+ onResize?: ((width: number) => void) | undefined;
20448
+ onResizeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20449
+ onSeeked?: React.ReactEventHandler<HTMLDivElement> | undefined;
20450
+ onSeekedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20451
+ onSeeking?: React.ReactEventHandler<HTMLDivElement> | undefined;
20452
+ onSeekingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20453
+ onStalled?: React.ReactEventHandler<HTMLDivElement> | undefined;
20454
+ onStalledCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20455
+ onSuspend?: React.ReactEventHandler<HTMLDivElement> | undefined;
20456
+ onSuspendCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20457
+ onTimeUpdate?: React.ReactEventHandler<HTMLDivElement> | undefined;
20458
+ onTimeUpdateCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20459
+ onVolumeChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
20460
+ onVolumeChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20461
+ onWaiting?: React.ReactEventHandler<HTMLDivElement> | undefined;
20462
+ onWaitingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20463
+ onAuxClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
20464
+ onAuxClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20465
+ onClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
20466
+ onClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20467
+ onContextMenu?: React.MouseEventHandler<HTMLDivElement> | undefined;
20468
+ onContextMenuCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20469
+ onDoubleClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
20470
+ onDoubleClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20471
+ onDrag?: React.DragEventHandler<HTMLDivElement> | undefined;
20472
+ onDragCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20473
+ onDragEnd?: React.DragEventHandler<HTMLDivElement> | undefined;
20474
+ onDragEndCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20475
+ onDragEnter?: React.DragEventHandler<HTMLDivElement> | undefined;
20476
+ onDragEnterCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20477
+ onDragExit?: React.DragEventHandler<HTMLDivElement> | undefined;
20478
+ onDragExitCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20479
+ onDragLeave?: React.DragEventHandler<HTMLDivElement> | undefined;
20480
+ onDragLeaveCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20481
+ onDragOver?: React.DragEventHandler<HTMLDivElement> | undefined;
20482
+ onDragOverCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20483
+ onDragStart?: React.DragEventHandler<HTMLDivElement> | undefined;
20484
+ onDragStartCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20485
+ onDrop?: React.DragEventHandler<HTMLDivElement> | undefined;
20486
+ onDropCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
20487
+ onMouseDown?: React.MouseEventHandler<HTMLDivElement> | undefined;
20488
+ onMouseDownCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20489
+ onMouseEnter?: React.MouseEventHandler<HTMLDivElement> | undefined;
20490
+ onMouseLeave?: React.MouseEventHandler<HTMLDivElement> | undefined;
20491
+ onMouseMove?: React.MouseEventHandler<HTMLDivElement> | undefined;
20492
+ onMouseMoveCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20493
+ onMouseOut?: React.MouseEventHandler<HTMLDivElement> | undefined;
20494
+ onMouseOutCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20495
+ onMouseOver?: React.MouseEventHandler<HTMLDivElement> | undefined;
20496
+ onMouseOverCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20497
+ onMouseUp?: React.MouseEventHandler<HTMLDivElement> | undefined;
20498
+ onMouseUpCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
20499
+ onSelect?: React.ReactEventHandler<HTMLDivElement> | undefined;
20500
+ onSelectCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
20501
+ onTouchCancel?: React.TouchEventHandler<HTMLDivElement> | undefined;
20502
+ onTouchCancelCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
20503
+ onTouchEnd?: React.TouchEventHandler<HTMLDivElement> | undefined;
20504
+ onTouchEndCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
20505
+ onTouchMove?: React.TouchEventHandler<HTMLDivElement> | undefined;
20506
+ onTouchMoveCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
20507
+ onTouchStart?: React.TouchEventHandler<HTMLDivElement> | undefined;
20508
+ onTouchStartCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
20509
+ onPointerDown?: React.PointerEventHandler<HTMLDivElement> | undefined;
20510
+ onPointerDownCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20511
+ onPointerMove?: React.PointerEventHandler<HTMLDivElement> | undefined;
20512
+ onPointerMoveCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20513
+ onPointerUp?: React.PointerEventHandler<HTMLDivElement> | undefined;
20514
+ onPointerUpCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20515
+ onPointerCancel?: React.PointerEventHandler<HTMLDivElement> | undefined;
20516
+ onPointerCancelCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20517
+ onPointerEnter?: React.PointerEventHandler<HTMLDivElement> | undefined;
20518
+ onPointerEnterCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20519
+ onPointerLeave?: React.PointerEventHandler<HTMLDivElement> | undefined;
20520
+ onPointerLeaveCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20521
+ onPointerOver?: React.PointerEventHandler<HTMLDivElement> | undefined;
20522
+ onPointerOverCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20523
+ onPointerOut?: React.PointerEventHandler<HTMLDivElement> | undefined;
20524
+ onPointerOutCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20525
+ onGotPointerCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20526
+ onGotPointerCaptureCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20527
+ onLostPointerCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20528
+ onLostPointerCaptureCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
20529
+ onScroll?: React.UIEventHandler<HTMLDivElement> | undefined;
20530
+ onScrollCapture?: React.UIEventHandler<HTMLDivElement> | undefined;
20531
+ onWheel?: React.WheelEventHandler<HTMLDivElement> | undefined;
20532
+ onWheelCapture?: React.WheelEventHandler<HTMLDivElement> | undefined;
20533
+ onAnimationStart?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20534
+ onAnimationStartCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20535
+ onAnimationEnd?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20536
+ onAnimationEndCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20537
+ onAnimationIteration?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20538
+ onAnimationIterationCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
20539
+ onTransitionEnd?: React.TransitionEventHandler<HTMLDivElement> | undefined;
20540
+ onTransitionEndCapture?: React.TransitionEventHandler<HTMLDivElement> | undefined;
20541
+ ellipsis?: string | undefined;
20542
+ truncation?: "end" | "start" | "middle" | "startEnd" | undefined;
20543
+ truncationOffset?: number | undefined;
20544
+ truncationPosition?: number | undefined;
20545
+ calculationDelayMs?: number | undefined;
20546
+ } | undefined;
20547
+ renderSearchedText: (text: string, truncationProps?: EuiSelectableOptionsListProps['truncationProps']) => React.JSX.Element;
20548
+ renderTruncatedText: (text: string, truncationProps?: EuiSelectableOptionsListProps['truncationProps']) => React.JSX.Element;
20187
20549
  render(): React.JSX.Element;
20188
20550
  onAddOrRemoveOption: (option: EuiSelectableOption<T>, event: EuiSelectableOnChangeEvent) => void;
20189
20551
  private onAddOption;
@@ -21426,18 +21788,18 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21426
21788
  import { ExclusiveUnion } from '@elastic/eui/src/components/common'; type IconFunction<T> = (item: T) => EuiIconType; type ButtonColor = EuiButtonIconProps['color'] | EuiButtonEmptyProps['color']; type EuiButtonIconColorFunction<T> = (item: T) => ButtonColor;
21427
21789
  export interface DefaultItemActionBase<T> {
21428
21790
  /**
21429
- * The display name of the action (will be the button caption)
21791
+ * The display name of the action (will render as visible text if rendered within a collapsed menu)
21430
21792
  */
21431
21793
  name: ReactNode | ((item: T) => ReactNode);
21432
21794
  /**
21433
- * Describes the action (will be the button title)
21795
+ * Describes the action (will render as tooltip content)
21434
21796
  */
21435
- description: string;
21797
+ description: string | ((item: T) => string);
21436
21798
  /**
21437
21799
  * A handler function to execute the action
21438
21800
  */
21439
21801
  onClick?: (item: T) => void;
21440
- href?: string;
21802
+ href?: string | ((item: T) => string);
21441
21803
  target?: string;
21442
21804
  /**
21443
21805
  * A callback function that determines whether the action is available
@@ -21448,7 +21810,7 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21448
21810
  */
21449
21811
  enabled?: (item: T) => boolean;
21450
21812
  isPrimary?: boolean;
21451
- 'data-test-subj'?: string;
21813
+ 'data-test-subj'?: string | ((item: T) => string);
21452
21814
  }
21453
21815
  export interface DefaultItemEmptyButtonAction<T> extends DefaultItemActionBase<T> {
21454
21816
  /**
@@ -21471,7 +21833,7 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21471
21833
  export type DefaultItemAction<T> = ExclusiveUnion<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>>;
21472
21834
  export interface CustomItemAction<T> {
21473
21835
  /**
21474
- * The function that renders the action. Note that the returned node is expected to have `onFocus` and `onBlur` functions
21836
+ * Allows rendering a totally custom action
21475
21837
  */
21476
21838
  render: (item: T, enabled: boolean) => ReactElement;
21477
21839
  /**
@@ -21485,7 +21847,8 @@ declare module '@elastic/eui/src/components/basic_table/action_types' {
21485
21847
  isPrimary?: boolean;
21486
21848
  }
21487
21849
  export type Action<T> = DefaultItemAction<T> | CustomItemAction<T>;
21488
- export const isCustomItemAction: (action: DefaultItemAction<any> | CustomItemAction<any>) => action is CustomItemAction<any>;
21850
+ export const isCustomItemAction: <T>(action: (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemEmptyButtonAction<T>, DefaultItemIconButtonAction<T>> & DefaultItemIconButtonAction<T>) | (import ("@elastic/eui/src/components/common").DisambiguateSet<DefaultItemIconButtonAction<T>, DefaultItemEmptyButtonAction<T>> & DefaultItemEmptyButtonAction<T>) | CustomItemAction<T>) => action is CustomItemAction<T>;
21851
+ export const callWithItemIfFunction: <T>(item: T) => <U>(prop: U | ((item: T) => U)) => U;
21489
21852
  export {};
21490
21853
 
21491
21854
  }
@@ -21711,35 +22074,17 @@ declare module '@elastic/eui/src/components/basic_table/table_types' {
21711
22074
 
21712
22075
  }
21713
22076
  declare module '@elastic/eui/src/components/basic_table/collapsed_item_actions' {
21714
- import React, { Component, FocusEvent } from 'react';
22077
+ import React from 'react';
21715
22078
  import { Action } from '@elastic/eui/src/components/basic_table/action_types';
21716
22079
  import { ItemIdResolved } from '@elastic/eui/src/components/basic_table/table_types';
21717
- export interface CollapsedItemActionsProps<T> {
22080
+ export interface CollapsedItemActionsProps<T extends {}> {
21718
22081
  actions: Array<Action<T>>;
21719
22082
  item: T;
21720
22083
  itemId: ItemIdResolved;
21721
22084
  actionEnabled: (action: Action<T>) => boolean;
21722
22085
  className?: string;
21723
- onFocus?: (event: FocusEvent) => void;
21724
- onBlur?: () => void;
21725
- }
21726
- interface CollapsedItemActionsState {
21727
- popoverOpen: boolean;
21728
- }
21729
- export class CollapsedItemActions<T> extends Component<CollapsedItemActionsProps<T>, CollapsedItemActionsState> {
21730
- private popoverDiv;
21731
- state: {
21732
- popoverOpen: boolean;
21733
- };
21734
- togglePopover: () => void;
21735
- closePopover: () => void;
21736
- onPopoverBlur: () => void;
21737
- registerPopoverDiv: (popoverDiv: HTMLDivElement | null) => void;
21738
- componentWillUnmount(): void;
21739
- onClickItem: (onClickAction: (() => void) | undefined) => void;
21740
- render(): React.JSX.Element;
21741
22086
  }
21742
- export {};
22087
+ export const CollapsedItemActions: <T extends {}>({ actions, itemId, item, actionEnabled, className, }: CollapsedItemActionsProps<T>) => React.JSX.Element;
21743
22088
 
21744
22089
  }
21745
22090
  declare module '@elastic/eui/src/components/basic_table/default_item_action' {
@@ -21751,11 +22096,11 @@ declare module '@elastic/eui/src/components/basic_table/default_item_action' {
21751
22096
  item: T;
21752
22097
  className?: string;
21753
22098
  }
21754
- export const DefaultItemAction: <T extends {}>({ action, enabled, item, className, }: DefaultItemActionProps<T>) => ReactElement;
22099
+ export const DefaultItemAction: <T>({ action, enabled, item, className, }: DefaultItemActionProps<T>) => ReactElement;
21755
22100
 
21756
22101
  }
21757
22102
  declare module '@elastic/eui/src/components/basic_table/custom_item_action' {
21758
- import React, { Component } from 'react';
22103
+ import React from 'react';
21759
22104
  import { CustomItemAction as Action } from '@elastic/eui/src/components/basic_table/action_types';
21760
22105
  export interface CustomItemActionProps<T> {
21761
22106
  action: Action<T>;
@@ -21764,20 +22109,7 @@ declare module '@elastic/eui/src/components/basic_table/custom_item_action' {
21764
22109
  className: string;
21765
22110
  index?: number;
21766
22111
  }
21767
- interface CustomItemActionState {
21768
- hasFocus: boolean;
21769
- }
21770
- export class CustomItemAction<T> extends Component<CustomItemActionProps<T>, CustomItemActionState> {
21771
- private mounted;
21772
- constructor(props: CustomItemActionProps<T>);
21773
- componentDidMount(): void;
21774
- componentWillUnmount(): void;
21775
- onFocus: () => void;
21776
- onBlur: () => void;
21777
- hasFocus: () => boolean;
21778
- render(): React.JSX.Element;
21779
- }
21780
- export {};
22112
+ export const CustomItemAction: <T>({ action, enabled, item, className, }: CustomItemActionProps<T>) => React.JSX.Element;
21781
22113
 
21782
22114
  }
21783
22115
  declare module '@elastic/eui/src/components/basic_table/expanded_item_actions' {
@@ -28410,8 +28742,6 @@ declare module '@elastic/eui' {
28410
28742
  "euiDataGridHeaderCell.actionsPopoverScreenReaderText": any;
28411
28743
  "euiColumnSelector.dragHandleAriaLabel": any;
28412
28744
  "euiColumnSelector.button": any;
28413
- "euiColumnSelector.buttonActiveSingular": any;
28414
- "euiColumnSelector.buttonActivePlural": any;
28415
28745
  "euiColumnSelector.search": any;
28416
28746
  "euiColumnSelector.searchcolumns": any;
28417
28747
  "euiColumnSelector.selectAll": any;
@@ -28423,11 +28753,11 @@ declare module '@elastic/eui' {
28423
28753
  "euiColumnSortingDraggable.removeSortLabel": any;
28424
28754
  "euiColumnSortingDraggable.toggleLegend": any;
28425
28755
  "euiColumnSorting.button": any;
28426
- "euiColumnSorting.buttonActive": any;
28427
28756
  "euiColumnSorting.emptySorting": any;
28428
28757
  "euiColumnSorting.pickFields": any;
28429
28758
  "euiColumnSorting.sortFieldAriaLabel": any;
28430
28759
  "euiColumnSorting.clearAll": any;
28760
+ "euiDataGridToolbarControl.badgeAriaLabel": any;
28431
28761
  "euiDisplaySelector.buttonText": any;
28432
28762
  "euiDisplaySelector.resetButtonText": any;
28433
28763
  "euiDisplaySelector.densityLabel": any;
@@ -28619,8 +28949,8 @@ declare module '@elastic/eui' {
28619
28949
  "euiInlineEditForm.cancelButtonAriaLabel": any;
28620
28950
  "euiInlineEditForm.inputKeyboardInstructions": any;
28621
28951
  "euiInlineEditForm.activateEditModeDescription": any;
28622
- "euiLink.newTarget.screenReaderOnlyText": any;
28623
- "euiLink.external.ariaLabel": any;
28952
+ "euiExternalLinkIcon.ariaLabel": any;
28953
+ "euiExternalLinkIcon.newTarget.screenReaderOnlyText": any;
28624
28954
  "euiPinnableListGroup.pinExtraActionLabel": any;
28625
28955
  "euiPinnableListGroup.pinnedExtraActionLabel": any;
28626
28956
  "euiLoadingStrings.ariaLabel": any;