@elastic/eui 60.3.0 → 62.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (545) 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 +20 -660
  4. package/dist/eui_theme_dark.json +1 -2
  5. package/dist/eui_theme_dark.json.d.ts +1 -2
  6. package/dist/eui_theme_dark.min.css +1 -1
  7. package/dist/eui_theme_light.css +20 -660
  8. package/dist/eui_theme_light.json +1 -2
  9. package/dist/eui_theme_light.json.d.ts +1 -2
  10. package/dist/eui_theme_light.min.css +1 -1
  11. package/es/components/accessibility/skip_link/skip_link.js +1 -1
  12. package/es/components/avatar/avatar.js +1 -2
  13. package/es/components/badge/badge.js +1 -1
  14. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  15. package/es/components/basic_table/basic_table.js +1 -1
  16. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  17. package/es/components/basic_table/in_memory_table.js +1 -1
  18. package/es/components/button/_button_content_deprecated.js +1 -1
  19. package/es/components/button/button.js +2 -2
  20. package/es/components/button/button_display/_button_display.js +1 -1
  21. package/es/components/button/button_display/_button_display_content.js +1 -1
  22. package/es/components/button/button_empty/button_empty.js +1 -1
  23. package/es/components/button/button_group/button_group.js +1 -1
  24. package/es/components/button/button_group/button_group_button.js +1 -1
  25. package/es/components/button/button_icon/button_icon.js +1 -1
  26. package/es/components/call_out/call_out.js +1 -1
  27. package/es/components/card/card.js +1 -1
  28. package/es/components/card/card_select.js +1 -1
  29. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  30. package/es/components/color_picker/color_picker.js +1 -1
  31. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
  32. package/es/components/comment_list/comment.js +54 -24
  33. package/es/components/comment_list/comment_event.js +103 -32
  34. package/es/components/comment_list/comment_event.styles.js +78 -0
  35. package/es/components/comment_list/comment_list.js +45 -12
  36. package/es/components/comment_list/comment_timeline.js +29 -35
  37. package/es/components/context_menu/context_menu_panel.js +1 -1
  38. package/es/components/datagrid/body/data_grid_body.js +14 -14
  39. package/es/components/datagrid/body/data_grid_cell.js +24 -24
  40. package/es/components/datagrid/body/header/data_grid_header_cell.js +164 -68
  41. package/es/components/datagrid/body/header/data_grid_header_row.js +13 -13
  42. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  43. package/es/components/datagrid/data_grid.js +13 -13
  44. package/es/components/datagrid/utils/in_memory.js +12 -12
  45. package/es/components/datagrid/utils/row_heights.js +27 -33
  46. package/es/components/date_picker/date_picker.js +2 -2
  47. package/es/components/date_picker/date_picker_range.js +1 -1
  48. package/es/components/empty_prompt/empty_prompt.js +1 -1
  49. package/es/components/error_boundary/error_boundary.js +18 -11
  50. package/es/components/error_boundary/error_boundary.styles.js +18 -0
  51. package/es/components/filter_group/filter_button.js +3 -1
  52. package/es/components/focus_trap/focus_trap.js +1 -0
  53. package/es/components/form/field_number/field_number.js +1 -1
  54. package/es/components/form/field_text/field_text.js +2 -2
  55. package/es/components/form/form.styles.js +11 -0
  56. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  57. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  58. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  59. package/es/components/header/header_links/header_link.js +1 -1
  60. package/es/components/header/header_links/header_links.js +10 -8
  61. package/es/components/header/header_logo.js +1 -1
  62. package/es/components/icon/assets/keyboard.js +38 -0
  63. package/es/components/icon/assets/tokenMetricCounter.js +38 -0
  64. package/es/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
  65. package/es/components/icon/icon.js +1 -1
  66. package/es/components/icon/icon_map.js +39 -37
  67. package/es/components/image/image.js +71 -166
  68. package/es/components/image/image.styles.js +28 -0
  69. package/es/components/image/image_button.js +68 -0
  70. package/es/components/image/image_button.styles.js +41 -0
  71. package/es/components/image/image_caption.js +28 -0
  72. package/es/components/image/image_caption.styles.js +18 -0
  73. package/es/components/image/image_fullscreen_wrapper.js +100 -0
  74. package/es/components/image/image_fullscreen_wrapper.styles.js +26 -0
  75. package/es/components/image/image_types.js +10 -0
  76. package/es/components/image/image_wrapper.js +78 -0
  77. package/es/components/image/image_wrapper.styles.js +41 -0
  78. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  79. package/es/components/list_group/list_group.js +2 -2
  80. package/es/components/list_group/list_group_item.js +2 -2
  81. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  82. package/es/components/loading/loading_logo.js +1 -1
  83. package/es/components/markdown_editor/markdown_editor.js +1 -1
  84. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  85. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  86. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  87. package/es/components/notification/notification_event.js +2 -2
  88. package/es/components/notification/notification_event_meta.js +1 -1
  89. package/es/components/page/page_header/page_header.js +1 -1
  90. package/es/components/page/page_header/page_header_content.js +1 -1
  91. package/es/components/page/page_template.js +1 -1
  92. package/es/components/pagination/pagination_button.js +1 -1
  93. package/es/components/popover/input_popover.js +8 -4
  94. package/es/components/popover/popover.js +58 -148
  95. package/es/components/popover/popover.styles.js +15 -0
  96. package/es/components/popover/popover_arrow/_popover_arrow.js +40 -0
  97. package/es/components/popover/popover_arrow/_popover_arrow.styles.js +25 -0
  98. package/es/components/popover/popover_arrow/index.js +8 -0
  99. package/es/components/popover/popover_footer.js +15 -12
  100. package/es/components/popover/popover_footer.styles.js +19 -0
  101. package/es/components/popover/popover_panel/_popover_panel.js +114 -0
  102. package/es/components/popover/popover_panel/_popover_panel.styles.js +42 -0
  103. package/es/components/popover/popover_panel/index.js +8 -0
  104. package/es/components/popover/popover_title.js +15 -12
  105. package/es/components/popover/popover_title.styles.js +20 -0
  106. package/es/components/popover/wrapping_popover.js +45 -88
  107. package/es/components/portal/portal.js +38 -79
  108. package/es/components/selectable/selectable.js +8 -9
  109. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  110. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  111. package/es/components/selectable/selectable_search/selectable_search.js +1 -6
  112. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
  113. package/es/components/suggest/suggest.js +1 -5
  114. package/es/components/suggest/suggest_item.js +1 -1
  115. package/es/components/table/table_header_button.js +1 -1
  116. package/es/components/text/text.styles.js +5 -4
  117. package/es/components/text_diff/text_diff.js +5 -0
  118. package/es/components/text_diff/text_diff.styles.js +15 -0
  119. package/es/components/timeline/timeline_item.js +1 -2
  120. package/es/components/timeline/timeline_item_icon.js +1 -1
  121. package/es/components/toast/global_toast_list.js +1 -1
  122. package/es/components/toast/toast.js +1 -1
  123. package/es/components/token/token.js +1 -1
  124. package/es/components/token/token_map.js +115 -107
  125. package/es/components/tool_tip/icon_tip.js +1 -1
  126. package/es/components/tour/tour.js +6 -6
  127. package/es/components/tour/tour_step.js +6 -6
  128. package/es/global_styling/functions/logicals.js +22 -0
  129. package/es/global_styling/mixins/_responsive.js +46 -0
  130. package/es/global_styling/mixins/index.js +2 -1
  131. package/es/services/hooks/index.js +1 -0
  132. package/es/services/hooks/useLatest.js +18 -0
  133. package/es/test/emotion-prefix.js +1 -1
  134. package/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  135. package/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  136. package/eui.d.ts +605 -266
  137. package/i18ntokens.json +134 -38
  138. package/lib/components/accessibility/skip_link/skip_link.js +1 -1
  139. package/lib/components/avatar/avatar.js +1 -2
  140. package/lib/components/badge/badge.js +1 -1
  141. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  142. package/lib/components/basic_table/basic_table.js +1 -1
  143. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  144. package/lib/components/basic_table/in_memory_table.js +1 -1
  145. package/lib/components/button/_button_content_deprecated.js +1 -1
  146. package/lib/components/button/button.js +2 -2
  147. package/lib/components/button/button_display/_button_display.js +1 -1
  148. package/lib/components/button/button_display/_button_display_content.js +1 -1
  149. package/lib/components/button/button_empty/button_empty.js +1 -1
  150. package/lib/components/button/button_group/button_group.js +1 -1
  151. package/lib/components/button/button_group/button_group_button.js +1 -1
  152. package/lib/components/button/button_icon/button_icon.js +1 -1
  153. package/lib/components/call_out/call_out.js +1 -1
  154. package/lib/components/card/card.js +1 -1
  155. package/lib/components/card/card_select.js +1 -1
  156. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  157. package/lib/components/color_picker/color_picker.js +1 -1
  158. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
  159. package/lib/components/comment_list/comment.js +53 -25
  160. package/lib/components/comment_list/comment_event.js +104 -41
  161. package/lib/components/comment_list/comment_event.styles.js +86 -0
  162. package/lib/components/comment_list/comment_list.js +46 -12
  163. package/lib/components/comment_list/comment_timeline.js +30 -40
  164. package/lib/components/context_menu/context_menu_panel.js +1 -1
  165. package/lib/components/datagrid/body/data_grid_body.js +14 -14
  166. package/lib/components/datagrid/body/data_grid_cell.js +24 -24
  167. package/lib/components/datagrid/body/header/data_grid_header_cell.js +166 -67
  168. package/lib/components/datagrid/body/header/data_grid_header_row.js +13 -13
  169. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  170. package/lib/components/datagrid/data_grid.js +13 -13
  171. package/lib/components/datagrid/utils/in_memory.js +12 -12
  172. package/lib/components/datagrid/utils/row_heights.js +26 -32
  173. package/lib/components/date_picker/date_picker.js +2 -2
  174. package/lib/components/date_picker/date_picker_range.js +1 -1
  175. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  176. package/lib/components/error_boundary/error_boundary.js +23 -13
  177. package/lib/components/error_boundary/error_boundary.styles.js +30 -0
  178. package/lib/components/filter_group/filter_button.js +3 -1
  179. package/lib/components/focus_trap/focus_trap.js +1 -0
  180. package/lib/components/form/field_number/field_number.js +1 -1
  181. package/lib/components/form/field_text/field_text.js +2 -2
  182. package/lib/components/form/form.styles.js +20 -0
  183. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  184. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  185. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  186. package/lib/components/header/header_links/header_link.js +1 -1
  187. package/lib/components/header/header_links/header_links.js +10 -8
  188. package/lib/components/header/header_logo.js +1 -1
  189. package/lib/components/icon/assets/keyboard.js +45 -0
  190. package/lib/components/icon/assets/tokenMetricCounter.js +45 -0
  191. package/lib/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
  192. package/lib/components/icon/icon.js +1 -1
  193. package/lib/components/icon/icon_map.js +39 -37
  194. package/lib/components/icon/svgs/keyboard.svg +3 -0
  195. package/lib/components/icon/svgs/tokens/tokenMetricCounter.svg +3 -0
  196. package/lib/components/icon/svgs/tokens/tokenMetricGauge.svg +3 -0
  197. package/lib/components/image/image.js +73 -168
  198. package/lib/components/image/image.styles.js +40 -0
  199. package/lib/components/image/image_button.js +81 -0
  200. package/lib/components/image/image_button.styles.js +48 -0
  201. package/lib/components/image/image_caption.js +49 -0
  202. package/lib/components/image/image_caption.styles.js +30 -0
  203. package/lib/components/image/image_fullscreen_wrapper.js +117 -0
  204. package/lib/components/image/image_fullscreen_wrapper.styles.js +30 -0
  205. package/lib/components/image/image_types.js +18 -0
  206. package/lib/components/image/image_wrapper.js +91 -0
  207. package/lib/components/image/image_wrapper.styles.js +44 -0
  208. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  209. package/lib/components/list_group/list_group.js +2 -2
  210. package/lib/components/list_group/list_group_item.js +2 -2
  211. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  212. package/lib/components/loading/loading_logo.js +1 -1
  213. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  214. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  215. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  216. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  217. package/lib/components/notification/notification_event.js +2 -2
  218. package/lib/components/notification/notification_event_meta.js +1 -1
  219. package/lib/components/page/page_header/page_header.js +1 -1
  220. package/lib/components/page/page_header/page_header_content.js +1 -1
  221. package/lib/components/page/page_template.js +1 -1
  222. package/lib/components/popover/input_popover.js +8 -3
  223. package/lib/components/popover/popover.js +74 -165
  224. package/lib/components/popover/popover.styles.js +26 -0
  225. package/lib/components/popover/popover_arrow/_popover_arrow.js +51 -0
  226. package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
  227. package/lib/components/popover/popover_arrow/index.js +13 -0
  228. package/lib/components/popover/popover_footer.js +25 -15
  229. package/lib/components/popover/popover_footer.styles.js +30 -0
  230. package/lib/components/popover/popover_panel/_popover_panel.js +132 -0
  231. package/lib/components/popover/popover_panel/_popover_panel.styles.js +54 -0
  232. package/lib/components/popover/popover_panel/index.js +13 -0
  233. package/lib/components/popover/popover_title.js +25 -15
  234. package/lib/components/popover/popover_title.styles.js +32 -0
  235. package/lib/components/popover/wrapping_popover.js +44 -85
  236. package/lib/components/portal/portal.js +39 -82
  237. package/lib/components/selectable/selectable.js +8 -9
  238. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  239. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  240. package/lib/components/selectable/selectable_search/selectable_search.js +0 -5
  241. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
  242. package/lib/components/suggest/suggest.js +1 -5
  243. package/lib/components/suggest/suggest_item.js +1 -1
  244. package/lib/components/table/table_header_button.js +1 -1
  245. package/lib/components/text/text.styles.js +4 -3
  246. package/lib/components/text_diff/text_diff.js +7 -0
  247. package/lib/components/text_diff/text_diff.styles.js +25 -0
  248. package/lib/components/timeline/timeline_item.js +1 -2
  249. package/lib/components/timeline/timeline_item_icon.js +1 -1
  250. package/lib/components/toast/global_toast_list.js +1 -1
  251. package/lib/components/toast/toast.js +1 -1
  252. package/lib/components/token/token.js +1 -1
  253. package/lib/components/token/token_map.js +115 -107
  254. package/lib/components/tool_tip/icon_tip.js +1 -1
  255. package/lib/global_styling/functions/logicals.js +30 -2
  256. package/lib/global_styling/mixins/_responsive.js +60 -0
  257. package/lib/global_styling/mixins/index.js +13 -0
  258. package/lib/services/hooks/index.js +13 -0
  259. package/lib/services/hooks/useLatest.js +26 -0
  260. package/lib/test/emotion-prefix.js +1 -1
  261. package/lib/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  262. package/lib/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  263. package/optimize/es/components/avatar/avatar.js +0 -1
  264. package/optimize/es/components/color_picker/color_picker.js +1 -1
  265. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
  266. package/optimize/es/components/comment_list/comment.js +24 -18
  267. package/optimize/es/components/comment_list/comment_event.js +83 -28
  268. package/optimize/es/components/comment_list/comment_event.styles.js +78 -0
  269. package/optimize/es/components/comment_list/comment_list.js +7 -3
  270. package/optimize/es/components/comment_list/comment_timeline.js +19 -32
  271. package/optimize/es/components/context_menu/context_menu_panel.js +1 -1
  272. package/optimize/es/components/datagrid/body/data_grid_body.js +1 -1
  273. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +150 -54
  274. package/optimize/es/components/datagrid/utils/row_heights.js +27 -33
  275. package/optimize/es/components/error_boundary/error_boundary.js +17 -10
  276. package/optimize/es/components/error_boundary/error_boundary.styles.js +18 -0
  277. package/optimize/es/components/filter_group/filter_button.js +3 -1
  278. package/optimize/es/components/focus_trap/focus_trap.js +1 -0
  279. package/optimize/es/components/form/form.styles.js +11 -0
  280. package/optimize/es/components/icon/assets/keyboard.js +34 -0
  281. package/optimize/es/components/icon/assets/tokenMetricCounter.js +34 -0
  282. package/optimize/es/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
  283. package/optimize/es/components/icon/icon_map.js +39 -37
  284. package/optimize/es/components/image/image.js +50 -154
  285. package/optimize/es/components/image/image.styles.js +28 -0
  286. package/optimize/es/components/image/image_button.js +56 -0
  287. package/optimize/es/components/image/image_button.styles.js +41 -0
  288. package/optimize/es/components/image/image_caption.js +24 -0
  289. package/optimize/es/components/image/image_caption.styles.js +18 -0
  290. package/optimize/es/components/image/image_fullscreen_wrapper.js +84 -0
  291. package/optimize/es/components/image/image_fullscreen_wrapper.styles.js +26 -0
  292. package/optimize/es/components/image/image_types.js +10 -0
  293. package/optimize/es/components/image/image_wrapper.js +62 -0
  294. package/optimize/es/components/image/image_wrapper.styles.js +41 -0
  295. package/optimize/es/components/popover/input_popover.js +8 -4
  296. package/optimize/es/components/popover/popover.js +41 -131
  297. package/optimize/es/components/popover/popover.styles.js +15 -0
  298. package/optimize/es/components/popover/popover_arrow/_popover_arrow.js +29 -0
  299. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +25 -0
  300. package/optimize/es/components/popover/popover_arrow/index.js +8 -0
  301. package/optimize/es/components/popover/popover_footer.js +15 -12
  302. package/optimize/es/components/popover/popover_footer.styles.js +19 -0
  303. package/optimize/es/components/popover/popover_panel/_popover_panel.js +55 -0
  304. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +42 -0
  305. package/optimize/es/components/popover/popover_panel/index.js +8 -0
  306. package/optimize/es/components/popover/popover_title.js +15 -12
  307. package/optimize/es/components/popover/popover_title.styles.js +20 -0
  308. package/optimize/es/components/popover/wrapping_popover.js +38 -79
  309. package/optimize/es/components/portal/portal.js +34 -61
  310. package/optimize/es/components/selectable/selectable.js +8 -9
  311. package/optimize/es/components/selectable/selectable_search/selectable_search.js +1 -6
  312. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  313. package/optimize/es/components/suggest/suggest.js +0 -4
  314. package/optimize/es/components/text/text.styles.js +5 -4
  315. package/optimize/es/components/text_diff/text_diff.js +5 -0
  316. package/optimize/es/components/text_diff/text_diff.styles.js +15 -0
  317. package/optimize/es/components/timeline/timeline_item.js +1 -2
  318. package/optimize/es/components/token/token_map.js +115 -107
  319. package/optimize/es/global_styling/functions/logicals.js +22 -0
  320. package/optimize/es/global_styling/mixins/_responsive.js +46 -0
  321. package/optimize/es/global_styling/mixins/index.js +2 -1
  322. package/optimize/es/services/hooks/index.js +1 -0
  323. package/optimize/es/services/hooks/useLatest.js +18 -0
  324. package/optimize/es/test/emotion-prefix.js +1 -1
  325. package/optimize/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  326. package/optimize/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  327. package/optimize/lib/components/avatar/avatar.js +0 -1
  328. package/optimize/lib/components/color_picker/color_picker.js +1 -1
  329. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
  330. package/optimize/lib/components/comment_list/comment.js +23 -18
  331. package/optimize/lib/components/comment_list/comment_event.js +85 -31
  332. package/optimize/lib/components/comment_list/comment_event.styles.js +86 -0
  333. package/optimize/lib/components/comment_list/comment_list.js +8 -3
  334. package/optimize/lib/components/comment_list/comment_timeline.js +21 -38
  335. package/optimize/lib/components/context_menu/context_menu_panel.js +1 -1
  336. package/optimize/lib/components/datagrid/body/data_grid_body.js +1 -1
  337. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +153 -54
  338. package/optimize/lib/components/datagrid/utils/row_heights.js +25 -30
  339. package/optimize/lib/components/error_boundary/error_boundary.js +20 -10
  340. package/optimize/lib/components/error_boundary/error_boundary.styles.js +30 -0
  341. package/optimize/lib/components/filter_group/filter_button.js +3 -1
  342. package/optimize/lib/components/focus_trap/focus_trap.js +1 -0
  343. package/optimize/lib/components/form/form.styles.js +20 -0
  344. package/optimize/lib/components/icon/assets/keyboard.js +44 -0
  345. package/optimize/lib/components/icon/assets/tokenMetricCounter.js +44 -0
  346. package/{test-env/components/icon/assets/keyboard_shortcut.js → optimize/lib/components/icon/assets/tokenMetricGauge.js} +3 -3
  347. package/optimize/lib/components/icon/icon_map.js +39 -37
  348. package/optimize/lib/components/icon/svgs/keyboard.svg +3 -0
  349. package/optimize/lib/components/icon/svgs/tokens/tokenMetricCounter.svg +3 -0
  350. package/optimize/lib/components/icon/svgs/tokens/tokenMetricGauge.svg +3 -0
  351. package/optimize/lib/components/image/image.js +52 -156
  352. package/optimize/lib/components/image/image.styles.js +40 -0
  353. package/optimize/lib/components/image/image_button.js +68 -0
  354. package/optimize/lib/components/image/image_button.styles.js +48 -0
  355. package/optimize/lib/components/image/image_caption.js +42 -0
  356. package/optimize/lib/components/image/image_caption.styles.js +30 -0
  357. package/optimize/lib/components/image/image_fullscreen_wrapper.js +108 -0
  358. package/optimize/lib/components/image/image_fullscreen_wrapper.styles.js +32 -0
  359. package/optimize/lib/components/image/image_types.js +18 -0
  360. package/optimize/lib/components/image/image_wrapper.js +82 -0
  361. package/optimize/lib/components/image/image_wrapper.styles.js +44 -0
  362. package/optimize/lib/components/popover/input_popover.js +7 -3
  363. package/optimize/lib/components/popover/popover.js +60 -150
  364. package/optimize/lib/components/popover/popover.styles.js +26 -0
  365. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.js +39 -0
  366. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
  367. package/optimize/lib/components/popover/popover_arrow/index.js +13 -0
  368. package/optimize/lib/components/popover/popover_footer.js +26 -14
  369. package/optimize/lib/components/popover/popover_footer.styles.js +30 -0
  370. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +74 -0
  371. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +54 -0
  372. package/optimize/lib/components/popover/popover_panel/index.js +13 -0
  373. package/optimize/lib/components/popover/popover_title.js +26 -14
  374. package/optimize/lib/components/popover/popover_title.styles.js +32 -0
  375. package/optimize/lib/components/popover/wrapping_popover.js +38 -78
  376. package/optimize/lib/components/portal/portal.js +45 -61
  377. package/optimize/lib/components/selectable/selectable.js +8 -8
  378. package/optimize/lib/components/selectable/selectable_search/selectable_search.js +0 -5
  379. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  380. package/optimize/lib/components/suggest/suggest.js +0 -4
  381. package/optimize/lib/components/text/text.styles.js +4 -3
  382. package/optimize/lib/components/text_diff/text_diff.js +7 -0
  383. package/optimize/lib/components/text_diff/text_diff.styles.js +25 -0
  384. package/optimize/lib/components/timeline/timeline_item.js +1 -2
  385. package/optimize/lib/components/token/token_map.js +115 -107
  386. package/optimize/lib/global_styling/functions/logicals.js +30 -2
  387. package/optimize/lib/global_styling/mixins/_responsive.js +60 -0
  388. package/optimize/lib/global_styling/mixins/index.js +13 -0
  389. package/optimize/lib/services/hooks/index.js +13 -0
  390. package/optimize/lib/services/hooks/useLatest.js +26 -0
  391. package/optimize/lib/test/emotion-prefix.js +1 -1
  392. package/optimize/lib/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  393. package/optimize/lib/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  394. package/package.json +2 -2
  395. package/src/components/combo_box/combo_box_options_list/_combo_box_options_list.scss +0 -4
  396. package/src/components/context_menu/_context_menu_panel.scss +2 -2
  397. package/src/components/index.scss +0 -5
  398. package/src/components/markdown_editor/_markdown_editor.scss +3 -2
  399. package/src/components/tour/_tour.scss +13 -9
  400. package/src/global_styling/mixins/_index.scss +0 -1
  401. package/src/themes/amsterdam/global_styling/mixins/_index.scss +0 -2
  402. package/src/themes/amsterdam/overrides/_index.scss +0 -3
  403. package/test-env/components/accessibility/skip_link/skip_link.js +1 -1
  404. package/test-env/components/avatar/avatar.js +1 -2
  405. package/test-env/components/badge/badge.js +1 -1
  406. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  407. package/test-env/components/basic_table/basic_table.js +1 -1
  408. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  409. package/test-env/components/basic_table/in_memory_table.js +1 -1
  410. package/test-env/components/button/_button_content_deprecated.js +1 -1
  411. package/test-env/components/button/button.js +2 -2
  412. package/test-env/components/button/button_display/_button_display.js +1 -1
  413. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  414. package/test-env/components/button/button_empty/button_empty.js +1 -1
  415. package/test-env/components/button/button_group/button_group.js +1 -1
  416. package/test-env/components/button/button_group/button_group_button.js +1 -1
  417. package/test-env/components/button/button_icon/button_icon.js +1 -1
  418. package/test-env/components/call_out/call_out.js +1 -1
  419. package/test-env/components/card/card.js +1 -1
  420. package/test-env/components/card/card_select.js +1 -1
  421. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  422. package/test-env/components/color_picker/color_picker.js +1 -1
  423. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
  424. package/test-env/components/comment_list/comment.js +53 -24
  425. package/test-env/components/comment_list/comment_event.js +105 -35
  426. package/test-env/components/comment_list/comment_event.styles.js +86 -0
  427. package/test-env/components/comment_list/comment_list.js +46 -12
  428. package/test-env/components/comment_list/comment_timeline.js +30 -40
  429. package/test-env/components/context_menu/context_menu_panel.js +1 -1
  430. package/test-env/components/datagrid/body/data_grid_body.js +14 -14
  431. package/test-env/components/datagrid/body/data_grid_cell.js +24 -24
  432. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +166 -67
  433. package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -13
  434. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  435. package/test-env/components/datagrid/data_grid.js +13 -13
  436. package/test-env/components/datagrid/utils/in_memory.js +12 -12
  437. package/test-env/components/datagrid/utils/row_heights.js +25 -30
  438. package/test-env/components/date_picker/date_picker.js +2 -2
  439. package/test-env/components/date_picker/date_picker_range.js +1 -1
  440. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  441. package/test-env/components/error_boundary/error_boundary.js +23 -13
  442. package/test-env/components/error_boundary/error_boundary.styles.js +30 -0
  443. package/test-env/components/filter_group/filter_button.js +3 -1
  444. package/test-env/components/form/field_number/field_number.js +1 -1
  445. package/test-env/components/form/field_text/field_text.js +2 -2
  446. package/test-env/components/form/form.styles.js +20 -0
  447. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  448. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  449. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  450. package/test-env/components/header/header_links/header_link.js +1 -1
  451. package/test-env/components/header/header_links/header_links.js +10 -8
  452. package/test-env/components/header/header_logo.js +1 -1
  453. package/test-env/components/icon/assets/keyboard.js +44 -0
  454. package/test-env/components/icon/assets/tokenMetricCounter.js +44 -0
  455. package/{optimize/lib/components/icon/assets/keyboard_shortcut.js → test-env/components/icon/assets/tokenMetricGauge.js} +3 -3
  456. package/test-env/components/icon/icon_map.js +39 -37
  457. package/test-env/components/image/image.js +73 -168
  458. package/test-env/components/image/image.styles.js +40 -0
  459. package/test-env/components/image/image_button.js +77 -0
  460. package/test-env/components/image/image_button.styles.js +48 -0
  461. package/test-env/components/image/image_caption.js +49 -0
  462. package/test-env/components/image/image_caption.styles.js +30 -0
  463. package/test-env/components/image/image_fullscreen_wrapper.js +114 -0
  464. package/test-env/components/image/image_fullscreen_wrapper.styles.js +32 -0
  465. package/test-env/components/image/image_types.js +18 -0
  466. package/test-env/components/image/image_wrapper.js +88 -0
  467. package/test-env/components/image/image_wrapper.styles.js +44 -0
  468. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  469. package/test-env/components/list_group/list_group.js +2 -2
  470. package/test-env/components/list_group/list_group_item.js +2 -2
  471. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  472. package/test-env/components/loading/loading_logo.js +1 -1
  473. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  474. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  475. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  476. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  477. package/test-env/components/notification/notification_event.js +2 -2
  478. package/test-env/components/notification/notification_event_meta.js +1 -1
  479. package/test-env/components/page/page_header/page_header.js +1 -1
  480. package/test-env/components/page/page_header/page_header_content.js +1 -1
  481. package/test-env/components/page/page_template.js +1 -1
  482. package/test-env/components/popover/input_popover.js +7 -3
  483. package/test-env/components/popover/popover.js +75 -166
  484. package/test-env/components/popover/popover.styles.js +26 -0
  485. package/test-env/components/popover/popover_arrow/_popover_arrow.js +47 -0
  486. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
  487. package/test-env/components/popover/popover_arrow/index.js +13 -0
  488. package/test-env/components/popover/popover_footer.js +26 -14
  489. package/test-env/components/popover/popover_footer.styles.js +30 -0
  490. package/test-env/components/popover/popover_panel/_popover_panel.js +119 -0
  491. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +54 -0
  492. package/test-env/components/popover/popover_panel/index.js +13 -0
  493. package/test-env/components/popover/popover_title.js +26 -14
  494. package/test-env/components/popover/popover_title.styles.js +32 -0
  495. package/test-env/components/popover/wrapping_popover.js +38 -78
  496. package/test-env/components/portal/portal.js +46 -75
  497. package/test-env/components/selectable/selectable.js +8 -8
  498. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  499. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  500. package/test-env/components/selectable/selectable_search/selectable_search.js +0 -5
  501. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
  502. package/test-env/components/suggest/suggest.js +1 -5
  503. package/test-env/components/suggest/suggest_item.js +1 -1
  504. package/test-env/components/table/table_header_button.js +1 -1
  505. package/test-env/components/text/text.styles.js +4 -3
  506. package/test-env/components/text_diff/text_diff.js +7 -0
  507. package/test-env/components/text_diff/text_diff.styles.js +25 -0
  508. package/test-env/components/timeline/timeline_item.js +1 -2
  509. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  510. package/test-env/components/toast/global_toast_list.js +1 -1
  511. package/test-env/components/toast/toast.js +1 -1
  512. package/test-env/components/token/token.js +1 -1
  513. package/test-env/components/token/token_map.js +115 -107
  514. package/test-env/components/tool_tip/icon_tip.js +1 -1
  515. package/test-env/global_styling/functions/logicals.js +30 -2
  516. package/test-env/global_styling/mixins/_responsive.js +60 -0
  517. package/test-env/global_styling/mixins/index.js +13 -0
  518. package/test-env/services/hooks/index.js +13 -0
  519. package/test-env/services/hooks/useLatest.js +26 -0
  520. package/test-env/test/emotion-prefix.js +1 -1
  521. package/test-env/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  522. package/test-env/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  523. package/lib/components/icon/svgs/keyboard_shortcut.svg +0 -3
  524. package/optimize/lib/components/icon/svgs/keyboard_shortcut.svg +0 -3
  525. package/src/components/comment_list/_comment.scss +0 -38
  526. package/src/components/comment_list/_comment_event.scss +0 -77
  527. package/src/components/comment_list/_comment_timeline.scss +0 -27
  528. package/src/components/comment_list/_index.scss +0 -3
  529. package/src/components/error_boundary/_error_boundary.scss +0 -13
  530. package/src/components/error_boundary/_index.scss +0 -1
  531. package/src/components/image/_image.scss +0 -212
  532. package/src/components/image/_index.scss +0 -1
  533. package/src/components/popover/_index.scss +0 -5
  534. package/src/components/popover/_input_popover.scss +0 -7
  535. package/src/components/popover/_popover.scss +0 -182
  536. package/src/components/popover/_popover_footer.scss +0 -27
  537. package/src/components/popover/_popover_title.scss +0 -27
  538. package/src/components/popover/_variables.scss +0 -2
  539. package/src/components/text_diff/_index.scss +0 -1
  540. package/src/components/text_diff/_text_diff.scss +0 -9
  541. package/src/global_styling/mixins/_popover.scss +0 -19
  542. package/src/themes/amsterdam/global_styling/mixins/_popover.scss +0 -5
  543. package/src/themes/amsterdam/overrides/_comment.scss +0 -3
  544. package/src/themes/amsterdam/overrides/_image.scss +0 -10
  545. package/src/themes/amsterdam/overrides/_popover.scss +0 -104
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiBackgroundColor, logicals, logicalSizeCSS } from '../../../global_styling';
10
+ export var popoverArrowSize = 'm';
11
+ export var euiPopoverArrowStyles = function euiPopoverArrowStyles(euiThemeContext) {
12
+ var euiTheme = euiThemeContext.euiTheme; // Match the background color of panels
13
+
14
+ var borderColor = euiBackgroundColor(euiThemeContext, 'plain');
15
+ var arrowSize = euiTheme.size[popoverArrowSize];
16
+ return {
17
+ // Base
18
+ euiPopoverArrow: /*#__PURE__*/css("position:absolute;", logicalSizeCSS(0, 0), "&:before{content:'';position:absolute;", logicalSizeCSS(0, 0), ";};label:euiPopoverArrow;"),
19
+ // POSITIONS
20
+ top: /*#__PURE__*/css("&:before{", logicals.bottom, ":-", arrowSize, ";", logicals['border-left'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid transparent;", logicals['border-top'], ":", arrowSize, " solid ", borderColor, ";};label:top;"),
21
+ bottom: /*#__PURE__*/css("&:before{", logicals.top, ":-", arrowSize, ";", logicals['border-left'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid ", borderColor, ";};label:bottom;"),
22
+ left: /*#__PURE__*/css("&:before{", logicals.top, ":50%;", logicals.right, ":-", arrowSize, ";", logicals['border-top'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid transparent;", logicals['border-left'], ":", arrowSize, " solid ", borderColor, ";};label:left;"),
23
+ right: /*#__PURE__*/css("&:before{", logicals.top, ":50%;", logicals.left, ":-", arrowSize, ";", logicals['border-top'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid ", borderColor, ";};label:right;")
24
+ };
25
+ };
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ export { EuiPopoverArrow } from './_popover_arrow';
@@ -13,28 +13,31 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
13
13
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
14
  * Side Public License, v 1.
15
15
  */
16
- import React from 'react';
16
+ import React, { useContext } from 'react';
17
17
  import PropTypes from "prop-types";
18
18
  import classNames from 'classnames';
19
- import { keysOf } from '../common';
19
+ import { useEuiPaddingCSS } from '../../global_styling';
20
+ import { useEuiTheme } from '../../services';
21
+ import { euiPopoverFooterStyles } from './popover_footer.styles';
22
+ import { EuiPopoverPanelContext } from './popover_panel/_popover_panel';
20
23
  import { jsx as ___EmotionJSX } from "@emotion/react";
21
- var paddingSizeToClassNameMap = {
22
- none: 'euiPopoverFooter--paddingNone',
23
- s: 'euiPopoverFooter--paddingSmall',
24
- m: 'euiPopoverFooter--paddingMedium',
25
- l: 'euiPopoverFooter--paddingLarge'
26
- };
27
- export var PADDING_SIZES = keysOf(paddingSizeToClassNameMap);
28
24
  export var EuiPopoverFooter = function EuiPopoverFooter(_ref) {
29
25
  var children = _ref.children,
30
26
  className = _ref.className,
31
27
  paddingSize = _ref.paddingSize,
32
28
  rest = _objectWithoutProperties(_ref, _excluded);
33
29
 
34
- var classes = classNames('euiPopoverFooter', // @ts-expect-error EuiPanel increased its available sizes.
35
- // When we convert this component to Emotion, we should also increase sizes to match EuiPanel and remove this comment.
36
- paddingSize ? paddingSizeToClassNameMap[paddingSize] : null, className);
30
+ var _useContext = useContext(EuiPopoverPanelContext),
31
+ panelPadding = _useContext.paddingSize;
32
+
33
+ var euiTheme = useEuiTheme();
34
+ var styles = euiPopoverFooterStyles(euiTheme, panelPadding);
35
+ var paddingStyles = useEuiPaddingCSS();
36
+ var cssStyles = [styles.euiPopoverFooter, // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
37
+ paddingStyles[paddingSize || panelPadding]];
38
+ var classes = classNames('euiPopoverFooter', className);
37
39
  return ___EmotionJSX("div", _extends({
40
+ css: cssStyles,
38
41
  className: classes
39
42
  }, rest), children);
40
43
  };
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiFontSize, euiPaddingSize, logicalCSS } from '../../global_styling';
10
+ export var euiPopoverFooterStyles = function euiPopoverFooterStyles(euiThemeContext, panelPadding) {
11
+ var euiTheme = euiThemeContext.euiTheme; // If the popover's containing panel has padding applied,
12
+ // ensure the title expands to cover that padding and
13
+
14
+ var panelPaddingSize = euiPaddingSize(euiThemeContext, panelPadding);
15
+ return {
16
+ // Base
17
+ euiPopoverFooter: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";", logicalCSS('border-top', euiTheme.border.thin), ";margin:", panelPaddingSize, " -", panelPaddingSize, " -", panelPaddingSize, ";;label:euiPopoverFooter;")
18
+ };
19
+ };
@@ -0,0 +1,114 @@
1
+ var _excluded = ["children", "className", "isOpen", "isAttached", "position"];
2
+
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+
5
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
6
+
7
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
8
+
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+
11
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
12
+
13
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
14
+
15
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
16
+
17
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
18
+
19
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
20
+
21
+ /*
22
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
23
+ * or more contributor license agreements. Licensed under the Elastic License
24
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
25
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
26
+ * Side Public License, v 1.
27
+ */
28
+ import React, { createContext, useContext } from 'react';
29
+ import PropTypes from "prop-types";
30
+ import classNames from 'classnames';
31
+ import { useEuiTheme } from '../../../services';
32
+ import { EuiPanel } from '../../panel/panel';
33
+ import { euiPopoverPanelStyles } from './_popover_panel.styles';
34
+ import { jsx as ___EmotionJSX } from "@emotion/react";
35
+ export var EuiPopoverPanelContext = /*#__PURE__*/createContext({
36
+ paddingSize: 'l'
37
+ });
38
+
39
+ /**
40
+ * *INTERNAL ONLY*
41
+ * Purely for re-use of styling
42
+ */
43
+ export var EuiPopoverPanel = function EuiPopoverPanel(_ref) {
44
+ var children = _ref.children,
45
+ className = _ref.className,
46
+ isOpen = _ref.isOpen,
47
+ isAttached = _ref.isAttached,
48
+ position = _ref.position,
49
+ rest = _objectWithoutProperties(_ref, _excluded);
50
+
51
+ var panelContext = useContext(EuiPopoverPanelContext);
52
+ if (rest.paddingSize) panelContext.paddingSize = rest.paddingSize;
53
+ var euiThemeContext = useEuiTheme(); // Using BEM child class for BWC
54
+
55
+ var classes = classNames('euiPopover__panel', className);
56
+ var styles = euiPopoverPanelStyles(euiThemeContext);
57
+ var panelCSS = [styles.euiPopover__panel, isOpen && styles.isOpen, isOpen && position && styles[position]];
58
+
59
+ if (isAttached) {
60
+ panelCSS = [].concat(_toConsumableArray(panelCSS), [isOpen && styles.attached.isOpen, position && styles.attached[position]]);
61
+ }
62
+
63
+ return ___EmotionJSX(EuiPopoverPanelContext.Provider, {
64
+ value: panelContext
65
+ }, ___EmotionJSX(EuiPanel, _extends({
66
+ className: classes,
67
+ css: panelCSS,
68
+ "data-popover-panel": true,
69
+ "data-popover-open": isOpen || undefined
70
+ }, rest), children));
71
+ };
72
+ EuiPopoverPanel.propTypes = {
73
+ element: PropTypes.oneOf(["div"]),
74
+
75
+ /**
76
+ * Adds a medium shadow to the panel;
77
+ * Only works when `color="plain"`
78
+ */
79
+ hasShadow: PropTypes.bool,
80
+
81
+ /**
82
+ * Adds a slight 1px border on all edges.
83
+ * Only works when `color="plain | transparent"`
84
+ */
85
+ hasBorder: PropTypes.bool,
86
+
87
+ /**
88
+ * Padding for all four sides
89
+ */
90
+ paddingSize: PropTypes.any,
91
+
92
+ /**
93
+ * Corner border radius
94
+ */
95
+ borderRadius: PropTypes.any,
96
+
97
+ /**
98
+ * When true the panel will grow in height to match `EuiFlexItem`
99
+ */
100
+ grow: PropTypes.bool,
101
+ panelRef: PropTypes.any,
102
+
103
+ /**
104
+ * Background color of the panel;
105
+ * Usually a lightened form of the brand colors
106
+ */
107
+ color: PropTypes.any,
108
+ className: PropTypes.string,
109
+ "aria-label": PropTypes.string,
110
+ "data-test-subj": PropTypes.string,
111
+ isOpen: PropTypes.bool,
112
+ isAttached: PropTypes.bool,
113
+ position: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.oneOf([null])])
114
+ };
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiShadow, euiShadowFlat, euiShadowMedium } from '../../../themes/amsterdam/global_styling/mixins';
10
+ import { euiCanAnimate, logicalCSS } from '../../../global_styling';
11
+ var translateDistance = 's';
12
+ /**
13
+ * 1. Can expand further, but it looks weird if it's smaller than the originating button.
14
+ * 2. Animation happens on the panel. But don't animate position when using the attached mode like for inputs
15
+ * 3. Make sure the panel stays within the window.
16
+ */
17
+
18
+ export var euiPopoverPanelStyles = function euiPopoverPanelStyles(euiThemeContext) {
19
+ var euiTheme = euiThemeContext.euiTheme;
20
+ return {
21
+ // Base
22
+ euiPopover__panel: /*#__PURE__*/css("position:absolute;", logicalCSS('min-width', "".concat(euiTheme.base * 7, "px")), ";", logicalCSS('max-width', "calc(100vw - ".concat(euiTheme.size.xl, ")")), ";backface-visibility:hidden;pointer-events:none;opacity:0;transform:translateY(0) translateX(0) translateZ(0);", euiShadowMedium(euiThemeContext, {
23
+ property: 'filter'
24
+ }), " &:focus{outline-offset:0;};label:euiPopover__panel;"),
25
+ // Is visible / open
26
+ isOpen: /*#__PURE__*/css("opacity:1;pointer-events:auto;", euiCanAnimate, "{transition:opacity ", euiTheme.animation.bounce, " ", euiTheme.animation.slow, ",transform ", euiTheme.animation.bounce, " calc(", euiTheme.animation.slow, " + 100ms);};label:isOpen;"),
27
+ // Positions
28
+ top: /*#__PURE__*/css("transform:translateY(", euiTheme.size[translateDistance], ") translateZ(0);;label:top;"),
29
+ bottom: /*#__PURE__*/css("transform:translateY(-", euiTheme.size[translateDistance], ") translateZ(0);;label:bottom;"),
30
+ left: /*#__PURE__*/css("transform:translateX(", euiTheme.size[translateDistance], ") translateZ(0);;label:left;"),
31
+ right: /*#__PURE__*/css("transform:translateX(-", euiTheme.size[translateDistance], ") translateZ(0);;label:right;"),
32
+ // Attached version overrides
33
+ attached: {
34
+ isOpen: /*#__PURE__*/css("filter:none;", euiCanAnimate, "{transition:opacity ", euiTheme.animation.bounce, " ", euiTheme.animation.slow, ";};label:isOpen;"),
35
+ top: /*#__PURE__*/css(euiShadowFlat(euiThemeContext), ";;label:top;"),
36
+ bottom: /*#__PURE__*/css(euiShadow(euiThemeContext, 'm'), ";;label:bottom;"),
37
+ // Satisfies TS
38
+ left: /*#__PURE__*/css(";label:left;"),
39
+ right: /*#__PURE__*/css(";label:right;")
40
+ }
41
+ };
42
+ };
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ export { EuiPopoverPanel } from './_popover_panel';
@@ -13,28 +13,31 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
13
13
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
14
  * Side Public License, v 1.
