@elastic/eui 62.0.0 → 62.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) 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 +1 -783
  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 +1 -783
  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/breadcrumbs/breadcrumb.js +199 -0
  12. package/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  13. package/es/components/breadcrumbs/breadcrumbs.js +115 -187
  14. package/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  15. package/es/components/code/code_block.js +119 -107
  16. package/es/components/collapsible_nav/collapsible_nav.js +2 -2
  17. package/es/components/comment_list/comment_event.js +22 -28
  18. package/es/components/comment_list/comment_event.styles.js +15 -16
  19. package/es/components/control_bar/control_bar.js +13 -0
  20. package/es/components/datagrid/body/data_grid_body.js +1 -1
  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 +1 -1
  24. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  25. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  26. package/es/components/description_list/description_list.js +22 -26
  27. package/es/components/description_list/description_list.styles.js +25 -0
  28. package/es/components/description_list/description_list_context.js +14 -0
  29. package/es/components/description_list/description_list_description.js +43 -2
  30. package/es/components/description_list/description_list_description.styles.js +47 -0
  31. package/es/components/description_list/description_list_title.js +43 -2
  32. package/es/components/description_list/description_list_title.styles.js +37 -0
  33. package/es/components/description_list/description_list_types.js +10 -0
  34. package/es/components/filter_group/filter_button.js +3 -1
  35. package/es/components/header/header.js +1 -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 +9 -9
  39. package/es/components/icon/assets/tokenStruct.js +1 -1
  40. package/es/components/image/image_caption.js +2 -2
  41. package/es/components/image/image_wrapper.styles.js +1 -1
  42. package/es/components/page/page_header/page_header.js +1 -0
  43. package/es/components/page/page_header/page_header_content.js +2 -1
  44. package/es/components/page/page_template.js +1 -0
  45. package/es/components/pagination/pagination.js +1 -1
  46. package/es/components/panel/split_panel/split_panel.js +2 -2
  47. package/es/components/popover/wrapping_popover.js +45 -88
  48. package/es/components/portal/portal.js +38 -79
  49. package/es/components/provider/provider.js +2 -2
  50. package/es/components/responsive/hide_for.js +6 -38
  51. package/es/components/responsive/show_for.js +6 -38
  52. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +17 -36
  53. package/es/components/side_nav/side_nav.js +1 -1
  54. package/es/components/table/table_row_cell.js +1 -2
  55. package/es/components/toast/global_toast_list.js +208 -241
  56. package/es/components/toast/global_toast_list.styles.js +38 -0
  57. package/es/components/toast/global_toast_list_item.js +12 -7
  58. package/es/components/toast/toast.js +25 -25
  59. package/es/components/toast/toast.styles.js +55 -0
  60. package/es/components/token/index.js +2 -1
  61. package/es/components/token/token.js +48 -112
  62. package/es/components/token/token.styles.js +93 -0
  63. package/es/components/token/token_map.js +6 -9
  64. package/es/components/token/token_types.js +11 -0
  65. package/es/global_styling/reset/global_styles.js +1 -1
  66. package/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  67. package/es/services/breakpoint/currentEuiBreakpoint.js +64 -0
  68. package/es/services/breakpoint/index.js +10 -0
  69. package/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  70. package/es/services/hooks/index.js +0 -1
  71. package/es/services/index.js +1 -1
  72. package/es/test/rtl/component_helpers.d.ts +7 -0
  73. package/es/test/rtl/component_helpers.js +72 -0
  74. package/es/test/rtl/custom_render.d.ts +74 -0
  75. package/es/test/rtl/custom_render.js +52 -0
  76. package/es/test/rtl/data_test_subj_queries.d.ts +5 -0
  77. package/es/{services/hooks/useIsWithinBreakpoints.js → test/rtl/data_test_subj_queries.js} +26 -36
  78. package/es/test/rtl/index.d.ts +3 -0
  79. package/es/test/rtl/index.js +10 -0
  80. package/eui.d.ts +1834 -1565
  81. package/i18ntokens.json +36 -36
  82. package/lib/components/breadcrumbs/breadcrumb.js +225 -0
  83. package/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  84. package/lib/components/breadcrumbs/breadcrumbs.js +125 -188
  85. package/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  86. package/lib/components/code/code_block.js +118 -106
  87. package/lib/components/collapsible_nav/collapsible_nav.js +2 -2
  88. package/lib/components/comment_list/comment_event.js +29 -26
  89. package/lib/components/comment_list/comment_event.styles.js +15 -16
  90. package/lib/components/control_bar/control_bar.js +13 -0
  91. package/lib/components/datagrid/body/data_grid_body.js +1 -1
  92. package/lib/components/datagrid/body/header/data_grid_header_row.js +1 -1
  93. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  94. package/lib/components/datagrid/data_grid.js +1 -1
  95. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  96. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  97. package/lib/components/description_list/description_list.js +25 -31
  98. package/lib/components/description_list/description_list.styles.js +36 -0
  99. package/lib/components/description_list/description_list_context.js +24 -0
  100. package/lib/components/description_list/description_list_description.js +52 -2
  101. package/lib/components/description_list/description_list_description.styles.js +51 -0
  102. package/lib/components/description_list/description_list_title.js +52 -2
  103. package/lib/components/description_list/description_list_title.styles.js +50 -0
  104. package/lib/components/description_list/description_list_types.js +20 -0
  105. package/lib/components/filter_group/filter_button.js +3 -1
  106. package/lib/components/header/header.js +1 -27
  107. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  108. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  109. package/lib/components/header/header_links/header_links.js +8 -8
  110. package/lib/components/icon/assets/tokenStruct.js +1 -1
  111. package/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  112. package/lib/components/image/image_caption.js +2 -2
  113. package/lib/components/image/image_wrapper.styles.js +1 -1
  114. package/lib/components/page/page_header/page_header.js +1 -0
  115. package/lib/components/page/page_header/page_header_content.js +3 -2
  116. package/lib/components/page/page_template.js +1 -0
  117. package/lib/components/pagination/pagination.js +1 -1
  118. package/lib/components/panel/split_panel/split_panel.js +3 -3
  119. package/lib/components/popover/wrapping_popover.js +44 -85
  120. package/lib/components/portal/portal.js +39 -82
  121. package/lib/components/provider/provider.js +1 -1
  122. package/lib/components/responsive/hide_for.js +12 -44
  123. package/lib/components/responsive/show_for.js +12 -44
  124. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  125. package/lib/components/side_nav/side_nav.js +1 -1
  126. package/lib/components/table/table_row_cell.js +1 -3
  127. package/lib/components/toast/global_toast_list.js +209 -238
  128. package/lib/components/toast/global_toast_list.styles.js +45 -0
  129. package/lib/components/toast/global_toast_list_item.js +14 -7
  130. package/lib/components/toast/toast.js +27 -25
  131. package/lib/components/toast/toast.styles.js +66 -0
  132. package/lib/components/token/index.js +5 -3
  133. package/lib/components/token/token.js +50 -120
  134. package/lib/components/token/token.styles.js +101 -0
  135. package/lib/components/token/token_map.js +6 -9
  136. package/lib/components/token/token_types.js +22 -0
  137. package/lib/global_styling/reset/global_styles.js +1 -1
  138. package/{test-env/services → lib/services/breakpoint}/breakpoint.js +5 -9
  139. package/lib/services/breakpoint/currentEuiBreakpoint.js +80 -0
  140. package/lib/services/breakpoint/index.js +44 -0
  141. package/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  142. package/lib/services/hooks/index.js +0 -13
  143. package/lib/services/index.js +28 -0
  144. package/lib/test/rtl/component_helpers.d.ts +7 -0
  145. package/lib/test/rtl/component_helpers.js +77 -0
  146. package/lib/test/rtl/custom_render.d.ts +74 -0
  147. package/lib/test/rtl/custom_render.js +60 -0
  148. package/lib/test/rtl/data_test_subj_queries.d.ts +5 -0
  149. package/lib/{services/hooks/useIsWithinBreakpoints.js → test/rtl/data_test_subj_queries.js} +33 -38
  150. package/lib/test/rtl/index.d.ts +3 -0
  151. package/lib/test/rtl/index.js +81 -0
  152. package/optimize/es/components/breadcrumbs/breadcrumb.js +136 -0
  153. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +61 -0
  154. package/optimize/es/components/breadcrumbs/breadcrumbs.js +92 -165
  155. package/optimize/es/components/breadcrumbs/breadcrumbs.styles.js +30 -0
  156. package/optimize/es/components/code/code_block.js +106 -107
  157. package/optimize/es/components/comment_list/comment_event.js +22 -28
  158. package/optimize/es/components/comment_list/comment_event.styles.js +15 -16
  159. package/optimize/es/components/description_list/description_list.js +20 -24
  160. package/optimize/es/components/description_list/description_list.styles.js +25 -0
  161. package/optimize/es/components/description_list/description_list_context.js +14 -0
  162. package/optimize/es/components/description_list/description_list_description.js +32 -2
  163. package/optimize/es/components/description_list/description_list_description.styles.js +47 -0
  164. package/optimize/es/components/description_list/description_list_title.js +32 -2
  165. package/optimize/es/components/description_list/description_list_title.styles.js +37 -0
  166. package/optimize/es/components/description_list/description_list_types.js +10 -0
  167. package/optimize/es/components/filter_group/filter_button.js +3 -1
  168. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +8 -1
  169. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +15 -0
  170. package/optimize/es/components/header/header_links/header_links.js +8 -8
  171. package/optimize/es/components/icon/assets/tokenStruct.js +1 -1
  172. package/optimize/es/components/image/image_caption.js +2 -2
  173. package/optimize/es/components/image/image_wrapper.styles.js +1 -1
  174. package/optimize/es/components/page/page_header/page_header_content.js +1 -1
  175. package/optimize/es/components/panel/split_panel/split_panel.js +1 -1
  176. package/optimize/es/components/popover/wrapping_popover.js +38 -79
  177. package/optimize/es/components/portal/portal.js +34 -61
  178. package/optimize/es/components/provider/provider.js +2 -2
  179. package/optimize/es/components/responsive/hide_for.js +5 -27
  180. package/optimize/es/components/responsive/show_for.js +5 -27
  181. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -35
  182. package/optimize/es/components/table/table_row_cell.js +1 -2
  183. package/optimize/es/components/toast/global_toast_list.js +199 -230
  184. package/optimize/es/components/toast/global_toast_list.styles.js +38 -0
  185. package/optimize/es/components/toast/global_toast_list_item.js +11 -6
  186. package/optimize/es/components/toast/toast.js +24 -24
  187. package/optimize/es/components/toast/toast.styles.js +55 -0
  188. package/optimize/es/components/token/index.js +2 -1
  189. package/optimize/es/components/token/token.js +46 -69
  190. package/optimize/es/components/token/token.styles.js +83 -0
  191. package/optimize/es/components/token/token_map.js +6 -9
  192. package/optimize/es/components/token/token_types.js +11 -0
  193. package/optimize/es/global_styling/reset/global_styles.js +1 -1
  194. package/optimize/es/services/{breakpoint.js → breakpoint/breakpoint.js} +4 -9
  195. package/optimize/es/services/breakpoint/currentEuiBreakpoint.js +53 -0
  196. package/optimize/es/services/breakpoint/index.js +10 -0
  197. package/optimize/es/services/breakpoint/useIsWithinBreakpoints.js +24 -0
  198. package/optimize/es/services/hooks/index.js +0 -1
  199. package/optimize/es/services/index.js +1 -1
  200. package/optimize/es/test/rtl/component_helpers.d.ts +7 -0
  201. package/optimize/es/test/rtl/component_helpers.js +71 -0
  202. package/optimize/es/test/rtl/custom_render.d.ts +74 -0
  203. package/optimize/es/test/rtl/custom_render.js +48 -0
  204. package/optimize/es/test/rtl/data_test_subj_queries.d.ts +5 -0
  205. package/optimize/es/test/rtl/data_test_subj_queries.js +36 -0
  206. package/optimize/es/test/rtl/index.d.ts +3 -0
  207. package/optimize/es/test/rtl/index.js +10 -0
  208. package/optimize/lib/components/breadcrumbs/breadcrumb.js +162 -0
  209. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +68 -0
  210. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +99 -164
  211. package/optimize/lib/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  212. package/optimize/lib/components/code/code_block.js +105 -106
  213. package/optimize/lib/components/comment_list/comment_event.js +22 -26
  214. package/optimize/lib/components/comment_list/comment_event.styles.js +15 -16
  215. package/optimize/lib/components/description_list/description_list.js +23 -28
  216. package/optimize/lib/components/description_list/description_list.styles.js +36 -0
  217. package/optimize/lib/components/description_list/description_list_context.js +24 -0
  218. package/optimize/lib/components/description_list/description_list_description.js +43 -2
  219. package/optimize/lib/components/description_list/description_list_description.styles.js +51 -0
  220. package/optimize/lib/components/description_list/description_list_title.js +43 -2
  221. package/optimize/lib/components/description_list/description_list_title.styles.js +50 -0
  222. package/optimize/lib/components/description_list/description_list_types.js +20 -0
  223. package/optimize/lib/components/filter_group/filter_button.js +3 -1
  224. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +10 -1
  225. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  226. package/optimize/lib/components/header/header_links/header_links.js +7 -7
  227. package/optimize/lib/components/icon/assets/tokenStruct.js +1 -1
  228. package/optimize/lib/components/icon/svgs/tokens/tokenStruct.svg +1 -1
  229. package/optimize/lib/components/image/image_caption.js +2 -2
  230. package/optimize/lib/components/image/image_wrapper.styles.js +1 -1
  231. package/optimize/lib/components/page/page_header/page_header_content.js +2 -2
  232. package/optimize/lib/components/panel/split_panel/split_panel.js +2 -2
  233. package/optimize/lib/components/popover/wrapping_popover.js +38 -78
  234. package/optimize/lib/components/portal/portal.js +45 -61
  235. package/optimize/lib/components/provider/provider.js +1 -1
  236. package/optimize/lib/components/responsive/hide_for.js +4 -33
  237. package/optimize/lib/components/responsive/show_for.js +4 -33
  238. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +14 -34
  239. package/optimize/lib/components/table/table_row_cell.js +1 -3
  240. package/optimize/lib/components/toast/global_toast_list.js +206 -220
  241. package/optimize/lib/components/toast/global_toast_list.styles.js +47 -0
  242. package/optimize/lib/components/toast/global_toast_list_item.js +14 -7
  243. package/optimize/lib/components/toast/toast.js +26 -24
  244. package/optimize/lib/components/toast/toast.styles.js +66 -0
  245. package/optimize/lib/components/token/index.js +5 -3
  246. package/optimize/lib/components/token/token.js +50 -76
  247. package/optimize/lib/components/token/token.styles.js +91 -0
  248. package/optimize/lib/components/token/token_map.js +6 -9
  249. package/optimize/lib/components/token/token_types.js +22 -0
  250. package/optimize/lib/global_styling/reset/global_styles.js +1 -1
  251. package/optimize/lib/services/{breakpoint.js → breakpoint/breakpoint.js} +5 -9
  252. package/optimize/lib/services/breakpoint/currentEuiBreakpoint.js +81 -0
  253. package/optimize/lib/services/breakpoint/index.js +44 -0
  254. package/optimize/lib/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  255. package/optimize/lib/services/hooks/index.js +0 -13
  256. package/optimize/lib/services/index.js +28 -0
  257. package/optimize/lib/test/rtl/component_helpers.d.ts +7 -0
  258. package/optimize/lib/test/rtl/component_helpers.js +87 -0
  259. package/optimize/lib/test/rtl/custom_render.d.ts +74 -0
  260. package/optimize/lib/test/rtl/custom_render.js +59 -0
  261. package/optimize/lib/test/rtl/data_test_subj_queries.d.ts +5 -0
  262. package/optimize/lib/test/rtl/data_test_subj_queries.js +51 -0
  263. package/optimize/lib/test/rtl/index.d.ts +3 -0
  264. package/optimize/lib/test/rtl/index.js +81 -0
  265. package/package.json +8 -2
  266. package/src/components/control_bar/_control_bar.scss +1 -1
  267. package/src/components/header/_index.scss +0 -1
  268. package/src/components/index.scss +0 -5
  269. package/src/themes/amsterdam/overrides/_breadcrumbs.scss +0 -12
  270. package/src/themes/amsterdam/overrides/_index.scss +0 -4
  271. package/test-env/components/breadcrumbs/breadcrumb.js +211 -0
  272. package/test-env/components/breadcrumbs/breadcrumb.styles.js +68 -0
  273. package/test-env/components/breadcrumbs/breadcrumbs.js +122 -174
  274. package/test-env/components/breadcrumbs/breadcrumbs.styles.js +33 -0
  275. package/test-env/components/collapsible_nav/collapsible_nav.js +2 -2
  276. package/test-env/components/comment_list/comment_event.js +22 -26
  277. package/test-env/components/comment_list/comment_event.styles.js +15 -16
  278. package/test-env/components/control_bar/control_bar.js +13 -0
  279. package/test-env/components/datagrid/body/data_grid_body.js +1 -1
  280. package/test-env/components/datagrid/body/header/data_grid_header_row.js +1 -1
  281. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  282. package/test-env/components/datagrid/data_grid.js +1 -1
  283. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  284. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  285. package/test-env/components/description_list/description_list.js +25 -30
  286. package/test-env/components/description_list/description_list.styles.js +36 -0
  287. package/test-env/components/description_list/description_list_context.js +24 -0
  288. package/test-env/components/description_list/description_list_description.js +43 -2
  289. package/test-env/components/description_list/description_list_description.styles.js +51 -0
  290. package/test-env/components/description_list/description_list_title.js +43 -2
  291. package/test-env/components/description_list/description_list_title.styles.js +50 -0
  292. package/test-env/components/description_list/description_list_types.js +20 -0
  293. package/test-env/components/filter_group/filter_button.js +3 -1
  294. package/test-env/components/header/header.js +1 -27
  295. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +24 -2
  296. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.styles.js +26 -0
  297. package/test-env/components/header/header_links/header_links.js +8 -8
  298. package/test-env/components/icon/assets/tokenStruct.js +1 -1
  299. package/test-env/components/image/image_caption.js +2 -2
  300. package/test-env/components/image/image_wrapper.styles.js +1 -1
  301. package/test-env/components/page/page_header/page_header.js +1 -0
  302. package/test-env/components/page/page_header/page_header_content.js +3 -2
  303. package/test-env/components/page/page_template.js +1 -0
  304. package/test-env/components/pagination/pagination.js +1 -1
  305. package/test-env/components/panel/split_panel/split_panel.js +3 -3
  306. package/test-env/components/popover/wrapping_popover.js +38 -78
  307. package/test-env/components/portal/portal.js +46 -75
  308. package/test-env/components/provider/provider.js +1 -1
  309. package/test-env/components/responsive/hide_for.js +5 -34
  310. package/test-env/components/responsive/show_for.js +5 -34
  311. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +15 -35
  312. package/test-env/components/side_nav/side_nav.js +1 -1
  313. package/test-env/components/table/table_row_cell.js +1 -3
  314. package/test-env/components/toast/global_toast_list.js +206 -220
  315. package/test-env/components/toast/global_toast_list.styles.js +47 -0
  316. package/test-env/components/toast/global_toast_list_item.js +14 -7
  317. package/test-env/components/toast/toast.js +27 -25
  318. package/test-env/components/toast/toast.styles.js +66 -0
  319. package/test-env/components/token/index.js +5 -3
  320. package/test-env/components/token/token.js +51 -120
  321. package/test-env/components/token/token.styles.js +91 -0
  322. package/test-env/components/token/token_map.js +6 -9
  323. package/test-env/components/token/token_types.js +22 -0
  324. package/test-env/global_styling/reset/global_styles.js +1 -1
  325. package/{lib/services → test-env/services/breakpoint}/breakpoint.js +5 -9
  326. package/test-env/services/breakpoint/currentEuiBreakpoint.js +37 -0
  327. package/test-env/services/breakpoint/index.js +44 -0
  328. package/test-env/services/breakpoint/useIsWithinBreakpoints.js +34 -0
  329. package/test-env/services/hooks/index.js +0 -13
  330. package/test-env/services/index.js +28 -0
  331. package/test-env/test/rtl/component_helpers.js +87 -0
  332. package/test-env/test/rtl/custom_render.js +59 -0
  333. package/test-env/test/rtl/data_test_subj_queries.js +51 -0
  334. package/test-env/test/rtl/index.js +81 -0
  335. package/optimize/es/services/hooks/useIsWithinBreakpoints.js +0 -46
  336. package/optimize/lib/services/hooks/useIsWithinBreakpoints.js +0 -57
  337. package/src/components/breadcrumbs/_breadcrumbs.scss +0 -79
  338. package/src/components/breadcrumbs/_index.scss +0 -2
  339. package/src/components/breadcrumbs/_variables.scss +0 -2
  340. package/src/components/description_list/_description_list.scss +0 -211
  341. package/src/components/description_list/_index.scss +0 -1
  342. package/src/components/header/header_breadcrumbs/_header_breadcrumbs.scss +0 -8
  343. package/src/components/header/header_breadcrumbs/_index.scss +0 -1
  344. package/src/components/portal/_index.scss +0 -1
  345. package/src/components/portal/_portal.scss +0 -6
  346. package/src/components/toast/_global_toast_list.scss +0 -90
  347. package/src/components/toast/_index.scss +0 -4
  348. package/src/components/toast/_toast.scss +0 -103
  349. package/src/components/token/_index.scss +0 -2
  350. package/src/components/token/_token.scss +0 -85
  351. package/src/components/token/_variables.scss +0 -13
  352. package/src/themes/amsterdam/overrides/_header_breadcrumbs.scss +0 -71
  353. package/src/themes/amsterdam/overrides/_toast.scss +0 -21
  354. package/src/themes/amsterdam/overrides/_token.scss +0 -4
  355. package/test-env/services/hooks/useIsWithinBreakpoints.js +0 -57
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDescriptionListTitleStyles = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _global_styling = require("../../global_styling");
11
+
12
+ var _services = require("../../services");
13
+
14
+ var _title = require("../title/title.styles");
15
+
16
+ /*
17
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
18
+ * or more contributor license agreements. Licensed under the Elastic License
19
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
20
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
21
+ * Side Public License, v 1.
22
+ */
23
+ var euiDescriptionListTitleStyles = function euiDescriptionListTitleStyles(euiThemeContext) {
24
+ var euiTheme = euiThemeContext.euiTheme,
25
+ colorMode = euiThemeContext.colorMode;
26
+ 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-right', euiTheme.size.s), "\n ");
27
+ return {
28
+ euiDescriptionList__title: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiTextBreakWord)(), "&:not(:first-of-type){", (0, _global_styling.logicalCSS)('margin-top', euiTheme.size.base), ";};label:euiDescriptionList__title;"),
29
+ // Types
30
+ row: /*#__PURE__*/(0, _react.css)(";label:row;"),
31
+ column: /*#__PURE__*/(0, _react.css)(columnDisplay, ";;label:column;"),
32
+ 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;"),
33
+ inline: /*#__PURE__*/(0, _react.css)("display:inline;border-radius:", euiTheme.border.radius.small, ";font-weight:", euiTheme.font.weight.medium, ";background-color:", colorMode === 'DARK' ? (0, _services.tint)(euiTheme.colors.lightestShade, 0.5) : euiTheme.colors.lightestShade, ";", (0, _global_styling.logicalCSS)('margin-vertical', '0'), " ", (0, _global_styling.logicalCSS)('margin-horizontal', euiTheme.size.xs), "&:first-of-type{", (0, _global_styling.logicalCSS)('margin-left', '0'), ";};label:inline;"),
34
+ // This nested block handles just the font styling based on compressed and reverse
35
+ fontStyles: {
36
+ normal: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xs'), ";;label:normal;"),
37
+ reverse: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";;label:reverse;"),
38
+ compressed: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxs'), ";;label:compressed;")
39
+ },
40
+ // Inline types
41
+ inlineStyles: {
42
+ normal: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";", (0, _global_styling.logicalCSS)('padding-vertical', '1px'), " ", (0, _global_styling.logicalCSS)('padding-horizontal', euiTheme.size.xs), ";;label:normal;"),
43
+ compressed: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiFontSize)(euiThemeContext, 'xs'), ";", (0, _global_styling.logicalCSS)('padding-vertical', '0'), " ", (0, _global_styling.logicalCSS)('padding-horizontal', euiTheme.size.xs), ";;label:compressed;")
44
+ },
45
+ // Alignment
46
+ right: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('right'), ";;label:right;")
47
+ };
48
+ };
49
+
50
+ exports.euiDescriptionListTitleStyles = euiDescriptionListTitleStyles;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TYPES = exports.TEXT_STYLES = exports.ALIGNMENTS = void 0;
7
+
8
+ /*
9
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
10
+ * or more contributor license agreements. Licensed under the Elastic License
11
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
12
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
13
+ * Side Public License, v 1.
14
+ */
15
+ var TYPES = ['row', 'inline', 'column', 'responsiveColumn'];
16
+ exports.TYPES = TYPES;
17
+ var ALIGNMENTS = ['center', 'left'];
18
+ exports.ALIGNMENTS = ALIGNMENTS;
19
+ var TEXT_STYLES = ['normal', 'reverse'];
20
+ exports.TEXT_STYLES = TEXT_STYLES;
@@ -88,7 +88,9 @@ var EuiFilterButton = function EuiFilterButton(_ref) {
88
88
  var badgeContent = showBadge && (0, _react2.jsx)(_notification_badge.EuiNotificationBadge, {
89
89
  className: "euiFilterButton__notification",
90
90
  "aria-label": hasActiveFilters ? activeBadgeLabel : availableBadgeLabel,
91
- color: isDisabled || !hasActiveFilters ? 'subdued' : 'accent'
91
+ color: isDisabled || !hasActiveFilters ? 'subdued' : 'accent',
92
+ role: "marquee" // https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/marquee_role
93
+
92
94
  }, badgeCount);
93
95
  var dataText;
94
96
 
@@ -132,33 +132,7 @@ EuiHeader.propTypes = {
132
132
  * Breadcrumbs in the header cannot be wrapped in a #EuiHeaderSection in order for truncation to work.
133
133
  * Simply pass the array of EuiBreadcrumb objects
134
134
  */
135
- breadcrumbs: _propTypes.default.arrayOf(_propTypes.default.shape({
136
- className: _propTypes.default.string,
137
- "aria-label": _propTypes.default.string,
138
- "data-test-subj": _propTypes.default.string,
139
- href: _propTypes.default.string,
140
- onClick: _propTypes.default.func,
141
-
142
- /**
143
- * Visible label of the breadcrumb
144
- */
145
- text: _propTypes.default.node.isRequired,
146
-
147
- /**
148
- * Force a max-width on the breadcrumb text
149
- */
150
- truncate: _propTypes.default.bool,
151
-
152
- /**
153
- * Accepts any EuiLink `color` when rendered as one (has `href` or `onClick`)
154
- */
155
- color: _propTypes.default.any,
156
-
157
- /**
158
- * Override the existing `aria-current` which defaults to `page` for the last breadcrumb
159
- */
160
- "aria-current": _propTypes.default.any
161
- }).isRequired),
135
+ breadcrumbs: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
162
136
 
163
137
  /**
164
138
  * Other props to pass to #EuiHeaderBreadcrumbs
@@ -19,6 +19,10 @@ var _classnames = _interopRequireDefault(require("classnames"));
19
19
 
20
20
  var _breadcrumbs = require("../../breadcrumbs");
21
21
 
22
+ var _header_breadcrumbs = require("./header_breadcrumbs.styles");
23
+
24
+ var _services = require("../../../services");
25
+
22
26
  var _react2 = require("@emotion/react");
23
27
 
24
28
  var _excluded = ["className", "breadcrumbs"];
@@ -28,11 +32,16 @@ var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
28
32
  breadcrumbs = _ref.breadcrumbs,
29
33
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
30
34
  var classes = (0, _classnames.default)('euiHeaderBreadcrumbs', className);
35
+ var euiTheme = (0, _services.useEuiTheme)();
36
+ var styles = (0, _header_breadcrumbs.euiHeaderBreadcrumbsStyles)(euiTheme);
37
+ var cssHeaderBreadcrumbStyles = [styles.euiHeaderBreadcrumbs];
31
38
  return (0, _react2.jsx)(_breadcrumbs.EuiBreadcrumbs, (0, _extends2.default)({
32
39
  max: 4,
33
40
  truncate: true,
34
41
  breadcrumbs: breadcrumbs,
35
- className: classes
42
+ className: classes,
43
+ css: cssHeaderBreadcrumbStyles,
44
+ type: "application"
36
45
  }, rest));
37
46
  };
38
47
 
@@ -74,6 +83,7 @@ EuiHeaderBreadcrumbs.propTypes = {
74
83
  "aria-label": _propTypes.default.string,
75
84
  "data-test-subj": _propTypes.default.string,
76
85
  href: _propTypes.default.string,
86
+ rel: _propTypes.default.string,
77
87
  onClick: _propTypes.default.func,
78
88
 
79
89
  /**
@@ -95,5 +105,17 @@ EuiHeaderBreadcrumbs.propTypes = {
95
105
  * Override the existing `aria-current` which defaults to `page` for the last breadcrumb
96
106
  */
97
107
  "aria-current": _propTypes.default.any
98
- }).isRequired).isRequired
108
+ }).isRequired).isRequired,
109
+
110
+ /**
111
+ * Determines breadcrumbs appearance, with `page` being the default styling.
112
+ * Application breadcrumbs should only be once per page, in (e.g.) EuiHeader
113
+ */
114
+ type: _propTypes.default.oneOf(["page", "application"]),
115
+
116
+ /**
117
+ * Whether the last breadcrumb should visually (and accessibly, to screen readers)
118
+ * be highlighted as the current page. Defaults to true.
119
+ */
120
+ lastBreadcrumbIsCurrentPage: _propTypes.default.bool
99
121
  };
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiHeaderBreadcrumbsStyles = 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 euiHeaderBreadcrumbsStyles = function euiHeaderBreadcrumbsStyles(_ref) {
20
+ var euiTheme = _ref.euiTheme;
21
+ return {
22
+ euiHeaderBreadcrumbs: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiTextTruncate)(), ";align-items:center;display:flex;flex-grow:1;", (0, _global_styling.logicalCSS)('margin-horizontal', euiTheme.size.s), ";;label:euiHeaderBreadcrumbs;")
23
+ };
24
+ };
25
+
26
+ exports.euiHeaderBreadcrumbsStyles = euiHeaderBreadcrumbsStyles;
@@ -73,15 +73,15 @@ var EuiHeaderLinks = function EuiHeaderLinks(_ref) {
73
73
  mobileMenuIsOpen = _useState2[0],
74
74
  setMobileMenuIsOpen = _useState2[1];
75
75
 
76
- var onMenuButtonClick = function onMenuButtonClick(e) {
76
+ var onMenuButtonClick = (0, _react.useCallback)(function (e) {
77
77
  onClick === null || onClick === void 0 ? void 0 : onClick(e);
78
- setMobileMenuIsOpen(!mobileMenuIsOpen);
79
- };
80
-
81
- var closeMenu = function closeMenu() {
78
+ setMobileMenuIsOpen(function (mobileMenuIsOpen) {
79
+ return !mobileMenuIsOpen;
80
+ });
81
+ }, [onClick]);
82
+ var closeMenu = (0, _react.useCallback)(function () {
82
83
  setMobileMenuIsOpen(false);
83
- };
84
-
84
+ }, []);
85
85
  (0, _react.useEffect)(function () {
86
86
  window.addEventListener('resize', closeMenu);
87
87
  return function () {
@@ -140,7 +140,7 @@ EuiHeaderLinks.propTypes = {
140
140
  /**
141
141
  * A list of named breakpoints at which to show the popover version
142
142
  */
143
- popoverBreakpoints: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired, _propTypes.default.oneOf(["all", "none"])]),
143
+ popoverBreakpoints: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired, _propTypes.default.oneOf(["all", "none"])]),
144
144
 
145
145
  /**
146
146
  * Extend the functionality of the EuiPopover.button which is a EuiHeaderSectionItemButton.
@@ -37,7 +37,7 @@ var EuiIconTokenStruct = function EuiIconTokenStruct(_ref) {
37
37
  id: titleId
38
38
  }, title) : null, (0, _react2.jsx)("path", {
39
39
  fillRule: "evenodd",
40
- 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"
40
+ 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"
41
41
  }));
42
42
  };
43
43
 
@@ -37,10 +37,10 @@ var EuiImageCaption = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
37
37
  var euiTheme = (0, _services.useEuiTheme)();
38
38
  var styles = (0, _image_caption.euiImageCaptionStyles)(euiTheme);
39
39
  var cssStyles = [styles.euiImageCaption, isOnOverlayMask && styles.isOnOverlayMask];
40
- return (0, _react2.jsx)("figcaption", {
40
+ return caption ? (0, _react2.jsx)("figcaption", {
41
41
  ref: ref,
42
42
  css: cssStyles
43
- }, caption);
43
+ }, caption) : null;
44
44
  });
45
45
  exports.EuiImageCaption = EuiImageCaption;
46
46
  EuiImageCaption.propTypes = {
@@ -24,7 +24,7 @@ var euiImageWrapperStyles = function euiImageWrapperStyles(euiThemeContext) {
24
24
  var euiTheme = euiThemeContext.euiTheme;
25
25
  return {
26
26
  // Base
27
- euiImageWrapper: /*#__PURE__*/(0, _react.css)("display:table;", (0, _global_styling.logicalCSS)('max-width', '100%'), " ", (0, _global_styling.logicalTextAlignCSS)('center'), ";line-height:0;flex-shrink:0;;label:euiImageWrapper;"),
27
+ euiImageWrapper: /*#__PURE__*/(0, _react.css)("display:inline-block;", (0, _global_styling.logicalCSS)('max-width', '100%'), " ", (0, _global_styling.logicalTextAlignCSS)('center'), ";line-height:0;flex-shrink:0;;label:euiImageWrapper;"),
28
28
  allowFullScreen: _ref,
29
29
  // Margins
30
30
  s: /*#__PURE__*/(0, _react.css)("margin:", euiTheme.size.s, ";;label:s;"),
@@ -183,6 +183,7 @@ EuiPageHeader.propTypes = {
183
183
  "aria-label": _propTypes.default.string,
184
184
  "data-test-subj": _propTypes.default.string,
185
185
  href: _propTypes.default.string,
186
+ rel: _propTypes.default.string,
186
187
  onClick: _propTypes.default.func,
187
188
 
188
189
  /**
@@ -29,7 +29,7 @@ var _title = require("../../title");
29
29
 
30
30
  var _text = require("../../text");
31
31
 
32
- var _hooks = require("../../../services/hooks");
32
+ var _services = require("../../../services");
33
33
 
34
34
  var _accessibility = require("../../accessibility");
35
35
 
@@ -62,7 +62,7 @@ var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
62
62
  rightSideGroupProps = _ref.rightSideGroupProps,
63
63
  children = _ref.children,
64
64
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
65
- var isResponsiveBreakpoint = (0, _hooks.useIsWithinBreakpoints)(['xs', 's'], !!responsive);
65
+ var isResponsiveBreakpoint = (0, _services.useIsWithinBreakpoints)(['xs', 's'], !!responsive);
66
66
  var classes = (0, _classnames.default)('euiPageHeaderContent');
67
67
  var descriptionNode;
68
68
 
@@ -249,6 +249,7 @@ EuiPageHeaderContent.propTypes = {
249
249
  "aria-label": _propTypes.default.string,
250
250
  "data-test-subj": _propTypes.default.string,
251
251
  href: _propTypes.default.string,
252
+ rel: _propTypes.default.string,
252
253
  onClick: _propTypes.default.func,
253
254
 
254
255
  /**
@@ -463,6 +463,7 @@ EuiPageTemplate.propTypes = {
463
463
  "aria-label": _propTypes.default.string,
464
464
  "data-test-subj": _propTypes.default.string,
465
465
  href: _propTypes.default.string,
466
+ rel: _propTypes.default.string,
466
467
  onClick: _propTypes.default.func,
467
468
 
468
469
  /**
@@ -280,7 +280,7 @@ EuiPagination.propTypes = {
280
280
  * Automatically reduces to the `compressed` version on smaller screens.
281
281
  * Remove completely with `false` or provide your own list of responsive breakpoints.
282
282
  */
283
- responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired])
283
+ responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired])
284
284
  };
