@elastic/eui 89.1.0 → 91.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (508) hide show
  1. package/dist/eui_charts_theme.js +1 -15
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +114 -547
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +114 -547
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/accessibility/skip_link/skip_link.js +1 -2
  8. package/es/components/accordion/accordion.js +40 -4
  9. package/es/components/accordion/accordion_children/accordion_children.js +10 -17
  10. package/es/components/basic_table/basic_table.js +60 -23
  11. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  12. package/es/components/basic_table/in_memory_table.js +18 -4
  13. package/es/components/breadcrumbs/breadcrumb.js +5 -5
  14. package/es/components/breadcrumbs/breadcrumbs.js +5 -5
  15. package/es/components/button/button.js +17 -45
  16. package/es/components/button/button_display/_button_display.js +1 -1
  17. package/es/components/button/button_empty/button_empty.js +30 -47
  18. package/es/components/button/button_group/button_group.js +8 -10
  19. package/es/components/button/button_group/button_group_button.js +8 -51
  20. package/es/components/button/button_group/button_group_button.styles.js +2 -12
  21. package/es/components/button/button_icon/button_icon.js +26 -43
  22. package/es/components/card/card.js +1 -6
  23. package/es/components/card/card_select/card_select.js +1 -6
  24. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  25. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  26. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  27. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +26 -7
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  31. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  32. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +162 -0
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  35. package/es/components/collapsible_nav_beta/context.js +1 -0
  36. package/es/components/combo_box/combo_box.js +7 -5
  37. package/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  38. package/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  39. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  40. package/es/components/combo_box/utils.js +23 -0
  41. package/es/components/comment_list/comment_event.js +31 -19
  42. package/es/components/comment_list/comment_event.styles.js +26 -24
  43. package/es/components/context_menu/context_menu.js +28 -22
  44. package/es/components/context_menu/context_menu.styles.js +26 -0
  45. package/es/components/context_menu/context_menu_item.js +95 -125
  46. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  47. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  48. package/es/components/context_menu/context_menu_panel.js +32 -61
  49. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  50. package/es/components/control_bar/control_bar.js +33 -28
  51. package/es/components/datagrid/body/data_grid_body.js +6 -7
  52. package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
  53. package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  54. package/es/components/datagrid/body/data_grid_cell.js +12 -13
  55. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  56. package/es/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  57. package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
  58. package/es/components/datagrid/controls/column_selector.js +5 -6
  59. package/es/components/datagrid/controls/column_sorting.js +6 -9
  60. package/es/components/datagrid/controls/display_selector.js +21 -16
  61. package/es/components/datagrid/data_grid.js +3 -865
  62. package/es/components/datagrid/utils/in_memory.js +6 -7
  63. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  64. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +92 -26
  65. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  66. package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  67. package/es/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  68. package/es/components/facet/facet_button.js +1 -1
  69. package/es/components/filter_group/filter_group.styles.js +1 -1
  70. package/es/components/form/field_number/field_number.js +13 -9
  71. package/es/components/form/field_password/field_password.js +4 -7
  72. package/es/components/form/range/dual_range.js +110 -85
  73. package/es/components/form/range/range.js +47 -40
  74. package/es/components/form/range/range_track.js +6 -20
  75. package/es/components/form/range/utils.js +1 -2
  76. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +5 -5
  77. package/es/components/header/header_links/header_link.js +1 -6
  78. package/es/components/header/header_links/header_links.js +5 -5
  79. package/es/components/header/header_section/header_section_item_button.js +1 -6
  80. package/es/components/i18n/i18n.js +1 -0
  81. package/es/components/list_group/list_group.js +1 -2
  82. package/es/components/list_group/list_group_item.js +7 -5
  83. package/es/components/list_group/list_group_item_extra_action.js +1 -2
  84. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  85. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  86. package/es/components/modal/confirm_modal.js +1 -1
  87. package/es/components/notification/notification_event.js +1 -6
  88. package/es/components/notification/notification_event_read_button.js +1 -2
  89. package/es/components/page/index.js +1 -4
  90. package/es/components/page/page_header/page_header_content.js +5 -5
  91. package/es/components/pagination/pagination_button.js +1 -6
  92. package/es/components/popover/input_popover.js +27 -12
  93. package/es/components/popover/popover.js +15 -27
  94. package/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  95. package/es/components/popover/popover_panel/_popover_panel.js +2 -6
  96. package/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  97. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
  98. package/es/components/tabs/tab.js +1 -1
  99. package/es/components/toast/global_toast_list.js +11 -1
  100. package/es/components/tour/tour_step.js +5 -5
  101. package/es/global_styling/mixins/_states.js +4 -1
  102. package/es/services/color/eui_palettes.js +0 -6
  103. package/es/services/color/index.js +1 -1
  104. package/es/services/hooks/useCombinedRefs.js +16 -9
  105. package/es/services/index.js +1 -2
  106. package/es/test/rtl/component_helpers.d.ts +2 -0
  107. package/es/test/rtl/component_helpers.js +40 -1
  108. package/eui.d.ts +294 -369
  109. package/i18ntokens.json +302 -248
  110. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  111. package/lib/components/accordion/accordion.js +40 -4
  112. package/lib/components/accordion/accordion_children/accordion_children.js +8 -15
  113. package/lib/components/basic_table/basic_table.js +60 -23
  114. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  115. package/lib/components/basic_table/in_memory_table.js +18 -4
  116. package/lib/components/breadcrumbs/breadcrumb.js +5 -5
  117. package/lib/components/button/button.js +24 -51
  118. package/lib/components/button/button_display/_button_display.js +1 -1
  119. package/lib/components/button/button_empty/button_empty.js +29 -46
  120. package/lib/components/button/button_group/button_group.js +7 -9
  121. package/lib/components/button/button_group/button_group_button.js +8 -51
  122. package/lib/components/button/button_group/button_group_button.styles.js +2 -12
  123. package/lib/components/button/button_icon/button_icon.js +25 -42
  124. package/lib/components/card/card.js +1 -6
  125. package/lib/components/card/card_select/card_select.js +1 -6
  126. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  127. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  128. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  129. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
  130. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  131. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  132. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  133. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  134. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  135. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +169 -0
  136. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  137. package/lib/components/collapsible_nav_beta/context.js +1 -0
  138. package/lib/components/combo_box/combo_box.js +7 -5
  139. package/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  140. package/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  141. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  142. package/lib/components/combo_box/utils.js +31 -0
  143. package/lib/components/comment_list/comment_event.js +33 -18
  144. package/lib/components/comment_list/comment_event.styles.js +28 -25
  145. package/lib/components/context_menu/context_menu.js +31 -24
  146. package/lib/components/context_menu/context_menu.styles.js +34 -0
  147. package/lib/components/context_menu/context_menu_item.js +102 -133
  148. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  149. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  150. package/lib/components/context_menu/context_menu_panel.js +35 -63
  151. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  152. package/lib/components/control_bar/control_bar.js +28 -23
  153. package/lib/components/datagrid/body/data_grid_body.js +6 -7
  154. package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
  155. package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  156. package/lib/components/datagrid/body/data_grid_cell.js +12 -13
  157. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  158. package/lib/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  159. package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
  160. package/lib/components/datagrid/controls/column_selector.js +5 -6
  161. package/lib/components/datagrid/controls/column_sorting.js +5 -8
  162. package/lib/components/datagrid/controls/display_selector.js +21 -16
  163. package/lib/components/datagrid/data_grid.js +2 -864
  164. package/lib/components/datagrid/utils/in_memory.js +6 -7
  165. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  166. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +91 -26
  167. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  168. package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  169. package/lib/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  170. package/lib/components/facet/facet_button.js +1 -1
  171. package/lib/components/filter_group/filter_group.styles.js +1 -1
  172. package/lib/components/form/field_number/field_number.js +12 -8
  173. package/lib/components/form/field_password/field_password.js +4 -7
  174. package/lib/components/form/range/dual_range.js +110 -85
  175. package/lib/components/form/range/range.js +47 -40
  176. package/lib/components/form/range/range_track.js +5 -19
  177. package/lib/components/form/range/utils.js +1 -2
  178. package/lib/components/header/header_links/header_link.js +1 -6
  179. package/lib/components/header/header_section/header_section_item_button.js +1 -6
  180. package/lib/components/i18n/i18n.js +1 -0
  181. package/lib/components/list_group/list_group.js +1 -2
  182. package/lib/components/list_group/list_group_item.js +7 -5
  183. package/lib/components/list_group/list_group_item_extra_action.js +1 -2
  184. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  185. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  186. package/lib/components/modal/confirm_modal.js +1 -1
  187. package/lib/components/notification/notification_event.js +1 -6
  188. package/lib/components/notification/notification_event_read_button.js +1 -2
  189. package/lib/components/page/index.js +1 -40
  190. package/lib/components/popover/input_popover.js +27 -12
  191. package/lib/components/popover/popover.js +29 -35
  192. package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  193. package/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  194. package/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  195. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  196. package/lib/components/tabs/tab.js +1 -1
  197. package/lib/components/toast/global_toast_list.js +11 -1
  198. package/lib/global_styling/mixins/_states.js +4 -1
  199. package/lib/services/color/eui_palettes.js +1 -8
  200. package/lib/services/color/index.js +0 -7
  201. package/lib/services/hooks/useCombinedRefs.js +19 -10
  202. package/lib/services/index.js +0 -15
  203. package/lib/test/rtl/component_helpers.d.ts +2 -0
  204. package/lib/test/rtl/component_helpers.js +41 -3
  205. package/optimize/es/components/accordion/accordion.js +32 -4
  206. package/optimize/es/components/accordion/accordion_children/accordion_children.js +8 -16
  207. package/optimize/es/components/basic_table/basic_table.js +42 -19
  208. package/optimize/es/components/button/button.js +15 -33
  209. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  210. package/optimize/es/components/button/button_group/button_group.js +7 -8
  211. package/optimize/es/components/button/button_group/button_group_button.js +6 -38
  212. package/optimize/es/components/button/button_group/button_group_button.styles.js +2 -12
  213. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  214. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  215. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  216. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -3
  217. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  218. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +64 -0
  219. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  220. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  221. package/optimize/es/components/combo_box/combo_box.js +7 -5
  222. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  223. package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  224. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  225. package/optimize/es/components/combo_box/utils.js +23 -0
  226. package/optimize/es/components/comment_list/comment_event.js +31 -19
  227. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  228. package/optimize/es/components/context_menu/context_menu.js +25 -19
  229. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  230. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  231. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  232. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  233. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  234. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  235. package/optimize/es/components/control_bar/control_bar.js +28 -23
  236. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  237. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +1 -1
  238. package/optimize/es/components/datagrid/controls/column_selector.js +5 -6
  239. package/optimize/es/components/datagrid/controls/column_sorting.js +6 -9
  240. package/optimize/es/components/datagrid/controls/display_selector.js +21 -16
  241. package/optimize/es/components/datagrid/data_grid.js +3 -3
  242. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +87 -26
  243. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  244. package/optimize/es/components/filter_group/filter_group.styles.js +1 -1
  245. package/optimize/es/components/form/field_number/field_number.js +13 -9
  246. package/optimize/es/components/form/field_password/field_password.js +4 -7
  247. package/optimize/es/components/form/range/dual_range.js +110 -85
  248. package/optimize/es/components/form/range/range.js +47 -40
  249. package/optimize/es/components/form/range/range_track.js +5 -14
  250. package/optimize/es/components/form/range/utils.js +1 -2
  251. package/optimize/es/components/i18n/i18n.js +1 -0
  252. package/optimize/es/components/list_group/list_group_item.js +6 -3
  253. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  254. package/optimize/es/components/page/index.js +1 -4
  255. package/optimize/es/components/popover/input_popover.js +27 -12
  256. package/optimize/es/components/popover/popover.js +10 -22
  257. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  258. package/optimize/es/components/popover/popover_panel/_popover_panel.js +2 -1
  259. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  260. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
  261. package/optimize/es/components/tabs/tab.js +1 -1
  262. package/optimize/es/components/toast/global_toast_list.js +1 -1
  263. package/optimize/es/global_styling/mixins/_states.js +4 -1
  264. package/optimize/es/services/color/eui_palettes.js +0 -6
  265. package/optimize/es/services/color/index.js +1 -1
  266. package/optimize/es/services/hooks/useCombinedRefs.js +16 -9
  267. package/optimize/es/services/index.js +1 -2
  268. package/optimize/es/test/rtl/component_helpers.d.ts +2 -0
  269. package/optimize/es/test/rtl/component_helpers.js +40 -1
  270. package/optimize/lib/components/accordion/accordion.js +32 -4
  271. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +6 -14
  272. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  273. package/optimize/lib/components/button/button.js +16 -34
  274. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  275. package/optimize/lib/components/button/button_group/button_group.js +6 -7
  276. package/optimize/lib/components/button/button_group/button_group_button.js +6 -38
  277. package/optimize/lib/components/button/button_group/button_group_button.styles.js +2 -12
  278. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  279. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  280. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  281. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +7 -2
  282. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  283. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +71 -0
  284. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  285. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  286. package/optimize/lib/components/combo_box/combo_box.js +7 -5
  287. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  288. package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  289. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  290. package/optimize/lib/components/combo_box/utils.js +31 -0
  291. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  292. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  293. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  294. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  295. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  296. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  297. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  298. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  299. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  300. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  301. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  302. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +1 -1
  303. package/optimize/lib/components/datagrid/controls/column_selector.js +5 -6
  304. package/optimize/lib/components/datagrid/controls/column_sorting.js +5 -8
  305. package/optimize/lib/components/datagrid/controls/display_selector.js +21 -16
  306. package/optimize/lib/components/datagrid/data_grid.js +2 -2
  307. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  308. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  309. package/optimize/lib/components/filter_group/filter_group.styles.js +1 -1
  310. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  311. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  312. package/optimize/lib/components/form/range/dual_range.js +110 -85
  313. package/optimize/lib/components/form/range/range.js +47 -40
  314. package/optimize/lib/components/form/range/range_track.js +4 -13
  315. package/optimize/lib/components/form/range/utils.js +1 -2
  316. package/optimize/lib/components/i18n/i18n.js +1 -0
  317. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  318. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  319. package/optimize/lib/components/page/index.js +1 -40
  320. package/optimize/lib/components/popover/input_popover.js +28 -13
  321. package/optimize/lib/components/popover/popover.js +24 -35
  322. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  323. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  324. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  325. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  326. package/optimize/lib/components/tabs/tab.js +1 -1
  327. package/optimize/lib/components/toast/global_toast_list.js +1 -1
  328. package/optimize/lib/global_styling/mixins/_states.js +4 -1
  329. package/optimize/lib/services/color/eui_palettes.js +1 -8
  330. package/optimize/lib/services/color/index.js +0 -7
  331. package/optimize/lib/services/hooks/useCombinedRefs.js +19 -10
  332. package/optimize/lib/services/index.js +0 -15
  333. package/optimize/lib/test/rtl/component_helpers.d.ts +2 -0
  334. package/optimize/lib/test/rtl/component_helpers.js +41 -3
  335. package/package.json +14 -14
  336. package/src/components/combo_box/_combo_box.scss +46 -14
  337. package/src/components/combo_box/combo_box_input/_combo_box_pill.scss +0 -17
  338. package/src/components/combo_box/combo_box_input/_index.scss +0 -2
  339. package/src/components/datagrid/_data_grid_data_row.scss +1 -3
  340. package/src/components/date_picker/super_date_picker/date_popover/_absolute_tab.scss +21 -0
  341. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  342. package/src/components/date_picker/super_date_picker/quick_select_popover/_quick_select_popover.scss +0 -4
  343. package/src/components/form/form_control_layout/_form_control_layout.scss +0 -1
  344. package/src/components/index.scss +0 -2
  345. package/src/global_styling/variables/_typography.scss +2 -2
  346. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  347. package/test-env/components/accordion/accordion.js +40 -4
  348. package/test-env/components/accordion/accordion_children/accordion_children.js +8 -15
  349. package/test-env/components/basic_table/basic_table.js +60 -23
  350. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  351. package/test-env/components/basic_table/in_memory_table.js +18 -4
  352. package/test-env/components/breadcrumbs/breadcrumb.js +5 -5
  353. package/test-env/components/button/button.js +17 -40
  354. package/test-env/components/button/button_display/_button_display.js +1 -1
  355. package/test-env/components/button/button_empty/button_empty.js +29 -46
  356. package/test-env/components/button/button_group/button_group.js +7 -9
  357. package/test-env/components/button/button_group/button_group_button.js +8 -51
  358. package/test-env/components/button/button_group/button_group_button.styles.js +2 -12
  359. package/test-env/components/button/button_icon/button_icon.js +25 -42
  360. package/test-env/components/card/card.js +1 -6
  361. package/test-env/components/card/card_select/card_select.js +1 -6
  362. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  363. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  364. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  365. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
  366. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  367. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  368. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  369. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  370. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  371. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +168 -0
  372. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  373. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  374. package/test-env/components/combo_box/combo_box.js +7 -5
  375. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  376. package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  377. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  378. package/test-env/components/combo_box/utils.js +31 -0
  379. package/test-env/components/comment_list/comment_event.js +33 -18
  380. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  381. package/test-env/components/context_menu/context_menu.js +31 -24
  382. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  383. package/test-env/components/context_menu/context_menu_item.js +102 -129
  384. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  385. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  386. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  387. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  388. package/test-env/components/control_bar/control_bar.js +28 -23
  389. package/test-env/components/datagrid/body/data_grid_body.js +6 -7
  390. package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
  391. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  392. package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
  393. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  394. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  395. package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
  396. package/test-env/components/datagrid/controls/column_selector.js +5 -6
  397. package/test-env/components/datagrid/controls/column_sorting.js +5 -8
  398. package/test-env/components/datagrid/controls/display_selector.js +21 -16
  399. package/test-env/components/datagrid/data_grid.js +2 -864
  400. package/test-env/components/datagrid/utils/in_memory.js +6 -7
  401. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  402. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  403. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  404. package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  405. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  406. package/test-env/components/facet/facet_button.js +1 -1
  407. package/test-env/components/filter_group/filter_group.styles.js +1 -1
  408. package/test-env/components/form/field_number/field_number.js +12 -8
  409. package/test-env/components/form/field_password/field_password.js +4 -7
  410. package/test-env/components/form/range/dual_range.js +110 -85
  411. package/test-env/components/form/range/range.js +47 -40
  412. package/test-env/components/form/range/range_track.js +5 -14
  413. package/test-env/components/form/range/utils.js +1 -2
  414. package/test-env/components/header/header_links/header_link.js +1 -6
  415. package/test-env/components/header/header_section/header_section_item_button.js +1 -6
  416. package/test-env/components/i18n/i18n.js +1 -0
  417. package/test-env/components/list_group/list_group.js +1 -2
  418. package/test-env/components/list_group/list_group_item.js +7 -5
  419. package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
  420. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  421. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  422. package/test-env/components/modal/confirm_modal.js +1 -1
  423. package/test-env/components/notification/notification_event.js +1 -6
  424. package/test-env/components/notification/notification_event_read_button.js +1 -2
  425. package/test-env/components/page/index.js +1 -40
  426. package/test-env/components/popover/input_popover.js +27 -12
  427. package/test-env/components/popover/popover.js +29 -35
  428. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  429. package/test-env/components/popover/popover_panel/_popover_panel.js +2 -1
  430. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  431. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  432. package/test-env/components/tabs/tab.js +1 -1
  433. package/test-env/components/toast/global_toast_list.js +11 -1
  434. package/test-env/global_styling/mixins/_states.js +4 -1
  435. package/test-env/services/color/eui_palettes.js +1 -8
  436. package/test-env/services/color/index.js +0 -7
  437. package/test-env/services/hooks/useCombinedRefs.js +19 -10
  438. package/test-env/services/index.js +0 -15
  439. package/test-env/test/rtl/component_helpers.js +41 -3
  440. package/es/components/page/page_content/index.js +0 -12
  441. package/es/components/page/page_content/page_content.js +0 -110
  442. package/es/components/page/page_content/page_content_body.js +0 -69
  443. package/es/components/page/page_content/page_content_header.js +0 -43
  444. package/es/components/page/page_content/page_content_header_section.js +0 -34
  445. package/es/components/page/page_side_bar/index.js +0 -9
  446. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  447. package/es/components/page/page_template.js +0 -591
  448. package/es/services/random.js +0 -94
  449. package/es/services/utils.js +0 -25
  450. package/es/test/patch_random.js +0 -18
  451. package/lib/components/page/page_content/index.js +0 -33
  452. package/lib/components/page/page_content/page_content.js +0 -117
  453. package/lib/components/page/page_content/page_content_body.js +0 -77
  454. package/lib/components/page/page_content/page_content_header.js +0 -50
  455. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  456. package/lib/components/page/page_side_bar/index.js +0 -12
  457. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  458. package/lib/components/page/page_template.js +0 -598
  459. package/lib/services/random.js +0 -100
  460. package/lib/services/utils.js +0 -35
  461. package/lib/test/patch_random.js +0 -25
  462. package/optimize/es/components/page/page_content/index.js +0 -12
  463. package/optimize/es/components/page/page_content/page_content.js +0 -45
  464. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  465. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  466. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  467. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  468. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  469. package/optimize/es/components/page/page_template.js +0 -325
  470. package/optimize/es/services/random.js +0 -85
  471. package/optimize/es/services/utils.js +0 -25
  472. package/optimize/es/test/patch_random.js +0 -18
  473. package/optimize/lib/components/page/page_content/index.js +0 -33
  474. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  475. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  476. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  477. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  478. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  479. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  480. package/optimize/lib/components/page/page_template.js +0 -332
  481. package/optimize/lib/services/random.js +0 -91
  482. package/optimize/lib/services/utils.js +0 -35
  483. package/optimize/lib/test/patch_random.js +0 -25
  484. package/src/components/combo_box/combo_box_input/_combo_box_input.scss +0 -12
  485. package/src/components/combo_box/combo_box_input/_combo_box_placeholder.scss +0 -11
  486. package/src/components/context_menu/_context_menu.scss +0 -27
  487. package/src/components/context_menu/_context_menu_item.scss +0 -65
  488. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  489. package/src/components/context_menu/_index.scss +0 -3
  490. package/src/components/page/_index.scss +0 -2
  491. package/src/components/page/page_content/_index.scss +0 -4
  492. package/src/components/page/page_content/_page_content.scss +0 -25
  493. package/src/components/page/page_content/_page_content_body.scss +0 -19
  494. package/src/components/page/page_content/_page_content_header.scss +0 -20
  495. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  496. package/src/components/page/page_side_bar/_index.scss +0 -1
  497. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  498. package/test-env/components/page/page_content/index.js +0 -33
  499. package/test-env/components/page/page_content/page_content.js +0 -116
  500. package/test-env/components/page/page_content/page_content_body.js +0 -73
  501. package/test-env/components/page/page_content/page_content_header.js +0 -49
  502. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  503. package/test-env/components/page/page_side_bar/index.js +0 -12
  504. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  505. package/test-env/components/page/page_template.js +0 -594
  506. package/test-env/services/random.js +0 -91
  507. package/test-env/services/utils.js +0 -35
  508. package/test-env/test/patch_random.js +0 -25