15
15
  */
16
- import React from 'react';
16
+ import React, { useContext } from 'react';
17
17
  import PropTypes from "prop-types";
18
18
  import classNames from 'classnames';
19
- import { keysOf } from '../common';
19
+ import { useEuiPaddingCSS } from '../../global_styling';
20
+ import { useEuiTheme } from '../../services';
21
+ import { euiPopoverTitleStyles } from './popover_title.styles';
22
+ import { EuiPopoverPanelContext } from './popover_panel/_popover_panel';
20
23
  import { jsx as ___EmotionJSX } from "@emotion/react";
21
- var paddingSizeToClassNameMap = {
22
- none: 'euiPopoverTitle--paddingNone',
23
- s: 'euiPopoverTitle--paddingSmall',
24
- m: 'euiPopoverTitle--paddingMedium',
25
- l: 'euiPopoverTitle--paddingLarge'
26
- };
27
- export var PADDING_SIZES = keysOf(paddingSizeToClassNameMap);
28
24
  export var EuiPopoverTitle = function EuiPopoverTitle(_ref) {
29
25
  var children = _ref.children,
30
26
  className = _ref.className,
31
27
  paddingSize = _ref.paddingSize,
32
28
  rest = _objectWithoutProperties(_ref, _excluded);
33
29
 
34
- var classes = classNames('euiPopoverTitle', // @ts-expect-error EuiPanel increased its available sizes
35
- // When we convert this component to Emotion, we should also increase sizes to match EuiPanel and remove this comment.
36
- paddingSize ? paddingSizeToClassNameMap[paddingSize] : null, className);
30
+ var _useContext = useContext(EuiPopoverPanelContext),
31
+ panelPadding = _useContext.paddingSize;
32
+
33
+ var euiTheme = useEuiTheme();
34
+ var styles = euiPopoverTitleStyles(euiTheme, panelPadding);
35
+ var paddingStyles = useEuiPaddingCSS();
36
+ var cssStyles = [styles.euiPopoverTitle, // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
37
+ paddingStyles[paddingSize || panelPadding]];
38
+ var classes = classNames('euiPopoverTitle', className);
37
39
  return ___EmotionJSX("div", _extends({
40
+ css: cssStyles,
38
41
  className: classes
39
42
  }, rest), children);
40
43
  };
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { euiPaddingSize, logicalCSS } from '../../global_styling';
10
+ import { euiTitle } from '../title/title.styles';
11
+ export var euiPopoverTitleStyles = function euiPopoverTitleStyles(euiThemeContext, panelPadding) {
12
+ var euiTheme = euiThemeContext.euiTheme; // If the popover's containing panel has padding applied,
13
+ // ensure the title expands to cover that padding and
14
+
15
+ var panelPaddingSize = euiPaddingSize(euiThemeContext, panelPadding);
16
+ return {
17
+ // Base
18
+ euiPopoverTitle: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), ";", logicalCSS('border-bottom', euiTheme.border.thin), ";margin:-", panelPaddingSize, " -", panelPaddingSize, " ", panelPaddingSize, ";;label:euiPopoverTitle;")
19
+ };
20
+ };
@@ -1,34 +1,22 @@
1
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
2
-
3
1
  var _excluded = ["button"];