285
285
 
286
286
  var PaginationButtonWrapper = function PaginationButtonWrapper(_ref2) {
@@ -19,7 +19,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
19
19
 
20
20
  var _panel = require("../panel");
21
21
 
22
- var _hooks = require("../../../services/hooks");
22
+ var _breakpoint = require("../../../services/breakpoint");
23
23
 
24
24
  var _react2 = require("@emotion/react");
25
25
 
@@ -82,7 +82,7 @@ var _EuiSplitPanelOuter = function _EuiSplitPanelOuter(_ref2) {
82
82
  _ref2$responsive = _ref2.responsive,
83
83
  responsive = _ref2$responsive === void 0 ? ['xs', 's'] : _ref2$responsive,
84
84
  rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
85
- var isResponsive = (0, _hooks.useIsWithinBreakpoints)(responsive, !!responsive);
85
+ var isResponsive = (0, _breakpoint.useIsWithinBreakpoints)(responsive, !!responsive);
86
86
  var classes = (0, _classnames.default)('euiSplitPanel', {
87
87
  'euiSplitPanel--row': direction === 'row',
88
88
  'euiSplitPanel-isResponsive': isResponsive
@@ -110,7 +110,7 @@ _EuiSplitPanelOuter.propTypes = {
110
110
  * Stacks row display on small screens.
111
111
  * Remove completely with `false` or provide your own list of breakpoint sizes to stack on.
112
112
  */
113
- responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.oneOf(["xs", "s", "m", "l", "xl"]).isRequired).isRequired])
113
+ responsive: _propTypes.default.oneOfType([_propTypes.default.oneOf([false]), _propTypes.default.arrayOf(_propTypes.default.any.isRequired).isRequired])
114
114
  };
115
115
  var EuiSplitPanel = {
116
116
  Outer: _EuiSplitPanelOuter,
@@ -11,21 +11,9 @@ exports.EuiWrappingPopover = void 0;
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
14
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
-
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
21
-
22
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
15
 
24
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
25
-
26
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
27
-
28
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
29
17
 
30
18
  var _react = _interopRequireWildcard(require("react"));
31
19
 
@@ -43,79 +31,51 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
43
31
 
44
32
  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; }
45
33
 
46
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
47
-
48
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
-
50
34
  /**
51
35
  * Injects the EuiPopover next to the button via EuiPortal
52
36
  * then the button element is moved into the popover dom.
53
37
  * On unmount, the button is moved back to its original location.
54
38
  */
55
- var EuiWrappingPopover = /*#__PURE__*/function (_Component) {
56
- (0, _inherits2.default)(EuiWrappingPopover, _Component);
57
-
58
- var _super = _createSuper(EuiWrappingPopover);
59
-
60
- function EuiWrappingPopover() {
61
- var _this;
62
-
63
- (0, _classCallCheck2.default)(this, EuiWrappingPopover);
64
-
65
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
66
- args[_key] = arguments[_key];
39
+ var EuiWrappingPopover = function EuiWrappingPopover(_ref) {
40
+ var button = _ref.button,
41
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
42
+
43
+ var _useState = (0, _react.useState)(null),
44
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
45
+ anchor = _useState2[0],
46
+ setAnchor = _useState2[1];
47
+
48
+ var _useState3 = (0, _react.useState)(null),
49
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
50
+ portal = _useState4[0],
51
+ setPortal = _useState4[1];
52
+
53
+ (0, _react.useEffect)(function () {
54
+ if (anchor) {
55
+ // move the button into the popover DOM
56
+ anchor.insertAdjacentElement('beforebegin', button);
67
57
  }
68
58
 
69
- _this = _super.call.apply(_super, [this].concat(args));
70
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "portal", null);
71
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "anchor", null);
72
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setPortalRef", function (node) {
73
- _this.portal = node;
74
- });
75
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setAnchorRef", function (node) {
76
- _this.anchor = node;
77
- });
78
- return _this;
79
- }
80
-
81
- (0, _createClass2.default)(EuiWrappingPopover, [{
82
- key: "componentDidMount",
83
- value: function componentDidMount() {
84
- if (this.anchor) {
85
- this.anchor.insertAdjacentElement('beforebegin', this.props.button);
86
- }
87
- }
88
- }, {
89
- key: "componentWillUnmount",
90
- value: function componentWillUnmount() {
91
- if (this.props.button.parentNode) {
92
- if (this.portal) {
93
- this.portal.insertAdjacentElement('beforebegin', this.props.button);
94
- }
59
+ return function () {
60
+ if (portal) {
61
+ // move the button back out of the popover DOM
62
+ portal.insertAdjacentElement('beforebegin', button);
95
63
  }
64
+ };
65
+ }, [anchor, button, portal]);
66
+ return (0, _react2.jsx)(_portal.EuiPortal, {
67
+ portalRef: setPortal,
68
+ insert: {
69
+ sibling: button,
70
+ position: 'after'
96
71
  }
97
- }, {
98
- key: "render",
99
- value: function render() {
100
- var _this$props = this.props,
101
- button = _this$props.button,
102
- rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
103
- return (0, _react2.jsx)(_portal.EuiPortal, {
104
- portalRef: this.setPortalRef,
105
- insert: {
106
- sibling: this.props.button,
107
- position: 'after'
108
- }
109
- }, (0, _react2.jsx)(_popover.EuiPopover, (0, _extends2.default)({}, rest, {
110
- button: (0, _react2.jsx)("div", {
111
- ref: this.setAnchorRef,
112
- className: "euiWrappingPopover__anchor"
113
- })
114
- })));
115
- }
116
- }]);
117
- return EuiWrappingPopover;
118
- }(_react.Component);
72
+ }, (0, _react2.jsx)(_popover.EuiPopover, (0, _extends2.default)({}, rest, {
73
+ button: (0, _react2.jsx)("div", {
74
+ ref: setAnchor,
75
+ className: "euiWrappingPopover__anchor"
76
+ })
77
+ })));
78
+ };
119
79
 
