@elastic/eui 90.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 (552) 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 +302 -203
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +302 -203
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/accordion/accordion.a11y.js +1 -3
  8. package/es/components/accordion/accordion.js +13 -2
  9. package/es/components/accordion/accordion_children/accordion_children.js +4 -3
  10. package/es/components/basic_table/action_types.js +5 -0
  11. package/es/components/basic_table/basic_table.a11y.js +1 -2
  12. package/es/components/basic_table/basic_table.js +8 -8
  13. package/es/components/basic_table/collapsed_item_actions.js +120 -249
  14. package/es/components/basic_table/custom_item_action.js +9 -95
  15. package/es/components/basic_table/default_item_action.js +23 -14
  16. package/es/components/basic_table/in_memory_table.a11y.js +13 -11
  17. package/es/components/basic_table/in_memory_table.js +8 -8
  18. package/es/components/breadcrumbs/breadcrumb.js +16 -12
  19. package/es/components/breadcrumbs/breadcrumb.styles.js +5 -0
  20. package/es/components/breadcrumbs/breadcrumbs.js +5 -5
  21. package/es/components/button/button_display/_button_display.js +6 -4
  22. package/es/components/button/button_display/_button_display_content.js +8 -4
  23. package/es/components/button/button_empty/button_empty.js +9 -7
  24. package/es/components/button/button_group/button_group.js +13 -13
  25. package/es/components/button/button_group/button_group_button.js +13 -54
  26. package/es/components/button/button_group/button_group_button.styles.js +2 -12
  27. package/es/components/card/card.a11y.js +5 -18
  28. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  29. package/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  30. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  31. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  32. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +9 -104
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  35. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +67 -81
  36. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  37. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -102
  38. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  39. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +11 -90
  40. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  41. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  42. package/es/components/combo_box/combo_box.js +8 -6
  43. package/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  44. package/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  45. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  46. package/es/components/combo_box/utils.js +23 -0
  47. package/es/components/context_menu/context_menu_item.js +16 -8
  48. package/es/components/context_menu/context_menu_item.styles.js +1 -1
  49. package/es/components/control_bar/control_bar.js +5 -5
  50. package/es/components/datagrid/body/data_grid_body.js +16 -6
  51. package/es/components/datagrid/body/data_grid_body_custom.js +16 -6
  52. package/es/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  53. package/es/components/datagrid/body/data_grid_cell.js +67 -44
  54. package/es/components/datagrid/body/data_grid_cell_actions.js +12 -12
  55. package/es/components/datagrid/body/data_grid_cell_popover.js +43 -10
  56. package/es/components/datagrid/body/header/data_grid_header_cell.js +66 -35
  57. package/es/components/datagrid/body/header/data_grid_header_row.js +16 -6
  58. package/es/components/datagrid/controls/column_selector.js +24 -45
  59. package/es/components/datagrid/controls/column_sorting.js +23 -37
  60. package/es/components/datagrid/controls/data_grid_toolbar_control.js +154 -0
  61. package/es/components/datagrid/controls/display_selector.js +21 -17
  62. package/es/components/datagrid/controls/fullscreen_selector.js +2 -6
  63. package/es/components/datagrid/controls/index.js +2 -1
  64. package/es/components/datagrid/data_grid.js +3 -864
  65. package/es/components/datagrid/index.js +1 -1
  66. package/es/components/datagrid/utils/in_memory.js +16 -6
  67. package/es/components/datagrid/utils/row_heights.js +1 -1
  68. package/es/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  69. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +92 -26
  70. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  71. package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  72. package/es/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  73. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  74. package/es/components/error_boundary/error_boundary.a11y.js +1 -1
  75. package/es/components/expression/expression.a11y.js +2 -4
  76. package/es/components/facet/facet_button.js +6 -4
  77. package/es/components/filter_group/filter_button.js +2 -2
  78. package/es/components/filter_group/filter_group.styles.js +1 -1
  79. package/es/components/focus_trap/focus_trap.a11y.js +3 -3
  80. package/es/components/form/range/range.a11y.js +5 -10
  81. package/es/components/form/super_select/super_select.js +3 -2
  82. package/es/components/form/super_select/super_select_control.js +13 -20
  83. package/es/components/header/header.a11y.js +1 -1
  84. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +5 -5
  85. package/es/components/header/header_links/header_link.js +7 -5
  86. package/es/components/header/header_links/header_links.js +5 -5
  87. package/es/components/header/header_section/header_section_item_button.js +7 -5
  88. package/es/components/i18n/i18n.js +1 -0
  89. package/es/components/image/image.a11y.js +1 -2
  90. package/es/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  91. package/es/components/link/external_link_icon.js +51 -0
  92. package/es/components/link/link.js +6 -20
  93. package/es/components/link/link.styles.js +2 -5
  94. package/es/components/list_group/list_group.js +6 -1
  95. package/es/components/list_group/list_group_item.js +14 -4
  96. package/es/components/list_group/list_group_item.styles.js +2 -1
  97. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  98. package/es/components/notification/notification_event.a11y.js +1 -2
  99. package/es/components/notification/notification_event.js +7 -5
  100. package/es/components/page/page_header/page_header_content.js +5 -5
  101. package/es/components/pagination/pagination_button.js +7 -5
  102. package/es/components/popover/input_popover.js +1 -1
  103. package/es/components/popover/popover.js +19 -28
  104. package/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  105. package/es/components/popover/popover_panel/_popover_panel.js +2 -6
  106. package/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  107. package/es/components/resizable_container/resizable_container.a11y.js +4 -8
  108. package/es/components/search_bar/search_bar.a11y.js +3 -6
  109. package/es/components/selectable/selectable.js +16 -1
  110. package/es/components/selectable/selectable_list/selectable_list.js +227 -78
  111. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +29 -12
  112. package/es/components/text/text.styles.js +2 -2
  113. package/es/components/text_truncate/text_truncate.js +33 -10
  114. package/es/components/toast/global_toast_list.js +11 -1
  115. package/es/components/tour/tour_step.js +5 -5
  116. package/es/global_styling/mixins/_states.js +4 -1
  117. package/es/services/color/eui_palettes.js +0 -6
  118. package/es/services/color/index.js +1 -1
  119. package/es/services/hooks/useCombinedRefs.js +16 -9
  120. package/es/services/index.js +1 -2
  121. package/es/test/rtl/component_helpers.d.ts +2 -0
  122. package/es/test/rtl/component_helpers.js +40 -1
  123. package/eui.d.ts +562 -218
  124. package/i18ntokens.json +329 -347
  125. package/lib/components/accordion/accordion.a11y.js +1 -3
  126. package/lib/components/accordion/accordion.js +13 -2
  127. package/lib/components/accordion/accordion_children/accordion_children.js +4 -3
  128. package/lib/components/basic_table/action_types.js +8 -2
  129. package/lib/components/basic_table/basic_table.a11y.js +1 -2
  130. package/lib/components/basic_table/basic_table.js +8 -8
  131. package/lib/components/basic_table/collapsed_item_actions.js +128 -257
  132. package/lib/components/basic_table/custom_item_action.js +18 -104
  133. package/lib/components/basic_table/default_item_action.js +23 -14
  134. package/lib/components/basic_table/in_memory_table.a11y.js +13 -11
  135. package/lib/components/basic_table/in_memory_table.js +8 -8
  136. package/lib/components/breadcrumbs/breadcrumb.js +16 -12
  137. package/lib/components/breadcrumbs/breadcrumb.styles.js +5 -0
  138. package/lib/components/button/button_display/_button_display.js +6 -4
  139. package/lib/components/button/button_display/_button_display_content.js +8 -4
  140. package/lib/components/button/button_empty/button_empty.js +9 -7
  141. package/lib/components/button/button_group/button_group.js +12 -12
  142. package/lib/components/button/button_group/button_group_button.js +13 -54
  143. package/lib/components/button/button_group/button_group_button.styles.js +2 -12
  144. package/lib/components/card/card.a11y.js +5 -18
  145. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  146. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  147. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  148. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  149. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -103
  150. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  151. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  152. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -80
  153. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  154. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -104
  155. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  156. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +10 -89
  157. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  158. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  159. package/lib/components/combo_box/combo_box.js +8 -6
  160. package/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  161. package/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  162. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  163. package/lib/components/combo_box/utils.js +31 -0
  164. package/lib/components/context_menu/context_menu_item.js +16 -8
  165. package/lib/components/context_menu/context_menu_item.styles.js +1 -1
  166. package/lib/components/datagrid/body/data_grid_body.js +16 -6
  167. package/lib/components/datagrid/body/data_grid_body_custom.js +16 -6
  168. package/lib/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  169. package/lib/components/datagrid/body/data_grid_cell.js +67 -44
  170. package/lib/components/datagrid/body/data_grid_cell_actions.js +12 -13
  171. package/lib/components/datagrid/body/data_grid_cell_popover.js +43 -10
  172. package/lib/components/datagrid/body/header/data_grid_header_cell.js +66 -35
  173. package/lib/components/datagrid/body/header/data_grid_header_row.js +16 -6
  174. package/lib/components/datagrid/controls/column_selector.js +24 -45
  175. package/lib/components/datagrid/controls/column_sorting.js +22 -37
  176. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +159 -0
  177. package/lib/components/datagrid/controls/display_selector.js +21 -17
  178. package/lib/components/datagrid/controls/fullscreen_selector.js +2 -7
  179. package/lib/components/datagrid/controls/index.js +8 -1
  180. package/lib/components/datagrid/data_grid.js +2 -863
  181. package/lib/components/datagrid/index.js +8 -1
  182. package/lib/components/datagrid/utils/in_memory.js +16 -6
  183. package/lib/components/datagrid/utils/row_heights.js +1 -1
  184. package/lib/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  185. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +91 -26
  186. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  187. package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  188. package/lib/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  189. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  190. package/lib/components/error_boundary/error_boundary.a11y.js +1 -1
  191. package/lib/components/expression/expression.a11y.js +2 -4
  192. package/lib/components/facet/facet_button.js +6 -4
  193. package/lib/components/filter_group/filter_button.js +2 -2
  194. package/lib/components/filter_group/filter_group.styles.js +1 -1
  195. package/lib/components/focus_trap/focus_trap.a11y.js +3 -3
  196. package/lib/components/form/range/range.a11y.js +5 -10
  197. package/lib/components/form/super_select/super_select.js +3 -2
  198. package/lib/components/form/super_select/super_select_control.js +12 -19
  199. package/lib/components/header/header.a11y.js +1 -1
  200. package/lib/components/header/header_links/header_link.js +7 -5
  201. package/lib/components/header/header_section/header_section_item_button.js +7 -5
  202. package/lib/components/i18n/i18n.js +1 -0
  203. package/lib/components/image/image.a11y.js +1 -2
  204. package/lib/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  205. package/lib/components/link/external_link_icon.js +57 -0
  206. package/lib/components/link/link.js +6 -20
  207. package/lib/components/link/link.styles.js +1 -4
  208. package/lib/components/list_group/list_group.js +6 -1
  209. package/lib/components/list_group/list_group_item.js +14 -4
  210. package/lib/components/list_group/list_group_item.styles.js +2 -1
  211. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  212. package/lib/components/notification/notification_event.a11y.js +1 -2
  213. package/lib/components/notification/notification_event.js +7 -5
  214. package/lib/components/popover/input_popover.js +1 -1
  215. package/lib/components/popover/popover.js +33 -36
  216. package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  217. package/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  218. package/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  219. package/lib/components/resizable_container/resizable_container.a11y.js +4 -8
  220. package/lib/components/search_bar/search_bar.a11y.js +3 -6
  221. package/lib/components/selectable/selectable.js +16 -1
  222. package/lib/components/selectable/selectable_list/selectable_list.js +227 -78
  223. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +28 -11
  224. package/lib/components/text/text.styles.js +2 -2
  225. package/lib/components/text_truncate/text_truncate.js +32 -9
  226. package/lib/components/toast/global_toast_list.js +11 -1
  227. package/lib/global_styling/mixins/_states.js +4 -1
  228. package/lib/services/color/eui_palettes.js +1 -8
  229. package/lib/services/color/index.js +0 -7
  230. package/lib/services/hooks/useCombinedRefs.js +19 -10
  231. package/lib/services/index.js +0 -15
  232. package/lib/test/rtl/component_helpers.d.ts +2 -0
  233. package/lib/test/rtl/component_helpers.js +41 -3
  234. package/optimize/es/components/accordion/accordion.a11y.js +1 -3
  235. package/optimize/es/components/accordion/accordion.js +5 -2
  236. package/optimize/es/components/accordion/accordion_children/accordion_children.js +4 -3
  237. package/optimize/es/components/basic_table/action_types.js +5 -0
  238. package/optimize/es/components/basic_table/basic_table.a11y.js +1 -2
  239. package/optimize/es/components/basic_table/collapsed_item_actions.js +116 -169
  240. package/optimize/es/components/basic_table/custom_item_action.js +10 -83
  241. package/optimize/es/components/basic_table/default_item_action.js +23 -14
  242. package/optimize/es/components/basic_table/in_memory_table.a11y.js +13 -11
  243. package/optimize/es/components/breadcrumbs/breadcrumb.js +11 -7
  244. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +5 -0
  245. package/optimize/es/components/button/button_display/_button_display_content.js +3 -1
  246. package/optimize/es/components/button/button_empty/button_empty.js +2 -2
  247. package/optimize/es/components/button/button_group/button_group.js +7 -8
  248. package/optimize/es/components/button/button_group/button_group_button.js +6 -38
  249. package/optimize/es/components/button/button_group/button_group_button.styles.js +2 -12
  250. package/optimize/es/components/card/card.a11y.js +5 -18
  251. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  252. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  253. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  254. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -3
  255. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  256. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  257. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  258. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  259. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -23
  260. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  261. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +10 -10
  262. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -5
  263. package/optimize/es/components/combo_box/combo_box.js +7 -5
  264. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  265. package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  266. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  267. package/optimize/es/components/combo_box/utils.js +23 -0
  268. package/optimize/es/components/context_menu/context_menu_item.js +9 -6
  269. package/optimize/es/components/context_menu/context_menu_item.styles.js +1 -1
  270. package/optimize/es/components/datagrid/body/data_grid_cell.js +38 -30
  271. package/optimize/es/components/datagrid/body/data_grid_cell_actions.js +12 -12
  272. package/optimize/es/components/datagrid/body/data_grid_cell_popover.js +43 -10
  273. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +50 -29
  274. package/optimize/es/components/datagrid/controls/column_selector.js +24 -45
  275. package/optimize/es/components/datagrid/controls/column_sorting.js +23 -37
  276. package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +70 -0
  277. package/optimize/es/components/datagrid/controls/display_selector.js +21 -17
  278. package/optimize/es/components/datagrid/controls/fullscreen_selector.js +2 -6
  279. package/optimize/es/components/datagrid/controls/index.js +2 -1
  280. package/optimize/es/components/datagrid/data_grid.js +3 -3
  281. package/optimize/es/components/datagrid/index.js +1 -1
  282. package/optimize/es/components/datagrid/utils/row_heights.js +1 -1
  283. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +87 -26
  284. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  285. package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  286. package/optimize/es/components/error_boundary/error_boundary.a11y.js +1 -1
  287. package/optimize/es/components/expression/expression.a11y.js +2 -4
  288. package/optimize/es/components/filter_group/filter_button.js +2 -2
  289. package/optimize/es/components/filter_group/filter_group.styles.js +1 -1
  290. package/optimize/es/components/focus_trap/focus_trap.a11y.js +3 -3
  291. package/optimize/es/components/form/range/range.a11y.js +5 -10
  292. package/optimize/es/components/form/super_select/super_select.js +3 -2
  293. package/optimize/es/components/form/super_select/super_select_control.js +13 -20
  294. package/optimize/es/components/header/header.a11y.js +1 -1
  295. package/optimize/es/components/i18n/i18n.js +1 -0
  296. package/optimize/es/components/image/image.a11y.js +1 -2
  297. package/optimize/es/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  298. package/optimize/es/components/link/external_link_icon.js +41 -0
  299. package/optimize/es/components/link/link.js +6 -20
  300. package/optimize/es/components/link/link.styles.js +2 -5
  301. package/optimize/es/components/list_group/list_group_item.js +8 -3
  302. package/optimize/es/components/list_group/list_group_item.styles.js +2 -1
  303. package/optimize/es/components/notification/notification_event.a11y.js +1 -2
  304. package/optimize/es/components/popover/input_popover.js +1 -1
  305. package/optimize/es/components/popover/popover.js +14 -23
  306. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  307. package/optimize/es/components/popover/popover_panel/_popover_panel.js +2 -1
  308. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  309. package/optimize/es/components/resizable_container/resizable_container.a11y.js +4 -8
  310. package/optimize/es/components/search_bar/search_bar.a11y.js +3 -6
  311. package/optimize/es/components/selectable/selectable_list/selectable_list.js +199 -76
  312. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
  313. package/optimize/es/components/text/text.styles.js +2 -2
  314. package/optimize/es/components/text_truncate/text_truncate.js +26 -9
  315. package/optimize/es/components/toast/global_toast_list.js +1 -1
  316. package/optimize/es/global_styling/mixins/_states.js +4 -1
  317. package/optimize/es/services/color/eui_palettes.js +0 -6
  318. package/optimize/es/services/color/index.js +1 -1
  319. package/optimize/es/services/hooks/useCombinedRefs.js +16 -9
  320. package/optimize/es/services/index.js +1 -2
  321. package/optimize/es/test/rtl/component_helpers.d.ts +2 -0
  322. package/optimize/es/test/rtl/component_helpers.js +40 -1
  323. package/optimize/lib/components/accordion/accordion.a11y.js +1 -3
  324. package/optimize/lib/components/accordion/accordion.js +5 -2
  325. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +4 -3
  326. package/optimize/lib/components/basic_table/action_types.js +8 -2
  327. package/optimize/lib/components/basic_table/basic_table.a11y.js +1 -2
  328. package/optimize/lib/components/basic_table/collapsed_item_actions.js +123 -174
  329. package/optimize/lib/components/basic_table/custom_item_action.js +17 -91
  330. package/optimize/lib/components/basic_table/default_item_action.js +23 -14
  331. package/optimize/lib/components/basic_table/in_memory_table.a11y.js +13 -11
  332. package/optimize/lib/components/breadcrumbs/breadcrumb.js +11 -7
  333. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +5 -0
  334. package/optimize/lib/components/button/button_display/_button_display_content.js +3 -1
  335. package/optimize/lib/components/button/button_empty/button_empty.js +2 -2
  336. package/optimize/lib/components/button/button_group/button_group.js +6 -7
  337. package/optimize/lib/components/button/button_group/button_group_button.js +6 -38
  338. package/optimize/lib/components/button/button_group/button_group_button.styles.js +2 -12
  339. package/optimize/lib/components/card/card.a11y.js +5 -18
  340. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  341. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  342. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  343. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +7 -2
  344. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  345. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  346. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  347. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  348. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -26
  349. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  350. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +9 -9
  351. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -5
  352. package/optimize/lib/components/combo_box/combo_box.js +7 -5
  353. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  354. package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  355. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  356. package/optimize/lib/components/combo_box/utils.js +31 -0
  357. package/optimize/lib/components/context_menu/context_menu_item.js +9 -6
  358. package/optimize/lib/components/context_menu/context_menu_item.styles.js +1 -1
  359. package/optimize/lib/components/datagrid/body/data_grid_cell.js +38 -30
  360. package/optimize/lib/components/datagrid/body/data_grid_cell_actions.js +12 -12
  361. package/optimize/lib/components/datagrid/body/data_grid_cell_popover.js +43 -10
  362. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +56 -37
  363. package/optimize/lib/components/datagrid/controls/column_selector.js +24 -45
  364. package/optimize/lib/components/datagrid/controls/column_sorting.js +22 -36
  365. package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +75 -0
  366. package/optimize/lib/components/datagrid/controls/display_selector.js +21 -17
  367. package/optimize/lib/components/datagrid/controls/fullscreen_selector.js +2 -6
  368. package/optimize/lib/components/datagrid/controls/index.js +8 -1
  369. package/optimize/lib/components/datagrid/data_grid.js +2 -2
  370. package/optimize/lib/components/datagrid/index.js +8 -1
  371. package/optimize/lib/components/datagrid/utils/row_heights.js +1 -1
  372. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  373. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  374. package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  375. package/optimize/lib/components/error_boundary/error_boundary.a11y.js +1 -1
  376. package/optimize/lib/components/expression/expression.a11y.js +2 -4
  377. package/optimize/lib/components/filter_group/filter_button.js +2 -2
  378. package/optimize/lib/components/filter_group/filter_group.styles.js +1 -1
  379. package/optimize/lib/components/focus_trap/focus_trap.a11y.js +3 -3
  380. package/optimize/lib/components/form/range/range.a11y.js +5 -10
  381. package/optimize/lib/components/form/super_select/super_select.js +3 -2
  382. package/optimize/lib/components/form/super_select/super_select_control.js +12 -19
  383. package/optimize/lib/components/header/header.a11y.js +1 -1
  384. package/optimize/lib/components/i18n/i18n.js +1 -0
  385. package/optimize/lib/components/image/image.a11y.js +1 -2
  386. package/optimize/lib/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  387. package/optimize/lib/components/link/external_link_icon.js +47 -0
  388. package/optimize/lib/components/link/link.js +6 -20
  389. package/optimize/lib/components/link/link.styles.js +1 -4
  390. package/optimize/lib/components/list_group/list_group_item.js +8 -3
  391. package/optimize/lib/components/list_group/list_group_item.styles.js +2 -1
  392. package/optimize/lib/components/notification/notification_event.a11y.js +1 -2
  393. package/optimize/lib/components/popover/input_popover.js +1 -1
  394. package/optimize/lib/components/popover/popover.js +28 -36
  395. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  396. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  397. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  398. package/optimize/lib/components/resizable_container/resizable_container.a11y.js +4 -8
  399. package/optimize/lib/components/search_bar/search_bar.a11y.js +3 -6
  400. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +199 -76
  401. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  402. package/optimize/lib/components/text/text.styles.js +2 -2
  403. package/optimize/lib/components/text_truncate/text_truncate.js +25 -8
  404. package/optimize/lib/components/toast/global_toast_list.js +1 -1
  405. package/optimize/lib/global_styling/mixins/_states.js +4 -1
  406. package/optimize/lib/services/color/eui_palettes.js +1 -8
  407. package/optimize/lib/services/color/index.js +0 -7
  408. package/optimize/lib/services/hooks/useCombinedRefs.js +19 -10
  409. package/optimize/lib/services/index.js +0 -15
  410. package/optimize/lib/test/rtl/component_helpers.d.ts +2 -0
  411. package/optimize/lib/test/rtl/component_helpers.js +41 -3
  412. package/package.json +13 -13
  413. package/src/components/combo_box/_combo_box.scss +46 -14
  414. package/src/components/combo_box/combo_box_input/_combo_box_pill.scss +0 -17
  415. package/src/components/combo_box/combo_box_input/_index.scss +0 -2
  416. package/src/components/datagrid/_data_grid_data_row.scss +139 -101
  417. package/src/components/datagrid/_mixins.scss +2 -2
  418. package/src/components/datagrid/body/header/_data_grid_header_row.scss +36 -28
  419. package/src/components/datagrid/controls/_data_grid_toolbar.scss +0 -5
  420. package/src/components/date_picker/super_date_picker/date_popover/_absolute_tab.scss +21 -0
  421. package/src/components/date_picker/super_date_picker/quick_select_popover/_quick_select_popover.scss +0 -4
  422. package/src/components/form/form_control_layout/_form_control_layout.scss +0 -1
  423. package/src/components/form/form_row/_form_row.scss +1 -1
  424. package/src/components/table/_responsive.scss +19 -0
  425. package/src/components/table/_table.scss +4 -9
  426. package/src/global_styling/variables/_typography.scss +2 -2
  427. package/test-env/components/accordion/accordion.a11y.js +1 -3
  428. package/test-env/components/accordion/accordion.js +13 -2
  429. package/test-env/components/accordion/accordion_children/accordion_children.js +4 -3
  430. package/test-env/components/auto_sizer/auto_sizer.js +10 -3
  431. package/test-env/components/basic_table/action_types.js +8 -2
  432. package/test-env/components/basic_table/basic_table.a11y.js +1 -2
  433. package/test-env/components/basic_table/basic_table.js +8 -8
  434. package/test-env/components/basic_table/collapsed_item_actions.js +124 -251
  435. package/test-env/components/basic_table/custom_item_action.js +18 -100
  436. package/test-env/components/basic_table/default_item_action.js +23 -14
  437. package/test-env/components/basic_table/in_memory_table.a11y.js +13 -11
  438. package/test-env/components/basic_table/in_memory_table.js +8 -8
  439. package/test-env/components/breadcrumbs/breadcrumb.js +16 -12
  440. package/test-env/components/breadcrumbs/breadcrumb.styles.js +5 -0
  441. package/test-env/components/button/button_display/_button_display.js +6 -4
  442. package/test-env/components/button/button_display/_button_display_content.js +8 -4
  443. package/test-env/components/button/button_empty/button_empty.js +9 -7
  444. package/test-env/components/button/button_group/button_group.js +12 -12
  445. package/test-env/components/button/button_group/button_group_button.js +13 -54
  446. package/test-env/components/button/button_group/button_group_button.styles.js +2 -12
  447. package/test-env/components/card/card.a11y.js +5 -18
  448. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  449. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  450. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  451. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +12 -9
  452. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -103
  453. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -58
  454. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +89 -37
  455. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -80
  456. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  457. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +7 -105
  458. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +4 -4
  459. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +10 -89
  460. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +150 -130
  461. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  462. package/test-env/components/combo_box/combo_box.js +8 -6
  463. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  464. package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  465. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  466. package/test-env/components/combo_box/utils.js +31 -0
  467. package/test-env/components/context_menu/context_menu_item.js +16 -8
  468. package/test-env/components/context_menu/context_menu_item.styles.js +1 -1
  469. package/test-env/components/datagrid/body/data_grid_body.js +16 -6
  470. package/test-env/components/datagrid/body/data_grid_body_custom.js +16 -6
  471. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +16 -6
  472. package/test-env/components/datagrid/body/data_grid_cell.js +67 -44
  473. package/test-env/components/datagrid/body/data_grid_cell_actions.js +12 -12
  474. package/test-env/components/datagrid/body/data_grid_cell_popover.js +43 -10
  475. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +72 -43
  476. package/test-env/components/datagrid/body/header/data_grid_header_row.js +16 -6
  477. package/test-env/components/datagrid/controls/column_selector.js +24 -45
  478. package/test-env/components/datagrid/controls/column_sorting.js +22 -36
  479. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +158 -0
  480. package/test-env/components/datagrid/controls/display_selector.js +21 -17
  481. package/test-env/components/datagrid/controls/fullscreen_selector.js +2 -6
  482. package/test-env/components/datagrid/controls/index.js +8 -1
  483. package/test-env/components/datagrid/data_grid.js +2 -863
  484. package/test-env/components/datagrid/index.js +8 -1
  485. package/test-env/components/datagrid/utils/in_memory.js +16 -6
  486. package/test-env/components/datagrid/utils/row_heights.js +1 -1
  487. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +6 -4
  488. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  489. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  490. package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  491. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  492. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  493. package/test-env/components/error_boundary/error_boundary.a11y.js +1 -1
  494. package/test-env/components/expression/expression.a11y.js +2 -4
  495. package/test-env/components/facet/facet_button.js +6 -4
  496. package/test-env/components/filter_group/filter_button.js +2 -2
  497. package/test-env/components/filter_group/filter_group.styles.js +1 -1
  498. package/test-env/components/focus_trap/focus_trap.a11y.js +3 -3
  499. package/test-env/components/form/range/range.a11y.js +5 -10
  500. package/test-env/components/form/super_select/super_select.js +3 -2
  501. package/test-env/components/form/super_select/super_select_control.js +12 -19
  502. package/test-env/components/header/header.a11y.js +1 -1
  503. package/test-env/components/header/header_links/header_link.js +7 -5
  504. package/test-env/components/header/header_section/header_section_item_button.js +7 -5
  505. package/test-env/components/i18n/i18n.js +1 -0
  506. package/test-env/components/image/image.a11y.js +1 -2
  507. package/test-env/components/key_pad_menu/key_pad_menu.a11y.js +5 -5
  508. package/test-env/components/link/external_link_icon.js +56 -0
  509. package/test-env/components/link/link.js +6 -20
  510. package/test-env/components/link/link.styles.js +1 -4
  511. package/test-env/components/list_group/list_group.js +6 -1
  512. package/test-env/components/list_group/list_group_item.js +14 -4
  513. package/test-env/components/list_group/list_group_item.styles.js +2 -1
  514. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +12 -2
  515. package/test-env/components/notification/notification_event.a11y.js +1 -2
  516. package/test-env/components/notification/notification_event.js +7 -5
  517. package/test-env/components/popover/input_popover.js +1 -1
  518. package/test-env/components/popover/popover.js +33 -36
  519. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  520. package/test-env/components/popover/popover_panel/_popover_panel.js +2 -1
  521. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  522. package/test-env/components/resizable_container/resizable_container.a11y.js +4 -8
  523. package/test-env/components/search_bar/search_bar.a11y.js +3 -6
  524. package/test-env/components/selectable/selectable.js +16 -1
  525. package/test-env/components/selectable/selectable_list/selectable_list.js +227 -78
  526. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +28 -11
  527. package/test-env/components/text/text.styles.js +2 -2
  528. package/test-env/components/text_truncate/text_truncate.js +32 -9
  529. package/test-env/components/toast/global_toast_list.js +11 -1
  530. package/test-env/global_styling/mixins/_states.js +4 -1
  531. package/test-env/services/color/eui_palettes.js +1 -8
  532. package/test-env/services/color/index.js +0 -7
  533. package/test-env/services/hooks/useCombinedRefs.js +19 -10
  534. package/test-env/services/index.js +0 -15
  535. package/test-env/test/rtl/component_helpers.js +41 -3
  536. package/es/services/random.js +0 -94
  537. package/es/services/utils.js +0 -25
  538. package/es/test/patch_random.js +0 -18
  539. package/lib/services/random.js +0 -100
  540. package/lib/services/utils.js +0 -35
  541. package/lib/test/patch_random.js +0 -25
  542. package/optimize/es/services/random.js +0 -85
  543. package/optimize/es/services/utils.js +0 -25
  544. package/optimize/es/test/patch_random.js +0 -18
  545. package/optimize/lib/services/random.js +0 -91
  546. package/optimize/lib/services/utils.js +0 -35
  547. package/optimize/lib/test/patch_random.js +0 -25
  548. package/src/components/combo_box/combo_box_input/_combo_box_input.scss +0 -12
  549. package/src/components/combo_box/combo_box_input/_combo_box_placeholder.scss +0 -11
  550. package/test-env/services/random.js +0 -91
  551. package/test-env/services/utils.js +0 -35
  552. package/test-env/test/patch_random.js +0 -25
