@elastic/eui 62.0.3 → 63.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (500) hide show
  1. package/dist/eui_charts_theme.js +330 -330
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +4 -1053
  4. package/dist/eui_theme_dark.json +0 -57
  5. package/dist/eui_theme_dark.json.d.ts +0 -57
  6. package/dist/eui_theme_dark.min.css +1 -1
  7. package/dist/eui_theme_light.css +4 -1053
  8. package/dist/eui_theme_light.json +0 -57
  9. package/dist/eui_theme_light.json.d.ts +0 -57
  10. package/dist/eui_theme_light.min.css +1 -1
  11. package/es/components/bottom_bar/bottom_bar.js +20 -3
  12. package/es/components/breadcrumbs/breadcrumb.js +199 -0
  13. package/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  14. package/es/components/breadcrumbs/breadcrumbs.js +115 -187
  15. package/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  16. package/es/components/code/code_block.js +119 -107
  17. package/es/components/collapsible_nav/collapsible_nav.js +2 -2
  18. package/es/components/control_bar/control_bar.js +13 -0
  19. package/es/components/datagrid/body/data_grid_body.js +12 -2
  20. package/es/components/datagrid/body/data_grid_cell.js +31 -3
  21. package/es/components/datagrid/body/header/data_grid_header_row.js +1 -1
  22. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  23. package/es/components/datagrid/data_grid.js +10 -2
  24. package/es/components/datagrid/utils/row_heights.js +33 -4
  25. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  26. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  27. package/es/components/description_list/description_list.js +22 -26
  28. package/es/components/description_list/description_list.styles.js +25 -0
  29. package/es/components/description_list/description_list_context.js +14 -0
  30. package/es/components/description_list/description_list_description.js +43 -2
  31. package/es/components/description_list/description_list_description.styles.js +47 -0
  32. package/es/components/description_list/description_list_title.js +43 -2
  33. package/es/components/description_list/description_list_title.styles.js +37 -0
  34. package/es/components/description_list/description_list_types.js +10 -0
  35. package/es/components/header/header.js +3 -27
  36. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +22 -2
  37. package/es/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +15 -0
  38. package/es/components/header/header_links/header_links.js +11 -10
  39. package/es/components/icon/assets/tokenStruct.js +1 -1
  40. package/es/components/index.js +1 -0
  41. package/es/components/page/_bottom_border.js +1 -0
  42. package/es/components/page/_restrict_width.js +34 -7
  43. package/es/components/page/index.js +5 -3
  44. package/es/components/page/page.js +19 -30
  45. package/es/components/page/page.styles.js +43 -0
  46. package/es/components/page/page_body/page_body.js +18 -26
  47. package/es/components/page/page_body/page_body.styles.js +16 -0
  48. package/es/components/page/page_content/index.js +4 -4
  49. package/es/components/page/page_content/page_content.js +7 -2
  50. package/es/components/page/page_content/page_content_body.js +12 -7
  51. package/es/components/page/page_content/page_content_header.js +7 -2
  52. package/es/components/page/page_content/page_content_header_section.js +7 -2
  53. package/es/components/page/page_header/page_header.js +29 -171
  54. package/es/components/page/page_header/page_header.styles.js +16 -0
  55. package/es/components/page/page_header/page_header_content.js +85 -16
  56. package/es/components/page/page_header/page_header_content.styles.js +84 -0
  57. package/es/components/page/page_section/index.js +8 -0
  58. package/es/components/page/page_section/page_section.js +102 -0
  59. package/es/components/page/page_section/page_section.styles.js +43 -0
  60. package/es/components/page/page_side_bar/index.js +1 -1
  61. package/es/components/page/page_side_bar/page_side_bar.js +8 -3
  62. package/es/components/page/page_sidebar/index.js +8 -0
  63. package/es/components/page/page_sidebar/page_sidebar.js +110 -0
  64. package/es/components/page/page_sidebar/page_sidebar.styles.js +29 -0
  65. package/es/components/page/page_template.js +54 -153
  66. package/es/components/page_template/bottom_bar/page_bottom_bar.js +102 -0
  67. package/es/components/page_template/empty_prompt/page_empty_prompt.js +107 -0
  68. package/es/components/page_template/index.js +8 -0
  69. package/es/components/page_template/inner/index.js +8 -0
  70. package/es/components/page_template/inner/page_inner.js +51 -0
  71. package/es/components/page_template/inner/page_inner.styles.js +22 -0
  72. package/es/components/page_template/outer/index.js +8 -0
  73. package/es/components/page_template/outer/page_outer.js +59 -0
  74. package/es/components/page_template/outer/page_outer.styles.js +49 -0
  75. package/es/components/page_template/page_template.js +376 -0
  76. package/es/components/pagination/pagination.js +1 -1
  77. package/es/components/panel/split_panel/split_panel.js +2 -2
  78. package/es/components/provider/provider.js +2 -2
  79. package/es/components/responsive/hide_for.js +6 -38
  80. package/es/components/responsive/show_for.js +6 -38
  81. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +17 -36
  82. package/es/components/side_nav/side_nav.js +1 -1
  83. package/es/components/table/table_row_cell.js +1 -2
  84. package/es/components/toast/global_toast_list.js +208 -241
  85. package/es/components/toast/global_toast_list.styles.js +38 -0
  86. package/es/components/toast/global_toast_list_item.js +12 -7
  87. package/es/components/toast/toast.js +25 -25
  88. package/es/components/toast/toast.styles.js +55 -0
  89. package/es/components/token/index.js +2 -1
  90. package/es/components/token/token.js +48 -112
  91. package/es/components/token/token.styles.js +93 -0
  92. package/es/components/token/token_map.js +6 -9
  93. package/es/components/token/token_types.js +11 -0
  94. package/es/global_styling/functions/logicals.js +1 -1
  95. package/es/global_styling/mixins/_helpers.js +27 -9
  96. package/es/global_styling/reset/global_styles.js +1 -1
  97. package/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  98. package/es/services/{hooks/useIsWithinBreakpoints.js → breakpoint/currentEuiBreakpoint.js} +36 -28
  99. package/es/services/breakpoint/index.js +10 -0
  100. package/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  101. package/es/services/hooks/index.js +0 -1
  102. package/es/services/index.js +1 -1
  103. package/es/test/rtl/component_helpers.js +60 -1
  104. package/eui.d.ts +2100 -1504
  105. package/i18ntokens.json +36 -36
  106. package/lib/components/bottom_bar/bottom_bar.js +20 -3
  107. package/lib/components/breadcrumbs/breadcrumb.js +225 -0
  108. package/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  109. package/lib/components/breadcrumbs/breadcrumbs.js +125 -188
  110. package/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  111. package/lib/components/code/code_block.js +118 -106
  112. package/lib/components/collapsible_nav/collapsible_nav.js +2 -2
  113. package/lib/components/control_bar/control_bar.js +13 -0
  114. package/lib/components/datagrid/body/data_grid_body.js +12 -2
  115. package/lib/components/datagrid/body/data_grid_cell.js +31 -3
  116. package/lib/components/datagrid/body/header/data_grid_header_row.js +1 -1
  117. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  118. package/lib/components/datagrid/data_grid.js +10 -2
  119. package/lib/components/datagrid/utils/row_heights.js +33 -4
  120. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  121. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  122. package/lib/components/description_list/description_list.js +25 -31
  123. package/lib/components/description_list/description_list.styles.js +36 -0
  124. package/lib/components/description_list/description_list_context.js +24 -0
  125. package/lib/components/description_list/description_list_description.js +52 -2
  126. package/lib/components/description_list/description_list_description.styles.js +51 -0
  127. package/lib/components/description_list/description_list_title.js +52 -2
  128. package/lib/components/description_list/description_list_title.styles.js +50 -0
  129. package/lib/components/description_list/description_list_types.js +20 -0
  130. package/lib/components/header/header.js +3 -27
  131. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  132. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  133. package/lib/components/header/header_links/header_links.js +10 -9
  134. package/lib/components/icon/assets/tokenStruct.js +1 -1
  135. package/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  136. package/lib/components/index.js +13 -0
  137. package/lib/components/page/_bottom_border.js +5 -0
  138. package/lib/components/page/_restrict_width.js +38 -7
  139. package/lib/components/page/index.js +28 -12
  140. package/lib/components/page/page.js +22 -34
  141. package/lib/components/page/page.styles.js +46 -0
  142. package/lib/components/page/page_body/page_body.js +20 -29
  143. package/lib/components/page/page_body/page_body.styles.js +27 -0
  144. package/lib/components/page/page_content/index.js +8 -8
  145. package/lib/components/page/page_content/page_content.js +8 -4
  146. package/lib/components/page/page_content/page_content_body.js +13 -9
  147. package/lib/components/page/page_content/page_content_header.js +8 -4
  148. package/lib/components/page/page_content/page_content_header_section.js +8 -4
  149. package/lib/components/page/page_header/page_header.js +31 -174
  150. package/lib/components/page/page_header/page_header.styles.js +27 -0
  151. package/lib/components/page/page_header/page_header_content.js +111 -18
  152. package/lib/components/page/page_header/page_header_content.styles.js +87 -0
  153. package/lib/components/page/page_section/index.js +13 -0
  154. package/lib/components/page/page_section/page_section.js +113 -0
  155. package/lib/components/page/page_section/page_section.styles.js +51 -0
  156. package/lib/components/page/page_side_bar/index.js +2 -2
  157. package/lib/components/page/page_side_bar/page_side_bar.js +9 -5
  158. package/lib/components/page/page_sidebar/index.js +13 -0
  159. package/lib/components/page/page_sidebar/page_sidebar.js +124 -0
  160. package/lib/components/page/page_sidebar/page_sidebar.styles.js +32 -0
  161. package/lib/components/page/page_template.js +76 -176
  162. package/lib/components/page_template/bottom_bar/page_bottom_bar.js +114 -0
  163. package/lib/components/page_template/empty_prompt/page_empty_prompt.js +116 -0
  164. package/lib/components/page_template/index.js +13 -0
  165. package/lib/components/page_template/inner/index.js +13 -0
  166. package/lib/components/page_template/inner/page_inner.js +60 -0
  167. package/lib/components/page_template/inner/page_inner.styles.js +35 -0
  168. package/lib/components/page_template/outer/index.js +13 -0
  169. package/lib/components/page_template/outer/page_outer.js +68 -0
  170. package/lib/components/page_template/outer/page_outer.styles.js +51 -0
  171. package/lib/components/page_template/page_template.js +399 -0
  172. package/lib/components/pagination/pagination.js +1 -1
  173. package/lib/components/panel/split_panel/split_panel.js +3 -3
  174. package/lib/components/provider/provider.js +1 -1
  175. package/lib/components/responsive/hide_for.js +12 -44
  176. package/lib/components/responsive/show_for.js +12 -44
  177. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  178. package/lib/components/side_nav/side_nav.js +1 -1
  179. package/lib/components/table/table_row_cell.js +1 -3
  180. package/lib/components/toast/global_toast_list.js +209 -238
  181. package/lib/components/toast/global_toast_list.styles.js +45 -0
  182. package/lib/components/toast/global_toast_list_item.js +14 -7
  183. package/lib/components/toast/toast.js +27 -25
  184. package/lib/components/toast/toast.styles.js +66 -0
  185. package/lib/components/token/index.js +5 -3
  186. package/lib/components/token/token.js +50 -120
  187. package/lib/components/token/token.styles.js +101 -0
  188. package/lib/components/token/token_map.js +6 -9
  189. package/lib/components/token/token_types.js +22 -0
  190. package/lib/global_styling/functions/logicals.js +1 -1
  191. package/lib/global_styling/mixins/_helpers.js +27 -9
  192. package/lib/global_styling/reset/global_styles.js +1 -1
  193. package/{test-env/services → lib/services/breakpoint}/breakpoint.js +5 -9
  194. package/lib/services/breakpoint/currentEuiBreakpoint.js +80 -0
  195. package/lib/services/breakpoint/index.js +44 -0
  196. package/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  197. package/lib/services/hooks/index.js +0 -13
  198. package/lib/services/index.js +28 -0
  199. package/lib/test/rtl/component_helpers.js +69 -3
  200. package/optimize/es/components/bottom_bar/bottom_bar.js +1 -1
  201. package/optimize/es/components/breadcrumbs/breadcrumb.js +136 -0
  202. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  203. package/optimize/es/components/breadcrumbs/breadcrumbs.js +92 -165
  204. package/optimize/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  205. package/optimize/es/components/code/code_block.js +106 -107
  206. package/optimize/es/components/datagrid/body/data_grid_body.js +2 -0
  207. package/optimize/es/components/datagrid/body/data_grid_cell.js +13 -1
  208. package/optimize/es/components/datagrid/utils/row_heights.js +33 -4
  209. package/optimize/es/components/description_list/description_list.js +20 -24
  210. package/optimize/es/components/description_list/description_list.styles.js +25 -0
  211. package/optimize/es/components/description_list/description_list_context.js +14 -0
  212. package/optimize/es/components/description_list/description_list_description.js +32 -2
  213. package/optimize/es/components/description_list/description_list_description.styles.js +47 -0
  214. package/optimize/es/components/description_list/description_list_title.js +32 -2
  215. package/optimize/es/components/description_list/description_list_title.styles.js +37 -0
  216. package/optimize/es/components/description_list/description_list_types.js +10 -0
  217. package/optimize/es/components/header/header.js +2 -0
  218. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +8 -1
  219. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +15 -0
  220. package/optimize/es/components/header/header_links/header_links.js +10 -9
  221. package/optimize/es/components/icon/assets/tokenStruct.js +1 -1
  222. package/optimize/es/components/index.js +1 -0
  223. package/optimize/es/components/page/_bottom_border.js +1 -0
  224. package/optimize/es/components/page/_restrict_width.js +34 -7
  225. package/optimize/es/components/page/index.js +5 -3
  226. package/optimize/es/components/page/page.js +18 -28
  227. package/optimize/es/components/page/page.styles.js +43 -0
  228. package/optimize/es/components/page/page_body/page_body.js +18 -25
  229. package/optimize/es/components/page/page_body/page_body.styles.js +16 -0
  230. package/optimize/es/components/page/page_content/index.js +4 -4
  231. package/optimize/es/components/page/page_content/page_content.js +6 -1
  232. package/optimize/es/components/page/page_content/page_content_body.js +10 -5
  233. package/optimize/es/components/page/page_content/page_content_header.js +6 -1
  234. package/optimize/es/components/page/page_content/page_content_header_section.js +6 -1
  235. package/optimize/es/components/page/page_header/page_header.js +20 -32
  236. package/optimize/es/components/page/page_header/page_header.styles.js +16 -0
  237. package/optimize/es/components/page/page_header/page_header_content.js +62 -14
  238. package/optimize/es/components/page/page_header/page_header_content.styles.js +84 -0
  239. package/optimize/es/components/page/page_section/index.js +8 -0
  240. package/optimize/es/components/page/page_section/page_section.js +51 -0
  241. package/optimize/es/components/page/page_section/page_section.styles.js +43 -0
  242. package/optimize/es/components/page/page_side_bar/index.js +1 -1
  243. package/optimize/es/components/page/page_side_bar/page_side_bar.js +6 -1
  244. package/optimize/es/components/page/page_sidebar/index.js +8 -0
  245. package/optimize/es/components/page/page_sidebar/page_sidebar.js +60 -0
  246. package/optimize/es/components/page/page_sidebar/page_sidebar.styles.js +29 -0
  247. package/optimize/es/components/page/page_template.js +29 -9
  248. package/optimize/es/components/page_template/bottom_bar/page_bottom_bar.js +70 -0
  249. package/optimize/es/components/page_template/empty_prompt/page_empty_prompt.js +61 -0
  250. package/optimize/es/components/page_template/index.js +8 -0
  251. package/optimize/es/components/page_template/inner/index.js +8 -0
  252. package/optimize/es/components/page_template/inner/page_inner.js +47 -0
  253. package/optimize/es/components/page_template/inner/page_inner.styles.js +22 -0
  254. package/optimize/es/components/page_template/outer/index.js +8 -0
  255. package/optimize/es/components/page_template/outer/page_outer.js +33 -0
  256. package/optimize/es/components/page_template/outer/page_outer.styles.js +49 -0
  257. package/optimize/es/components/page_template/page_template.js +202 -0
  258. package/optimize/es/components/panel/split_panel/split_panel.js +1 -1
  259. package/optimize/es/components/provider/provider.js +2 -2
  260. package/optimize/es/components/responsive/hide_for.js +5 -27
  261. package/optimize/es/components/responsive/show_for.js +5 -27
  262. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -35
  263. package/optimize/es/components/table/table_row_cell.js +1 -2
  264. package/optimize/es/components/toast/global_toast_list.js +199 -230
  265. package/optimize/es/components/toast/global_toast_list.styles.js +38 -0
  266. package/optimize/es/components/toast/global_toast_list_item.js +11 -6
  267. package/optimize/es/components/toast/toast.js +24 -24
  268. package/optimize/es/components/toast/toast.styles.js +55 -0
  269. package/optimize/es/components/token/index.js +2 -1
  270. package/optimize/es/components/token/token.js +46 -69
  271. package/optimize/es/components/token/token.styles.js +83 -0
  272. package/optimize/es/components/token/token_map.js +6 -9
  273. package/optimize/es/components/token/token_types.js +11 -0
  274. package/optimize/es/global_styling/functions/logicals.js +1 -1
  275. package/optimize/es/global_styling/mixins/_helpers.js +27 -9
  276. package/optimize/es/global_styling/reset/global_styles.js +1 -1
  277. package/optimize/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  278. package/optimize/es/services/breakpoint/currentEuiBreakpoint.js +53 -0
  279. package/optimize/es/services/breakpoint/index.js +10 -0
  280. package/optimize/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  281. package/optimize/es/services/hooks/index.js +0 -1
  282. package/optimize/es/services/index.js +1 -1
  283. package/optimize/es/test/rtl/component_helpers.js +60 -1
  284. package/optimize/lib/components/bottom_bar/bottom_bar.js +1 -1
  285. package/optimize/lib/components/breadcrumbs/breadcrumb.js +162 -0
  286. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  287. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +99 -164
  288. package/optimize/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  289. package/optimize/lib/components/code/code_block.js +105 -106
  290. package/optimize/lib/components/datagrid/body/data_grid_body.js +2 -0
  291. package/optimize/lib/components/datagrid/body/data_grid_cell.js +13 -1
  292. package/optimize/lib/components/datagrid/utils/row_heights.js +33 -4
  293. package/optimize/lib/components/description_list/description_list.js +23 -28
  294. package/optimize/lib/components/description_list/description_list.styles.js +36 -0
  295. package/optimize/lib/components/description_list/description_list_context.js +24 -0
  296. package/optimize/lib/components/description_list/description_list_description.js +43 -2
  297. package/optimize/lib/components/description_list/description_list_description.styles.js +51 -0
  298. package/optimize/lib/components/description_list/description_list_title.js +43 -2
  299. package/optimize/lib/components/description_list/description_list_title.styles.js +50 -0
  300. package/optimize/lib/components/description_list/description_list_types.js +20 -0
  301. package/optimize/lib/components/header/header.js +2 -0
  302. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +10 -1
  303. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  304. package/optimize/lib/components/header/header_links/header_links.js +9 -8
  305. package/optimize/lib/components/icon/assets/tokenStruct.js +1 -1
  306. package/optimize/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  307. package/optimize/lib/components/index.js +13 -0
  308. package/optimize/lib/components/page/_bottom_border.js +5 -0
  309. package/optimize/lib/components/page/_restrict_width.js +38 -7
  310. package/optimize/lib/components/page/index.js +28 -12
  311. package/optimize/lib/components/page/page.js +21 -33
  312. package/optimize/lib/components/page/page.styles.js +46 -0
  313. package/optimize/lib/components/page/page_body/page_body.js +20 -29
  314. package/optimize/lib/components/page/page_body/page_body.styles.js +27 -0
  315. package/optimize/lib/components/page/page_content/index.js +8 -8
  316. package/optimize/lib/components/page/page_content/page_content.js +7 -3
  317. package/optimize/lib/components/page/page_content/page_content_body.js +11 -7
  318. package/optimize/lib/components/page/page_content/page_content_header.js +7 -3
  319. package/optimize/lib/components/page/page_content/page_content_header_section.js +7 -3
  320. package/optimize/lib/components/page/page_header/page_header.js +22 -36
  321. package/optimize/lib/components/page/page_header/page_header.styles.js +27 -0
  322. package/optimize/lib/components/page/page_header/page_header_content.js +68 -15
  323. package/optimize/lib/components/page/page_header/page_header_content.styles.js +87 -0
  324. package/optimize/lib/components/page/page_section/index.js +13 -0
  325. package/optimize/lib/components/page/page_section/page_section.js +62 -0
  326. package/optimize/lib/components/page/page_section/page_section.styles.js +51 -0
  327. package/optimize/lib/components/page/page_side_bar/index.js +2 -2
  328. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +7 -3
  329. package/optimize/lib/components/page/page_sidebar/index.js +13 -0
  330. package/optimize/lib/components/page/page_sidebar/page_sidebar.js +79 -0
  331. package/optimize/lib/components/page/page_sidebar/page_sidebar.styles.js +32 -0
  332. package/optimize/lib/components/page/page_template.js +51 -33
  333. package/optimize/lib/components/page_template/bottom_bar/page_bottom_bar.js +85 -0
  334. package/optimize/lib/components/page_template/empty_prompt/page_empty_prompt.js +71 -0
  335. package/optimize/lib/components/page_template/index.js +13 -0
  336. package/optimize/lib/components/page_template/inner/index.js +13 -0
  337. package/optimize/lib/components/page_template/inner/page_inner.js +57 -0
  338. package/optimize/lib/components/page_template/inner/page_inner.styles.js +35 -0
  339. package/optimize/lib/components/page_template/outer/index.js +13 -0
  340. package/optimize/lib/components/page_template/outer/page_outer.js +42 -0
  341. package/optimize/lib/components/page_template/outer/page_outer.styles.js +51 -0
  342. package/optimize/lib/components/page_template/page_template.js +228 -0
  343. package/optimize/lib/components/panel/split_panel/split_panel.js +2 -2
  344. package/optimize/lib/components/provider/provider.js +1 -1
  345. package/optimize/lib/components/responsive/hide_for.js +4 -33
  346. package/optimize/lib/components/responsive/show_for.js +4 -33
  347. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +14 -34
  348. package/optimize/lib/components/table/table_row_cell.js +1 -3
  349. package/optimize/lib/components/toast/global_toast_list.js +206 -220
  350. package/optimize/lib/components/toast/global_toast_list.styles.js +47 -0
  351. package/optimize/lib/components/toast/global_toast_list_item.js +14 -7
  352. package/optimize/lib/components/toast/toast.js +26 -24
  353. package/optimize/lib/components/toast/toast.styles.js +66 -0
  354. package/optimize/lib/components/token/index.js +5 -3
  355. package/optimize/lib/components/token/token.js +50 -76
  356. package/optimize/lib/components/token/token.styles.js +91 -0
  357. package/optimize/lib/components/token/token_map.js +6 -9
  358. package/optimize/lib/components/token/token_types.js +22 -0
  359. package/optimize/lib/global_styling/functions/logicals.js +1 -1
  360. package/optimize/lib/global_styling/mixins/_helpers.js +27 -9
  361. package/optimize/lib/global_styling/reset/global_styles.js +1 -1
  362. package/optimize/lib/services/{breakpoint.js → breakpoint/breakpoint.js} +5 -9
  363. package/optimize/lib/services/breakpoint/currentEuiBreakpoint.js +81 -0
  364. package/optimize/lib/services/breakpoint/index.js +44 -0
  365. package/optimize/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  366. package/optimize/lib/services/hooks/index.js +0 -13
  367. package/optimize/lib/services/index.js +28 -0
  368. package/optimize/lib/test/rtl/component_helpers.js +69 -3
  369. package/package.json +2 -2
  370. package/src/components/control_bar/_control_bar.scss +1 -1
  371. package/src/components/header/_index.scss +0 -1
  372. package/src/components/index.scss +0 -5
  373. package/src/components/page/_index.scss +0 -5
  374. package/src/components/page/page_content/_page_content_body.scss +10 -1
  375. package/src/components/tabs/_tabs.scss +2 -0
  376. package/src/themes/amsterdam/overrides/_breadcrumbs.scss +0 -12
  377. package/src/themes/amsterdam/overrides/_index.scss +0 -4
  378. package/test-env/components/bottom_bar/bottom_bar.js +20 -3
  379. package/test-env/components/breadcrumbs/breadcrumb.js +211 -0
  380. package/test-env/components/breadcrumbs/breadcrumb.styles.js +68 -0
  381. package/test-env/components/breadcrumbs/breadcrumbs.js +122 -174
  382. package/test-env/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  383. package/test-env/components/collapsible_nav/collapsible_nav.js +2 -2
  384. package/test-env/components/control_bar/control_bar.js +13 -0
  385. package/test-env/components/datagrid/body/data_grid_body.js +12 -2
  386. package/test-env/components/datagrid/body/data_grid_cell.js +31 -3
  387. package/test-env/components/datagrid/body/header/data_grid_header_row.js +1 -1
  388. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  389. package/test-env/components/datagrid/data_grid.js +10 -2
  390. package/test-env/components/datagrid/utils/row_heights.js +33 -4
  391. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  392. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  393. package/test-env/components/description_list/description_list.js +25 -30
  394. package/test-env/components/description_list/description_list.styles.js +36 -0
  395. package/test-env/components/description_list/description_list_context.js +24 -0
  396. package/test-env/components/description_list/description_list_description.js +43 -2
  397. package/test-env/components/description_list/description_list_description.styles.js +51 -0
  398. package/test-env/components/description_list/description_list_title.js +43 -2
  399. package/test-env/components/description_list/description_list_title.styles.js +50 -0
  400. package/test-env/components/description_list/description_list_types.js +20 -0
  401. package/test-env/components/header/header.js +3 -27
  402. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  403. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  404. package/test-env/components/header/header_links/header_links.js +10 -9
  405. package/test-env/components/icon/assets/tokenStruct.js +1 -1
  406. package/test-env/components/index.js +13 -0
  407. package/test-env/components/observer/resize_observer/resize_observer.js +43 -126
  408. package/test-env/components/page/_bottom_border.js +5 -0
  409. package/test-env/components/page/_restrict_width.js +38 -7
  410. package/test-env/components/page/index.js +28 -12
  411. package/test-env/components/page/page.js +22 -34
  412. package/test-env/components/page/page.styles.js +46 -0
  413. package/test-env/components/page/page_body/page_body.js +20 -29
  414. package/test-env/components/page/page_body/page_body.styles.js +27 -0
  415. package/test-env/components/page/page_content/index.js +8 -8
  416. package/test-env/components/page/page_content/page_content.js +8 -4
  417. package/test-env/components/page/page_content/page_content_body.js +13 -9
  418. package/test-env/components/page/page_content/page_content_header.js +8 -4
  419. package/test-env/components/page/page_content/page_content_header_section.js +8 -4
  420. package/test-env/components/page/page_header/page_header.js +31 -174
  421. package/test-env/components/page/page_header/page_header.styles.js +27 -0
  422. package/test-env/components/page/page_header/page_header_content.js +112 -18
  423. package/test-env/components/page/page_header/page_header_content.styles.js +87 -0
  424. package/test-env/components/page/page_section/index.js +13 -0
  425. package/test-env/components/page/page_section/page_section.js +110 -0
  426. package/test-env/components/page/page_section/page_section.styles.js +51 -0
  427. package/test-env/components/page/page_side_bar/index.js +2 -2
  428. package/test-env/components/page/page_side_bar/page_side_bar.js +9 -5
  429. package/test-env/components/page/page_sidebar/index.js +13 -0
  430. package/test-env/components/page/page_sidebar/page_sidebar.js +113 -0
  431. package/test-env/components/page/page_sidebar/page_sidebar.styles.js +32 -0
  432. package/test-env/components/page/page_template.js +76 -177
  433. package/test-env/components/page_template/bottom_bar/page_bottom_bar.js +102 -0
  434. package/test-env/components/page_template/empty_prompt/page_empty_prompt.js +114 -0
  435. package/test-env/components/page_template/index.js +13 -0
  436. package/test-env/components/page_template/inner/index.js +13 -0
  437. package/test-env/components/page_template/inner/page_inner.js +57 -0
  438. package/test-env/components/page_template/inner/page_inner.styles.js +35 -0
  439. package/test-env/components/page_template/outer/index.js +13 -0
  440. package/test-env/components/page_template/outer/page_outer.js +65 -0
  441. package/test-env/components/page_template/outer/page_outer.styles.js +51 -0
  442. package/test-env/components/page_template/page_template.js +387 -0
  443. package/test-env/components/pagination/pagination.js +1 -1
  444. package/test-env/components/panel/split_panel/split_panel.js +3 -3
  445. package/test-env/components/provider/provider.js +1 -1
  446. package/test-env/components/responsive/hide_for.js +5 -34
  447. package/test-env/components/responsive/show_for.js +5 -34
  448. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  449. package/test-env/components/side_nav/side_nav.js +1 -1
  450. package/test-env/components/table/table_row_cell.js +1 -3
  451. package/test-env/components/toast/global_toast_list.js +206 -220
  452. package/test-env/components/toast/global_toast_list.styles.js +47 -0
  453. package/test-env/components/toast/global_toast_list_item.js +14 -7
  454. package/test-env/components/toast/toast.js +27 -25
  455. package/test-env/components/toast/toast.styles.js +66 -0
  456. package/test-env/components/token/index.js +5 -3
  457. package/test-env/components/token/token.js +51 -120
  458. package/test-env/components/token/token.styles.js +91 -0
  459. package/test-env/components/token/token_map.js +6 -9
  460. package/test-env/components/token/token_types.js +22 -0
  461. package/test-env/global_styling/functions/logicals.js +1 -1
  462. package/test-env/global_styling/mixins/_helpers.js +27 -9
  463. package/test-env/global_styling/reset/global_styles.js +1 -1
  464. package/{lib/services → test-env/services/breakpoint}/breakpoint.js +5 -9
  465. package/test-env/services/breakpoint/currentEuiBreakpoint.js +37 -0
  466. package/test-env/services/breakpoint/index.js +44 -0
  467. package/test-env/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  468. package/test-env/services/hooks/index.js +0 -13
  469. package/test-env/services/index.js +28 -0
  470. package/test-env/test/rtl/component_helpers.js +69 -3
  471. package/lib/services/hooks/useIsWithinBreakpoints.js +0 -57
  472. package/optimize/es/services/hooks/useIsWithinBreakpoints.js +0 -46
  473. package/optimize/lib/services/hooks/useIsWithinBreakpoints.js +0 -57
  474. package/src/components/breadcrumbs/_breadcrumbs.scss +0 -79
  475. package/src/components/breadcrumbs/_index.scss +0 -2
  476. package/src/components/breadcrumbs/_variables.scss +0 -2
  477. package/src/components/description_list/_description_list.scss +0 -211
  478. package/src/components/description_list/_index.scss +0 -1
  479. package/src/components/header/header_breadcrumbs/_header_breadcrumbs.scss +0 -8
  480. package/src/components/header/header_breadcrumbs/_index.scss +0 -1
  481. package/src/components/page/_mixins.scss +0 -12
  482. package/src/components/page/_page.scss +0 -41
  483. package/src/components/page/page_body/_index.scss +0 -1
  484. package/src/components/page/page_body/_page_body.scss +0 -45
  485. package/src/components/page/page_header/_index.scss +0 -3
  486. package/src/components/page/page_header/_page_header.scss +0 -78
  487. package/src/components/page/page_header/_page_header_content.scss +0 -15
  488. package/src/components/page/page_header/_page_header_section.scss +0 -26
  489. package/src/components/portal/_index.scss +0 -1
  490. package/src/components/portal/_portal.scss +0 -6
  491. package/src/components/toast/_global_toast_list.scss +0 -90
  492. package/src/components/toast/_index.scss +0 -4
  493. package/src/components/toast/_toast.scss +0 -103
  494. package/src/components/token/_index.scss +0 -2
  495. package/src/components/token/_token.scss +0 -85
  496. package/src/components/token/_variables.scss +0 -13
  497. package/src/themes/amsterdam/overrides/_header_breadcrumbs.scss +0 -71
  498. package/src/themes/amsterdam/overrides/_toast.scss +0 -21
  499. package/src/themes/amsterdam/overrides/_token.scss +0 -4
  500. package/test-env/services/hooks/useIsWithinBreakpoints.js +0 -57