@@ -85,9 +85,11 @@ var EuiSelectableTemplateSitewide = function EuiSelectableTemplateSitewide(_ref)
85
85
  setPopoverIsOpen(false);
86
86
  _closePopover && _closePopover();
87
87
  };
88
- var togglePopover = function togglePopover() {
89
- setPopoverIsOpen(!popoverIsOpen);
90
- };
88
+ var togglePopover = (0, _react.useCallback)(function () {
89
+ setPopoverIsOpen(function (isOpen) {
90
+ return !isOpen;
91
+ });
92
+ }, []);
91
93
 
92
94
  // Width applied to the internal div
93
95
  var popoverWidth = width || 600;
@@ -162,16 +164,16 @@ var EuiSelectableTemplateSitewide = function EuiSelectableTemplateSitewide(_ref)
162
164
  if (!currentBreakpoint) return false;
163
165
  return popoverButtonBreakpoints.includes(currentBreakpoint);
164
166
  }, [currentBreakpoint, popoverButtonBreakpoints]);
165
- var popoverTrigger;
166
- if (popoverButton && canShowPopoverButton) {
167
- popoverTrigger = /*#__PURE__*/_react.default.cloneElement(popoverButton, _objectSpread(_objectSpread({}, popoverButton.props), {}, {
167
+ var popoverTrigger = (0, _react.useMemo)(function () {
168
+ if (!popoverButton || !canShowPopoverButton) return;
169
+ return (0, _react2.jsx)("span", {
170
+ className: "euiSelectableTemplateSitewide__popoverTrigger",
168
171
  onClick: togglePopover,
169
172
  onKeyDown: function onKeyDown(e) {
170
- // Selectable preventsDefault on Enter which kills browser controls for pressing the button
171
- e.stopPropagation();
173
+ return e.stopPropagation();
172
174
  }
173
- }));
174
- }
175
+ }, popoverButton);
176
+ }, [popoverButton, canShowPopoverButton, togglePopover]);
175
177
  return (0, _react2.jsx)(_selectable.EuiSelectable, _extends({
176
178
  isLoading: isLoading,
177
179
  options: formattedOptions,
@@ -89,7 +89,7 @@ var EuiTab = function EuiTab(_ref) {
89
89
  css: cssTabStyles,
90
90
  disabled: disabled
91
91
  }, rest), prependNode, (0, _react2.jsx)("span", {
92
- className: "euiTab__content",
92
+ className: "euiTab__content eui-textTruncate",
93
93
  css: cssTabContentStyles
94
94
  }, children), appendNode);
95
95
  };