4
2
 
5
3
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
4
 
7
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
8
-
9
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
10
-
11
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
12
-
13
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
14
-
15
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
5
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
16
6
 
17
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
7
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
8
 
19
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
20
10
 
21
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
11
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
22
12
 
23
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
13
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
24
14
 
25
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
15
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
26
16
 
27
- 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; } }
28
-
29
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
17
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
30
18
 
31
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
32
20
 
33
21
  /*
34
22
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -37,7 +25,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
37
25
  * in compliance with, at your election, the Elastic License 2.0 or the Server
38
26
  * Side Public License, v 1.
39
27
  */
40
- import React, { Component } from 'react';
28
+ import React, { useState, useEffect } from 'react';
41
29
  import PropTypes from "prop-types";
42
30
  import { EuiPopover } from './popover';
43
31
  import { EuiPortal } from '../portal';
@@ -48,77 +36,46 @@ import { jsx as ___EmotionJSX } from "@emotion/react";
48
36
  * then the button element is moved into the popover dom.
49
37
  * On unmount, the button is moved back to its original location.
50
38
  */
51
- export var EuiWrappingPopover = /*#__PURE__*/function (_Component) {
52
- _inherits(EuiWrappingPopover, _Component);
53
-
54
- var _super = _createSuper(EuiWrappingPopover);
55
-
56
- function EuiWrappingPopover() {
57
- var _this;
58
-
59
- _classCallCheck(this, EuiWrappingPopover);
60
-
61
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
62
- args[_key] = arguments[_key];
39
+ export var EuiWrappingPopover = function EuiWrappingPopover(_ref) {
40
+ var button = _ref.button,
41
+ rest = _objectWithoutProperties(_ref, _excluded);
42
+
43
+ var _useState = useState(null),
44
+ _useState2 = _slicedToArray(_useState, 2),
45
+ anchor = _useState2[0],
46
+ setAnchor = _useState2[1];
47
+
48
+ var _useState3 = useState(null),
49
+ _useState4 = _slicedToArray(_useState3, 2),
50
+ portal = _useState4[0],
51
+ setPortal = _useState4[1];
52
+
53
+ useEffect(function () {
54
+ if (anchor) {
55
+ // move the button into the popover DOM
56
+ anchor.insertAdjacentElement('beforebegin', button);
63
57
  }
64
58
 
65
- _this = _super.call.apply(_super, [this].concat(args));
66
-
67
- _defineProperty(_assertThisInitialized(_this), "portal", null);
68
-
69
- _defineProperty(_assertThisInitialized(_this), "anchor", null);
70
-
71
- _defineProperty(_assertThisInitialized(_this), "setPortalRef", function (node) {
72
- _this.portal = node;
73
- });
74
-
75
- _defineProperty(_assertThisInitialized(_this), "setAnchorRef", function (node) {
76
- _this.anchor = node;
77
- });
78
-
79
- return _this;
80
- }
81
-
82
- _createClass(EuiWrappingPopover, [{
83
- key: "componentDidMount",
84
- value: function componentDidMount() {
85
- if (this.anchor) {
86
- this.anchor.insertAdjacentElement('beforebegin', this.props.button);
87
- }
88
- }
89
- }, {
90
- key: "componentWillUnmount",
91
- value: function componentWillUnmount() {
92
- if (this.props.button.parentNode) {
93
- if (this.portal) {
94
- this.portal.insertAdjacentElement('beforebegin', this.props.button);
95
- }
59
+ return function () {
60
+ if (portal) {
61
+ // move the button back out of the popover DOM
62
+ portal.insertAdjacentElement('beforebegin', button);
96
63
  }
64
+ };
65
+ }, [anchor, button, portal]);
66
+ return ___EmotionJSX(EuiPortal, {
67
+ portalRef: setPortal,
68
+ insert: {
69
+ sibling: button,
70
+ position: 'after'
97
71
  }
98
- }, {
99
- key: "render",
100
- value: function render() {
101
- var _this$props = this.props,
102
- button = _this$props.button,
103
- rest = _objectWithoutProperties(_this$props, _excluded);
104
-
105
- return ___EmotionJSX(EuiPortal, {
106
- portalRef: this.setPortalRef,
107
- insert: {
108
- sibling: this.props.button,
109
- position: 'after'
110
- }
111
- }, ___EmotionJSX(EuiPopover, _extends({}, rest, {
112
- button: ___EmotionJSX("div", {
113
- ref: this.setAnchorRef,
114
- className: "euiWrappingPopover__anchor"
115
- })
116
- })));
117
- }
118
- }]);
119
-
120
- return EuiWrappingPopover;
121
- }(Component);
72
+ }, ___EmotionJSX(EuiPopover, _extends({}, rest, {
73
+ button: ___EmotionJSX("div", {
74
+ ref: setAnchor,
75
+ className: "euiWrappingPopover__anchor"
76
+ })
77
+ })));
78
+ };
122
79
  EuiWrappingPopover.propTypes = {
123
80
  button: PropTypes.any.isRequired
124
81
  };