@@ -263,7 +263,7 @@ EuiCollapsibleNav.propTypes = {
263
263
  /**
264
264
  * Named breakpoint or pixel value for customizing the minimum window width to enable docking
265
265
  */
266
- pushMinBreakpoint: _propTypes.default.oneOfType([_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired, _propTypes.default.number.isRequired]),
266
+ pushMinBreakpoint: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.number.isRequired]),
267
267
  style: _propTypes.default.any,
268
268
 
269
269
  /**
@@ -287,7 +287,7 @@ EuiCollapsibleNav.propTypes = {
287
287
  * Keeps navigation flyout visible and push `<body>` content via padding
288
288
  */
289
289
  isDocked: _propTypes.default.bool,
290
- dockedBreakpoint: _propTypes.default.oneOfType([_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired, _propTypes.default.number.isRequired]),
290
+ dockedBreakpoint: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.number.isRequired]),
291
291
 
292
292
  /**
293
293
  * Button for controlling visible state of the nav
@@ -371,6 +371,7 @@ EuiControlBar.propTypes = {
371
371
  "aria-label": _propTypes.default.string,
372
372
  "data-test-subj": _propTypes.default.string,
373
373
  href: _propTypes.default.string,
374
+ rel: _propTypes.default.string,
374
375
  onClick: _propTypes.default.func,
375
376
 
376
377
  /**
@@ -393,6 +394,18 @@ EuiControlBar.propTypes = {
393
394
  */
