@elastic/eui 62.0.3 → 62.2.1

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 (306) hide show
  1. package/dist/eui_theme_dark.css +1 -783
  2. package/dist/eui_theme_dark.json +0 -57
  3. package/dist/eui_theme_dark.json.d.ts +0 -57
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +1 -783
  6. package/dist/eui_theme_light.json +0 -57
  7. package/dist/eui_theme_light.json.d.ts +0 -57
  8. package/dist/eui_theme_light.min.css +1 -1
  9. package/es/components/breadcrumbs/breadcrumb.js +199 -0
  10. package/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  11. package/es/components/breadcrumbs/breadcrumbs.js +115 -187
  12. package/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  13. package/es/components/code/code_block.js +119 -107
  14. package/es/components/collapsible_nav/collapsible_nav.js +2 -2
  15. package/es/components/control_bar/control_bar.js +13 -0
  16. package/es/components/datagrid/body/data_grid_body.js +12 -2
  17. package/es/components/datagrid/body/data_grid_cell.js +31 -3
  18. package/es/components/datagrid/body/header/data_grid_header_row.js +1 -1
  19. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  20. package/es/components/datagrid/data_grid.js +10 -2
  21. package/es/components/datagrid/utils/row_heights.js +33 -4
  22. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  23. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  24. package/es/components/description_list/description_list.js +22 -26
  25. package/es/components/description_list/description_list.styles.js +25 -0
  26. package/es/components/description_list/description_list_context.js +14 -0
  27. package/es/components/description_list/description_list_description.js +43 -2
  28. package/es/components/description_list/description_list_description.styles.js +47 -0
  29. package/es/components/description_list/description_list_title.js +43 -2
  30. package/es/components/description_list/description_list_title.styles.js +37 -0
  31. package/es/components/description_list/description_list_types.js +10 -0
  32. package/es/components/header/header.js +1 -27
  33. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +22 -2
  34. package/es/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +15 -0
  35. package/es/components/header/header_links/header_links.js +9 -9
  36. package/es/components/icon/assets/tokenStruct.js +1 -1
  37. package/es/components/page/page_header/page_header.js +1 -0
  38. package/es/components/page/page_header/page_header_content.js +2 -1
  39. package/es/components/page/page_template.js +1 -0
  40. package/es/components/pagination/pagination.js +1 -1
  41. package/es/components/panel/split_panel/split_panel.js +2 -2
  42. package/es/components/provider/provider.js +2 -2
  43. package/es/components/responsive/hide_for.js +6 -38
  44. package/es/components/responsive/show_for.js +6 -38
  45. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +17 -36
  46. package/es/components/side_nav/side_nav.js +1 -1
  47. package/es/components/table/table_row_cell.js +1 -2
  48. package/es/components/toast/global_toast_list.js +208 -241
  49. package/es/components/toast/global_toast_list.styles.js +38 -0
  50. package/es/components/toast/global_toast_list_item.js +12 -7
  51. package/es/components/toast/toast.js +25 -25
  52. package/es/components/toast/toast.styles.js +55 -0
  53. package/es/components/token/index.js +2 -1
  54. package/es/components/token/token.js +48 -112
  55. package/es/components/token/token.styles.js +93 -0
  56. package/es/components/token/token_map.js +6 -9
  57. package/es/components/token/token_types.js +11 -0
  58. package/es/global_styling/reset/global_styles.js +1 -1
  59. package/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  60. package/es/services/{hooks/useIsWithinBreakpoints.js → breakpoint/current_breakpoint.js} +26 -28
  61. package/es/services/breakpoint/current_breakpoint_hook.js +20 -0
  62. package/es/services/breakpoint/index.js +11 -0
  63. package/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  64. package/es/services/hooks/index.js +0 -1
  65. package/es/services/index.js +1 -1
  66. package/es/test/rtl/component_helpers.js +60 -1
  67. package/eui.d.ts +1704 -1475
  68. package/i18ntokens.json +36 -36
  69. package/lib/components/breadcrumbs/breadcrumb.js +225 -0
  70. package/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  71. package/lib/components/breadcrumbs/breadcrumbs.js +125 -188
  72. package/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  73. package/lib/components/code/code_block.js +118 -106
  74. package/lib/components/collapsible_nav/collapsible_nav.js +2 -2
  75. package/lib/components/control_bar/control_bar.js +13 -0
  76. package/lib/components/datagrid/body/data_grid_body.js +12 -2
  77. package/lib/components/datagrid/body/data_grid_cell.js +31 -3
  78. package/lib/components/datagrid/body/header/data_grid_header_row.js +1 -1
  79. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  80. package/lib/components/datagrid/data_grid.js +10 -2
  81. package/lib/components/datagrid/utils/row_heights.js +33 -4
  82. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  83. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  84. package/lib/components/description_list/description_list.js +25 -31
  85. package/lib/components/description_list/description_list.styles.js +36 -0
  86. package/lib/components/description_list/description_list_context.js +24 -0
  87. package/lib/components/description_list/description_list_description.js +52 -2
  88. package/lib/components/description_list/description_list_description.styles.js +51 -0
  89. package/lib/components/description_list/description_list_title.js +52 -2
  90. package/lib/components/description_list/description_list_title.styles.js +50 -0
  91. package/lib/components/description_list/description_list_types.js +20 -0
  92. package/lib/components/header/header.js +1 -27
  93. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  94. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  95. package/lib/components/header/header_links/header_links.js +8 -8
  96. package/lib/components/icon/assets/tokenStruct.js +1 -1
  97. package/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  98. package/lib/components/page/page_header/page_header.js +1 -0
  99. package/lib/components/page/page_header/page_header_content.js +3 -2
  100. package/lib/components/page/page_template.js +1 -0
  101. package/lib/components/pagination/pagination.js +1 -1
  102. package/lib/components/panel/split_panel/split_panel.js +3 -3
  103. package/lib/components/provider/provider.js +1 -1
  104. package/lib/components/responsive/hide_for.js +12 -44
  105. package/lib/components/responsive/show_for.js +12 -44
  106. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  107. package/lib/components/side_nav/side_nav.js +1 -1
  108. package/lib/components/table/table_row_cell.js +1 -3
  109. package/lib/components/toast/global_toast_list.js +209 -238
  110. package/lib/components/toast/global_toast_list.styles.js +45 -0
  111. package/lib/components/toast/global_toast_list_item.js +14 -7
  112. package/lib/components/toast/toast.js +27 -25
  113. package/lib/components/toast/toast.styles.js +66 -0
  114. package/lib/components/token/index.js +5 -3
  115. package/lib/components/token/token.js +50 -120
  116. package/lib/components/token/token.styles.js +101 -0
  117. package/lib/components/token/token_map.js +6 -9
  118. package/lib/components/token/token_types.js +22 -0
  119. package/lib/global_styling/reset/global_styles.js +1 -1
  120. package/{test-env/services → lib/services/breakpoint}/breakpoint.js +5 -9
  121. package/lib/services/breakpoint/current_breakpoint.js +69 -0
  122. package/lib/services/breakpoint/current_breakpoint_hook.js +31 -0
  123. package/lib/services/breakpoint/index.js +57 -0
  124. package/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  125. package/lib/services/hooks/index.js +0 -13
  126. package/lib/services/index.js +28 -0
  127. package/lib/test/rtl/component_helpers.js +69 -3
  128. package/optimize/es/components/breadcrumbs/breadcrumb.js +136 -0
  129. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  130. package/optimize/es/components/breadcrumbs/breadcrumbs.js +92 -165
  131. package/optimize/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  132. package/optimize/es/components/code/code_block.js +106 -107
  133. package/optimize/es/components/datagrid/body/data_grid_body.js +2 -0
  134. package/optimize/es/components/datagrid/body/data_grid_cell.js +13 -1
  135. package/optimize/es/components/datagrid/utils/row_heights.js +33 -4
  136. package/optimize/es/components/description_list/description_list.js +20 -24
  137. package/optimize/es/components/description_list/description_list.styles.js +25 -0
  138. package/optimize/es/components/description_list/description_list_context.js +14 -0
  139. package/optimize/es/components/description_list/description_list_description.js +32 -2
  140. package/optimize/es/components/description_list/description_list_description.styles.js +47 -0
  141. package/optimize/es/components/description_list/description_list_title.js +32 -2
  142. package/optimize/es/components/description_list/description_list_title.styles.js +37 -0
  143. package/optimize/es/components/description_list/description_list_types.js +10 -0
  144. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +8 -1
  145. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +15 -0
  146. package/optimize/es/components/header/header_links/header_links.js +8 -8
  147. package/optimize/es/components/icon/assets/tokenStruct.js +1 -1
  148. package/optimize/es/components/page/page_header/page_header_content.js +1 -1
  149. package/optimize/es/components/panel/split_panel/split_panel.js +1 -1
  150. package/optimize/es/components/provider/provider.js +2 -2
  151. package/optimize/es/components/responsive/hide_for.js +5 -27
  152. package/optimize/es/components/responsive/show_for.js +5 -27
  153. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -35
  154. package/optimize/es/components/table/table_row_cell.js +1 -2
  155. package/optimize/es/components/toast/global_toast_list.js +199 -230
  156. package/optimize/es/components/toast/global_toast_list.styles.js +38 -0
  157. package/optimize/es/components/toast/global_toast_list_item.js +11 -6
  158. package/optimize/es/components/toast/toast.js +24 -24
  159. package/optimize/es/components/toast/toast.styles.js +55 -0
  160. package/optimize/es/components/token/index.js +2 -1
  161. package/optimize/es/components/token/token.js +46 -69
  162. package/optimize/es/components/token/token.styles.js +83 -0
  163. package/optimize/es/components/token/token_map.js +6 -9
  164. package/optimize/es/components/token/token_types.js +11 -0
  165. package/optimize/es/global_styling/reset/global_styles.js +1 -1
  166. package/optimize/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  167. package/optimize/es/services/breakpoint/current_breakpoint.js +44 -0
  168. package/optimize/es/services/breakpoint/current_breakpoint_hook.js +20 -0
  169. package/optimize/es/services/breakpoint/index.js +11 -0
  170. package/optimize/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  171. package/optimize/es/services/hooks/index.js +0 -1
  172. package/optimize/es/services/index.js +1 -1
  173. package/optimize/es/test/rtl/component_helpers.js +60 -1
  174. package/optimize/lib/components/breadcrumbs/breadcrumb.js +162 -0
  175. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  176. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +99 -164
  177. package/optimize/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  178. package/optimize/lib/components/code/code_block.js +105 -106
  179. package/optimize/lib/components/datagrid/body/data_grid_body.js +2 -0
  180. package/optimize/lib/components/datagrid/body/data_grid_cell.js +13 -1
  181. package/optimize/lib/components/datagrid/utils/row_heights.js +33 -4
  182. package/optimize/lib/components/description_list/description_list.js +23 -28
  183. package/optimize/lib/components/description_list/description_list.styles.js +36 -0
  184. package/optimize/lib/components/description_list/description_list_context.js +24 -0
  185. package/optimize/lib/components/description_list/description_list_description.js +43 -2
  186. package/optimize/lib/components/description_list/description_list_description.styles.js +51 -0
  187. package/optimize/lib/components/description_list/description_list_title.js +43 -2
  188. package/optimize/lib/components/description_list/description_list_title.styles.js +50 -0
  189. package/optimize/lib/components/description_list/description_list_types.js +20 -0
  190. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +10 -1
  191. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  192. package/optimize/lib/components/header/header_links/header_links.js +7 -7
  193. package/optimize/lib/components/icon/assets/tokenStruct.js +1 -1
  194. package/optimize/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  195. package/optimize/lib/components/page/page_header/page_header_content.js +2 -2
  196. package/optimize/lib/components/panel/split_panel/split_panel.js +2 -2
  197. package/optimize/lib/components/provider/provider.js +1 -1
  198. package/optimize/lib/components/responsive/hide_for.js +4 -33
  199. package/optimize/lib/components/responsive/show_for.js +4 -33
  200. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +14 -34
  201. package/optimize/lib/components/table/table_row_cell.js +1 -3
  202. package/optimize/lib/components/toast/global_toast_list.js +206 -220
  203. package/optimize/lib/components/toast/global_toast_list.styles.js +47 -0
  204. package/optimize/lib/components/toast/global_toast_list_item.js +14 -7
  205. package/optimize/lib/components/toast/toast.js +26 -24
  206. package/optimize/lib/components/toast/toast.styles.js +66 -0
  207. package/optimize/lib/components/token/index.js +5 -3
  208. package/optimize/lib/components/token/token.js +50 -76
  209. package/optimize/lib/components/token/token.styles.js +91 -0
  210. package/optimize/lib/components/token/token_map.js +6 -9
  211. package/optimize/lib/components/token/token_types.js +22 -0
  212. package/optimize/lib/global_styling/reset/global_styles.js +1 -1
  213. package/optimize/lib/services/{breakpoint.js → breakpoint/breakpoint.js} +5 -9
  214. package/optimize/lib/services/breakpoint/current_breakpoint.js +68 -0
  215. package/optimize/lib/services/breakpoint/current_breakpoint_hook.js +31 -0
  216. package/optimize/lib/services/breakpoint/index.js +57 -0
  217. package/optimize/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  218. package/optimize/lib/services/hooks/index.js +0 -13
  219. package/optimize/lib/services/index.js +28 -0
  220. package/optimize/lib/test/rtl/component_helpers.js +69 -3
  221. package/package.json +2 -2
  222. package/src/components/control_bar/_control_bar.scss +1 -1
  223. package/src/components/header/_index.scss +0 -1
  224. package/src/components/index.scss +0 -5
  225. package/src/themes/amsterdam/overrides/_breadcrumbs.scss +0 -12
  226. package/src/themes/amsterdam/overrides/_index.scss +0 -4
  227. package/test-env/components/breadcrumbs/breadcrumb.js +211 -0
  228. package/test-env/components/breadcrumbs/breadcrumb.styles.js +68 -0
  229. package/test-env/components/breadcrumbs/breadcrumbs.js +122 -174
  230. package/test-env/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  231. package/test-env/components/collapsible_nav/collapsible_nav.js +2 -2
  232. package/test-env/components/control_bar/control_bar.js +13 -0
  233. package/test-env/components/datagrid/body/data_grid_body.js +12 -2
  234. package/test-env/components/datagrid/body/data_grid_cell.js +31 -3
  235. package/test-env/components/datagrid/body/header/data_grid_header_row.js +1 -1
  236. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  237. package/test-env/components/datagrid/data_grid.js +10 -2
  238. package/test-env/components/datagrid/utils/row_heights.js +33 -4
  239. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  240. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  241. package/test-env/components/description_list/description_list.js +25 -30
  242. package/test-env/components/description_list/description_list.styles.js +36 -0
  243. package/test-env/components/description_list/description_list_context.js +24 -0
  244. package/test-env/components/description_list/description_list_description.js +43 -2
  245. package/test-env/components/description_list/description_list_description.styles.js +51 -0
  246. package/test-env/components/description_list/description_list_title.js +43 -2
  247. package/test-env/components/description_list/description_list_title.styles.js +50 -0
  248. package/test-env/components/description_list/description_list_types.js +20 -0
  249. package/test-env/components/header/header.js +1 -27
  250. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  251. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  252. package/test-env/components/header/header_links/header_links.js +8 -8
  253. package/test-env/components/icon/assets/tokenStruct.js +1 -1
  254. package/test-env/components/observer/resize_observer/resize_observer.js +43 -126
  255. package/test-env/components/page/page_header/page_header.js +1 -0
  256. package/test-env/components/page/page_header/page_header_content.js +3 -2
  257. package/test-env/components/page/page_template.js +1 -0
  258. package/test-env/components/pagination/pagination.js +1 -1
  259. package/test-env/components/panel/split_panel/split_panel.js +3 -3
  260. package/test-env/components/provider/provider.js +1 -1
  261. package/test-env/components/responsive/hide_for.js +5 -34
  262. package/test-env/components/responsive/show_for.js +5 -34
  263. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  264. package/test-env/components/side_nav/side_nav.js +1 -1
  265. package/test-env/components/table/table_row_cell.js +1 -3
  266. package/test-env/components/toast/global_toast_list.js +206 -220
  267. package/test-env/components/toast/global_toast_list.styles.js +47 -0
  268. package/test-env/components/toast/global_toast_list_item.js +14 -7
  269. package/test-env/components/toast/toast.js +27 -25
  270. package/test-env/components/toast/toast.styles.js +66 -0
  271. package/test-env/components/token/index.js +5 -3
  272. package/test-env/components/token/token.js +51 -120
  273. package/test-env/components/token/token.styles.js +91 -0
  274. package/test-env/components/token/token_map.js +6 -9
  275. package/test-env/components/token/token_types.js +22 -0
  276. package/test-env/global_styling/reset/global_styles.js +1 -1
  277. package/{lib/services → test-env/services/breakpoint}/breakpoint.js +5 -9
  278. package/test-env/services/breakpoint/current_breakpoint.js +68 -0
  279. package/test-env/services/breakpoint/current_breakpoint_hook.js +33 -0
  280. package/test-env/services/breakpoint/index.js +57 -0
  281. package/test-env/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  282. package/test-env/services/hooks/index.js +0 -13
  283. package/test-env/services/index.js +28 -0
  284. package/test-env/test/rtl/component_helpers.js +69 -3
  285. package/lib/services/hooks/useIsWithinBreakpoints.js +0 -57
  286. package/optimize/es/services/hooks/useIsWithinBreakpoints.js +0 -46
  287. package/optimize/lib/services/hooks/useIsWithinBreakpoints.js +0 -57
  288. package/src/components/breadcrumbs/_breadcrumbs.scss +0 -79
  289. package/src/components/breadcrumbs/_index.scss +0 -2
  290. package/src/components/breadcrumbs/_variables.scss +0 -2
  291. package/src/components/description_list/_description_list.scss +0 -211
  292. package/src/components/description_list/_index.scss +0 -1
  293. package/src/components/header/header_breadcrumbs/_header_breadcrumbs.scss +0 -8
  294. package/src/components/header/header_breadcrumbs/_index.scss +0 -1
  295. package/src/components/portal/_index.scss +0 -1
  296. package/src/components/portal/_portal.scss +0 -6
  297. package/src/components/toast/_global_toast_list.scss +0 -90
  298. package/src/components/toast/_index.scss +0 -4
  299. package/src/components/toast/_toast.scss +0 -103
  300. package/src/components/token/_index.scss +0 -2
  301. package/src/components/token/_token.scss +0 -85
  302. package/src/components/token/_variables.scss +0 -13
  303. package/src/themes/amsterdam/overrides/_header_breadcrumbs.scss +0 -71
  304. package/src/themes/amsterdam/overrides/_toast.scss +0 -21
  305. package/src/themes/amsterdam/overrides/_token.scss +0 -4
  306. package/test-env/services/hooks/useIsWithinBreakpoints.js +0 -57