120
80
  exports.EuiWrappingPopover = EuiWrappingPopover;
121
81
  EuiWrappingPopover.propTypes = {
@@ -7,32 +7,28 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.insertPositions = exports.INSERT_POSITIONS = exports.EuiPortal = void 0;
9
9
 
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
11
 
24
12
  var _react = require("react");
25
13
 
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
14
  var _reactDom = require("react-dom");
29
15
 
30
16
  var _common = require("../common");
31
17
 
32
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
18
+ var _services = require("../../services");
33
19
 
34
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
20
+ /*
21
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
22
+ * or more contributor license agreements. Licensed under the Elastic License
23
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
24
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
25
+ * Side Public License, v 1.
26
+ */
35
27
 
28
+ /**
29
+ * NOTE: We can't test this component because Enzyme doesn't support rendering
30
+ * into portals.
31
+ */
36
32
  var insertPositions = {
37
33
  after: 'afterend',
38
34
  before: 'beforebegin'
@@ -41,72 +37,47 @@ exports.insertPositions = insertPositions;
41
37
  var INSERT_POSITIONS = (0, _common.keysOf)(insertPositions);
42
38
  exports.INSERT_POSITIONS = INSERT_POSITIONS;
43
39
 
44
- var EuiPortal = /*#__PURE__*/function (_Component) {
45
- (0, _inherits2.default)(EuiPortal, _Component);
40
+ var EuiPortal = function EuiPortal(_ref) {
41
+ var insert = _ref.insert,
42
+ portalRef = _ref.portalRef,
43
+ children = _ref.children;
44
+
45
+ var _useState = (0, _react.useState)(null),
46
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
47
+ portalNode = _useState2[0],
48
+ setPortalNode = _useState2[1]; // pull `sibling` and `position` out of insert in case their wrapping object is recreated every render
46
49
 
47
- var _super = _createSuper(EuiPortal);
48
50
 
49
- function EuiPortal(props) {
50
- var _this;
51
+ var _ref2 = insert || {},
52
+ sibling = _ref2.sibling,
53
+ position = _ref2.position;
51
54
 
52
- (0, _classCallCheck2.default)(this, EuiPortal);
53
- _this = _super.call(this, props);
54
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "portalNode", void 0);
55
- var insert = _this.props.insert;
56
- _this.portalNode = document.createElement('div');
55
+ (0, _react.useEffect)(function () {
56
+ var portalNode = document.createElement('div');
57
+ portalNode.dataset.euiportal = 'true';
58
+ setPortalNode(portalNode);
57
59
 
58
- if (insert == null) {
60
+ if (sibling == null || position == null) {
59
61
  // no insertion defined, append to body
60
- document.body.appendChild(_this.portalNode);
62
+ document.body.appendChild(portalNode);
61
63
  } else {
62
64
  // inserting before or after an element
63
- var sibling = insert.sibling,
64
- position = insert.position;
65
- sibling.insertAdjacentElement(insertPositions[position], _this.portalNode);
65
+ sibling.insertAdjacentElement(insertPositions[position], portalNode);
66
66
  }
67
67
 
68
- return _this;
69
- }
70
-
71
- (0, _createClass2.default)(EuiPortal, [{
72
- key: "componentDidMount",
73
- value: function componentDidMount() {
74
- this.updatePortalRef(this.portalNode);
75
- }
76
- }, {
77
- key: "componentWillUnmount",
78
- value: function componentWillUnmount() {
79
- if (this.portalNode.parentNode) {
80
- this.portalNode.parentNode.removeChild(this.portalNode);
68
+ return function () {
69
+ if (portalNode && portalNode.parentNode) {
70
+ portalNode.parentNode.removeChild(portalNode);
81
71
  }
72
+ };
73
+ }, [sibling, position]);
74
+ (0, _services.useUpdateEffect)(function () {
75
+ portalRef === null || portalRef === void 0 ? void 0 : portalRef(portalNode);
76
+ return function () {
77
+ portalRef === null || portalRef === void 0 ? void 0 : portalRef(null);
78
+ };
79
+ }, [portalNode, portalRef]);
80
+ return portalNode == null ? null : /*#__PURE__*/(0, _reactDom.createPortal)(children, portalNode);
81
+ };
82
82
 
83
- this.updatePortalRef(null);
84
- }
85
- }, {
86
- key: "updatePortalRef",
87
- value: function updatePortalRef(ref) {
88
- if (this.props.portalRef) {
89
- this.props.portalRef(ref);
90
- }
91
- }
92
- }, {
93
- key: "render",
94
- value: function render() {
95
- return /*#__PURE__*/(0, _reactDom.createPortal)(this.props.children, this.portalNode);
96
- }
97
- }]);
98
- return EuiPortal;
99
- }(_react.Component);
100
-
101
- exports.EuiPortal = EuiPortal;
102
- EuiPortal.propTypes = {
103
- /**
104
- * ReactNode to render as this component's content
105
- */
106
- children: _propTypes.default.node.isRequired,
107
- insert: _propTypes.default.shape({
108
- sibling: _propTypes.default.any.isRequired,
109
- position: _propTypes.default.oneOf(["before", "after"]).isRequired
110
- }),
111
- portalRef: _propTypes.default.func
112
- };
83
+ exports.EuiPortal = EuiPortal;