394
395
  "aria-current": _propTypes.default.any
395
396
  }).isRequired),
397
+
398
+ /**
399
+ * Determines breadcrumbs appearance, with `page` being the default styling.
400
+ * Application breadcrumbs should only be once per page, in (e.g.) EuiHeader
401
+ */
402
+ type: _propTypes.default.oneOf(["page", "application"]),
403
+
404
+ /**
405
+ * Whether the last breadcrumb should visually (and accessibly, to screen readers)
406
+ * be highlighted as the current page. Defaults to true.
407
+ */
408
+ lastBreadcrumbIsCurrentPage: _propTypes.default.bool,
396
409
  text: _propTypes.default.node,
397
410
  iconType: _propTypes.default.string
398
411
  }).isRequired).isRequired,
@@ -361,6 +361,8 @@ var EuiDataGridBody = function EuiDataGridBody(props) {
361
361
 
362
362
  var rowHeightUtils = (0, _row_heights.useRowHeightUtils)({
363
363
  gridRef: gridRef,
364
+ outerGridElementRef: outerGridRef,
365
+ gridItemsRenderedRef: gridItemsRendered,
364
366
  gridStyles: gridStyles,
365
367
  columns: columns,
366
368
  rowHeightsOptions: rowHeightsOptions
@@ -947,7 +949,7 @@ EuiDataGridBody.propTypes = {
947
949
  /**
948
950
  * The color associated with this data type; it's used to color the icon token
949
951
  */
950
- color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.oneOf(["euiColorVis0", "euiColorVis1", "euiColorVis2", "euiColorVis3", "euiColorVis4", "euiColorVis5", "euiColorVis6", "euiColorVis7", "euiColorVis8", "euiColorVis9", "gray"]).isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
952
+ color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
951
953
 
952
954
  /**
953
955
  * Text for how to represent an ascending sort of this data type, e.g. 'A -> Z'
@@ -1045,7 +1047,15 @@ EuiDataGridBody.propTypes = {
1045
1047
  * Optional callback returning the current `rowHeightsOptions` when changes occur from user input (e.g. toolbar display controls).
1046
1048
  * Can be used for, e.g. storing user `rowHeightsOptions` in a local storage object.
1047
1049
  */
1048
- onChange: _propTypes.default.func
1050
+ onChange: _propTypes.default.func,
1051
+
1052
+ /**
1053
+ * Optional indicator of the row that should be used as an anchor for vertical layout shift compensation.
1054
+ * When set to 'start' or 'center', the topmost or middle visible row will try
1055
+ * to compensate for changes in their top offsets by adjusting the grid's scroll
1056
+ * position.
1057
+ */
1058
+ scrollAnchorRow: _propTypes.default.oneOf(["start", "center", undefined])
1049
1059
  }),
1050
1060
  isFullScreen: _propTypes.default.bool.isRequired,
1051
1061
  gridStyles: _propTypes.default.shape({
@@ -558,7 +558,15 @@ EuiDataGridCellContent.propTypes = {
558
558
  * Optional callback returning the current `rowHeightsOptions` when changes occur from user input (e.g. toolbar display controls).
559
559
  * Can be used for, e.g. storing user `rowHeightsOptions` in a local storage object.
560
560
  */
561
- onChange: _propTypes.default.func
561
+ onChange: _propTypes.default.func,
562
+
563
+ /**
564
+ * Optional indicator of the row that should be used as an anchor for vertical layout shift compensation.
565
+ * When set to 'start' or 'center', the topmost or middle visible row will try
566
+ * to compensate for changes in their top offsets by adjusting the grid's scroll
567
+ * position.
568
+ */
569
+ scrollAnchorRow: _propTypes.default.oneOf(["start", "center", undefined])
562
570
  }),
563
571
  rowHeightUtils: _propTypes.default.any,
564
572
  pagination: _propTypes.default.shape({
@@ -904,7 +912,7 @@ var EuiDataGridCell = /*#__PURE__*/function (_Component) {
904
912
  }, {
905
913
  key: "componentDidUpdate",
906
914
  value: function componentDidUpdate(prevProps) {
907
- var _this$props$rowHeight, _prevProps$rowHeights;
915
+ var _this$props$rowHeight, _prevProps$rowHeights, _this$props$rowHeight2, _this$props$style, _prevProps$style;
908
916
 
909
917
  this.recalculateAutoHeight();
910
918
 
@@ -912,6 +920,18 @@ var EuiDataGridCell = /*#__PURE__*/function (_Component) {
912
920
  this.recalculateLineHeight();
913
921
  }
914
922
 
923
+ if ((_this$props$rowHeight2 = this.props.rowHeightsOptions) !== null && _this$props$rowHeight2 !== void 0 && _this$props$rowHeight2.scrollAnchorRow && this.props.colIndex === 0 && // once per row
924
+ this.props.columnId === prevProps.columnId && // if this is still the same column
925
+ this.props.rowIndex === prevProps.rowIndex && // if this is still the same row
926
+ ((_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
927
+ ) {
928
+ var _prevProps$style2, _this$props$style2, _this$props$rowHeight3, _this$props$rowHeight4;
929
+
930
+ var previousTop = parseFloat((_prevProps$style2 = prevProps.style) === null || _prevProps$style2 === void 0 ? void 0 : _prevProps$style2.top);
931
+ var currentTop = parseFloat((_this$props$style2 = this.props.style) === null || _this$props$style2 === void 0 ? void 0 : _this$props$style2.top);
932
+ (_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);
933
+ }
934
+
915
935
  if (this.props.popoverContext.popoverIsOpen !== prevProps.popoverContext.popoverIsOpen || this.props.popoverContext.cellLocation !== prevProps.popoverContext.cellLocation || this.props.renderCellPopover !== prevProps.renderCellPopover) {
916
936
  this.handleCellPopover();
917
937
  }
@@ -1555,7 +1575,15 @@ EuiDataGridCell.propTypes = {
1555
1575
  * Optional callback returning the current `rowHeightsOptions` when changes occur from user input (e.g. toolbar display controls).
1556
1576
  * Can be used for, e.g. storing user `rowHeightsOptions` in a local storage object.
1557
1577
  */
1558
- onChange: _propTypes.default.func
1578
+ onChange: _propTypes.default.func,
1579
+
1580
+ /**
1581
+ * Optional indicator of the row that should be used as an anchor for vertical layout shift compensation.
1582
+ * When set to 'start' or 'center', the topmost or middle visible row will try
1583
+ * to compensate for changes in their top offsets by adjusting the grid's scroll
1584
+ * position.
1585
+ */
1586
+ scrollAnchorRow: _propTypes.default.oneOf(["start", "center", undefined])
1559
1587
  }),
1560
1588
  rowHeightUtils: _propTypes.default.any,
1561
1589
  rowManager: _propTypes.default.shape({
@@ -571,7 +571,7 @@ EuiDataGridHeaderRow.propTypes = {
571
571
  /**
572
572
  * The color associated with this data type; it's used to color the icon token
573
573
  */
574
- color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.oneOf(["euiColorVis0", "euiColorVis1", "euiColorVis2", "euiColorVis3", "euiColorVis4", "euiColorVis5", "euiColorVis6", "euiColorVis7", "euiColorVis8", "euiColorVis9", "gray"]).isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
574
+ color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
575
575
 
576
576
  /**
577
577
  * Text for how to represent an ascending sort of this data type, e.g. 'A -> Z'
@@ -210,7 +210,7 @@ EuiDataGridColumnSortingDraggable.propTypes = {
210
210
  /**
211
211
  * The color associated with this data type; it's used to color the icon token
212
212
  */
213
- color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.oneOf(["euiColorVis0", "euiColorVis1", "euiColorVis2", "euiColorVis3", "euiColorVis4", "euiColorVis5", "euiColorVis6", "euiColorVis7", "euiColorVis8", "euiColorVis9", "gray"]).isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
213
+ color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
214
214
 
215
215
  /**
216
216
  * Text for how to represent an ascending sort of this data type, e.g. 'A -> Z'
@@ -932,7 +932,7 @@ EuiDataGrid.propTypes = {
932
932
  /**
933
933
  * The color associated with this data type; it's used to color the icon token
934
934
  */
935
- color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.oneOf(["euiColorVis0", "euiColorVis1", "euiColorVis2", "euiColorVis3", "euiColorVis4", "euiColorVis5", "euiColorVis6", "euiColorVis7", "euiColorVis8", "euiColorVis9", "gray"]).isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
935
+ color: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]).isRequired, _propTypes.default.string.isRequired]),
936
936
 
937
937
  /**
938
938
  * Text for how to represent an ascending sort of this data type, e.g. 'A -> Z'
@@ -1263,7 +1263,15 @@ EuiDataGrid.propTypes = {
1263
1263
  * Optional callback returning the current `rowHeightsOptions` when changes occur from user input (e.g. toolbar display controls).
1264
1264
  * Can be used for, e.g. storing user `rowHeightsOptions` in a local storage object.
1265
1265
  */
1266
- onChange: _propTypes.default.func
1266
+ onChange: _propTypes.default.func,
1267
+
1268
+ /**
1269
+ * Optional indicator of the row that should be used as an anchor for vertical layout shift compensation.
1270
+ * When set to 'start' or 'center', the topmost or middle visible row will try
1271
+ * to compensate for changes in their top offsets by adjusting the grid's scroll
1272
+ * position.
1273
+ */
1274
+ scrollAnchorRow: _propTypes.default.oneOf(["start", "center", undefined])
1267
1275
  })
1268
1276
  };
1269
1277
  EuiDataGrid.displayName = 'EuiDataGrid';
@@ -19,10 +19,10 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
19
19
 
20
20
  var _react = require("react");
21
21
 
22
- var _predicate = require("../../../services/predicate");
23
-
24
22
  var _services = require("../../../services");
25
23
 
24
+ var _predicate = require("../../../services/predicate");
25
+
26
26
  var _sorting = require("./sorting");
27
27
 
28
28
  /*
@@ -45,11 +45,13 @@ var DEFAULT_ROW_HEIGHT = 34;
45
45
  exports.DEFAULT_ROW_HEIGHT = DEFAULT_ROW_HEIGHT;
46
46
 
47
47
  var RowHeightUtils = /*#__PURE__*/function () {
48
- function RowHeightUtils(gridRef, rerenderGridBodyRef) {
48
+ function RowHeightUtils(gridRef, outerGridElementRef, gridItemsRenderedRef, rerenderGridBodyRef) {
49
49
  var _this = this;
50
50
 
51
51
  (0, _classCallCheck2.default)(this, RowHeightUtils);
52
52
  this.gridRef = gridRef;
53
+ this.outerGridElementRef = outerGridElementRef;
54
+ this.gridItemsRenderedRef = gridItemsRenderedRef;
53
55
  this.rerenderGridBodyRef = rerenderGridBodyRef;
54
56
  (0, _defineProperty2.default)(this, "styles", {
55
57
  paddingTop: 0,
@@ -240,6 +242,31 @@ var RowHeightUtils = /*#__PURE__*/function () {
240
242
  (_this$gridRef$current = this.gridRef.current) === null || _this$gridRef$current === void 0 ? void 0 : _this$gridRef$current.resetAfterRowIndex(this.lastUpdatedRow);
241
243
  this.lastUpdatedRow = Infinity;
242
244
  }
245
+ }, {
246
+ key: "compensateForLayoutShift",
247
+ value: function compensateForLayoutShift(rowIndex, verticalLayoutShift, anchorRow) {
248
+ var grid = this.gridRef.current;
249
+ var outerGridElement = this.outerGridElementRef.current;
250
+ var renderedItems = this.gridItemsRenderedRef.current;
251
+
252
+ if (grid == null || outerGridElement == null || renderedItems == null || anchorRow == null || !Number.isFinite(verticalLayoutShift)) {
253
+ return;
254
+ } // skip if the start row is the anchor row but it hasn't shifted
255
+
256
+
257
+ if (anchorRow === 'start' && renderedItems.visibleRowStartIndex !== rowIndex) {
258
+ return;
259
+ } // skip if the center row is the anchor row but it hasn't shifted
260
+
261
+
262
+ if (anchorRow === 'center' && Math.floor((renderedItems.visibleRowStopIndex - renderedItems.visibleRowStartIndex) / 2) !== rowIndex) {
263
+ return;
264
+ }
265
+
266
+ grid.scrollTo({
267
+ scrollTop: outerGridElement.scrollTop + verticalLayoutShift
268
+ });
269
+ }
243
270
  }]);
244
271
  return RowHeightUtils;
245
272
  }();
@@ -253,13 +280,15 @@ exports.RowHeightUtils = RowHeightUtils;
253
280
 
254
281
  var useRowHeightUtils = function useRowHeightUtils(_ref2) {
255
282
  var gridRef = _ref2.gridRef,
283
+ outerGridElementRef = _ref2.outerGridElementRef,
284
+ gridItemsRenderedRef = _ref2.gridItemsRenderedRef,
256
285
  gridStyles = _ref2.gridStyles,
257
286
  columns = _ref2.columns,
258
287
  rowHeightsOptions = _ref2.rowHeightsOptions;
259
288
  var forceRenderRef = (0, _services.useLatest)((0, _services.useForceRender)());
260
289
 
261
290
  var _useState = (0, _react.useState)(function () {
262
- return new RowHeightUtils(gridRef, forceRenderRef);
291
+ return new RowHeightUtils(gridRef, outerGridElementRef, gridItemsRenderedRef, forceRenderRef);
263
292
  }),
264
293
  _useState2 = (0, _slicedToArray2.default)(_useState, 1),
265
294
  rowHeightUtils = _useState2[0]; // Forces a rerender whenever the row heights change, as this can cause the
@@ -669,7 +669,7 @@ EuiSuperDatePickerInternal.propTypes = {
669
669
  * Forces state to be `iconOnly` when within provided breakpoints.
670
670
  * Remove completely with `false` or provide your own list of breakpoints.
671
671
  */
672
- responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired])
672
+ responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired])
673
673
  }),
674
674
  timeOptions: _propTypes.default.shape({
675
675
  timeTenseOptions: _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired,
@@ -808,6 +808,6 @@ EuiSuperDatePicker.propTypes = {
808
808
  onMouseOut: _propTypes.default.func
809
809
  }),
810
810
  iconOnly: _propTypes.default.bool,
811
- responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired])
811
+ responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired])
812
812
  })
