@elastic/eui 93.3.0 → 93.5.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 (361) hide show
  1. package/dist/eui_charts_theme.d.ts +9 -0
  2. package/dist/eui_charts_theme.js +56 -14
  3. package/dist/eui_charts_theme.js.map +1 -1
  4. package/dist/eui_theme_dark.css +3 -0
  5. package/dist/eui_theme_dark.min.css +1 -1
  6. package/dist/eui_theme_light.css +3 -0
  7. package/dist/eui_theme_light.min.css +1 -1
  8. package/es/components/breadcrumbs/_breadcrumb_content.js +362 -0
  9. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
  10. package/es/components/breadcrumbs/breadcrumb.js +10 -327
  11. package/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
  12. package/es/components/breadcrumbs/breadcrumbs.js +4 -4
  13. package/es/components/breadcrumbs/types.js +1 -0
  14. package/es/components/button/button_group/button_group.js +16 -2
  15. package/es/components/button/button_group/button_group.styles.js +1 -1
  16. package/es/components/button/button_group/button_group_button.js +59 -5
  17. package/es/components/button/button_group/button_group_button.styles.js +39 -3
  18. package/es/components/datagrid/body/cell/data_grid_cell.js +97 -58
  19. package/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  20. package/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
  21. package/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +32 -31
  22. package/es/components/datagrid/body/cell/index.js +1 -1
  23. package/es/components/datagrid/body/data_grid_body.js +13 -0
  24. package/es/components/datagrid/body/data_grid_body_custom.js +52 -36
  25. package/es/components/datagrid/body/data_grid_body_virtualized.js +84 -56
  26. package/es/components/datagrid/body/data_grid_row_manager.js +6 -4
  27. package/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  28. package/es/components/datagrid/body/header/data_grid_control_header_cell.js +5 -4
  29. package/es/components/datagrid/body/header/data_grid_header_cell.js +73 -53
  30. package/es/components/datagrid/body/header/data_grid_header_row.js +15 -551
  31. package/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
  32. package/es/components/datagrid/controls/column_selector.js +126 -123
  33. package/es/components/datagrid/controls/column_sorting.js +605 -103
  34. package/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
  35. package/es/components/datagrid/controls/display_selector.js +109 -107
  36. package/es/components/datagrid/data_grid.a11y.js +13 -12
  37. package/es/components/datagrid/data_grid.js +45 -22
  38. package/es/components/datagrid/utils/col_widths.js +12 -8
  39. package/es/components/datagrid/utils/focus.js +10 -8
  40. package/es/components/datagrid/utils/grid_height_width.js +31 -30
  41. package/es/components/datagrid/utils/ref.js +1 -1
  42. package/es/components/datagrid/utils/row_heights.js +2 -2
  43. package/es/components/datagrid/utils/sorting.js +29 -27
  44. package/es/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  45. package/es/components/date_picker/super_date_picker/super_update_button.js +57 -29
  46. package/es/components/flex/flex_grid.js +22 -8
  47. package/es/components/flex/flex_grid.styles.js +13 -6
  48. package/es/components/flex/flex_group.js +10 -11
  49. package/es/components/flex/flex_item.js +9 -11
  50. package/es/components/flex/flex_item.styles.js +107 -122
  51. package/es/components/flyout/flyout.js +16 -18
  52. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  53. package/es/components/header/header_links/header_links.js +10 -2
  54. package/es/components/icon/icon.js +3 -3
  55. package/es/components/modal/confirm_modal.js +2 -1
  56. package/es/components/modal/modal.js +12 -3
  57. package/es/components/observer/resize_observer/resize_observer.js +15 -24
  58. package/es/components/panel/panel.js +2 -3
  59. package/es/components/resizable_container/resizable_button.js +2 -3
  60. package/es/components/resizable_container/resizable_collapse_button.js +2 -3
  61. package/es/components/resizable_container/resizable_container.js +1 -2
  62. package/es/components/resizable_container/resizable_container.styles.js +11 -14
  63. package/es/components/resizable_container/resizable_panel.js +6 -8
  64. package/es/components/resizable_container/resizable_panel.styles.js +18 -29
  65. package/es/components/selectable/selectable_list/selectable_list.js +26 -6
  66. package/es/components/spacer/spacer.js +2 -3
  67. package/es/components/toast/global_toast_list.js +70 -73
  68. package/es/components/toast/toast.js +27 -42
  69. package/es/components/toast/toast.styles.js +2 -17
  70. package/es/components/tool_tip/icon_tip.js +4 -3
  71. package/es/global_styling/mixins/_color.js +60 -32
  72. package/es/global_styling/mixins/_padding.js +60 -16
  73. package/es/services/color/eui_palettes.js +21 -13
  74. package/es/services/color/index.js +1 -1
  75. package/es/services/hooks/index.js +1 -0
  76. package/es/services/hooks/useDeepEqual.js +23 -0
  77. package/es/services/index.js +1 -1
  78. package/es/services/theme/style_memoization.js +1 -3
  79. package/eui.d.ts +2558 -2470
  80. package/i18ntokens.json +297 -279
  81. package/lib/components/breadcrumbs/_breadcrumb_content.js +372 -0
  82. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  83. package/lib/components/breadcrumbs/breadcrumb.js +11 -331
  84. package/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
  85. package/lib/components/breadcrumbs/breadcrumbs.js +3 -3
  86. package/lib/components/breadcrumbs/types.js +5 -0
  87. package/lib/components/button/button_group/button_group.js +16 -2
  88. package/lib/components/button/button_group/button_group.styles.js +1 -1
  89. package/lib/components/button/button_group/button_group_button.js +59 -5
  90. package/lib/components/button/button_group/button_group_button.styles.js +45 -11
  91. package/lib/components/datagrid/body/cell/data_grid_cell.js +95 -57
  92. package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  93. package/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  94. package/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +32 -31
  95. package/lib/components/datagrid/body/cell/index.js +2 -2
  96. package/lib/components/datagrid/body/data_grid_body.js +13 -0
  97. package/lib/components/datagrid/body/data_grid_body_custom.js +51 -35
  98. package/lib/components/datagrid/body/data_grid_body_virtualized.js +83 -55
  99. package/lib/components/datagrid/body/data_grid_row_manager.js +5 -3
  100. package/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  101. package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  102. package/lib/components/datagrid/body/header/data_grid_header_cell.js +72 -52
  103. package/lib/components/datagrid/body/header/data_grid_header_row.js +14 -550
  104. package/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
  105. package/lib/components/datagrid/controls/column_selector.js +126 -123
  106. package/lib/components/datagrid/controls/column_sorting.js +615 -110
  107. package/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
  108. package/lib/components/datagrid/controls/display_selector.js +109 -107
  109. package/lib/components/datagrid/data_grid.a11y.js +13 -12
  110. package/lib/components/datagrid/data_grid.js +43 -20
  111. package/lib/components/datagrid/utils/col_widths.js +12 -8
  112. package/lib/components/datagrid/utils/focus.js +10 -8
  113. package/lib/components/datagrid/utils/grid_height_width.js +29 -28
  114. package/lib/components/datagrid/utils/ref.js +1 -1
  115. package/lib/components/datagrid/utils/row_heights.js +1 -1
  116. package/lib/components/datagrid/utils/sorting.js +31 -29
  117. package/lib/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  118. package/lib/components/date_picker/super_date_picker/super_update_button.js +57 -29
  119. package/lib/components/flex/flex_grid.js +23 -7
  120. package/lib/components/flex/flex_grid.styles.js +13 -6
  121. package/lib/components/flex/flex_group.js +10 -10
  122. package/lib/components/flex/flex_item.js +13 -13
  123. package/lib/components/flex/flex_item.styles.js +107 -122
  124. package/lib/components/flyout/flyout.js +16 -18
  125. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  126. package/lib/components/header/header_links/header_links.js +10 -2
  127. package/lib/components/icon/icon.js +3 -3
  128. package/lib/components/modal/confirm_modal.js +2 -1
  129. package/lib/components/modal/modal.js +12 -3
  130. package/lib/components/observer/resize_observer/resize_observer.js +15 -24
  131. package/lib/components/panel/panel.js +1 -2
  132. package/lib/components/resizable_container/resizable_button.js +1 -2
  133. package/lib/components/resizable_container/resizable_collapse_button.js +1 -2
  134. package/lib/components/resizable_container/resizable_container.js +1 -2
  135. package/lib/components/resizable_container/resizable_container.styles.js +11 -14
  136. package/lib/components/resizable_container/resizable_panel.js +3 -5
  137. package/lib/components/resizable_container/resizable_panel.styles.js +17 -28
  138. package/lib/components/selectable/selectable_list/selectable_list.js +26 -6
  139. package/lib/components/spacer/spacer.js +1 -2
  140. package/lib/components/toast/global_toast_list.js +68 -71
  141. package/lib/components/toast/toast.js +25 -40
  142. package/lib/components/toast/toast.styles.js +11 -25
  143. package/lib/components/tool_tip/icon_tip.js +4 -3
  144. package/lib/global_styling/mixins/_color.js +65 -40
  145. package/lib/global_styling/mixins/_padding.js +66 -25
  146. package/lib/services/color/eui_palettes.js +24 -14
  147. package/lib/services/color/index.js +14 -0
  148. package/lib/services/hooks/index.js +11 -0
  149. package/lib/services/hooks/useDeepEqual.js +30 -0
  150. package/lib/services/index.js +15 -1
  151. package/lib/services/theme/style_memoization.js +1 -3
  152. package/optimize/es/components/breadcrumbs/_breadcrumb_content.js +153 -0
  153. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
  154. package/optimize/es/components/breadcrumbs/breadcrumb.js +10 -110
  155. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
  156. package/optimize/es/components/breadcrumbs/breadcrumbs.js +4 -4
  157. package/optimize/es/components/breadcrumbs/types.js +1 -0
  158. package/optimize/es/components/button/button_group/button_group.js +2 -2
  159. package/optimize/es/components/button/button_group/button_group.styles.js +1 -1
  160. package/optimize/es/components/button/button_group/button_group_button.js +36 -4
  161. package/optimize/es/components/button/button_group/button_group_button.styles.js +39 -3
  162. package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +80 -55
  163. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  164. package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
  165. package/optimize/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +32 -31
  166. package/optimize/es/components/datagrid/body/cell/index.js +1 -1
  167. package/optimize/es/components/datagrid/body/data_grid_body_custom.js +39 -36
  168. package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +69 -49
  169. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +6 -4
  170. package/optimize/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  171. package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +4 -3
  172. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +65 -49
  173. package/optimize/es/components/datagrid/body/header/data_grid_header_row.js +15 -13
  174. package/optimize/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
  175. package/optimize/es/components/datagrid/controls/column_selector.js +126 -123
  176. package/optimize/es/components/datagrid/controls/column_sorting.js +121 -103
  177. package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
  178. package/optimize/es/components/datagrid/controls/display_selector.js +109 -107
  179. package/optimize/es/components/datagrid/data_grid.a11y.js +13 -12
  180. package/optimize/es/components/datagrid/data_grid.js +45 -22
  181. package/optimize/es/components/datagrid/utils/col_widths.js +9 -5
  182. package/optimize/es/components/datagrid/utils/focus.js +10 -8
  183. package/optimize/es/components/datagrid/utils/grid_height_width.js +31 -30
  184. package/optimize/es/components/datagrid/utils/ref.js +1 -1
  185. package/optimize/es/components/datagrid/utils/row_heights.js +2 -2
  186. package/optimize/es/components/datagrid/utils/sorting.js +29 -27
  187. package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +49 -29
  188. package/optimize/es/components/flex/flex_grid.js +19 -8
  189. package/optimize/es/components/flex/flex_grid.styles.js +13 -6
  190. package/optimize/es/components/flex/flex_group.js +9 -10
  191. package/optimize/es/components/flex/flex_item.js +9 -11
  192. package/optimize/es/components/flex/flex_item.styles.js +107 -122
  193. package/optimize/es/components/flyout/flyout.js +16 -18
  194. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  195. package/optimize/es/components/header/header_links/header_links.js +3 -2
  196. package/optimize/es/components/icon/icon.js +3 -3
  197. package/optimize/es/components/modal/confirm_modal.js +2 -1
  198. package/optimize/es/components/modal/modal.js +6 -2
  199. package/optimize/es/components/observer/resize_observer/resize_observer.js +15 -24
  200. package/optimize/es/components/panel/panel.js +2 -3
  201. package/optimize/es/components/resizable_container/resizable_button.js +2 -3
  202. package/optimize/es/components/resizable_container/resizable_collapse_button.js +2 -3
  203. package/optimize/es/components/resizable_container/resizable_container.js +1 -2
  204. package/optimize/es/components/resizable_container/resizable_container.styles.js +11 -14
  205. package/optimize/es/components/resizable_container/resizable_panel.js +6 -8
  206. package/optimize/es/components/resizable_container/resizable_panel.styles.js +18 -26
  207. package/optimize/es/components/selectable/selectable_list/selectable_list.js +26 -6
  208. package/optimize/es/components/spacer/spacer.js +2 -3
  209. package/optimize/es/components/toast/global_toast_list.js +70 -73
  210. package/optimize/es/components/toast/toast.js +27 -42
  211. package/optimize/es/components/toast/toast.styles.js +2 -17
  212. package/optimize/es/components/tool_tip/icon_tip.js +4 -3
  213. package/optimize/es/global_styling/mixins/_color.js +57 -32
  214. package/optimize/es/global_styling/mixins/_padding.js +52 -16
  215. package/optimize/es/services/color/eui_palettes.js +21 -13
  216. package/optimize/es/services/color/index.js +1 -1
  217. package/optimize/es/services/hooks/index.js +1 -0
  218. package/optimize/es/services/hooks/useDeepEqual.js +23 -0
  219. package/optimize/es/services/index.js +1 -1
  220. package/optimize/es/services/theme/style_memoization.js +1 -3
  221. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.js +163 -0
  222. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  223. package/optimize/lib/components/breadcrumbs/breadcrumb.js +10 -113
  224. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
  225. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +3 -3
  226. package/optimize/lib/components/breadcrumbs/types.js +5 -0
  227. package/optimize/lib/components/button/button_group/button_group.js +2 -2
  228. package/optimize/lib/components/button/button_group/button_group.styles.js +1 -1
  229. package/optimize/lib/components/button/button_group/button_group_button.js +37 -5
  230. package/optimize/lib/components/button/button_group/button_group_button.styles.js +45 -11
  231. package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +78 -54
  232. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  233. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  234. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +32 -31
  235. package/optimize/lib/components/datagrid/body/cell/index.js +2 -2
  236. package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +38 -35
  237. package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +70 -50
  238. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +5 -3
  239. package/optimize/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  240. package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  241. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +65 -49
  242. package/optimize/lib/components/datagrid/body/header/data_grid_header_row.js +14 -12
  243. package/optimize/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
  244. package/optimize/lib/components/datagrid/controls/column_selector.js +126 -123
  245. package/optimize/lib/components/datagrid/controls/column_sorting.js +125 -107
  246. package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
  247. package/optimize/lib/components/datagrid/controls/display_selector.js +109 -107
  248. package/optimize/lib/components/datagrid/data_grid.a11y.js +13 -12
  249. package/optimize/lib/components/datagrid/data_grid.js +43 -20
  250. package/optimize/lib/components/datagrid/utils/col_widths.js +9 -5
  251. package/optimize/lib/components/datagrid/utils/focus.js +10 -8
  252. package/optimize/lib/components/datagrid/utils/grid_height_width.js +29 -28
  253. package/optimize/lib/components/datagrid/utils/ref.js +1 -1
  254. package/optimize/lib/components/datagrid/utils/row_heights.js +1 -1
  255. package/optimize/lib/components/datagrid/utils/sorting.js +31 -29
  256. package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +49 -29
  257. package/optimize/lib/components/flex/flex_grid.js +21 -7
  258. package/optimize/lib/components/flex/flex_grid.styles.js +13 -6
  259. package/optimize/lib/components/flex/flex_group.js +9 -9
  260. package/optimize/lib/components/flex/flex_item.js +13 -13
  261. package/optimize/lib/components/flex/flex_item.styles.js +107 -122
  262. package/optimize/lib/components/flyout/flyout.js +16 -18
  263. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  264. package/optimize/lib/components/header/header_links/header_links.js +3 -2
  265. package/optimize/lib/components/icon/icon.js +3 -3
  266. package/optimize/lib/components/modal/confirm_modal.js +2 -1
  267. package/optimize/lib/components/modal/modal.js +6 -2
  268. package/optimize/lib/components/observer/resize_observer/resize_observer.js +15 -24
  269. package/optimize/lib/components/panel/panel.js +1 -2
  270. package/optimize/lib/components/resizable_container/resizable_button.js +1 -2
  271. package/optimize/lib/components/resizable_container/resizable_collapse_button.js +1 -2
  272. package/optimize/lib/components/resizable_container/resizable_container.js +1 -2
  273. package/optimize/lib/components/resizable_container/resizable_container.styles.js +11 -14
  274. package/optimize/lib/components/resizable_container/resizable_panel.js +3 -5
  275. package/optimize/lib/components/resizable_container/resizable_panel.styles.js +17 -26
  276. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +26 -6
  277. package/optimize/lib/components/spacer/spacer.js +1 -2
  278. package/optimize/lib/components/toast/global_toast_list.js +68 -71
  279. package/optimize/lib/components/toast/toast.js +25 -40
  280. package/optimize/lib/components/toast/toast.styles.js +11 -25
  281. package/optimize/lib/components/tool_tip/icon_tip.js +4 -3
  282. package/optimize/lib/global_styling/mixins/_color.js +63 -40
  283. package/optimize/lib/global_styling/mixins/_padding.js +59 -25
  284. package/optimize/lib/services/color/eui_palettes.js +24 -14
  285. package/optimize/lib/services/color/index.js +14 -0
  286. package/optimize/lib/services/hooks/index.js +11 -0
  287. package/optimize/lib/services/hooks/useDeepEqual.js +30 -0
  288. package/optimize/lib/services/index.js +15 -1
  289. package/optimize/lib/services/theme/style_memoization.js +1 -3
  290. package/package.json +8 -11
  291. package/src/components/form/text_area/_text_area.scss +5 -0
  292. package/src/components/selectable/selectable_list/_selectable_list.scss +2 -0
  293. package/test-env/components/breadcrumbs/_breadcrumb_content.js +363 -0
  294. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  295. package/test-env/components/breadcrumbs/breadcrumb.js +11 -326
  296. package/test-env/components/breadcrumbs/breadcrumb.styles.js +5 -29
  297. package/test-env/components/breadcrumbs/breadcrumbs.js +3 -3
  298. package/test-env/components/breadcrumbs/types.js +5 -0
  299. package/test-env/components/button/button_group/button_group.js +16 -2
  300. package/test-env/components/button/button_group/button_group.styles.js +1 -1
  301. package/test-env/components/button/button_group/button_group_button.js +56 -5
  302. package/test-env/components/button/button_group/button_group_button.styles.js +45 -11
  303. package/test-env/components/datagrid/body/cell/data_grid_cell.js +95 -57
  304. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  305. package/test-env/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  306. package/test-env/components/datagrid/body/cell/data_grid_cell_wrapper.js +32 -31
  307. package/test-env/components/datagrid/body/cell/index.js +2 -2
  308. package/test-env/components/datagrid/body/data_grid_body.js +13 -0
  309. package/test-env/components/datagrid/body/data_grid_body_custom.js +51 -35
  310. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +83 -55
  311. package/test-env/components/datagrid/body/data_grid_row_manager.js +5 -3
  312. package/test-env/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  313. package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  314. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +72 -52
  315. package/test-env/components/datagrid/body/header/data_grid_header_row.js +14 -550
  316. package/test-env/components/datagrid/body/header/use_data_grid_header.js +7 -6
  317. package/test-env/components/datagrid/controls/column_selector.js +126 -123
  318. package/test-env/components/datagrid/controls/column_sorting.js +607 -106
  319. package/test-env/components/datagrid/controls/column_sorting_draggable.js +27 -22
  320. package/test-env/components/datagrid/controls/display_selector.js +109 -107
  321. package/test-env/components/datagrid/data_grid.a11y.js +13 -12
  322. package/test-env/components/datagrid/data_grid.js +43 -20
  323. package/test-env/components/datagrid/utils/col_widths.js +9 -5
  324. package/test-env/components/datagrid/utils/focus.js +10 -8
  325. package/test-env/components/datagrid/utils/grid_height_width.js +29 -28
  326. package/test-env/components/datagrid/utils/ref.js +1 -1
  327. package/test-env/components/datagrid/utils/row_heights.js +1 -1
  328. package/test-env/components/datagrid/utils/sorting.js +31 -29
  329. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  330. package/test-env/components/date_picker/super_date_picker/super_update_button.js +57 -29
  331. package/test-env/components/flex/flex_grid.js +21 -7
  332. package/test-env/components/flex/flex_grid.styles.js +13 -6
  333. package/test-env/components/flex/flex_group.js +10 -10
  334. package/test-env/components/flex/flex_item.js +13 -13
  335. package/test-env/components/flex/flex_item.styles.js +107 -122
  336. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  337. package/test-env/components/header/header_links/header_links.js +10 -2
  338. package/test-env/components/modal/confirm_modal.js +2 -1
  339. package/test-env/components/modal/modal.js +12 -3
  340. package/test-env/components/panel/panel.js +1 -2
  341. package/test-env/components/resizable_container/resizable_button.js +1 -2
  342. package/test-env/components/resizable_container/resizable_collapse_button.js +1 -2
  343. package/test-env/components/resizable_container/resizable_container.js +1 -2
  344. package/test-env/components/resizable_container/resizable_container.styles.js +11 -14
  345. package/test-env/components/resizable_container/resizable_panel.js +3 -5
  346. package/test-env/components/resizable_container/resizable_panel.styles.js +17 -26
  347. package/test-env/components/selectable/selectable_list/selectable_list.js +26 -6
  348. package/test-env/components/spacer/spacer.js +1 -2
  349. package/test-env/components/toast/global_toast_list.js +68 -71
  350. package/test-env/components/toast/toast.js +25 -40
  351. package/test-env/components/toast/toast.styles.js +11 -25
  352. package/test-env/components/tool_tip/icon_tip.js +4 -3
  353. package/test-env/global_styling/mixins/_color.js +63 -40
  354. package/test-env/global_styling/mixins/_padding.js +59 -25
  355. package/test-env/services/color/eui_palettes.js +24 -14
  356. package/test-env/services/color/index.js +14 -0
  357. package/test-env/services/hooks/index.js +11 -0
  358. package/test-env/services/hooks/useDeepEqual.js +30 -0
  359. package/test-env/services/index.js +15 -1
  360. package/test-env/services/theme/style_memoization.js +1 -3
  361. package/src/themes/charts/theme.scss +0 -5