@@ -82,6 +82,7 @@ var convertRowHeightsOptionsToSelection = function convertRowHeightsOptionsToSel
82
82
  }
83
83
  return rowHeightButtonOptions[0];
84
84
  };
85
+ var defaultLineCountValue = String(2);
85
86
  var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplaySelector, initialStyles, initialRowHeightsOptions) {
86
87
  var _showDisplaySelector$, _rowHeightsOptions$de2;
87
88
  var _useState = (0, _react.useState)(false),
@@ -109,10 +110,10 @@ var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplay
109
110
  }, []);
110
111
 
111
112
  // Row height logic
112
- var _useState7 = (0, _react.useState)(2),
113
+ var _useState7 = (0, _react.useState)(defaultLineCountValue),
113
114
  _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
114
- lineCount = _useState8[0],
115
- setLineCount = _useState8[1];
115
+ lineCountInput = _useState8[0],
116
+ setLineCountInput = _useState8[1];
116
117
  var setRowHeight = (0, _react.useCallback)(function (option) {
117
118
  var rowHeightsOptions = {
118
119
  rowHeights: {} // Unset all row-specific heights
@@ -122,25 +123,27 @@ var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplay
122
123
  rowHeightsOptions.defaultHeight = 'auto';
123
124
  } else if (option === 'lineCount') {
124
125
  rowHeightsOptions.defaultHeight = {
125
- lineCount: lineCount
126
+ lineCount: Number(lineCountInput)
126
127
  };
127
128
  } else {
128
129
  rowHeightsOptions.defaultHeight = undefined;
129
130
  }
130
131
  setUserRowHeightsOptions(rowHeightsOptions);
131
- }, [lineCount]);
132
+ }, [lineCountInput]);
132
133
  var setLineCountHeight = (0, _react.useCallback)(function (event) {
134
+ setLineCountInput(event.currentTarget.value);
133
135
  var newLineCount = Number(event.currentTarget.value);
134
- if (newLineCount < 1) return; // Don't let users set a 0 or negative line count
135
136
 
136
- setLineCount(newLineCount);
137
- setUserRowHeightsOptions({
138
- rowHeights: {},
139
- // Unset all row-specific line counts
140
- defaultHeight: {
141
- lineCount: newLineCount
142
- }
143
- });
137
+ // Don't let users set a 0 or negative line count
138
+ if (newLineCount > 0) {
139
+ setUserRowHeightsOptions({
140
+ rowHeights: {},
141
+ // Unset all row-specific line counts
142
+ defaultHeight: {
143
+ lineCount: newLineCount
144
+ }
145
+ });
146
+ }
144
147
  }, []);