813
813
  };
@@ -285,5 +285,5 @@ EuiSuperUpdateButton.propTypes = {
285
285
  * Forces state to be `iconOnly` when within provided breakpoints.
286
286
  * Remove completely with `false` or provide your own list of breakpoints.
287
287
  */
288
- responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired])
288
+ responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired])
289
289
  };
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.TYPES = exports.TEXT_STYLES = exports.EuiDescriptionList = exports.ALIGNMENTS = void 0;
8
+ exports.EuiDescriptionList = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
@@ -21,31 +21,15 @@ var _description_list_title = require("./description_list_title");
21
21
 
22
22
  var _description_list_description = require("./description_list_description");
23
23
 
24
- var _common = require("../common");
24
+ var _services = require("../../services");
25
+
26
+ var _description_list = require("./description_list.styles");
27
+
28
+ var _description_list_context = require("./description_list_context");
25
29
 
26
30
  var _react2 = require("@emotion/react");
27
31
 
28
32
  var _excluded = ["align", "children", "className", "compressed", "descriptionProps", "listItems", "textStyle", "titleProps", "type"];
29
- var typesToClassNameMap = {
30
- row: 'euiDescriptionList--row',
31
- inline: 'euiDescriptionList--inline',
32
- column: 'euiDescriptionList--column',
33
- responsiveColumn: 'euiDescriptionList--responsiveColumn'
34
- };
35
- var TYPES = (0, _common.keysOf)(typesToClassNameMap);
36
- exports.TYPES = TYPES;
37
- var alignmentsToClassNameMap = {
38
- center: 'euiDescriptionList--center',
39
- left: ''
40
- };
41
- var ALIGNMENTS = (0, _common.keysOf)(alignmentsToClassNameMap);
42
- exports.ALIGNMENTS = ALIGNMENTS;
43
- var textStylesToClassNameMap = {
44
- normal: '',
45
- reverse: 'euiDescriptionList--reverse'
46
- };
47
- var TEXT_STYLES = (0, _common.keysOf)(textStylesToClassNameMap);
48
- exports.TEXT_STYLES = TEXT_STYLES;
49
33
 