@@ -87,33 +87,31 @@ export var EuiFlyout = /*#__PURE__*/forwardRef(function (_ref, ref) {
87
87
  resizeRef = _useState2[0],
88
88
  setResizeRef = _useState2[1];
89
89
  var setRef = useCombinedRefs([setResizeRef, ref]);
90
- // TODO: Allow this hook to be conditional
91
- var dimensions = useResizeObserver(resizeRef);
90
+ var _useResizeObserver = useResizeObserver(isPushed ? resizeRef : null, 'width'),
91
+ width = _useResizeObserver.width;
92
92
  useEffect(function () {
93
- // This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
94
- document.body.classList.add('euiBody--hasFlyout');
95
-
96
93
  /**
97
94
  * Accomodate for the `isPushed` state by adding padding to the body equal to the width of the element
98
95
  */
99
96
  if (isPushed) {
100
- if (side === 'right') {
101
- document.body.style.paddingInlineEnd = "".concat(dimensions.width, "px");
102
- } else if (side === 'left') {
103
- document.body.style.paddingInlineStart = "".concat(dimensions.width, "px");
104
- }
97
+ var paddingSide = side === 'left' ? 'paddingInlineStart' : 'paddingInlineEnd';
98
+ document.body.style[paddingSide] = "".concat(width, "px");
99
+ return function () {
100
+ document.body.style[paddingSide] = '';
101
+ };
105
102
  }
103
+ }, [isPushed, side, width]);
104
+
105
+ /**
106
+ * This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
107
+ */
108
+ useEffect(function () {
109
+ document.body.classList.add('euiBody--hasFlyout');
106
110
  return function () {
111
+ // Remove the hasFlyout class when the flyout is unmounted
107
112
  document.body.classList.remove('euiBody--hasFlyout');
108
- if (isPushed) {
109
- if (side === 'right') {
110
- document.body.style.paddingInlineEnd = '';
111
- } else if (side === 'left') {
112
- document.body.style.paddingInlineStart = '';
113
- }
114
- }
115
113
  };
116
- }, [side, dimensions, isPushed]);
114
+ }, []);
117
115
 