145
148
 
146
149
  // Merge the developer-specified configurations with user overrides
@@ -160,8 +163,9 @@ var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplay
160
163
  }, [rowHeightsOptions]);
161
164
  (0, _react.useEffect)(function () {
162
165
  var _rowHeightsOptions$de;
166
+ setLineCountInput(
163
167
  // @ts-ignore - optional chaining operator handles types & cases that aren't lineCount
164
- setLineCount((rowHeightsOptions === null || rowHeightsOptions === void 0 ? void 0 : (_rowHeightsOptions$de = rowHeightsOptions.defaultHeight) === null || _rowHeightsOptions$de === void 0 ? void 0 : _rowHeightsOptions$de.lineCount) || 2);
168
+ (rowHeightsOptions === null || rowHeightsOptions === void 0 ? void 0 : (_rowHeightsOptions$de = rowHeightsOptions.defaultHeight) === null || _rowHeightsOptions$de === void 0 ? void 0 : _rowHeightsOptions$de.lineCount) || defaultLineCountValue);
165
169
  // @ts-ignore - same as above
166
170
  }, [rowHeightsOptions === null || rowHeightsOptions === void 0 ? void 0 : (_rowHeightsOptions$de2 = rowHeightsOptions.defaultHeight) === null || _rowHeightsOptions$de2 === void 0 ? void 0 : _rowHeightsOptions$de2.lineCount]);