@@ -408,7 +408,7 @@ export var EuiDataGridCell = /*#__PURE__*/function (_Component) {
408
408
  }, {
409
409
  key: "componentDidUpdate",
410
410
  value: function componentDidUpdate(prevProps) {
411
- var _this$props$rowHeight, _prevProps$rowHeights;
411
+ var _this$props$rowHeight, _prevProps$rowHeights, _this$props$rowHeight2, _this$props$style, _prevProps$style;
412
412
 
413
413
  this.recalculateAutoHeight();
414
414
 
@@ -416,6 +416,18 @@ export var EuiDataGridCell = /*#__PURE__*/function (_Component) {
416
416
  this.recalculateLineHeight();
417
417
  }
418
418
 
419
+ if ((_this$props$rowHeight2 = this.props.rowHeightsOptions) !== null && _this$props$rowHeight2 !== void 0 && _this$props$rowHeight2.scrollAnchorRow && this.props.colIndex === 0 && // once per row
420
+ this.props.columnId === prevProps.columnId && // if this is still the same column
421
+ this.props.rowIndex === prevProps.rowIndex && // if this is still the same row
422
+ ((_this$props$style = this.props.style) === null || _this$props$style === void 0 ? void 0 : _this$props$style.top) !== ((_prevProps$style = prevProps.style) === null || _prevProps$style === void 0 ? void 0 : _prevProps$style.top) // if the top position has changed
423
+ ) {
424
+ var _prevProps$style2, _this$props$style2, _this$props$rowHeight3, _this$props$rowHeight4;
425
+
426
+ var previousTop = parseFloat((_prevProps$style2 = prevProps.style) === null || _prevProps$style2 === void 0 ? void 0 : _prevProps$style2.top);
427
+ var currentTop = parseFloat((_this$props$style2 = this.props.style) === null || _this$props$style2 === void 0 ? void 0 : _this$props$style2.top);
428
+ (_this$props$rowHeight3 = this.props.rowHeightUtils) === null || _this$props$rowHeight3 === void 0 ? void 0 : _this$props$rowHeight3.compensateForLayoutShift(this.props.rowIndex, currentTop - previousTop, (_this$props$rowHeight4 = this.props.rowHeightsOptions) === null || _this$props$rowHeight4 === void 0 ? void 0 : _this$props$rowHeight4.scrollAnchorRow);
429
+ }
430
+
419
431
  if (this.props.popoverContext.popoverIsOpen !== prevProps.popoverContext.popoverIsOpen || this.props.popoverContext.cellLocation !== prevProps.popoverContext.cellLocation || this.props.renderCellPopover !== prevProps.renderCellPopover) {
420
432
  this.handleCellPopover();
421
433
  }
@@ -11,9 +11,9 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
11
  * in compliance with, at your election, the Elastic License 2.0 or the Server
12
12
  * Side Public License, v 1.
13
13
  */
14
- import { useEffect, useState, useMemo, useCallback, useContext } from 'react';
15
- import { isObject, isNumber } from '../../../services/predicate';
14
+ import { useCallback, useContext, useEffect, useMemo, useState } from 'react';
16
15
  import { useForceRender, useLatest } from '../../../services';
16
+ import { isNumber, isObject } from '../../../services/predicate';
17
17
  import { DataGridSortingContext } from './sorting'; // TODO: Once JS variables are available, use them here instead of hard-coded maps
18
18
 
19
19
  export var cellPaddingsMap = {
@@ -24,12 +24,14 @@ export var cellPaddingsMap = {
24
24
  export var AUTO_HEIGHT = 'auto';
25
25
  export var DEFAULT_ROW_HEIGHT = 34;
26
26
  export var RowHeightUtils = /*#__PURE__*/function () {
27
- function RowHeightUtils(gridRef, rerenderGridBodyRef) {
27
+ function RowHeightUtils(gridRef, outerGridElementRef, gridItemsRenderedRef, rerenderGridBodyRef) {
28
28
  var _this = this;
29
29
 
30
30
  _classCallCheck(this, RowHeightUtils);
31
31
 
32
32
  this.gridRef = gridRef;
33
+ this.outerGridElementRef = outerGridElementRef;
34
+ this.gridItemsRenderedRef = gridItemsRenderedRef;
33
35
  this.rerenderGridBodyRef = rerenderGridBodyRef;
34
36
 
35
37
  _defineProperty(this, "styles", {
@@ -225,6 +227,31 @@ export var RowHeightUtils = /*#__PURE__*/function () {
225
227
  (_this$gridRef$current = this.gridRef.current) === null || _this$gridRef$current === void 0 ? void 0 : _this$gridRef$current.resetAfterRowIndex(this.lastUpdatedRow);
226
228
  this.lastUpdatedRow = Infinity;
227
229
  }
230
+ }, {
231
+ key: "compensateForLayoutShift",
232
+ value: function compensateForLayoutShift(rowIndex, verticalLayoutShift, anchorRow) {
233
+ var grid = this.gridRef.current;
234
+ var outerGridElement = this.outerGridElementRef.current;
235
+ var renderedItems = this.gridItemsRenderedRef.current;
236
+
237
+ if (grid == null || outerGridElement == null || renderedItems == null || anchorRow == null || !Number.isFinite(verticalLayoutShift)) {
238
+ return;
239
+ } // skip if the start row is the anchor row but it hasn't shifted
240
+
241
+
242
+ if (anchorRow === 'start' && renderedItems.visibleRowStartIndex !== rowIndex) {
243
+ return;
244
+ } // skip if the center row is the anchor row but it hasn't shifted
245
+
246
+
247
+ if (anchorRow === 'center' && Math.floor((renderedItems.visibleRowStopIndex - renderedItems.visibleRowStartIndex) / 2) !== rowIndex) {
248
+ return;
249
+ }
250
+
251
+ grid.scrollTo({
252
+ scrollTop: outerGridElement.scrollTop + verticalLayoutShift
253
+ });
254
+ }
228
255
  }]);
229
256
 
230
257
  return RowHeightUtils;
@@ -236,13 +263,15 @@ export var RowHeightUtils = /*#__PURE__*/function () {
236
263
 
237
264
  export var useRowHeightUtils = function useRowHeightUtils(_ref2) {
238
265
  var gridRef = _ref2.gridRef,
266
+ outerGridElementRef = _ref2.outerGridElementRef,
267
+ gridItemsRenderedRef = _ref2.gridItemsRenderedRef,
239
268
  gridStyles = _ref2.gridStyles,
240
269
  columns = _ref2.columns,
241
270
  rowHeightsOptions = _ref2.rowHeightsOptions;
242
271
  var forceRenderRef = useLatest(useForceRender());
243
272
 
244
273
  var _useState = useState(function () {
245
- return new RowHeightUtils(gridRef, forceRenderRef);
274
+ return new RowHeightUtils(gridRef, outerGridElementRef, gridItemsRenderedRef, forceRenderRef);
246
275
  }),
247
276
  _useState2 = _slicedToArray(_useState, 1),
248
277
  rowHeightUtils = _useState2[0]; // Forces a rerender whenever the row heights change, as this can cause the
@@ -13,25 +13,10 @@ import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { EuiDescriptionListTitle } from './description_list_title';
15
15
  import { EuiDescriptionListDescription } from './description_list_description';
16
- import { keysOf } from '../common';
16
+ import { useEuiTheme } from '../../services';
17
+ import { euiDescriptionListStyles } from './description_list.styles';
18
+ import { EuiDescriptionListContext } from './description_list_context';
17
19
  import { jsx as ___EmotionJSX } from "@emotion/react";
18
- var typesToClassNameMap = {
19
- row: 'euiDescriptionList--row',
20
- inline: 'euiDescriptionList--inline',
21
- column: 'euiDescriptionList--column',
22
- responsiveColumn: 'euiDescriptionList--responsiveColumn'
23
- };
24
- export var TYPES = keysOf(typesToClassNameMap);
25
- var alignmentsToClassNameMap = {
26
- center: 'euiDescriptionList--center',
27
- left: ''
28
- };
29
- export var ALIGNMENTS = keysOf(alignmentsToClassNameMap);
30
- var textStylesToClassNameMap = {
31
- normal: '',
32
- reverse: 'euiDescriptionList--reverse'
33
- };
34
- export var TEXT_STYLES = keysOf(textStylesToClassNameMap);
35
20
  export var EuiDescriptionList = function EuiDescriptionList(_ref) {
36
21
  var _ref$align = _ref.align,
37
22
  align = _ref$align === void 0 ? 'left' : _ref$align,
@@ -48,9 +33,10 @@ export var EuiDescriptionList = function EuiDescriptionList(_ref) {
48
33
  type = _ref$type === void 0 ? 'row' : _ref$type,
49
34
  rest = _objectWithoutProperties(_ref, _excluded);
50
35
 
51
- var classes = classNames('euiDescriptionList', type ? typesToClassNameMap[type] : undefined, align ? alignmentsToClassNameMap[align] : undefined, textStyle ? textStylesToClassNameMap[textStyle] : undefined, {
52
- 'euiDescriptionList--compressed': compressed
53
- }, className);
36
+ var euiTheme = useEuiTheme();
37
+ var styles = euiDescriptionListStyles(euiTheme);
38
+ var cssStyles = [styles.euiDescriptionList, styles[type], styles[align]];
39
+ var classes = classNames('euiDescriptionList', className);
54
40
  var childrenOrListItems = null;
55
41
 
56
42
  if (listItems) {
@@ -65,7 +51,17 @@ export var EuiDescriptionList = function EuiDescriptionList(_ref) {
65
51
  childrenOrListItems = children;
66
52
  }
67
53
 
68
- return ___EmotionJSX("dl", _extends({
69
- className: classes
70
- }, rest), childrenOrListItems);
54
+ return ___EmotionJSX(EuiDescriptionListContext.Provider, {
55
+ value: {
56
+ type: type,
57
+ compressed: compressed,
58
+ textStyle: textStyle,
59
+ align: align
60
+ }
61
+ }, ___EmotionJSX("dl", _extends({
62
+ className: classes,
63
+ css: cssStyles
64
+ }, rest, {
65
+ "data-type": type
66
+ }), childrenOrListItems));
71
67
  };
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { logicalTextAlignCSS, euiBreakpoint } from '../../global_styling';
10
+ export var euiDescriptionListStyles = function euiDescriptionListStyles(euiThemeContext) {
11
+ // Flex display for column and responsive column
12
+ var columnDisplay = "\n display: flex;\n align-items: baseline;\n flex-wrap: wrap; \n ";
13
+ return {
14
+ euiDescriptionList: /*#__PURE__*/css(";label:euiDescriptionList;"),
15
+ // Types
16
+ row: /*#__PURE__*/css(";label:row;"),
17
+ inline: /*#__PURE__*/css(";label:inline;"),
18
+ column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
19
+ // Responsive columns behave as a row on breakpoints xs-s
20
+ responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
21
+ // Alignment
22
+ center: /*#__PURE__*/css(logicalTextAlignCSS('center'), ";;label:center;"),
23
+ left: /*#__PURE__*/css(logicalTextAlignCSS('left'), ";;label:left;")
24
+ };
25
+ };
@@ -0,0 +1,14 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { createContext } from 'react';
9
+ export var contextDefaults = {
10
+ type: 'row',
11
+ textStyle: 'normal',
12
+ align: 'left'
13
+ };
14
+ export var EuiDescriptionListContext = /*#__PURE__*/createContext(contextDefaults);
@@ -1,4 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
4
  var _excluded = ["children", "className"];
4
5
 
@@ -9,16 +10,45 @@ var _excluded = ["children", "className"];
9
10
  * in compliance with, at your election, the Elastic License 2.0 or the Server
10
11
  * Side Public License, v 1.
11
12
  */
12
- import React from 'react';
13
+ import React, { useContext } from 'react';
13
14
  import classNames from 'classnames';
15
+ import { useEuiTheme } from '../../services';
16
+ import { euiDescriptionListDescriptionStyles } from './description_list_description.styles';
17
+ import { EuiDescriptionListContext } from './description_list_context';
14
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
15
19
  export var EuiDescriptionListDescription = function EuiDescriptionListDescription(_ref) {
16
20
  var children = _ref.children,
17
21
  className = _ref.className,
18
22
  rest = _objectWithoutProperties(_ref, _excluded);
19
23
 
24
+ var _useContext = useContext(EuiDescriptionListContext),
25
+ type = _useContext.type,
26
+ textStyle = _useContext.textStyle,
27
+ compressed = _useContext.compressed,
28
+ align = _useContext.align;
29
+
30
+ var theme = useEuiTheme();
31
+ var styles = euiDescriptionListDescriptionStyles(theme);
32
+ var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
33
+
34
+ switch (type) {
35
+ case 'inline':
36
+ conditionalStyles = compressed ? [styles.inlineStyles.compressed] : [styles.inlineStyles.normal];
37
+ break;
38
+
39
+ case 'responsiveColumn':
40
+ case 'column':
41
+ if (align === 'center') {
42
+ conditionalStyles.push(styles.left);
43
+ }
44
+
45
+ break;
46
+ }
47
+
48
+ var cssStyles = [styles.euiDescriptionList__description, styles[type]].concat(_toConsumableArray(conditionalStyles));
20
49
  var classes = classNames('euiDescriptionList__description', className);
21
50
  return ___EmotionJSX("dd", _extends({
22
- className: classes
51
+ className: classes,
52
+ css: cssStyles
23
53
  }, rest), children);
24
54
  };
@@ -0,0 +1,47 @@
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)."; }
2
+
3
+ /*
4
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
+ * or more contributor license agreements. Licensed under the Elastic License
6
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
7
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
8
+ * Side Public License, v 1.
9
+ */
10
+ import { css } from '@emotion/react';
11
+ import { euiFontSize, euiBreakpoint, logicalTextAlignCSS, logicalCSS } from '../../global_styling';
12
+ import { euiTitle } from '../title/title.styles';
13
+
14
+ var _ref = process.env.NODE_ENV === "production" ? {
15
+ name: "1yn9gig-inline",
16
+ styles: "display:inline;label:inline;"
17
+ } : {
18
+ name: "1yn9gig-inline",
19
+ styles: "display:inline;label:inline;",
20
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
21
+ };
22
+
23
+ export var euiDescriptionListDescriptionStyles = function euiDescriptionListDescriptionStyles(euiThemeContext) {
24
+ var euiTheme = euiThemeContext.euiTheme;
25
+ var columnDisplay = "\n ".concat(logicalCSS('width', '50%'), " // Flex-basis doesn't work in IE with padding\n ").concat(logicalCSS('padding-left', euiTheme.size.s), "\n &:not(:first-of-type) {\n ").concat(logicalCSS('margin-top', euiTheme.size.base), "\n }\n ");
26
+ return {
27
+ euiDescriptionList__description: /*#__PURE__*/css(";label:euiDescriptionList__description;"),
28
+ // Types
29
+ row: /*#__PURE__*/css(";label:row;"),
30
+ column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
31
+ responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['xs', 's']), "{", logicalCSS('width', '100%'), " padding:0;}", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
32
+ inline: _ref,
33
+ // This nested block handles just the font styling based on compressed and reverse
34
+ fontStyles: {
35
+ normal: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";;label:normal;"),
36
+ reverse: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xs'), ";;label:reverse;"),
37
+ compressed: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), ";;label:compressed;")
38
+ },
39
+ // Nested inline styles for type and font
40
+ inlineStyles: {
41
+ compressed: /*#__PURE__*/css(euiFontSize(euiThemeContext, 'xs'), ";;label:compressed;"),
42
+ normal: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";;label:normal;")
43
+ },
44
+ // Column types should align description text to the left when EuiDecriptionList is centered
45
+ left: /*#__PURE__*/css(logicalTextAlignCSS('left'), ";;label:left;")
46
+ };
47
+ };
@@ -1,4 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
4
  var _excluded = ["children", "className"];
4
5
 
@@ -9,16 +10,45 @@ var _excluded = ["children", "className"];
9
10
  * in compliance with, at your election, the Elastic License 2.0 or the Server
10
11
  * Side Public License, v 1.
11
12
  */
12
- import React from 'react';
13
+ import React, { useContext } from 'react';
13
14
  import classNames from 'classnames';
15
+ import { useEuiTheme } from '../../services';
16
+ import { euiDescriptionListTitleStyles } from './description_list_title.styles';
17
+ import { EuiDescriptionListContext } from './description_list_context';
14
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
15
19
  export var EuiDescriptionListTitle = function EuiDescriptionListTitle(_ref) {
16
20
  var children = _ref.children,
17
21
  className = _ref.className,
18
22
  rest = _objectWithoutProperties(_ref, _excluded);
19
23
 
24
+ var _useContext = useContext(EuiDescriptionListContext),
25
+ type = _useContext.type,
26
+ textStyle = _useContext.textStyle,
27
+ compressed = _useContext.compressed,
28
+ align = _useContext.align;
29
+
30
+ var theme = useEuiTheme();
31
+ var styles = euiDescriptionListTitleStyles(theme);
32
+ var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
33
+
34
+ switch (type) {
35
+ case 'inline':
36
+ conditionalStyles = compressed ? [styles.inlineStyles.compressed] : [styles.inlineStyles.normal];
37
+ break;
38
+
39
+ case 'responsiveColumn':
40
+ case 'column':
41
+ if (align === 'center') {
42
+ conditionalStyles.push(styles.right);
43
+ }
44
+
45
+ break;
46
+ }
47
+
48
+ var cssStyles = [styles.euiDescriptionList__title, styles[type]].concat(_toConsumableArray(conditionalStyles));
20
49
  var classes = classNames('euiDescriptionList__title', className);
21
50
  return ___EmotionJSX("dt", _extends({
22
- className: classes
51
+ className: classes,
52
+ css: cssStyles
23
53
  }, rest), children);
24
54
  };
@@ -0,0 +1,37 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiFontSize, euiTextBreakWord, logicalTextAlignCSS, euiBreakpoint, logicalCSS } from '../../global_styling';
10
+ import { tint } from '../../services';
11
+ import { euiTitle } from '../title/title.styles';
12
+ export var euiDescriptionListTitleStyles = function euiDescriptionListTitleStyles(euiThemeContext) {
13
+ var euiTheme = euiThemeContext.euiTheme,
14
+ colorMode = euiThemeContext.colorMode;
15
+ var columnDisplay = "\n ".concat(logicalCSS('width', '50%'), " // Flex-basis doesn't work in IE with padding\n ").concat(logicalCSS('padding-right', euiTheme.size.s), "\n ");
16
+ return {
17
+ euiDescriptionList__title: /*#__PURE__*/css(euiTextBreakWord(), "&:not(:first-of-type){", logicalCSS('margin-top', euiTheme.size.base), ";};label:euiDescriptionList__title;"),
18
+ // Types
19
+ row: /*#__PURE__*/css(";label:row;"),
20
+ column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
21
+ responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['xs', 's']), "{", logicalCSS('width', '100%'), " padding:0;}", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
22
+ inline: /*#__PURE__*/css("display:inline;border-radius:", euiTheme.border.radius.small, ";font-weight:", euiTheme.font.weight.medium, ";background-color:", colorMode === 'DARK' ? tint(euiTheme.colors.lightestShade, 0.5) : euiTheme.colors.lightestShade, ";", logicalCSS('margin-vertical', '0'), " ", logicalCSS('margin-horizontal', euiTheme.size.xs), "&:first-of-type{", logicalCSS('margin-left', '0'), ";};label:inline;"),
23
+ // This nested block handles just the font styling based on compressed and reverse
24
+ fontStyles: {
25
+ normal: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xs'), ";;label:normal;"),
26
+ reverse: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";;label:reverse;"),
27
+ compressed: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), ";;label:compressed;")
28
+ },
29
+ // Inline types
30
+ inlineStyles: {
31
+ normal: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";", logicalCSS('padding-vertical', '1px'), " ", logicalCSS('padding-horizontal', euiTheme.size.xs), ";;label:normal;"),
32
+ compressed: /*#__PURE__*/css(euiFontSize(euiThemeContext, 'xs'), ";", logicalCSS('padding-vertical', '0'), " ", logicalCSS('padding-horizontal', euiTheme.size.xs), ";;label:compressed;")
33
+ },
34
+ // Alignment
35
+ right: /*#__PURE__*/css(logicalTextAlignCSS('right'), ";;label:right;")
36
+ };
37
+ };
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ export var TYPES = ['row', 'inline', 'column', 'responsiveColumn'];
9
+ export var ALIGNMENTS = ['center', 'left'];
10
+ export var TEXT_STYLES = ['normal', 'reverse'];
@@ -12,6 +12,8 @@ var _excluded = ["className", "breadcrumbs"];
12
12
  import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { EuiBreadcrumbs } from '../../breadcrumbs';