118
116
  /**
119
117
  * ESC key closes flyout (always?)
@@ -11,24 +11,22 @@ var _excluded = ["className", "breadcrumbs"];
11
11
 
12
12
  import React from 'react';
13
13
  import classNames from 'classnames';
14
+ import { useEuiMemoizedStyles } from '../../../services';
14
15
  import { EuiBreadcrumbs } from '../../breadcrumbs';
15
16
  import { euiHeaderBreadcrumbsStyles } from './header_breadcrumbs.styles';
16
- import { useEuiTheme } from '../../../services';
17
17
  import { jsx as ___EmotionJSX } from "@emotion/react";
18
18
  export var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
19
19
  var className = _ref.className,
20
20
  breadcrumbs = _ref.breadcrumbs,
21
21
  rest = _objectWithoutProperties(_ref, _excluded);
22
22
  var classes = classNames('euiHeaderBreadcrumbs', className);
23
- var euiTheme = useEuiTheme();
24
- var styles = euiHeaderBreadcrumbsStyles(euiTheme);
25
- var cssHeaderBreadcrumbStyles = [styles.euiHeaderBreadcrumbs];
23
+ var styles = useEuiMemoizedStyles(euiHeaderBreadcrumbsStyles);
26
24
  return ___EmotionJSX(EuiBreadcrumbs, _extends({
27
25
  max: 4,
28
26
  truncate: true,
29
27
  breadcrumbs: breadcrumbs,
30
28
  className: classes,
31
- css: cssHeaderBreadcrumbStyles,
29
+ css: styles.euiHeaderBreadcrumbs,
32
30
  type: "application"
33
31
  }, rest));
34
32
  };
@@ -71,6 +71,7 @@ export var EuiHeaderLinks = function EuiHeaderLinks(_ref) {
71
71
  size: "m"
72
72
  }));
73
73
  });
74
+ var renderedChildren = typeof children === 'function' ? children(closeMenu) : children;
74
75
  return ___EmotionJSX(EuiI18n, {
75
76
  token: "euiHeaderLinks.appNavigation",
76
77
  default: "App menu"
@@ -84,7 +85,7 @@ export var EuiHeaderLinks = function EuiHeaderLinks(_ref) {
84
85
  }, ___EmotionJSX("div", {
85
86
  className: "euiHeaderLinks__list",
86
87
  css: [styles.euiHeaderLinks__list, styles.gutterSizes[gutterSize], ";label:EuiHeaderLinks;"]
87
- }, children)), ___EmotionJSX(EuiShowFor, {
88
+ }, renderedChildren)), ___EmotionJSX(EuiShowFor, {
88
89
  sizes: popoverBreakpoints
89
90
  }, ___EmotionJSX(EuiPopover, _extends({
90
91
  button: button,
@@ -96,6 +97,6 @@ export var EuiHeaderLinks = function EuiHeaderLinks(_ref) {
96
97
  }, popoverProps), ___EmotionJSX("div", {
97
98
  className: "euiHeaderLinks__mobileList",
98
99
  css: styles.euiHeaderLinks__mobileList
99
- }, children))));
100
+ }, renderedChildren))));
100
101
  });
101
102
  };
@@ -216,8 +216,8 @@ export var EuiIconClass = /*#__PURE__*/function (_PureComponent) {
216
216
  } else {
217
217
  var Svg = icon;
218
218
 
219
- // If it's an empty icon, or if there is no aria-label, aria-labelledby, or title it gets aria-hidden true
220
- var isAriaHidden = icon === empty || !(this.props['aria-label'] || this.props['aria-labelledby'] || this.props.title);
219
+ // If there is no aria-label, aria-labelledby, or title it gets aria-hidden true
220
+ var isAriaHidden = !(this.props['aria-label'] || this.props['aria-labelledby'] || this.props.title);
221
221
 
222
222
  // If no aria-label or aria-labelledby is provided but there's a title, a titleId is generated
223
223
  // The svg aria-labelledby attribute gets this titleId
@@ -237,7 +237,7 @@ export var EuiIconClass = /*#__PURE__*/function (_PureComponent) {
237
237
  "data-is-loaded": isLoaded || undefined,
238
238
  "data-is-loading": isLoading || undefined
239
239
  }, rest, {
240
- "aria-hidden": isAriaHidden || undefined
240
+ "aria-hidden": isAriaHidden || rest['aria-hidden']
241
241
  }));