167
171
 
@@ -215,7 +219,6 @@ var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplay
215
219
  }, (0, _react2.jsx)(_button.EuiButtonIcon, {
216
220
  size: "xs",
217
221
  iconType: "controlsHorizontal",
218
- className: "euiDataGrid__controlBtn",
219
222
  color: "text",
220
223
  "data-test-subj": "dataGridDisplaySelectorButton",
221
224
  onClick: function onClick() {
@@ -293,7 +296,8 @@ var useDataGridDisplaySelector = function useDataGridDisplaySelector(showDisplay
293
296
  min: 1,
294
297
  max: 20,
295
298
  step: 1,
296
- value: lineCount,
299
+ required: true,
300
+ value: lineCountInput,
297
301
  onChange: setLineCountHeight,
298
302
  "data-test-subj": "lineCountNumber"
299
303
  })));
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.useDataGridFullScreenSelector = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
- var _classnames = _interopRequireDefault(require("classnames"));
12
11
  var _services = require("../../../services");
13
12
  var _tool_tip = require("../../tool_tip");
14
13
  var _button = require("../../button");
@@ -34,9 +33,6 @@ var useDataGridFullScreenSelector = function useDataGridFullScreenSelector() {
34
33
  _useEuiI18n2 = (0, _slicedToArray2.default)(_useEuiI18n, 2),
35
34
  fullScreenButton = _useEuiI18n2[0],
36
35
  fullScreenButtonActive = _useEuiI18n2[1];
37
- var controlBtnClasses = (0, _classnames.default)('euiDataGrid__controlBtn', {
38
- 'euiDataGrid__controlBtn--active': isFullScreen
39
- });
40
36
  var fullScreenSelector = (0, _react.useMemo)(function () {
41
37
  return (0, _react2.jsx)(_tool_tip.EuiToolTip, {
42
38
  content: isFullScreen ? (0, _react2.jsx)(_react.default.Fragment, null, fullScreenButtonActive, " (", (0, _react2.jsx)("kbd", null, "esc"), ")") : fullScreenButton,
@@ -45,14 +41,14 @@ var useDataGridFullScreenSelector = function useDataGridFullScreenSelector() {
45
41
  size: "xs",
46
42
  iconType: isFullScreen ? 'fullScreenExit' : 'fullScreen',
47
43
  color: "text",
48
- className: controlBtnClasses,
44
+ "aria-pressed": isFullScreen,
49
45
  "data-test-subj": "dataGridFullScreenButton",
50
46
  onClick: function onClick() {
51
47
  return setIsFullScreen(!isFullScreen);
52
48
  },
53
49
  "aria-label": isFullScreen ? fullScreenButtonActive : fullScreenButton
54
50
  }));
55
- }, [isFullScreen, controlBtnClasses, fullScreenButton, fullScreenButtonActive]);
51
+ }, [isFullScreen, fullScreenButton, fullScreenButtonActive]);
56
52
  var handleGridKeyDown = (0, _react.useCallback)(function (event) {
57
53
  switch (event.key) {
58
54
  case _services.keys.ESCAPE:
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "EuiDataGridToolbar", {
9
9
  return _data_grid_toolbar.EuiDataGridToolbar;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "EuiDataGridToolbarControl", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _data_grid_toolbar_control.EuiDataGridToolbarControl;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "checkOrDefaultToolBarDisplayOptions", {
13
19
  enumerable: true,
14
20
  get: function get() {
@@ -56,4 +62,5 @@ var _column_sorting = require("./column_sorting");
56
62
  var _display_selector = require("./display_selector");
57
63
  var _keyboard_shortcuts = require("./keyboard_shortcuts");
58
64
  var _fullscreen_selector = require("./fullscreen_selector");
59
- var _data_grid_toolbar = require("./data_grid_toolbar");
65
+ var _data_grid_toolbar = require("./data_grid_toolbar");
66
+ var _data_grid_toolbar_control = require("./data_grid_toolbar_control");
@@ -74,7 +74,7 @@ var cellPaddingsToClassMap = {
74
74
  m: '',
75
75
  l: 'euiDataGrid--paddingLarge'
76
76
  };
77
- var EuiDataGrid = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
77
+ var EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
78
78
  var _gridItemsRendered$cu;
79
79
  var _props$leadingControl = props.leadingControlColumns,
80
80
  leadingControlColumns = _props$leadingControl === void 0 ? _data_grid_types.emptyControlColumns : _props$leadingControl,
@@ -391,6 +391,6 @@ var EuiDataGrid = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
391
391
  token: "euiDataGrid.screenReaderNotice",
392
392
  default: "Cell contains interactive content."
393
393
  }))))), cellPopover));