15
+ import { euiHeaderBreadcrumbsStyles } from './header_breadcrumbs.styles';
16
+ import { useEuiTheme } from '../../../services';
15
17
  import { jsx as ___EmotionJSX } from "@emotion/react";
16
18
  export var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
17
19
  var className = _ref.className,
@@ -19,10 +21,15 @@ export var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
19
21
  rest = _objectWithoutProperties(_ref, _excluded);
20
22
 
21
23
  var classes = classNames('euiHeaderBreadcrumbs', className);
24
+ var euiTheme = useEuiTheme();
25
+ var styles = euiHeaderBreadcrumbsStyles(euiTheme);
26
+ var cssHeaderBreadcrumbStyles = [styles.euiHeaderBreadcrumbs];
22
27
  return ___EmotionJSX(EuiBreadcrumbs, _extends({
23
28
  max: 4,
24
29
  truncate: true,
25
30
  breadcrumbs: breadcrumbs,
26
- className: classes
31
+ className: classes,
32
+ css: cssHeaderBreadcrumbStyles,
33
+ type: "application"
27
34
  }, rest));
28
35
  };
@@ -0,0 +1,15 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiTextTruncate, logicalCSS } from '../../../global_styling';
10
+ export var euiHeaderBreadcrumbsStyles = function euiHeaderBreadcrumbsStyles(_ref) {
11
+ var euiTheme = _ref.euiTheme;
12
+ return {
13
+ euiHeaderBreadcrumbs: /*#__PURE__*/css(euiTextTruncate(), ";align-items:center;display:flex;flex-grow:1;", logicalCSS('margin-horizontal', euiTheme.size.s), ";;label:euiHeaderBreadcrumbs;")
14
+ };
15
+ };
@@ -11,7 +11,7 @@ var _excluded = ["children", "className", "gutterSize", "popoverBreakpoints", "p
11
11
  * in compliance with, at your election, the Elastic License 2.0 or the Server
12
12
  * Side Public License, v 1.
13
13
  */
14
- import React, { useState, useEffect } from 'react';
14
+ import React, { useState, useEffect, useCallback } from 'react';
15
15
  import classNames from 'classnames';
16
16
  import { keysOf } from '../../common';
17
17
  import { EuiIcon } from '../../icon';
@@ -49,15 +49,15 @@ export var EuiHeaderLinks = function EuiHeaderLinks(_ref) {
49
49
  mobileMenuIsOpen = _useState2[0],
50
50
  setMobileMenuIsOpen = _useState2[1];
51
51
 
52
- var onMenuButtonClick = function onMenuButtonClick(e) {
52
+ var onMenuButtonClick = useCallback(function (e) {
53
53
  onClick === null || onClick === void 0 ? void 0 : onClick(e);
54
- setMobileMenuIsOpen(!mobileMenuIsOpen);
55
- };
56
-
57
- var closeMenu = function closeMenu() {
54
+ setMobileMenuIsOpen(function (mobileMenuIsOpen) {
55
+ return !mobileMenuIsOpen;
56
+ });
57
+ }, [onClick]);
58
+ var closeMenu = useCallback(function () {
58
59
  setMobileMenuIsOpen(false);
59
- };
60
-
60
+ }, []);
61
61
  useEffect(function () {
62
62
  window.addEventListener('resize', closeMenu);
63
63
  return function () {
@@ -28,7 +28,7 @@ var EuiIconTokenStruct = function EuiIconTokenStruct(_ref) {
28
28
  id: titleId
29
29
  }, title) : null, ___EmotionJSX("path", {
30
30
  fillRule: "evenodd",
31
- d: "M4.336 4.667h2.667v2.666H4.336V4.667zm0 4h2.667v2.666H4.336V8.667zm4-4h2.667v2.666H8.336V4.667zm0 4h2.667v2.666H8.336V8.667zM3.003 3.333v9.334h9.333V3.333H3.003zm0-1.333h9.333c.737 0 1.334.597 1.334 1.333v9.334c0 .736-.597 1.333-1.334 1.333H3.003a1.333 1.333 0 01-1.333-1.333V3.333C1.67 2.597 2.267 2 3.003 2z"
31
+ d: "M4.667 4.667h2.666v2.666H4.667V4.667zm0 4h2.666v2.666H4.667V8.667zm4-4h2.666v2.666H8.667V4.667zm0 4h2.666v2.666H8.667V8.667zM3.333 3.333v9.334h9.334V3.333H3.333zm0-1.333h9.334C13.403 2 14 2.597 14 3.333v9.334c0 .736-.597 1.333-1.333 1.333H3.333A1.333 1.333 0 012 12.667V3.333C2 2.597 2.597 2 3.333 2z"
32
32
  }));
33
33
  };
34
34
 
@@ -18,7 +18,7 @@ import { EuiFlexGroup, EuiFlexItem } from '../../flex';
18
18
  import { EuiSpacer } from '../../spacer';
19
19
  import { EuiTitle } from '../../title';
20
20
  import { EuiText } from '../../text';
21
- import { useIsWithinBreakpoints } from '../../../services/hooks';
21
+ import { useIsWithinBreakpoints } from '../../../services';
22
22
  import { EuiScreenReaderOnly } from '../../accessibility';
23
23
  import { EuiBreadcrumbs } from '../../breadcrumbs';
24
24
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -13,7 +13,7 @@ var _excluded = ["children", "className"],
13
13
  import React from 'react';
14
14
  import classNames from 'classnames';
15
15
  import { EuiPanel } from '../panel';
16
- import { useIsWithinBreakpoints } from '../../../services/hooks';
16
+ import { useIsWithinBreakpoints } from '../../../services/breakpoint';
17
17
  import { jsx as ___EmotionJSX } from "@emotion/react";
18
18
 
19
19
  /**
@@ -8,7 +8,7 @@
8
8
  import React from 'react';
9
9
  import { EuiGlobalStyles } from '../../global_styling/reset/global_styles';
10
10
  import { EuiUtilityClasses } from '../../global_styling/utility/utility';
11
- import { EuiThemeProvider } from '../../services';
11
+ import { EuiThemeProvider, CurrentEuiBreakpointProvider } from '../../services';
12
12
  import { EuiThemeAmsterdam } from '../../themes';
13
13
  import { EuiCacheProvider } from './cache';
14
14
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -54,5 +54,5 @@ export var EuiProvider = function EuiProvider(_ref) {
54
54
  }), ___EmotionJSX(EuiCacheProvider, {
55
55
  cache: utilityCache,
56
56
  children: Utilities && ___EmotionJSX(Utilities, null)
57
- })), children));
57
+ })), ___EmotionJSX(CurrentEuiBreakpointProvider, null, children)));
58
58
  };
@@ -1,5 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
-
3
1
  /*
4
2
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
3
  * or more contributor license agreements. Licensed under the Elastic License
@@ -7,36 +5,16 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
5
  * in compliance with, at your election, the Elastic License 2.0 or the Server
8
6
  * Side Public License, v 1.
9
7
  */
10
- import React, { useState, useEffect } from 'react';
11
- import { throttle } from '../../services';
12
- import { getBreakpoint } from '../../services/breakpoint';
8
+ import React from 'react';
9
+ import { useCurrentEuiBreakpoint } from '../../services';
13
10
  import { jsx as ___EmotionJSX } from "@emotion/react";
14
11
  export var EuiHideFor = function EuiHideFor(_ref) {
15
12
  var children = _ref.children,
16
13
  sizes = _ref.sizes;
14
+ var currentBreakpoint = useCurrentEuiBreakpoint();
15
+ var isWithinBreakpointSizes = currentBreakpoint && sizes.includes(currentBreakpoint);
17
16
 
18
- var _useState = useState(getBreakpoint(typeof window === 'undefined' ? -Infinity : window.innerWidth)),
19
- _useState2 = _slicedToArray(_useState, 2),
20
- currentBreakpoint = _useState2[0],
21
- setCurrentBreakpoint = _useState2[1];
22
-
23
- var functionToCallOnWindowResize = throttle(function () {
24
- var newBreakpoint = getBreakpoint(window.innerWidth);
25
-
26
- if (newBreakpoint !== currentBreakpoint) {
27
- setCurrentBreakpoint(newBreakpoint);
28
- } // reacts every 50ms to resize changes and always gets the final update
29
-
30
- }, 50); // Add window resize handlers
31
-
32
- useEffect(function () {
33
- window.addEventListener('resize', functionToCallOnWindowResize);
34
- return function () {
35
- window.removeEventListener('resize', functionToCallOnWindowResize);
36
- };
37
- }, [functionToCallOnWindowResize]);
38
-
39
- if (sizes === 'all' || sizes.includes(currentBreakpoint)) {
17
+ if (sizes === 'all' || isWithinBreakpointSizes) {
40
18
  return null;
41
19
  }
42
20
 
@@ -1,5 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
-
3
1
  /*
4
2
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
3
  * or more contributor license agreements. Licensed under the Elastic License
@@ -7,36 +5,16 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
5
  * in compliance with, at your election, the Elastic License 2.0 or the Server
8
6
  * Side Public License, v 1.
9
7
  */
10
- import React, { useState, useEffect } from 'react';
11
- import { throttle } from '../../services';
12
- import { getBreakpoint } from '../../services/breakpoint';
8
+ import React from 'react';
9
+ import { useCurrentEuiBreakpoint } from '../../services';
13
10
  import { jsx as ___EmotionJSX } from "@emotion/react";
14
11
  export var EuiShowFor = function EuiShowFor(_ref) {
15
12
  var children = _ref.children,
16
13
  sizes = _ref.sizes;
14
+ var currentBreakpoint = useCurrentEuiBreakpoint();
15
+ var isWithinBreakpointSizes = currentBreakpoint && sizes.includes(currentBreakpoint);
17
16
 
18
- var _useState = useState(getBreakpoint(typeof window === 'undefined' ? -Infinity : window.innerWidth)),
19
- _useState2 = _slicedToArray(_useState, 2),
20
- currentBreakpoint = _useState2[0],
21
- setCurrentBreakpoint = _useState2[1];
22
-
23
- var functionToCallOnWindowResize = throttle(function () {
24
- var newBreakpoint = getBreakpoint(window.innerWidth);
25
-
26
- if (newBreakpoint !== currentBreakpoint) {
27
- setCurrentBreakpoint(newBreakpoint);
28
- } // reacts every 50ms to resize changes and always gets the final update
29
-
30
- }, 50); // Add window resize handlers
31
-
32
- useEffect(function () {
33
- window.addEventListener('resize', functionToCallOnWindowResize);
34
- return function () {
35
- window.removeEventListener('resize', functionToCallOnWindowResize);
36
- };
37
- }, [sizes, functionToCallOnWindowResize]);
38
-
39
- if (sizes === 'all' || sizes.includes(currentBreakpoint)) {
17
+ if (sizes === 'all' || isWithinBreakpointSizes) {
40
18
  return ___EmotionJSX(React.Fragment, null, children);
41
19
  }
42
20