@@ -284,7 +284,7 @@ var EuiGlobalToastList = function EuiGlobalToastList(_ref) {
284
284
  var classes = (0, _classnames.default)('euiGlobalToastList', className);
285
285
  return (0, _react2.jsx)("div", _extends({
286
286
  "aria-live": "polite",
287
- role: "region",
287
+ role: "log",
288
288
  ref: listElement,
289
289
  css: cssStyles,
290
290
  className: classes
@@ -322,6 +322,16 @@ EuiGlobalToastList.propTypes = {
322
322
  * Optional callback that fires when a user clicks the "Clear all" button.
323
323
  */
324
324
  onClearAllToasts: _propTypes.default.func,
325
+ /**
326
+ * Defaults to the [log role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/log_role).
327
+ *
328
+ * The [alert role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/alert_role)
329
+ * can be considered only if *all* toasts in this list will require immediate user attention.
330
+ * Several alerts at once, and unnecessary alerts, will a create bad screen reader user experience.
331
+ *
332
+ * @default log
333
+ */
334
+ role: _propTypes.default.any,
325
335
  className: _propTypes.default.string,
326
336
  "aria-label": _propTypes.default.string,
327
337
  "data-test-subj": _propTypes.default.string,
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useEuiFocusRing = exports.euiOutline = exports.euiFocusRing = void 0;
7
7
  var _services = require("../../services");
8
+ var _functions = require("../functions");
8
9
  /*
9
10
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
10
11
  * or more contributor license agreements. Licensed under the Elastic License
@@ -35,7 +36,9 @@ var euiOutline = function euiOutline(_ref) {
35
36
  } else if (offset === 'outset') {
36
37
  outlineOffset = "".concat(outlineWidth);
37
38
  } else if (offset === 'center') {
38
- outlineOffset = "calc(".concat(outlineWidth, " / -2);");
39
+ outlineOffset = (0, _functions.mathWithUnits)(outlineWidth, function (x) {
40
+ return x / -2;
41
+ });
39
42
  }
40
43
 
41
44
  // This is a separate function from `euiFocusRing` because some EUI components
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.euiPaletteWarm = exports.euiPalettePositive = exports.euiPaletteNegative = exports.euiPaletteGray = exports.euiPaletteForTemperature = exports.euiPaletteForStatus = exports.euiPaletteForLightBackground = exports.euiPaletteForDarkBackground = exports.euiPaletteCool = exports.euiPaletteComplimentary = exports.euiPaletteComplementary = exports.euiPaletteColorBlindBehindText = exports.euiPaletteColorBlind = void 0;
6
+ exports.euiPaletteWarm = exports.euiPalettePositive = exports.euiPaletteNegative = exports.euiPaletteGray = exports.euiPaletteForTemperature = exports.euiPaletteForStatus = exports.euiPaletteForLightBackground = exports.euiPaletteForDarkBackground = exports.euiPaletteCool = exports.euiPaletteComplementary = exports.euiPaletteColorBlindBehindText = exports.euiPaletteColorBlind = void 0;
7
7
  var _chromaJs = _interopRequireDefault(require("chroma-js"));
8
8
  var _color_palette = require("./color_palette");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -164,14 +164,7 @@ var euiPaletteComplementary = function euiPaletteComplementary(steps) {
164
164
  }
165
165
  return euiPalette([euiPaletteColorBlind()[1], euiPaletteColorBlind()[7]], steps, true);
166
166
  };
167
-
168
- /**
169
- * The old typo'd name for this palette remains exported until the end of its deprecation period
170
- * @deprecated Use euiPaletteComplementary instead
171
- */
172
167
  exports.euiPaletteComplementary = euiPaletteComplementary;
173
- var euiPaletteComplimentary = euiPaletteComplementary;
174
- exports.euiPaletteComplimentary = euiPaletteComplimentary;
175
168
  var euiPaletteNegative = function euiPaletteNegative(steps) {
176
169
  if (steps === 1) {
177
170
  return [lightNegativeColor];
@@ -23,7 +23,6 @@ var _exportNames = {
23
23
  euiPaletteColorBlindBehindText: true,
24
24
  euiPaletteForStatus: true,
25
25
  euiPaletteForTemperature: true,
26
- euiPaletteComplimentary: true,
27
26
  euiPaletteComplementary: true,
28
27
  euiPaletteNegative: true,
29
28
  euiPalettePositive: true,
@@ -80,12 +79,6 @@ Object.defineProperty(exports, "euiPaletteComplementary", {
80
79
  return _eui_palettes.euiPaletteComplementary;
81
80
  }
82
81
  });
83
- Object.defineProperty(exports, "euiPaletteComplimentary", {
84
- enumerable: true,
85
- get: function get() {
86
- return _eui_palettes.euiPaletteComplimentary;
87
- }
88
- });
89
82
  Object.defineProperty(exports, "euiPaletteCool", {
90
83
  enumerable: true,
91
84
  get: function get() {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useCombinedRefs = void 0;
6
+ exports.useCombinedRefs = exports.setMultipleRefs = void 0;
7
7
  var _react = require("react");
8
8
  /*
9
9
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -22,14 +22,23 @@ var _react = require("react");
22
22
  */
23
23
  var useCombinedRefs = function useCombinedRefs(refs) {
24
24
  return (0, _react.useCallback)(function (node) {
25
- return refs.forEach(function (ref) {
26
- if (!ref) return;
27
- if (typeof ref === 'function') {
28
- ref(node);
29
- } else {
30
- ref.current = node;
31
- }
32
- });
25
+ return setMultipleRefs(refs, node);
33
26
  }, [refs]);
34
27
  };
35
- exports.useCombinedRefs = useCombinedRefs;
28
+
29
+ /**
30
+ * Non-hook util for setting multiple refs/ref types.
31
+ * Useful for non-functional components
32
+ */
33
+ exports.useCombinedRefs = useCombinedRefs;
34
+ var setMultipleRefs = function setMultipleRefs(refs, node) {
35
+ refs.forEach(function (ref) {
36
+ if (!ref) return;
37
+ if (typeof ref === 'function') {
38
+ ref(node);
39
+ } else {
40
+ ref.current = node;
41
+ }
42
+ });
43
+ };
44
+ exports.setMultipleRefs = setMultipleRefs;
@@ -27,7 +27,6 @@ var _exportNames = {
27
27
  desaturate: true,
28
28
  euiPaletteColorBlind: true,
29
29
  euiPaletteColorBlindBehindText: true,
30
- euiPaletteComplimentary: true,
31
30
  euiPaletteComplementary: true,
32
31
  euiPaletteCool: true,
33
32
  euiPaletteForDarkBackground: true,
@@ -72,7 +71,6 @@ var _exportNames = {
72
71
  Pager: true,
73
72
  calculatePopoverPosition: true,
74
73
  findPopoverPosition: true,
75
- Random: true,
76
74
  getSecureRelForTarget: true,
77
75
  Comparators: true,
78
76
  PropertySortType: true,
@@ -155,12 +153,6 @@ Object.defineProperty(exports, "RIGHT_ALIGNMENT", {
155
153
  return _alignment.RIGHT_ALIGNMENT;
156
154
  }
157
155
  });
158
- Object.defineProperty(exports, "Random", {
159
- enumerable: true,
160
- get: function get() {
161
- return _random.Random;
162
- }
163
- });
164
156
  Object.defineProperty(exports, "SortDirection", {
165
157
  enumerable: true,
166
158
  get: function get() {
@@ -257,12 +249,6 @@ Object.defineProperty(exports, "euiPaletteComplementary", {
257
249
  return _color.euiPaletteComplementary;
258
250
  }
259
251
  });
260
- Object.defineProperty(exports, "euiPaletteComplimentary", {
261
- enumerable: true,
262
- get: function get() {
263
- return _color.euiPaletteComplimentary;
264
- }
265
- });
266
252
  Object.defineProperty(exports, "euiPaletteCool", {
267
253
  enumerable: true,
268
254
  get: function get() {
@@ -643,7 +629,6 @@ Object.keys(_hooks).forEach(function (key) {
643
629
  var _number = require("./number");
644
630
  var _paging = require("./paging");
645
631
  var _popover = require("./popover");
646
- var _random = require("./random");
647
632
  var _security = require("./security");
648
633
  var _sort = require("./sort");
649
634
  var _string = require("./string");
@@ -10,3 +10,5 @@ export declare const waitForEuiToolTipVisible: () => Promise<void>;
10
10
  export declare const waitForEuiToolTipHidden: () => Promise<void>;
11
11
 
12
12
  export declare const showEuiComboBoxOptions: () => Promise<void>;
13
+
14
+ export declare const waitForEuiContextMenuPanelTransition: () => Promise<void>;
@@ -4,7 +4,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.waitForEuiToolTipVisible = exports.waitForEuiToolTipHidden = exports.waitForEuiPopoverOpen = exports.waitForEuiPopoverClose = exports.showEuiComboBoxOptions = void 0;
7
+ exports.waitForEuiToolTipVisible = exports.waitForEuiToolTipHidden = exports.waitForEuiPopoverOpen = exports.waitForEuiPopoverClose = exports.waitForEuiContextMenuPanelTransition = exports.showEuiComboBoxOptions = void 0;
8
8
  require("@testing-library/jest-dom");
9
9
  var _react = require("@testing-library/react");
10
10
  var _custom_render = require("./custom_render");
@@ -122,7 +122,7 @@ var waitForEuiToolTipHidden = /*#__PURE__*/function () {
122
122
  }();
123
123
 
124
124
  /**
125
- * Doot doo
125
+ * EuiComboBox
126
126
  */
127
127
  exports.waitForEuiToolTipHidden = waitForEuiToolTipHidden;
128
128
  var showEuiComboBoxOptions = /*#__PURE__*/function () {
@@ -148,4 +148,42 @@ var showEuiComboBoxOptions = /*#__PURE__*/function () {
148
148
  return _ref5.apply(this, arguments);
149
149
  };
150
150
  }();
151
- exports.showEuiComboBoxOptions = showEuiComboBoxOptions;
151
+
152
+ /**
153
+ * EuiContextMenu
154
+ */
155
+ exports.showEuiComboBoxOptions = showEuiComboBoxOptions;
156
+ var waitForEuiContextMenuPanelTransition = /*#__PURE__*/function () {
157
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
158
+ var getPanels;
159
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
160
+ while (1) switch (_context6.prev = _context6.next) {
161
+ case 0:
162
+ // Used document instead of container or screen due to context menus living in portals
163
+ getPanels = function getPanels() {
164
+ return document.querySelectorAll('.euiContextMenuPanel');
165
+ }; // 2 panels will appear for the transition animation
166
+ _context6.next = 3;
167
+ return (0, _react.waitFor)(function () {
168
+ expect(getPanels().length).toEqual(2);
169
+ });
170
+ case 3:
171
+ // Outgoing panel will be removed on animation end
172
+ _react.fireEvent.animationEnd(getPanels()[0]);
173
+ if (getPanels().length > 1) {
174
+ _react.fireEvent.animationEnd(getPanels()[1]);
175
+ }
176
+
177
+ // Transition/animation is done once we're back to 1 panel
178
+ expect(getPanels().length).toEqual(1);
179
+ case 6:
180
+ case "end":
181
+ return _context6.stop();
182
+ }
183
+ }, _callee6);
184
+ }));
185
+ return function waitForEuiContextMenuPanelTransition() {
186
+ return _ref6.apply(this, arguments);
187
+ };
188
+ }();
189
+ exports.waitForEuiContextMenuPanelTransition = waitForEuiContextMenuPanelTransition;
@@ -7,7 +7,7 @@ import _inherits from "@babel/runtime/helpers/inherits";
7
7
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
8
8
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
9
9
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
- var _excluded = ["children", "className", "id", "element", "buttonElement", "buttonProps", "buttonClassName", "buttonContentClassName", "buttonContent", "arrowDisplay", "arrowProps", "extraAction", "paddingSize", "borders", "initialIsOpen", "forceState", "isLoading", "isLoadingMessage", "isDisabled", "theme"];
10
+ var _excluded = ["children", "className", "id", "role", "element", "buttonElement", "buttonProps", "buttonClassName", "buttonContentClassName", "buttonContent", "arrowDisplay", "arrowProps", "extraAction", "paddingSize", "borders", "initialIsOpen", "forceState", "isLoading", "isLoadingMessage", "isDisabled", "theme"];
11
11
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
12
12
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
13
13
  /*
@@ -44,7 +44,19 @@ export var EuiAccordionClass = /*#__PURE__*/function (_Component) {
44
44
  var forceState = _this.props.forceState;
45
45
  if (forceState) {
46
46
  var _this$props$onToggle, _this$props;
47
- (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, forceState === 'open' ? false : true);
47
+ var nextState = !_this.isOpen;
48
+ (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, nextState);
49
+
50
+ // If the accordion should theoretically be opened, wait a tick (allows
51
+ // consumer state to update) and attempt to focus the child content.
52
+ // NOTE: Even if the accordion does not actually open, this is fine -
53
+ // the `inert` property on the hidden children will prevent focus
54
+ if (nextState === true) {
55
+ requestAnimationFrame(function () {
56
+ var _this$accordionChildr;
57
+ (_this$accordionChildr = _this.accordionChildrenEl) === null || _this$accordionChildr === void 0 ? void 0 : _this$accordionChildr.focus();
58
+ });
59
+ }
48
60
  } else {
49
61
  _this.setState(function (prevState) {
50
62
  return {
@@ -53,9 +65,21 @@ export var EuiAccordionClass = /*#__PURE__*/function (_Component) {
53
65
  }, function () {
54
66
  var _this$props$onToggle2, _this$props2;
55
67
  (_this$props$onToggle2 = (_this$props2 = _this.props).onToggle) === null || _this$props$onToggle2 === void 0 ? void 0 : _this$props$onToggle2.call(_this$props2, _this.state.isOpen);
68
+
69
+ // If the accordion is open, programmatically move focus
70
+ // from the accordion trigger to the child content
71
+ if (_this.state.isOpen) {
72
+ var _this$accordionChildr2;
73
+ (_this$accordionChildr2 = _this.accordionChildrenEl) === null || _this$accordionChildr2 === void 0 ? void 0 : _this$accordionChildr2.focus();
74
+ }
56
75
  });
57
76
  }
58
77
  });
78
+ // Used to focus the accordion children on user trigger click only (vs controlled/programmatic open)
79
+ _defineProperty(_assertThisInitialized(_this), "accordionChildrenEl", null);
80
+ _defineProperty(_assertThisInitialized(_this), "accordionChildrenRef", function (node) {
81
+ _this.accordionChildrenEl = node;
82
+ });
59
83
  _defineProperty(_assertThisInitialized(_this), "generatedId", htmlIdGenerator()());
60
84
  return _this;
61
85
  }
@@ -72,6 +96,7 @@ export var EuiAccordionClass = /*#__PURE__*/function (_Component) {
72
96
  children = _this$props3.children,
73
97
  className = _this$props3.className,
74
98
  id = _this$props3.id,
99
+ role = _this$props3.role,
75
100
  _this$props3$element = _this$props3.element,
76
101
  Element = _this$props3$element === void 0 ? 'div' : _this$props3$element,
77
102
  buttonElement = _this$props3.buttonElement,
@@ -117,12 +142,14 @@ export var EuiAccordionClass = /*#__PURE__*/function (_Component) {
117
142
  onToggle: this.onToggle,
118
143
  extraAction: isLoading ? ___EmotionJSX(EuiLoadingSpinner, null) : extraAction
119
144
  }), ___EmotionJSX(EuiAccordionChildren, {
145
+ role: role,
120
146
  id: id,
121
147
  "aria-labelledby": buttonId,
122
148
  paddingSize: paddingSize,
123
149
  isLoading: isLoading,
124
150
  isLoadingMessage: isLoadingMessage,
125
- isOpen: this.isOpen
151
+ isOpen: this.isOpen,
152
+ accordionChildrenRef: this.accordionChildrenRef
126
153
  }, children));
127
154
  }
128
155
  }]);
@@ -137,6 +164,7 @@ _defineProperty(EuiAccordionClass, "defaultProps", {
137
164
  isDisabled: false,
138
165
  isLoadingMessage: false,
139
166
  element: 'div',
140
- buttonElement: 'button'
167
+ buttonElement: 'button',
168
+ role: 'group'
141
169
  });
142
170
  export var EuiAccordion = withEuiTheme(EuiAccordionClass);
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["children", "paddingSize", "isLoading", "isLoadingMessage", "isOpen"];
4
+ var _excluded = ["role", "children", "accordionChildrenRef", "paddingSize", "isLoading", "isLoadingMessage", "isOpen"];
5
5
  /*
6
6
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
7
7
  * or more contributor license agreements. Licensed under the Elastic License
@@ -10,15 +10,17 @@ var _excluded = ["children", "paddingSize", "isLoading", "isLoadingMessage", "is
10
10
  * Side Public License, v 1.
11
11
  */
12
12
 
13
- import React, { useRef, useCallback, useMemo, useState } from 'react';
13
+ import React, { useCallback, useMemo, useState } from 'react';
14
14
  import classNames from 'classnames';
15
- import { useEuiTheme, useUpdateEffect } from '../../../services';
15
+ import { useEuiTheme } from '../../../services';
16
16
  import { EuiResizeObserver } from '../../observer/resize_observer';
17
17
  import { EuiAccordionChildrenLoading } from './accordion_children_loading';
18
18
  import { euiAccordionChildrenStyles, euiAccordionChildWrapperStyles } from './accordion_children.styles';
19
19
  import { jsx as ___EmotionJSX } from "@emotion/react";
20
20
  export var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
21
- var children = _ref.children,
21
+ var role = _ref.role,
22
+ children = _ref.children,
23
+ accordionChildrenRef = _ref.accordionChildrenRef,
22
24
  paddingSize = _ref.paddingSize,
23
25
  isLoading = _ref.isLoading,
24
26
  isLoadingMessage = _ref.isLoadingMessage,
@@ -39,7 +41,6 @@ export var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
39
41
  */
40
42
  var wrapperStyles = euiAccordionChildWrapperStyles(euiTheme);
41
43
  var wrapperCssStyles = [wrapperStyles.euiAccordion__childWrapper, isOpen ? wrapperStyles.isOpen : wrapperStyles.isClosed];
42
- var wrapperRef = useRef(null);
43
44
 
44
45
  /**
45
46
  * Update the accordion wrapper height whenever the accordion opens, and also
@@ -58,21 +59,12 @@ export var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
58
59
  blockSize: isOpen ? contentHeight : 0
59
60
  };
60
61
  }, [isOpen, contentHeight]);
61
-
62
- /**
63
- * Focus the children wrapper when the accordion is opened,
64
- * but not if the accordion is initially open on mount
65
- */
66
- useUpdateEffect(function () {
67
- var _wrapperRef$current;
68
- if (isOpen) (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.focus();
69
- }, [isOpen]);
70
62
  return ___EmotionJSX("div", _extends({}, rest, {
71
63
  className: "euiAccordion__childWrapper",
72
64
  css: wrapperCssStyles,
73
65
  style: heightInlineStyle,
74
- ref: wrapperRef,
75
- role: "region",
66
+ ref: accordionChildrenRef,
67
+ role: role,
76
68
  tabIndex: -1
77
69
  // @ts-expect-error - inert property not yet available in React TS defs. TODO: Remove this once https://github.com/DefinitelyTyped/DefinitelyTyped/pull/60822 is merged
78
70
  ,
@@ -218,18 +218,27 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
218
218
  var _ref5, _this$props$paginatio, _this$props$paginatio2, _this$context$EuiTabl;
219
219
  return (_ref5 = (_this$props$paginatio = (_this$props$paginatio2 = this.props.pagination) === null || _this$props$paginatio2 === void 0 ? void 0 : _this$props$paginatio2.pageSize) !== null && _this$props$paginatio !== void 0 ? _this$props$paginatio : (_this$context$EuiTabl = this.context.EuiTablePagination) === null || _this$context$EuiTabl === void 0 ? void 0 : _this$context$EuiTabl.itemsPerPage) !== null && _ref5 !== void 0 ? _ref5 : euiTablePaginationDefaults.itemsPerPage;
220
220
  }
221
+ }, {
222
+ key: "isSelectionControlled",
223
+ get: function get() {
224
+ var _this$props$selection;
225
+ return !!((_this$props$selection = this.props.selection) !== null && _this$props$selection !== void 0 && _this$props$selection.selected);
226
+ }
221
227
  }, {
222
228
  key: "getInitialSelection",
223
229
  value: function getInitialSelection() {
230
+ if (this.isSelectionControlled) return;
224
231
  if (this.props.selection && this.props.selection.initialSelected && !this.state.initialSelectionRendered && this.props.items.length > 0) {
225
232
  this.setState({
226
- selection: this.props.selection.initialSelected
227
- });
228
- this.setState({
233
+ selection: this.props.selection.initialSelected,
229
234
  initialSelectionRendered: true
230
235
  });
231
236
  }
232
237
  }
238
+
239
+ /**
240
+ * @deprecated Use `selection.selected` instead to declaratively control table selection
241
+ */
233
242
  }, {
234
243
  key: "setSelection",
235
244
  value: function setSelection(newSelection) {
@@ -252,15 +261,15 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
252
261
  }
253
262
  }, {
254
263
  key: "changeSelection",
255
- value: function changeSelection(selection) {
256
- if (!this.props.selection) {
257
- return;
258
- }
259
- this.setState({
260
- selection: selection
261
- });
262
- if (this.props.selection.onSelectionChange) {
263
- this.props.selection.onSelectionChange(selection);
264
+ value: function changeSelection(changedSelection) {
265
+ var _selection$onSelectio;
266
+ var selection = this.props.selection;
267
+ if (!selection) return;
268
+ (_selection$onSelectio = selection.onSelectionChange) === null || _selection$onSelectio === void 0 ? void 0 : _selection$onSelectio.call(selection, changedSelection);
269
+ if (!this.isSelectionControlled) {
270
+ this.setState({
271
+ selection: changedSelection
272
+ });
264
273
  }
265
274
  }
266
275
  }, {
@@ -948,16 +957,30 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
948
957
  selection: []
949
958
  };
950
959
  }
951
- var itemId = nextProps.itemId;
952
- var selection = prevState.selection.filter(function (selectedItem) {
953
- return nextProps.items.findIndex(function (item) {
960
+ var controlledSelection = nextProps.selection.selected;
961
+ var unfilteredSelection = controlledSelection !== null && controlledSelection !== void 0 ? controlledSelection : prevState.selection;
962
+
963
+ // Ensure we're not including selections that aren't in the
964
+ // current `items` array (affected by pagination)
965
+ var itemId = nextProps.itemId,
966
+ items = nextProps.items;
967
+ var selection = unfilteredSelection.filter(function (selectedItem) {
968
+ return items.findIndex(function (item) {
954
969
  return getItemId(item, itemId) === getItemId(selectedItem, itemId);
955
970
  }) !== -1;
956
971
  });
957
- if (selection.length !== prevState.selection.length) {
958
- if (nextProps.selection.onSelectionChange) {
959
- nextProps.selection.onSelectionChange(selection);
960
- }
972
+
973
+ // If some selected items were filtered out, update state and callback
974
+ if (selection.length !== unfilteredSelection.length) {
975
+ var _nextProps$selection$, _nextProps$selection;
976
+ (_nextProps$selection$ = (_nextProps$selection = nextProps.selection).onSelectionChange) === null || _nextProps$selection$ === void 0 ? void 0 : _nextProps$selection$.call(_nextProps$selection, selection);
977
+ return {
978
+ selection: selection
979
+ };
980
+ }
981
+
982
+ // Always update selection state from props if controlled
983
+ if (controlledSelection) {
961
984
  return {
962
985
  selection: selection
963
986
  };
@@ -1,7 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
4
- var _excluded = ["className", "buttonRef", "color", "fill"];
3
+ var _excluded = ["className", "buttonRef", "size", "color", "fill"];
5
4
  /*
6
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
7
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -14,54 +13,37 @@ import React from 'react';
14
13
  import classNames from 'classnames';
15
14
  import { BUTTON_COLORS, useEuiButtonColorCSS, useEuiButtonFocusCSS } from '../../themes/amsterdam/global_styling/mixins/button';
16
15
  import { EuiButtonDisplay, isButtonDisabled } from './button_display/_button_display';
17
- import { EuiThemeProvider } from '../../services';
18
16
  import { jsx as ___EmotionJSX } from "@emotion/react";
19
- export var COLORS = [].concat(_toConsumableArray(BUTTON_COLORS), ['ghost']);
17
+ export var COLORS = BUTTON_COLORS;
20
18
  export var SIZES = ['s', 'm'];
21
19
  /**
22
20
  * EuiButton is largely responsible for providing relevant props
23
21
  * and the logic for element-specific attributes
24
22
  */
25
- export var EuiButton = function EuiButton(props) {
26
- var className = props.className,
27
- buttonRef = props.buttonRef,
28
- _props$color = props.color,
29
- _color = _props$color === void 0 ? 'primary' : _props$color,
30
- fill = props.fill,
31
- rest = _objectWithoutProperties(props, _excluded);
32
- var buttonIsDisabled = isButtonDisabled({
23
+ export var EuiButton = function EuiButton(_ref) {
24
+ var className = _ref.className,
25
+ buttonRef = _ref.buttonRef,
26
+ _ref$size = _ref.size,
27
+ size = _ref$size === void 0 ? 'm' : _ref$size,
28
+ _ref$color = _ref.color,
29
+ color = _ref$color === void 0 ? 'primary' : _ref$color,
30
+ fill = _ref.fill,
31
+ rest = _objectWithoutProperties(_ref, _excluded);
32
+ var isDisabled = isButtonDisabled({
33
33
  href: rest.href,
34
34
  isDisabled: rest.isDisabled || rest.disabled,
35
35
  isLoading: rest.isLoading
36
36
  });
37
- var color = buttonIsDisabled ? 'disabled' : _color;
38
37
  var buttonColorStyles = useEuiButtonColorCSS({
39
38
  display: fill ? 'fill' : 'base'
40
- })[color === 'ghost' ? 'text' : color];
39
+ })[isDisabled ? 'disabled' : color];
41
40
  var buttonFocusStyle = useEuiButtonFocusCSS();
42
41
  var classes = classNames('euiButton', className);
43
42
  var cssStyles = [buttonColorStyles, buttonFocusStyle];
44
- if (_color === 'ghost') {
45
- // INCEPTION: If `ghost`, re-implement with a wrapping dark mode theme provider
46
- return ___EmotionJSX(EuiThemeProvider, {
47
- colorMode: "dark",
48
- wrapperProps: {
49
- cloneElement: true
50
- }
51
- }, ___EmotionJSX(EuiButton, _extends({}, props, {
52
- color: "text"
53
- })));
54
- }
55
43
  return ___EmotionJSX(EuiButtonDisplay, _extends({
56
44
  className: classes,
57
45
  css: cssStyles,
58
- ref: buttonRef
46
+ ref: buttonRef,
47
+ size: size
59
48
  }, rest));
60
- };
61
- EuiButton.displayName = 'EuiButton';
62
-
63
- // Use defaultProps for simple pass-through props
64
- EuiButton.defaultProps = {
65
- size: 'm',
66
- color: 'primary'
67
49
  };