394
- });
394
+ }));
395
395
  exports.EuiDataGrid = EuiDataGrid;
396
396
  EuiDataGrid.displayName = 'EuiDataGrid';
@@ -7,7 +7,8 @@ var _exportNames = {
7
7
  EuiDataGrid: true,
8
8
  useDataGridColumnSelector: true,
9
9
  useDataGridColumnSorting: true,
10
- useDataGridDisplaySelector: true
10
+ useDataGridDisplaySelector: true,
11
+ EuiDataGridToolbarControl: true
11
12
  };
12
13
  Object.defineProperty(exports, "EuiDataGrid", {
13
14
  enumerable: true,
@@ -15,6 +16,12 @@ Object.defineProperty(exports, "EuiDataGrid", {
15
16
  return _data_grid.EuiDataGrid;
16
17
  }
17
18
  });
19
+ Object.defineProperty(exports, "EuiDataGridToolbarControl", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _controls.EuiDataGridToolbarControl;
23
+ }
24
+ });
18
25
  Object.defineProperty(exports, "useDataGridColumnSelector", {
19
26
  enumerable: true,
20
27
  get: function get() {
@@ -157,7 +157,7 @@ var RowHeightUtils = /*#__PURE__*/function () {
157
157
  var height = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : DEFAULT_ROW_HEIGHT;
158
158
  var _visibleRowIndex = arguments.length > 3 ? arguments[3] : undefined;
159
159
  var rowHeights = this.heightsCache.get(rowIndex) || new Map();
160
- var adaptedHeight = Math.ceil(height + this.styles.paddingTop + this.styles.paddingBottom);
160
+ var adaptedHeight = Math.ceil(height);
161
161
  if (rowHeights.get(colId) === adaptedHeight) {
162
162
  return false;
163
163
  } else {
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.EuiAbsoluteTab = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
12
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
@@ -16,9 +17,11 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
16
17
  var _react = _interopRequireWildcard(require("react"));
17
18
  var _moment = _interopRequireDefault(require("moment"));
18
19
  var _datemath = _interopRequireDefault(require("@elastic/datemath"));
19
- var _date_picker = require("../../date_picker");
20
+ var _services = require("../../../../services");
20
21
  var _form = require("../../../form");
22
+ var _code = require("../../../code");
21
23
  var _i18n = require("../../../i18n");
24
+ var _date_picker = require("../../date_picker");
22
25
  var _react2 = require("@emotion/react");
23
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
27
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -30,48 +33,92 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
30
33
  * in compliance with, at your election, the Elastic License 2.0 or the Server
31
34
  * Side Public License, v 1.
32
35
  */ // eslint-disable-line import/named
36
+ // Allow users to paste in and have the datepicker parse multiple common date formats,
37
+ // in addition to the configured displayed `dateFormat` prop
38
+ var ALLOWED_USER_DATE_FORMATS = [_moment.default.ISO_8601, _moment.default.RFC_2822, 'X' // Unix timestamp in seconds
39
+ ];
33
40
  var EuiAbsoluteTab = /*#__PURE__*/function (_Component) {
34
41
  (0, _inherits2.default)(EuiAbsoluteTab, _Component);
35
42
  var _super = _createSuper(EuiAbsoluteTab);
43
+ // Store outside of state as a ref for faster/unbatched updates
44
+
36
45
  function EuiAbsoluteTab(props) {
37
46
  var _this;
38
47
  (0, _classCallCheck2.default)(this, EuiAbsoluteTab);
39
48
  _this = _super.call(this, props);
40
49
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
41
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleChange", function (date, event) {
50
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isParsing", false);
51
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleChange", function (date) {
42
52
  var onChange = _this.props.onChange;
43
53
  if (date === null) {
44
54
  return;
45
55
  }
46
- onChange(date.toISOString(), event);
56
+ onChange(date.toISOString());
47
57
  var valueAsMoment = (0, _moment.default)(date);
48
58
  _this.setState({
49
59
  valueAsMoment: valueAsMoment,
50
60
  textInputValue: valueAsMoment.format(_this.props.dateFormat),
61
+ hasUnparsedText: false,
51
62
  isTextInvalid: false
52
63
  });
53
64
  });
54
65
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleTextChange", function (event) {
55
- var onChange = _this.props.onChange;
56
- var valueAsMoment = (0, _moment.default)(event.target.value, _this.props.dateFormat, true);
57
- var dateIsValid = valueAsMoment.isValid();
58
- if (dateIsValid) {
59
- onChange(valueAsMoment.toISOString(), event);
60
- }
66
+ if (_this.isParsing) return;
61
67
  _this.setState({
62
68
  textInputValue: event.target.value,
63
- isTextInvalid: !dateIsValid,
64
- valueAsMoment: dateIsValid ? valueAsMoment : null
69
+ hasUnparsedText: true,
70
+ isTextInvalid: false
65
71
  });
66
72
  });
73
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "parseUserDateInput", function (textInputValue) {
74
+ _this.isParsing = true;
75
+ // Wait a tick for state to finish updating (whatever gets returned),
76
+ // and then allow `onChange` user input to continue setting state
77
+ requestAnimationFrame(function () {
78
+ _this.isParsing = false;
79
+ });
80
+ var invalidDateState = {
81
+ textInputValue: textInputValue,
82
+ isTextInvalid: true,
83
+ valueAsMoment: null
84
+ };
85
+ if (!textInputValue) {
86
+ return _this.setState(invalidDateState);
87
+ }
88
+ var _this$props = _this.props,
89
+ onChange = _this$props.onChange,
90
+ dateFormat = _this$props.dateFormat;
91
+
92
+ // Attempt to parse with passed `dateFormat`
93
+ var valueAsMoment = (0, _moment.default)(textInputValue, dateFormat, true);
94
+ var dateIsValid = valueAsMoment.isValid();
95
+
96
+ // If not valid, try a few other other standardized formats
97
+ if (!dateIsValid) {
98
+ valueAsMoment = (0, _moment.default)(textInputValue, ALLOWED_USER_DATE_FORMATS, true);
99
+ dateIsValid = valueAsMoment.isValid();
100
+ }
101
+ if (dateIsValid) {
102
+ onChange(valueAsMoment.toISOString());
103
+ _this.setState({
104
+ textInputValue: valueAsMoment.format(_this.props.dateFormat),
105
+ valueAsMoment: valueAsMoment,
106
+ hasUnparsedText: false,
107
+ isTextInvalid: false
108
+ });
109
+ } else {
110
+ _this.setState(invalidDateState);
111
+ }
112
+ });
67
113
  var parsedValue = _datemath.default.parse(props.value, {
68
114
  roundUp: props.roundUp
69
115
  });
70
116
  var _valueAsMoment = parsedValue && parsedValue.isValid() ? parsedValue : (0, _moment.default)();
71
- var textInputValue = _valueAsMoment.locale(_this.props.locale || 'en').format(_this.props.dateFormat);
117
+ var _textInputValue = _valueAsMoment.locale(_this.props.locale || 'en').format(_this.props.dateFormat);
72
118
  _this.state = {
119
+ hasUnparsedText: false,
73
120
  isTextInvalid: false,
74
- textInputValue: textInputValue,
121
+ textInputValue: _textInputValue,
75
122
  valueAsMoment: _valueAsMoment
76
123
  };
77
124
  return _this;
@@ -80,17 +127,18 @@ var EuiAbsoluteTab = /*#__PURE__*/function (_Component) {
80
127
  key: "render",
81
128
  value: function render() {
82
129
  var _this2 = this;
83
- var _this$props = this.props,
84
- dateFormat = _this$props.dateFormat,
85
- timeFormat = _this$props.timeFormat,
86
- locale = _this$props.locale,
87
- utcOffset = _this$props.utcOffset,
88
- labelPrefix = _this$props.labelPrefix;
130
+ var _this$props2 = this.props,
131
+ dateFormat = _this$props2.dateFormat,
132
+ timeFormat = _this$props2.timeFormat,
133
+ locale = _this$props2.locale,
134
+ utcOffset = _this$props2.utcOffset,
135
+ labelPrefix = _this$props2.labelPrefix;
89
136
  var _this$state = this.state,
90
137
  valueAsMoment = _this$state.valueAsMoment,
91
138
  isTextInvalid = _this$state.isTextInvalid,
139
+ hasUnparsedText = _this$state.hasUnparsedText,
92
140
  textInputValue = _this$state.textInputValue;
93
- return (0, _react2.jsx)("div", null, (0, _react2.jsx)(_date_picker.EuiDatePicker, {
141
+ return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_date_picker.EuiDatePicker, {
94
142
  inline: true,
95
143
  showTimeSelect: true,
96
144
  shadow: false,
@@ -101,22 +149,34 @@ var EuiAbsoluteTab = /*#__PURE__*/function (_Component) {
101
149
  locale: locale,
102
150
  utcOffset: utcOffset
103
151
  }), (0, _react2.jsx)(_i18n.EuiI18n, {
104
- token: "euiAbsoluteTab.dateFormatError",
105
- default: "Expected format: {dateFormat}",
152
+ tokens: ['euiAbsoluteTab.dateFormatHint', 'euiAbsoluteTab.dateFormatError'],
153
+ defaults: ['Press the Enter key to parse as a date.', 'Allowed formats: {dateFormat}, ISO 8601, RFC 2822, or Unix timestamp.'],
106
154
  values: {
107
- dateFormat: dateFormat
155
+ dateFormat: (0, _react2.jsx)(_code.EuiCode, null, dateFormat)
108
156
  }
109
- }, function (dateFormatError) {
157
+ }, function (_ref) {
158
+ var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
159
+ dateFormatHint = _ref2[0],
160
+ dateFormatError = _ref2[1];
110
161
  return (0, _react2.jsx)(_form.EuiFormRow, {
111
162
  className: "euiSuperDatePicker__absoluteDateFormRow",
112
163
  isInvalid: isTextInvalid,
113
- error: isTextInvalid ? dateFormatError : undefined
164
+ error: isTextInvalid ? dateFormatError : undefined,
165
+ helpText: hasUnparsedText ? isTextInvalid ? dateFormatHint : [dateFormatHint, dateFormatError] : undefined
114
166
  }, (0, _react2.jsx)(_form.EuiFieldText, {
115
167
  compressed: true,
116
168
  isInvalid: isTextInvalid,
117
169
  value: textInputValue,
118
170
  onChange: _this2.handleTextChange,
119
- "data-test-subj": 'superDatePickerAbsoluteDateInput',
171
+ onPaste: function onPaste(event) {
172
+ _this2.parseUserDateInput(event.clipboardData.getData('text'));
173
+ },
174
+ onKeyDown: function onKeyDown(event) {
175
+ if (event.key === _services.keys.ENTER) {
176
+ _this2.parseUserDateInput(textInputValue);
177
+ }
178
+ },
179
+ "data-test-subj": "superDatePickerAbsoluteDateInput",
120
180
  prepend: (0, _react2.jsx)(_form.EuiFormLabel, null, labelPrefix)
121
181
  }));
122
182
  }));
@@ -88,8 +88,7 @@ var EuiQuickSelectPopover = function EuiQuickSelectPopover(_ref) {
88
88
  button: quickSelectButton,
89
89
  isOpen: isOpen,
90
90
  closePopover: closePopover,
91
- anchorPosition: "downLeft",
92
- anchorClassName: "euiQuickSelectPopover__anchor"
91
+ anchorPosition: "downLeft"
93
92
  }, (0, _react2.jsx)(EuiQuickSelectPanels, (0, _extends2.default)({}, props, {
94
93
  applyTime: applyTime,
95
94
  prevQuickSelect: prevQuickSelect
@@ -149,7 +149,7 @@ var EuiSuperUpdateButton = /*#__PURE__*/function (_Component) {
149
149
  }, sharedButtonProps, {
150
150
  fill: fill,
151
151
  textProps: _objectSpread(_objectSpread({}, restTextProps), {}, {
152
- className: (0, _classnames.default)('euiScreenReaderOnly', restTextProps === null || restTextProps === void 0 ? void 0 : restTextProps.className)
152
+ className: (0, _classnames.default)('euiScreenReaderOnly', restTextProps && restTextProps.className)
153
153
  })
154
154
  }, rest), buttonText)), (0, _react2.jsx)(_responsive2.EuiHideFor, {
155
155
  sizes: responsive || 'none'
@@ -44,7 +44,7 @@ describe('EuiErrorBoundary', function () {
44
44
  cy.checkAxe();
45
45
  });
46
46
  it('has zero violations and accepts focus when the button is pressed', function () {
47
- cy.realPress('Tab');
47
+ cy.get('button').first().focus();
48
48
  cy.realPress('Enter');
49
49
  cy.get('pre.euiCodeBlock__pre').should('have.focus');
50
50
  cy.checkAxe();
@@ -204,8 +204,7 @@ describe('EuiExpression', function () {
204
204
  cy.checkAxe();
205
205
  });
206
206
  it('has zero violations when first popover is interacted with by keyboard', function () {
207
- cy.realPress('Tab');
208
- cy.get('button').contains(/When count\(\)/i).should('have.focus');
207
+ cy.get('button').contains(/When count\(\)/i).focus();
209
208
  cy.realPress('Enter');
210
209
  cy.get('div[data-test-subj="cy-expression-popover-1"]').should('exist');
211
210
  cy.realPress('Tab');
@@ -215,8 +214,7 @@ describe('EuiExpression', function () {
215
214
  cy.checkAxe();
216
215
  });
217
216
  it('has zero violations when second popover is interacted with by keyboard', function () {
218
- cy.repeatRealPress('Tab');
219
- cy.get('button').contains(/Is above 100/i).should('have.focus');
217
+ cy.get('button').contains(/Is above 100/i).focus();
220
218
  cy.realPress('Enter');
221
219
  cy.get('div[data-test-subj="cy-expression-popover-2"]').should('exist');
222
220
  cy.realPress('Tab');
@@ -75,7 +75,7 @@ var EuiFilterButton = function EuiFilterButton(_ref) {
75
75
  });
76
76
  var buttonTextClassNames = (0, _classnames.default)('euiFilterButton__text', {
77
77
  'euiFilterButton__text-hasNotification': showBadge
78
- }, textProps === null || textProps === void 0 ? void 0 : textProps.className);
78
+ }, textProps && textProps.className);
79
79
  var badgeContent = showBadge && (0, _react2.jsx)(_badge.EuiNotificationBadge, {
80
80
  className: "euiFilterButton__notification",
81
81
  css: [notificationStyles.euiFilterButton__notification, isDisabled && notificationStyles.disabled, ";label:badgeContent;"],
@@ -105,7 +105,7 @@ var EuiFilterButton = function EuiFilterButton(_ref) {
105
105
  type: type,
106
106
  textProps: _objectSpread(_objectSpread({}, textProps), {}, {
107
107
  className: buttonTextClassNames,
108
- css: [textStyles.euiFilterButton__text, showBadge && textStyles.hasNotification, textProps === null || textProps === void 0 ? void 0 : textProps.css]
108
+ css: [textStyles.euiFilterButton__text, showBadge && textStyles.hasNotification, textProps && textProps.css]
109
109
  }),
110
110
  contentProps: _objectSpread(_objectSpread({}, contentProps), {}, {
111
111
  css: [contentStyles.euiFilterButton__content, iconType && contentStyles.hasIcon, contentProps === null || contentProps === void 0 ? void 0 : contentProps.css]
@@ -32,7 +32,7 @@ var euiFilterGroupStyles = function euiFilterGroupStyles(euiThemeContext) {
32
32
  controlCompressedBorderRadius = _euiFormVariables.controlCompressedBorderRadius,
33
33
  controlCompressedHeight = _euiFormVariables.controlCompressedHeight;
34
34
  return {
35
- euiFilterGroup: /*#__PURE__*/(0, _react.css)("display:inline-flex;", (0, _global_styling.logicalCSS)('max-width', '100%'), " overflow:hidden;background-color:", backgroundColor, ";box-shadow:inset 0 0 0 ", euiTheme.border.width.thin, " ", borderColor, ";>*:not(.euiFilterButton){", (0, _filter_button.euiFilterButtonDisplay)(euiThemeContext), ";}.euiPopover__anchor{display:block;.euiFilterButton{", (0, _global_styling.logicalCSS)('width', '100%'), ";}}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{flex-wrap:wrap;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs']), "{display:flex;.euiFilterButton{flex-grow:1;}};label:euiFilterGroup;"),
35
+ euiFilterGroup: /*#__PURE__*/(0, _react.css)("display:inline-flex;", (0, _global_styling.logicalCSS)('max-width', '100%'), " overflow:hidden;background-color:", backgroundColor, ";box-shadow:inset 0 0 0 ", euiTheme.border.width.thin, " ", borderColor, ";>*:not(.euiFilterButton){", (0, _filter_button.euiFilterButtonDisplay)(euiThemeContext), ";}.euiPopover>.euiFilterButton{", (0, _global_styling.logicalCSS)('width', '100%'), ";}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{flex-wrap:wrap;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs']), "{display:flex;.euiFilterButton{flex-grow:1;}};label:euiFilterGroup;"),
36
36
  fullWidth: _ref,
37
37
  uncompressed: /*#__PURE__*/(0, _react.css)("border-radius:", controlBorderRadius, ";", buttonChildrenBorderRadii(controlBorderRadius), ";;label:uncompressed;"),
38
38
  compressed: /*#__PURE__*/(0, _react.css)("border-radius:", controlCompressedBorderRadius, ";", buttonChildrenBorderRadii(controlCompressedBorderRadius), " .euiFilterButton{", (0, _global_styling.logicalCSS)('height', controlCompressedHeight), ";};label:compressed;"),
@@ -106,12 +106,12 @@ describe('EuiFocusTrap', function () {
106
106
  });
107
107
  describe('Accessibility checks for keyboard navigation', function () {
108
108
  it('allows the button outside the FocusTrap to receive focus', function () {
109
- cy.repeatRealPress('Tab', 5);
110
- cy.get('button[data-test-subj="cy-external-button"]').should('have.focus');
109
+ cy.get('button[data-test-subj="cy-external-button"]').focus();
111
110
  cy.checkAxe();
112
111
  });
113
112
  it('prevents the button outside the FocusTrap from receiving focus', function () {
114
- cy.repeatRealPress('Tab', 4);
113
+ cy.get('input[data-test-subj="cy-input-one"]').focus();
114
+ cy.repeatRealPress('Tab', 3);
115
115
  cy.realPress('Enter');
116
116
  cy.realPress('Tab');
117
117
  cy.get('input[data-test-subj="cy-input-one"]').should('have.focus');
@@ -55,15 +55,13 @@ describe('Single EuiRange', function () {
55
55
  });
56
56
  describe('Keyboard accessibility check', function () {
57
57
  it('has zero violations when the range slider is increased', function () {
58
- cy.realPress('Tab');
59
- cy.get('input#cy-range-single').should('have.focus');
58
+ cy.get('input#cy-range-single').focus();
60
59
  cy.repeatRealPress('ArrowRight', 10);
61
60
  cy.get('output.euiRangeTooltip__value').contains('100 - 110');
62
61
  cy.checkAxe();
63
62
  });
64
63
  it('has zero violations when the range slider is decreased', function () {
65
- cy.realPress('Tab');
66
- cy.get('input#cy-range-single').should('have.focus');
64
+ cy.get('input#cy-range-single').focus();
67
65
  cy.repeatRealPress('ArrowLeft', 10);
68
66
  cy.get('output.euiRangeTooltip__value').contains('100 - 100');
69
67
  cy.checkAxe();
@@ -102,8 +100,7 @@ describe('Dual EuiRange', function () {
102
100
  });
103
101
  describe('Keyboard accessibility check', function () {
104
102
  it('has zero violations when the range sliders are adjusted', function () {
105
- cy.realPress('Tab');
106
- cy.get('div[role="slider"]').first().should('have.focus');
103
+ cy.get('div[role="slider"]').first().focus();
107
104
  cy.repeatRealPress('ArrowLeft', 3);
108
105
  cy.get('div[role="slider"]').first().invoke('attr', 'aria-valuenow').should('eq', '70');
109
106
  cy.realPress('Tab');
@@ -144,8 +141,7 @@ describe('Highlight Area EuiRange', function () {
144
141
  });
145
142
  describe('Keyboard accessibility check', function () {
146
143
  it('has zero violations when the highlight area is adjusted using arrow keys', function () {
147
- cy.realPress('Tab');
148
- cy.get('div[role="slider"]').first().should('have.focus');
144
+ cy.get('div[role="slider"]').first().focus();
149
145
  cy.repeatRealPress('ArrowLeft', 3);
150
146
  cy.get('div[role="slider"]').first().invoke('attr', 'aria-valuetext').should('eq', '37, 57');
151
147
  cy.checkAxe();
@@ -190,8 +186,7 @@ describe('Highlight Area EuiRange', function () {
190
186
  });
191
187
  describe('Keyboard accessibility check', function () {
192
188
  it('updates the range value using arrow keys with input[type="number"]', function () {
193
- cy.realPress('Tab');
194
- cy.get('input#cy-range-in-dropdown').should('have.focus');
189
+ cy.get('input#cy-range-in-dropdown').focus();
195
190
  cy.repeatRealPress('ArrowUp', 10);
196
191
  cy.get('input[type="range"]').first().invoke('attr', 'value').should('eq', '30');
197
192
  cy.checkAxe();
@@ -222,6 +222,7 @@ var EuiSuperSelect = /*#__PURE__*/function (_Component) {
222
222
  dropdownDisplay = option.dropdownDisplay,
223
223
  inputDisplay = option.inputDisplay,
224
224
  optionRest = (0, _objectWithoutProperties2.default)(option, _excluded2);
225
+ if (value == null) return;
225
226
  return (0, _react2.jsx)(_context_menu.EuiContextMenuItem, (0, _extends2.default)({
226
227
  key: index,
227
228
  className: itemClasses,
@@ -235,7 +236,7 @@ var EuiSuperSelect = /*#__PURE__*/function (_Component) {
235
236
  return _this2.setItemNode(node, index);
236
237
  },
237
238
  role: "option",
238
- id: value,
239
+ id: String(value),
239
240
  "aria-selected": valueOfSelected === value
240
241
  }, optionRest), dropdownDisplay || inputDisplay);
241
242
  });
@@ -261,7 +262,7 @@ var EuiSuperSelect = /*#__PURE__*/function (_Component) {
261
262
  "aria-describedby": _this2.describedById,
262
263
  className: "euiSuperSelect__listbox",
263
264
  role: "listbox",
264
- "aria-activedescendant": valueOfSelected,
265
+ "aria-activedescendant": valueOfSelected != null ? String(valueOfSelected) : undefined,
265
266
  tabIndex: 0
266
267
  }, items);
267
268
  }));
@@ -28,8 +28,7 @@ var EuiSuperSelectControl = function EuiSuperSelectControl(props) {
28
28
  var _useFormContext = (0, _eui_form_context.useFormContext)(),
29
29
  defaultFullWidth = _useFormContext.defaultFullWidth;
30
30
  var className = props.className,
31
- _props$options = props.options,
32
- options = _props$options === void 0 ? [] : _props$options,
31
+ options = props.options,
33
32
  id = props.id,
34
33
  name = props.name,
35
34
  _props$fullWidth = props.fullWidth,
@@ -60,27 +59,21 @@ var EuiSuperSelectControl = function EuiSuperSelectControl(props) {
60
59
  'euiSuperSelectControl-isLoading': isLoading,
61
60
  'euiSuperSelectControl-isInvalid': isInvalid
62
61
  }, className);
63
-
64
- // React HTML input can not have both value and defaultValue properties.
65
- // https://reactjs.org/docs/uncontrolled-components.html#default-values
66
- var selectDefaultValue;
67
- if (value == null) {
68
- selectDefaultValue = defaultValue || '';
69
- }
70
- var selectedValue;
71
- if (value) {
72
- var selectedOption = options.find(function (option) {
73
- return option.value === value;
74
- });
75
- selectedValue = selectedOption ? selectedOption.inputDisplay : selectedValue;
76
- }
62
+ var inputValue = value != null ? value : defaultValue;
63
+ var selectedValue = (0, _react.useMemo)(function () {
64
+ if (inputValue != null) {
65
+ var selectedOption = options === null || options === void 0 ? void 0 : options.find(function (option) {
66
+ return option.value === inputValue;
67
+ });
68
+ return selectedOption ? selectedOption.inputDisplay : undefined;
69
+ }
70
+ }, [inputValue, options]);
77
71
  var showPlaceholder = !!placeholder && !selectedValue;
78
- return (0, _react2.jsx)(_react.Fragment, null, (0, _react2.jsx)("input", {
72
+ return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)("input", {
79
73
  type: "hidden",
80
74
  id: id,
81
75
  name: name,
82
- defaultValue: selectDefaultValue,
83
- value: value,
76
+ value: String(inputValue !== null && inputValue !== void 0 ? inputValue : ''),
84
77
  readOnly: readOnly
85
78
  }), (0, _react2.jsx)(_form_control_layout.EuiFormControlLayout, {
86
79
  isDropdown: true,
@@ -333,7 +333,7 @@ describe('EuiHeader', function () {
333
333
  cy.checkAxe();
334
334
  });
335
335
  it('has zero violations when a hidden breadcrumb is expanded', function () {
336
- cy.get('button[aria-label="See collapsed breadcrumbs"]').realClick();
336
+ cy.get('button[title="See collapsed breadcrumbs"]').realClick();
337
337
  cy.get('a[data-test-subj="cy-breadcrumb-hidden"]').should('exist');
338
338
  cy.checkAxe();
339
339
  });
@@ -81,6 +81,7 @@ var EuiI18n = function EuiI18n(props) {
81
81
  i18nMapping: mapping,
82
82
  i18nMappingFunc: mappingFunc,
83
83
  valueDefault: props.defaults[idx],
84
+ values: props.values,
84
85
  render: render
85
86
  });
86
87
  }));