50
34
  var EuiDescriptionList = function EuiDescriptionList(_ref) {
51
35
  var _ref$align = _ref.align,
@@ -62,9 +46,10 @@ var EuiDescriptionList = function EuiDescriptionList(_ref) {
62
46
  _ref$type = _ref.type,
63
47
  type = _ref$type === void 0 ? 'row' : _ref$type,
64
48
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
65
- var classes = (0, _classnames.default)('euiDescriptionList', type ? typesToClassNameMap[type] : undefined, align ? alignmentsToClassNameMap[align] : undefined, textStyle ? textStylesToClassNameMap[textStyle] : undefined, {
66
- 'euiDescriptionList--compressed': compressed
67
- }, className);
49
+ var euiTheme = (0, _services.useEuiTheme)();
50
+ var styles = (0, _description_list.euiDescriptionListStyles)(euiTheme);
51
+ var cssStyles = [styles.euiDescriptionList, styles[type], styles[align]];
52
+ var classes = (0, _classnames.default)('euiDescriptionList', className);
68
53
  var childrenOrListItems = null;
69
54
 
70
55
  if (listItems) {
@@ -79,9 +64,19 @@ var EuiDescriptionList = function EuiDescriptionList(_ref) {
79
64
  childrenOrListItems = children;
80
65
  }
81
66
 
82
- return (0, _react2.jsx)("dl", (0, _extends2.default)({
83
- className: classes
84
- }, rest), childrenOrListItems);
67
+ return (0, _react2.jsx)(_description_list_context.EuiDescriptionListContext.Provider, {
68
+ value: {
69
+ type: type,
70
+ compressed: compressed,
71
+ textStyle: textStyle,
72
+ align: align
73
+ }
74
+ }, (0, _react2.jsx)("dl", (0, _extends2.default)({
75
+ className: classes,
76
+ css: cssStyles
77
+ }, rest, {
78
+ "data-type": type
79
+ }), childrenOrListItems));
85
80
  };
86
81
 
87
82
  exports.EuiDescriptionList = EuiDescriptionList;
@@ -97,7 +92,7 @@ EuiDescriptionList.propTypes = {
97
92
  /**
98
93
  * Text alignment
99
94
  */
100
- align: _propTypes.default.oneOf(["center", "left"]),
95
+ align: _propTypes.default.any,
101
96
 
102
97
  /**
103
98
  * Smaller text and condensed spacing
@@ -113,7 +108,7 @@ EuiDescriptionList.propTypes = {
113
108
  /**
114
109
  * How each item should be laid out
115
110
  */
116
- type: _propTypes.default.oneOf(["row", "inline", "column", "responsiveColumn"]),
111
+ type: _propTypes.default.any,
117
112
 
118
113
  /**
119
114
  * Props object to be passed to `EuiDescriptionListTitle`
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDescriptionListStyles = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _global_styling = require("../../global_styling");
11
+
12
+ /*
13
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
14
+ * or more contributor license agreements. Licensed under the Elastic License
15
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
16
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
17
+ * Side Public License, v 1.
18
+ */
19
+ var euiDescriptionListStyles = function euiDescriptionListStyles(euiThemeContext) {
20
+ // Flex display for column and responsive column
21
+ var columnDisplay = "\n display: flex;\n align-items: baseline;\n flex-wrap: wrap; \n ";
22
+ return {
23
+ euiDescriptionList: /*#__PURE__*/(0, _react.css)(";label:euiDescriptionList;"),
24
+ // Types
25
+ row: /*#__PURE__*/(0, _react.css)(";label:row;"),
26
+ inline: /*#__PURE__*/(0, _react.css)(";label:inline;"),
27
+ column: /*#__PURE__*/(0, _react.css)(columnDisplay, ";;label:column;"),
28
+ // Responsive columns behave as a row on breakpoints xs-s
29
+ responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiBreakpoint)(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
30
+ // Alignment
31
+ center: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('center'), ";;label:center;"),
32
+ left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('left'), ";;label:left;")
33
+ };
34
+ };
35
+
36
+ exports.euiDescriptionListStyles = euiDescriptionListStyles;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.contextDefaults = exports.EuiDescriptionListContext = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ /*
11
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
12
+ * or more contributor license agreements. Licensed under the Elastic License
13
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
14
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
15
+ * Side Public License, v 1.
16
+ */
17
+ var contextDefaults = {
18
+ type: 'row',
19
+ textStyle: 'normal',
20
+ align: 'left'
21
+ };
22
+ exports.contextDefaults = contextDefaults;
23
+ var EuiDescriptionListContext = /*#__PURE__*/(0, _react.createContext)(contextDefaults);
24
+ exports.EuiDescriptionListContext = EuiDescriptionListContext;
@@ -2,6 +2,8 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
@@ -9,25 +11,64 @@ exports.EuiDescriptionListDescription = void 0;
9
11
 
10
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
13
 
14
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
+
12
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
17
 
14
- var _react = _interopRequireDefault(require("react"));
18
+ var _react = _interopRequireWildcard(require("react"));
15
19
 
16
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
21
 
18
22
  var _classnames = _interopRequireDefault(require("classnames"));
19
23
 
24
+ var _services = require("../../services");
25
+
26
+ var _description_list_description = require("./description_list_description.styles");
27
+
28
+ var _description_list_context = require("./description_list_context");
29
+
20
30
  var _react2 = require("@emotion/react");
21
31
 
22
32
  var _excluded = ["children", "className"];
23
33
 
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
+
24
38
  var EuiDescriptionListDescription = function EuiDescriptionListDescription(_ref) {
25
39
  var children = _ref.children,
26
40
  className = _ref.className,
27
41
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
42
+
43
+ var _useContext = (0, _react.useContext)(_description_list_context.EuiDescriptionListContext),
44
+ type = _useContext.type,
45
+ textStyle = _useContext.textStyle,
46
+ compressed = _useContext.compressed,
47
+ align = _useContext.align;
48
+
49
+ var theme = (0, _services.useEuiTheme)();
50
+ var styles = (0, _description_list_description.euiDescriptionListDescriptionStyles)(theme);
51
+ var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
52
+
53
+ switch (type) {
54
+ case 'inline':
55
+ conditionalStyles = compressed ? [styles.inlineStyles.compressed] : [styles.inlineStyles.normal];
56
+ break;
57
+
58
+ case 'responsiveColumn':
59
+ case 'column':
60
+ if (align === 'center') {
61
+ conditionalStyles.push(styles.left);
62
+ }
63
+
64
+ break;
65
+ }
66
+
67
+ var cssStyles = [styles.euiDescriptionList__description, styles[type]].concat((0, _toConsumableArray2.default)(conditionalStyles));
28
68
  var classes = (0, _classnames.default)('euiDescriptionList__description', className);
29
69
  return (0, _react2.jsx)("dd", (0, _extends2.default)({
30
- className: classes
70
+ className: classes,
71
+ css: cssStyles
31
72
  }, rest), children);
32
73
  };
33
74
 
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDescriptionListDescriptionStyles = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _global_styling = require("../../global_styling");
11
+
12
+ var _title = require("../title/title.styles");
13
+
14
+ 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)."; }
15
+
16
+ var _ref = process.env.NODE_ENV === "production" ? {
17
+ name: "1yn9gig-inline",
18
+ styles: "display:inline;label:inline;"
19
+ } : {
20
+ name: "1yn9gig-inline",
21
+ styles: "display:inline;label:inline;",
22
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
+ };
24
+
25
+ var euiDescriptionListDescriptionStyles = function euiDescriptionListDescriptionStyles(euiThemeContext) {
26
+ var euiTheme = euiThemeContext.euiTheme;
27
+ var columnDisplay = "\n ".concat((0, _global_styling.logicalCSS)('width', '50%'), " // Flex-basis doesn't work in IE with padding\n ").concat((0, _global_styling.logicalCSS)('padding-left', euiTheme.size.s), "\n &:not(:first-of-type) {\n ").concat((0, _global_styling.logicalCSS)('margin-top', euiTheme.size.base), "\n }\n ");
28
+ return {
29
+ euiDescriptionList__description: /*#__PURE__*/(0, _react.css)(";label:euiDescriptionList__description;"),
30
+ // Types
31
+ row: /*#__PURE__*/(0, _react.css)(";label:row;"),
32
+ column: /*#__PURE__*/(0, _react.css)(columnDisplay, ";;label:column;"),
33
+ responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{", (0, _global_styling.logicalCSS)('width', '100%'), " padding:0;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
34
+ inline: _ref,
35
+ // This nested block handles just the font styling based on compressed and reverse
36
+ fontStyles: {
37
+ normal: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";;label:normal;"),
38
+ reverse: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xs'), ";;label:reverse;"),
39
+ compressed: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxs'), ";;label:compressed;")
40
+ },
41
+ // Nested inline styles for type and font
42
+ inlineStyles: {
43
+ compressed: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 'xs'), ";;label:compressed;"),
44
+ normal: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";;label:normal;")
45
+ },
46
+ // Column types should align description text to the left when EuiDecriptionList is centered
47
+ left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('left'), ";;label:left;")
48
+ };
49
+ };
50
+
51
+ exports.euiDescriptionListDescriptionStyles = euiDescriptionListDescriptionStyles;