242
242
  }
243
243
  }
@@ -72,7 +72,8 @@ export var EuiConfirmModal = function EuiConfirmModal(_ref) {
72
72
  return ___EmotionJSX(EuiModal, _extends({
73
73
  className: classes,
74
74
  css: cssStyles,
75
- onClose: onCancel
75
+ onClose: onCancel,
76
+ role: "alertdialog"
76
77
  }, rest), modalTitle, message && ___EmotionJSX(EuiModalBody, null, ___EmotionJSX(EuiText, {
77
78
  "data-test-subj": "confirmModalBodyText"
78
79
  }, message)), ___EmotionJSX(EuiModalFooter, null, ___EmotionJSX(EuiButtonEmpty, {
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["className", "children", "initialFocus", "onClose", "maxWidth", "style"];
4
+ var _excluded = ["className", "children", "initialFocus", "onClose", "maxWidth", "role", "style"];
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
7
  /*
@@ -28,6 +28,8 @@ export var EuiModal = function EuiModal(_ref) {
28
28
  onClose = _ref.onClose,
29
29
  _ref$maxWidth = _ref.maxWidth,
30
30
  maxWidth = _ref$maxWidth === void 0 ? true : _ref$maxWidth,
31
+ _ref$role = _ref.role,
32
+ role = _ref$role === void 0 ? 'dialog' : _ref$role,
31
33
  style = _ref.style,
32
34
  rest = _objectWithoutProperties(_ref, _excluded);
33
35
  var onKeyDown = function onKeyDown(event) {
@@ -57,7 +59,9 @@ export var EuiModal = function EuiModal(_ref) {
57
59
  className: classes,
58
60
  onKeyDown: onKeyDown,
59
61
  tabIndex: 0,
60
- style: newStyle
62
+ style: newStyle,
63
+ role: role,
64
+ "aria-modal": true
61
65
  }, rest), ___EmotionJSX(EuiI18n, {
62
66
  token: "euiModal.closeModal",
63
67
  default: "Closes this modal window"
@@ -34,14 +34,13 @@ export var EuiResizeObserver = /*#__PURE__*/function (_EuiObserver) {
34
34
  height: 0,
35
35
  width: 0
36
36
  });
37
- _defineProperty(_assertThisInitialized(_this), "onResize", function () {
38
- // `entry.contentRect` provides incomplete `height` and `width` data.
39
- // Use `getBoundingClientRect` to account for padding and border.
40
- // https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly
41
- if (!_this.childNode) return;
42
- var _this$childNode$getBo = _this.childNode.getBoundingClientRect(),
43
- height = _this$childNode$getBo.height,
44
- width = _this$childNode$getBo.width;
37
+ _defineProperty(_assertThisInitialized(_this), "onResize", function (_ref) {
38
+ var _ref2 = _slicedToArray(_ref, 1),
39
+ entry = _ref2[0];
40
+ var _entry$borderBoxSize$ = entry.borderBoxSize[0],
41
+ width = _entry$borderBoxSize$.inlineSize,
42
+ height = _entry$borderBoxSize$.blockSize;
43
+
45
44
  // Check for actual resize event
46
45
  if (_this.state.height === height && _this.state.width === width) {
47
46
  return;
@@ -95,23 +94,15 @@ export var useResizeObserver = function useResizeObserver(container, dimension)
95
94
  }, [dimension]);
96
95
  useEffect(function () {
97
96
  if (container != null) {
98
- // ResizeObserver's first call to the observation callback is scheduled in the future
99
- // so find the container's initial dimensions now
100
- var boundingRect = container.getBoundingClientRect();
101
- setSize({
102
- width: boundingRect.width,
103
- height: boundingRect.height
104
- });
105
- var observer = makeResizeObserver(container, function () {
106
- // `entry.contentRect` provides incomplete `height` and `width` data.
107
- // Use `getBoundingClientRect` to account for padding and border.
108
- // https://developer.mozilla.org/en-US/docs/Web/API/DOMRectReadOnly
109
- var _container$getBoundin = container.getBoundingClientRect(),
110
- height = _container$getBoundin.height,
111
- width = _container$getBoundin.width;
97
+ var observer = makeResizeObserver(container, function (_ref3) {
98
+ var _ref4 = _slicedToArray(_ref3, 1),
99
+ entry = _ref4[0];
100
+ var _entry$borderBoxSize$2 = entry.borderBoxSize[0],
101
+ inlineSize = _entry$borderBoxSize$2.inlineSize,
102
+ blockSize = _entry$borderBoxSize$2.blockSize;
112
103
  setSize({
113
- width: width,
114
- height: height
104
+ width: inlineSize,
105
+ height: blockSize
115
106
  });
116
107
  });
117
108
  return function () {
@@ -12,7 +12,7 @@ var _excluded = ["children", "className", "paddingSize", "borderRadius", "color"
12
12
 
13
13
  import React from 'react';
14
14
  import classNames from 'classnames';
15
- import { useEuiTheme } from '../../services';
15
+ import { useEuiMemoizedStyles } from '../../services';
16
16
  import { useEuiBackgroundColorCSS, useEuiPaddingCSS, BACKGROUND_COLORS, PADDING_SIZES } from '../../global_styling';
17
17
  import { keysOf } from '../common';
18
18
  import { euiPanelStyles } from './panel.styles';
@@ -48,11 +48,10 @@ export var EuiPanel = function EuiPanel(_ref) {
48
48
  panelRef = _ref.panelRef,
49
49
  element = _ref.element,
50
50
  rest = _objectWithoutProperties(_ref, _excluded);
51
- var euiTheme = useEuiTheme();
52
51
  // Shadows are only allowed when there's a white background (plain)
53
52
  var canHaveShadow = !hasBorder && color === 'plain';
54
53
  var canHaveBorder = color === 'plain' || color === 'transparent';
55
- var styles = euiPanelStyles(euiTheme);
54
+ var styles = useEuiMemoizedStyles(euiPanelStyles);
56
55
  var cssStyles = [styles.euiPanel, grow && styles.grow, styles.radius[borderRadius], useEuiPaddingCSS()[paddingSize], useEuiBackgroundColorCSS()[color], canHaveShadow && hasShadow === true && styles.hasShadow, canHaveBorder && hasBorder === true && styles.hasBorder, rest.onClick && styles.isClickable];
57
56
  var classes = classNames('euiPanel', "euiPanel--".concat(color), _defineProperty({}, "euiPanel--".concat(paddingSizeToClassNameMap[paddingSize]), paddingSizeToClassNameMap[paddingSize]), className);
58
57
  if (rest.onClick && element !== 'div') {
@@ -14,7 +14,7 @@ var _excluded = ["isHorizontal", "indicator", "alignIndicator", "className"],
14
14
  import React, { useCallback, useMemo, useRef, forwardRef } from 'react';
15
15
  import classNames from 'classnames';
16
16
  import { EuiI18n } from '../i18n';
17
- import { useEuiTheme, useGeneratedHtmlId } from '../../services';
17
+ import { useEuiMemoizedStyles, useGeneratedHtmlId } from '../../services';
18
18
  import { useEuiResizableContainerContext } from './context';
19
19
  import { euiResizableButtonStyles } from './resizable_button.styles';
20
20
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -32,8 +32,7 @@ export var EuiResizableButton = /*#__PURE__*/forwardRef(function (_ref, ref) {
32
32
  rest = _objectWithoutProperties(_ref, _excluded);
33
33
  var classes = classNames('euiResizableButton', className);
34
34
  var resizeDirection = isHorizontal ? 'horizontal' : 'vertical';
35
- var euiTheme = useEuiTheme();
36
- var styles = euiResizableButtonStyles(euiTheme);
35
+ var styles = useEuiMemoizedStyles(euiResizableButtonStyles);
37
36
  var cssStyles = [styles.euiResizableButton, styles[indicator], styles["".concat(indicator, "Direction")][resizeDirection], styles[resizeDirection], indicator === 'handle' && styles.alignIndicator[alignIndicator]];
38
37
  return ___EmotionJSX(EuiI18n, {
39
38
  tokens: ['euiResizableButton.horizontalResizerAriaLabel', 'euiResizableButton.verticalResizerAriaLabel'],
@@ -12,7 +12,7 @@ var _excluded = ["className", "externalPosition", "internalPosition", "direction
12
12
 
13
13
  import React from 'react';
14
14
  import classNames from 'classnames';
15
- import { useEuiTheme } from '../../services';
15
+ import { useEuiMemoizedStyles } from '../../services';
16
16
  import { EuiButtonIcon } from '../button';
17
17
  import { euiScreenReaderOnlyStyles } from '../accessibility/screen_reader_only/screen_reader_only.styles';
18
18
  import { euiResizableCollapseButtonStyles } from './resizable_collapse_button.styles';
@@ -31,8 +31,7 @@ export var EuiResizableCollapseButton = function EuiResizableCollapseButton(_ref
31
31
  var isHorizontal = direction === 'horizontal';
32
32
  var showOnFocus = !isCollapsed && !isVisible;
33
33
  var screenReaderOnlyStyles = euiScreenReaderOnlyStyles(showOnFocus).euiScreenReaderOnly;
34
- var euiTheme = useEuiTheme();
35
- var styles = euiResizableCollapseButtonStyles(euiTheme);
34
+ var styles = useEuiMemoizedStyles(euiResizableCollapseButtonStyles);
36
35
  var collapsedStyles = [styles.collapsed.collapsed, styles.collapsed[direction], styles.collapsed["".concat(direction, "Positions")][internalPosition]];
37
36
  var collapsibleStyles = [styles.collapsible.collapsible, styles.collapsible[direction][externalPosition], styles.collapsible[direction][internalPosition]];
38
37
  var cssStyles = [styles.euiResizableCollapseButton, showOnFocus && screenReaderOnlyStyles].concat(_toConsumableArray(isCollapsed ? collapsedStyles : collapsibleStyles));
@@ -21,7 +21,7 @@ import { EuiResizableContainerContextProvider } from './context';
21
21
  import { euiResizableButtonWithControls } from './resizable_button';
22
22
  import { euiResizablePanelWithControls, getModeType } from './resizable_panel';
23
23
  import { useContainerCallbacks, getPosition } from './helpers';
24
- import { euiResizableContainerStyles } from './resizable_container.styles';
24
+ import { euiResizableContainerStyles as styles } from './resizable_container.styles';
25
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
26
26
  var initialState = {
27
27
  isDragging: false,
@@ -49,7 +49,6 @@ export var EuiResizableContainer = function EuiResizableContainer(_ref) {
49
49
  var containerRef = useRef(null);
50
50
  var isHorizontal = direction === 'horizontal';
51
51
  var classes = classNames('euiResizableContainer', className);
52
- var styles = euiResizableContainerStyles();
53
52
  var cssStyles = [styles.euiResizableContainer, styles[direction]];
54
53
  var _useContainerCallback = useContainerCallbacks({
55
54
  initialState: _objectSpread(_objectSpread({}, initialState), {}, {
@@ -9,18 +9,15 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
9
9
 
10
10
  import { css } from '@emotion/react';
11
11
  import { logicalCSS } from '../../global_styling';
12
- var _ref = process.env.NODE_ENV === "production" ? {
13
- name: "omnk2l-vertical",
14
- styles: "flex-direction:column;label:vertical;"
15
- } : {
16
- name: "omnk2l-vertical",
17
- styles: "flex-direction:column;label:vertical;",
18
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
19
- };
20
- export var euiResizableContainerStyles = function euiResizableContainerStyles() {
21
- return {
22
- euiResizableContainer: /*#__PURE__*/css("display:flex;", logicalCSS('width', '100%'), ";;label:euiResizableContainer;"),
23
- horizontal: /*#__PURE__*/css(";label:horizontal;"),
24
- vertical: _ref
25
- };
12
+ export var euiResizableContainerStyles = {
13
+ euiResizableContainer: /*#__PURE__*/css("display:flex;", logicalCSS('width', '100%'), ";;label:euiResizableContainer;"),
14
+ horizontal: /*#__PURE__*/css(";label:horizontal;"),
15
+ vertical: process.env.NODE_ENV === "production" ? {
16
+ name: "omnk2l-vertical",
17
+ styles: "flex-direction:column;label:vertical;"
18
+ } : {
19
+ name: "omnk2l-vertical",
20
+ styles: "flex-direction:column;label:vertical;",
21
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
22
+ }
26
23
  };
@@ -15,13 +15,13 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
15
15
 
16
16
  import React, { useEffect, useMemo, useRef } from 'react';
17
17
  import classNames from 'classnames';
18
- import { useGeneratedHtmlId, useEuiTheme } from '../../services';
19
- import { logicalSizeStyle, euiPaddingSize } from '../../global_styling';
18
+ import { useGeneratedHtmlId, useEuiMemoizedStyles } from '../../services';
19
+ import { logicalSizeStyle, useEuiPaddingSize, useEuiPaddingCSS } from '../../global_styling';
20
20
  import { useEuiResizableContainerContext } from './context';
21
21
  import { EuiPanel } from '../panel';
22
22
  import { useEuiI18n } from '../i18n';
23
23
  import { EuiResizableCollapseButton } from './resizable_collapse_button';
24
- import { euiResizablePanelStyles, euiResizablePanelContentStyles } from './resizable_panel.styles';
24
+ import { euiResizablePanelStyles as styles, euiResizablePanelContentStyles } from './resizable_panel.styles';
25
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
26
26
  var defaultToggleOptions = {
27
27
  className: null,
@@ -133,15 +133,13 @@ export var EuiResizablePanel = function EuiResizablePanel(_ref) {
133
133
  return direction;
134
134
  }, [isCollapsed, isCollapsible, position, panels, panelId]);
135
135
  var axis = isHorizontal ? 'horizontal' : 'vertical';
136
- var euiTheme = useEuiTheme();
137
- var styles = euiResizablePanelStyles(euiTheme);
138
- var cssStyles = [styles.euiResizablePanel, isCollapsed && styles.collapsed, styles.paddingSizes[wrapperPadding], wrapperProps === null || wrapperProps === void 0 ? void 0 : wrapperProps.css];
139
- var contentStyles = euiResizablePanelContentStyles(euiTheme);
136
+ var cssStyles = [styles.euiResizablePanel, isCollapsed && styles.collapsed, useEuiPaddingCSS()[wrapperPadding], wrapperProps === null || wrapperProps === void 0 ? void 0 : wrapperProps.css];
137
+ var contentStyles = useEuiMemoizedStyles(euiResizablePanelContentStyles);
140
138
  var contentCssStyles = [contentStyles.euiResizablePanel__content, scrollable && contentStyles.scrollable, isCollapsed && contentStyles.collapsedChildren, isCollapsed && !isCollapsible && contentStyles[axis].collapsed, isCollapsible && contentStyles[axis].hasCollapsibleButton];
141
139
  var classes = classNames('euiResizablePanel', wrapperProps === null || wrapperProps === void 0 ? void 0 : wrapperProps.className);
142
140
  var panelClasses = classNames('euiResizablePanel__content', className);
143
141
  var inlineStyles = _objectSpread(_objectSpread({}, wrapperProps === null || wrapperProps === void 0 ? void 0 : wrapperProps.style), isHorizontal ? logicalSizeStyle("".concat(size || innerSize, "%"), 'auto') : logicalSizeStyle('100%', "".concat(size || innerSize, "%")));
144
- var padding = euiPaddingSize(euiTheme, paddingSize) || '0px';
142
+ var padding = useEuiPaddingSize(paddingSize) || '0px';
145
143
  useEffect(function () {
146
144
  if (!registration) return;
147
145
  var initSize = size !== null && size !== void 0 ? size : initialSize || 0;
@@ -1,6 +1,3 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
1
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
5
2
  /*
6
3
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -11,29 +8,24 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
11
8
  */
12
9
 
13
10
  import { css } from '@emotion/react';
14
- import { logicalCSS, logicalCSSWithFallback, euiScrollBarStyles, euiPaddingSizeCSS } from '../../global_styling';
15
- var _ref2 = process.env.NODE_ENV === "production" ? {
16
- name: "11qmbh3-collapsed",
17
- styles: "overflow:hidden;label:collapsed;"
18
- } : {
19
- name: "11qmbh3-collapsed",
20
- styles: "overflow:hidden;label:collapsed;",
21
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
22
- };
23
- var _ref3 = process.env.NODE_ENV === "production" ? {
24
- name: "15ifdgc-euiResizablePanel",
25
- styles: "position:relative;label:euiResizablePanel;"
26
- } : {
27
- name: "15ifdgc-euiResizablePanel",
28
- styles: "position:relative;label:euiResizablePanel;",
29
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
30
- };
31
- export var euiResizablePanelStyles = function euiResizablePanelStyles(euiThemeContext) {
32
- return {
33
- euiResizablePanel: _ref3,
34
- collapsed: _ref2,
35
- paddingSizes: _objectSpread({}, euiPaddingSizeCSS(euiThemeContext))
36
- };
11
+ import { logicalCSS, logicalCSSWithFallback, euiScrollBarStyles } from '../../global_styling';
12
+ export var euiResizablePanelStyles = {
13
+ euiResizablePanel: process.env.NODE_ENV === "production" ? {
14
+ name: "15ifdgc-euiResizablePanel",
15
+ styles: "position:relative;label:euiResizablePanel;"
16
+ } : {
17
+ name: "15ifdgc-euiResizablePanel",
18
+ styles: "position:relative;label:euiResizablePanel;",
19
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
20
+ },
21
+ collapsed: process.env.NODE_ENV === "production" ? {
22
+ name: "11qmbh3-collapsed",
23
+ styles: "overflow:hidden;label:collapsed;"
24
+ } : {
25
+ name: "11qmbh3-collapsed",
26
+ styles: "overflow:hidden;label:collapsed;",
27
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
28
+ }
37
29
  };
38
30
  var _ref = process.env.NODE_ENV === "production" ? {
39
31
  name: "597kt8-collapsedChildren",
@@ -415,14 +415,30 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
415
415
  key: "componentDidUpdate",
416
416
  value: function componentDidUpdate(prevProps) {
417
417
  var _this$props9 = this.props,
418
+ isVirtualized = _this$props9.isVirtualized,
418
419
  activeOptionIndex = _this$props9.activeOptionIndex,
419
420
  visibleOptions = _this$props9.visibleOptions,
420
421
  options = _this$props9.options;
421
- if (this.listBoxRef && this.props.searchable !== true) {
422
- this.listBoxRef.setAttribute('aria-activedescendant', "".concat(this.props.makeOptionId(activeOptionIndex)));
423
- }
424
- if (this.listRef && typeof activeOptionIndex !== 'undefined') {
425
- this.listRef.scrollToItem(activeOptionIndex, 'auto');
422
+ if (prevProps.activeOptionIndex !== activeOptionIndex) {
423
+ var makeOptionId = this.props.makeOptionId;
424
+ if (this.listBoxRef && this.props.searchable !== true) {
425
+ this.listBoxRef.setAttribute('aria-activedescendant', makeOptionId(activeOptionIndex));
426
+ }
427
+ if (typeof activeOptionIndex !== 'undefined') {
428
+ if (isVirtualized) {
429
+ var _this$listRef;
430
+ (_this$listRef = this.listRef) === null || _this$listRef === void 0 ? void 0 : _this$listRef.scrollToItem(activeOptionIndex, 'auto');
431
+ } else {
432
+ var _this$listBoxRef;
433
+ var activeOptionId = "#".concat(makeOptionId(activeOptionIndex));
434
+ var activeOptionEl = (_this$listBoxRef = this.listBoxRef) === null || _this$listBoxRef === void 0 ? void 0 : _this$listBoxRef.querySelector(activeOptionId);
435
+ if (activeOptionEl) {
436
+ activeOptionEl.scrollIntoView({
437
+ block: 'nearest'
438
+ });
439
+ }
440
+ }
441
+ }
426
442
  }
427
443
  if (prevProps.visibleOptions !== visibleOptions || prevProps.options !== options) {
428
444
  var optionArray = visibleOptions || options;
@@ -465,14 +481,18 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
465
481
  textWrap = _this$props10.textWrap,
466
482
  truncationProps = _this$props10.truncationProps,
467
483
  rest = _objectWithoutProperties(_this$props10, _excluded3);
484
+ var heightIsFull = forcedHeight === 'full';
468
485
  var classes = classNames('euiSelectableList', {
469
- 'euiSelectableList-fullHeight': forcedHeight === 'full',
486
+ 'euiSelectableList-fullHeight': heightIsFull,
470
487
  'euiSelectableList-bordered': bordered
471
488
  }, className);
472
489
  return ___EmotionJSX("div", _extends({
473
490
  className: classes
474
491
  }, rest), isVirtualized ? this.renderVirtualizedList() : ___EmotionJSX("div", {
475
492
  className: "euiSelectableList__list",
493
+ style: !heightIsFull ? {
494
+ blockSize: forcedHeight
495
+ } : undefined,
476
496
  ref: this.removeScrollableTabStop
477
497
  }, ___EmotionJSX("ul", {
478
498
  ref: this.setListBoxRef
@@ -12,7 +12,7 @@ var _excluded = ["className", "size"];
12
12
 
13
13
  import React from 'react';
14
14
  import classNames from 'classnames';
15
- import { useEuiTheme } from '../../services';
15
+ import { useEuiMemoizedStyles } from '../../services';
16
16
  import { euiSpacerStyles } from './spacer.styles';
17
17
  import { jsx as ___EmotionJSX } from "@emotion/react";
18
18
  export var SIZES = ['xs', 's', 'm', 'l', 'xl', 'xxl'];
@@ -21,8 +21,7 @@ export var EuiSpacer = function EuiSpacer(_ref) {
21
21
  _ref$size = _ref.size,
22
22
  size = _ref$size === void 0 ? 'l' : _ref$size,
23
23
  rest = _objectWithoutProperties(_ref, _excluded);
24
- var euiTheme = useEuiTheme();
25
- var styles = euiSpacerStyles(euiTheme);
24
+ var styles = useEuiMemoizedStyles(euiSpacerStyles);
26
25
  var classes = classNames('euiSpacer', _defineProperty({}, "euiSpacer--".concat(size), size), className);
27
26
  var cssStyles = [styles.euiSpacer, styles[size]];
28
27
  return ___EmotionJSX("div", _extends({