@elastic/eui 60.2.0 → 62.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (545) hide show
  1. package/dist/eui_theme_dark.css +20 -660
  2. package/dist/eui_theme_dark.json +1 -2
  3. package/dist/eui_theme_dark.json.d.ts +1 -2
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +20 -660
  6. package/dist/eui_theme_light.json +1 -2
  7. package/dist/eui_theme_light.json.d.ts +1 -2
  8. package/dist/eui_theme_light.min.css +1 -1
  9. package/es/components/accessibility/skip_link/skip_link.js +1 -1
  10. package/es/components/accordion/accordion.js +10 -5
  11. package/es/components/avatar/avatar.js +1 -2
  12. package/es/components/badge/badge.js +1 -1
  13. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  14. package/es/components/basic_table/basic_table.js +1 -1
  15. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  16. package/es/components/basic_table/in_memory_table.js +1 -1
  17. package/es/components/button/_button_content_deprecated.js +1 -1
  18. package/es/components/button/button.js +2 -2
  19. package/es/components/button/button_display/_button_display.js +1 -1
  20. package/es/components/button/button_display/_button_display_content.js +1 -1
  21. package/es/components/button/button_empty/button_empty.js +1 -1
  22. package/es/components/button/button_group/button_group.js +1 -1
  23. package/es/components/button/button_group/button_group_button.js +1 -1
  24. package/es/components/button/button_icon/button_icon.js +1 -1
  25. package/es/components/call_out/call_out.js +1 -1
  26. package/es/components/card/card.js +1 -1
  27. package/es/components/card/card_select.js +1 -1
  28. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  29. package/es/components/color_picker/color_picker.js +1 -1
  30. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
  31. package/es/components/comment_list/comment.js +54 -24
  32. package/es/components/comment_list/comment_event.js +103 -32
  33. package/es/components/comment_list/comment_event.styles.js +78 -0
  34. package/es/components/comment_list/comment_list.js +45 -12
  35. package/es/components/comment_list/comment_timeline.js +29 -35
  36. package/es/components/context_menu/context_menu.js +1 -1
  37. package/es/components/context_menu/context_menu_panel.js +1 -1
  38. package/es/components/datagrid/body/data_grid_body.js +20 -17
  39. package/es/components/datagrid/body/data_grid_cell.js +102 -34
  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 +15 -13
  44. package/es/components/datagrid/utils/in_memory.js +12 -12
  45. package/es/components/datagrid/utils/ref.js +24 -3
  46. package/es/components/datagrid/utils/row_heights.js +27 -33
  47. package/es/components/date_picker/date_picker.js +2 -2
  48. package/es/components/date_picker/date_picker_range.js +1 -1
  49. package/es/components/empty_prompt/empty_prompt.js +1 -1
  50. package/es/components/error_boundary/error_boundary.js +18 -11
  51. package/es/components/error_boundary/error_boundary.styles.js +18 -0
  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/selectable/selectable.js +10 -9
  107. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  108. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  109. package/es/components/selectable/selectable_search/selectable_search.js +1 -6
  110. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
  111. package/es/components/suggest/suggest.js +1 -5
  112. package/es/components/suggest/suggest_item.js +1 -1
  113. package/es/components/table/table_header_button.js +1 -1
  114. package/es/components/text/text.styles.js +5 -4
  115. package/es/components/text_diff/text_diff.js +5 -0
  116. package/es/components/text_diff/text_diff.styles.js +15 -0
  117. package/es/components/timeline/timeline_item.js +1 -2
  118. package/es/components/timeline/timeline_item_icon.js +1 -1
  119. package/es/components/toast/global_toast_list.js +1 -1
  120. package/es/components/toast/toast.js +1 -1
  121. package/es/components/token/token.js +1 -1
  122. package/es/components/token/token_map.js +115 -107
  123. package/es/components/tool_tip/icon_tip.js +1 -1
  124. package/es/components/tour/tour.js +6 -6
  125. package/es/components/tour/tour_step.js +6 -6
  126. package/es/global_styling/functions/logicals.js +22 -0
  127. package/es/global_styling/mixins/_responsive.js +46 -0
  128. package/es/global_styling/mixins/index.js +2 -1
  129. package/es/services/hooks/index.js +1 -0
  130. package/es/services/hooks/useLatest.js +18 -0
  131. package/es/test/emotion-prefix.js +1 -1
  132. package/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  133. package/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  134. package/eui.d.ts +620 -252
  135. package/i18ntokens.json +147 -51
  136. package/lib/components/accessibility/skip_link/skip_link.js +1 -1
  137. package/lib/components/accordion/accordion.js +10 -5
  138. package/lib/components/avatar/avatar.js +1 -2
  139. package/lib/components/badge/badge.js +1 -1
  140. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  141. package/lib/components/basic_table/basic_table.js +1 -1
  142. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  143. package/lib/components/basic_table/in_memory_table.js +1 -1
  144. package/lib/components/button/_button_content_deprecated.js +1 -1
  145. package/lib/components/button/button.js +2 -2
  146. package/lib/components/button/button_display/_button_display.js +1 -1
  147. package/lib/components/button/button_display/_button_display_content.js +1 -1
  148. package/lib/components/button/button_empty/button_empty.js +1 -1
  149. package/lib/components/button/button_group/button_group.js +1 -1
  150. package/lib/components/button/button_group/button_group_button.js +1 -1
  151. package/lib/components/button/button_icon/button_icon.js +1 -1
  152. package/lib/components/call_out/call_out.js +1 -1
  153. package/lib/components/card/card.js +1 -1
  154. package/lib/components/card/card_select.js +1 -1
  155. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  156. package/lib/components/color_picker/color_picker.js +1 -1
  157. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
  158. package/lib/components/comment_list/comment.js +53 -25
  159. package/lib/components/comment_list/comment_event.js +104 -41
  160. package/lib/components/comment_list/comment_event.styles.js +86 -0
  161. package/lib/components/comment_list/comment_list.js +46 -12
  162. package/lib/components/comment_list/comment_timeline.js +30 -40
  163. package/lib/components/context_menu/context_menu.js +1 -1
  164. package/lib/components/context_menu/context_menu_panel.js +1 -1
  165. package/lib/components/datagrid/body/data_grid_body.js +20 -17
  166. package/lib/components/datagrid/body/data_grid_cell.js +101 -33
  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 +15 -13
  171. package/lib/components/datagrid/utils/in_memory.js +12 -12
  172. package/lib/components/datagrid/utils/ref.js +24 -3
  173. package/lib/components/datagrid/utils/row_heights.js +26 -32
  174. package/lib/components/date_picker/date_picker.js +2 -2
  175. package/lib/components/date_picker/date_picker_range.js +1 -1
  176. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  177. package/lib/components/error_boundary/error_boundary.js +23 -13
  178. package/lib/components/error_boundary/error_boundary.styles.js +30 -0
  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/selectable/selectable.js +10 -9
  236. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  237. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  238. package/lib/components/selectable/selectable_search/selectable_search.js +0 -5
  239. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
  240. package/lib/components/suggest/suggest.js +1 -5
  241. package/lib/components/suggest/suggest_item.js +1 -1
  242. package/lib/components/table/table_header_button.js +1 -1
  243. package/lib/components/text/text.styles.js +4 -3
  244. package/lib/components/text_diff/text_diff.js +7 -0
  245. package/lib/components/text_diff/text_diff.styles.js +25 -0
  246. package/lib/components/timeline/timeline_item.js +1 -2
  247. package/lib/components/timeline/timeline_item_icon.js +1 -1
  248. package/lib/components/toast/global_toast_list.js +1 -1
  249. package/lib/components/toast/toast.js +1 -1
  250. package/lib/components/token/token.js +1 -1
  251. package/lib/components/token/token_map.js +115 -107
  252. package/lib/components/tool_tip/icon_tip.js +1 -1
  253. package/lib/global_styling/functions/logicals.js +30 -2
  254. package/lib/global_styling/mixins/_responsive.js +60 -0
  255. package/lib/global_styling/mixins/index.js +13 -0
  256. package/lib/services/hooks/index.js +13 -0
  257. package/lib/services/hooks/useLatest.js +26 -0
  258. package/lib/test/emotion-prefix.js +1 -1
  259. package/lib/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  260. package/lib/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  261. package/optimize/es/components/accordion/accordion.js +10 -5
  262. package/optimize/es/components/avatar/avatar.js +0 -1
  263. package/optimize/es/components/color_picker/color_picker.js +1 -1
  264. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
  265. package/optimize/es/components/comment_list/comment.js +24 -18
  266. package/optimize/es/components/comment_list/comment_event.js +83 -28
  267. package/optimize/es/components/comment_list/comment_event.styles.js +78 -0
  268. package/optimize/es/components/comment_list/comment_list.js +7 -3
  269. package/optimize/es/components/comment_list/comment_timeline.js +19 -32
  270. package/optimize/es/components/context_menu/context_menu_panel.js +1 -1
  271. package/optimize/es/components/datagrid/body/data_grid_body.js +7 -4
  272. package/optimize/es/components/datagrid/body/data_grid_cell.js +18 -9
  273. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +150 -54
  274. package/optimize/es/components/datagrid/data_grid.js +2 -0
  275. package/optimize/es/components/datagrid/utils/ref.js +24 -3
  276. package/optimize/es/components/datagrid/utils/row_heights.js +27 -33
  277. package/optimize/es/components/error_boundary/error_boundary.js +17 -10
  278. package/optimize/es/components/error_boundary/error_boundary.styles.js +18 -0
  279. package/optimize/es/components/focus_trap/focus_trap.js +1 -0
  280. package/optimize/es/components/form/form.styles.js +11 -0
  281. package/optimize/es/components/icon/assets/keyboard.js +34 -0
  282. package/optimize/es/components/icon/assets/tokenMetricCounter.js +34 -0
  283. package/optimize/es/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
  284. package/optimize/es/components/icon/icon_map.js +39 -37
  285. package/optimize/es/components/image/image.js +50 -154
  286. package/optimize/es/components/image/image.styles.js +28 -0
  287. package/optimize/es/components/image/image_button.js +56 -0
  288. package/optimize/es/components/image/image_button.styles.js +41 -0
  289. package/optimize/es/components/image/image_caption.js +24 -0
  290. package/optimize/es/components/image/image_caption.styles.js +18 -0
  291. package/optimize/es/components/image/image_fullscreen_wrapper.js +84 -0
  292. package/optimize/es/components/image/image_fullscreen_wrapper.styles.js +26 -0
  293. package/optimize/es/components/image/image_types.js +10 -0
  294. package/optimize/es/components/image/image_wrapper.js +62 -0
  295. package/optimize/es/components/image/image_wrapper.styles.js +41 -0
  296. package/optimize/es/components/popover/input_popover.js +8 -4
  297. package/optimize/es/components/popover/popover.js +41 -131
  298. package/optimize/es/components/popover/popover.styles.js +15 -0
  299. package/optimize/es/components/popover/popover_arrow/_popover_arrow.js +29 -0
  300. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +25 -0
  301. package/optimize/es/components/popover/popover_arrow/index.js +8 -0
  302. package/optimize/es/components/popover/popover_footer.js +15 -12
  303. package/optimize/es/components/popover/popover_footer.styles.js +19 -0
  304. package/optimize/es/components/popover/popover_panel/_popover_panel.js +55 -0
  305. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +42 -0
  306. package/optimize/es/components/popover/popover_panel/index.js +8 -0
  307. package/optimize/es/components/popover/popover_title.js +15 -12
  308. package/optimize/es/components/popover/popover_title.styles.js +20 -0
  309. package/optimize/es/components/selectable/selectable.js +10 -9
  310. package/optimize/es/components/selectable/selectable_search/selectable_search.js +1 -6
  311. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  312. package/optimize/es/components/suggest/suggest.js +0 -4
  313. package/optimize/es/components/text/text.styles.js +5 -4
  314. package/optimize/es/components/text_diff/text_diff.js +5 -0
  315. package/optimize/es/components/text_diff/text_diff.styles.js +15 -0
  316. package/optimize/es/components/timeline/timeline_item.js +1 -2
  317. package/optimize/es/components/token/token_map.js +115 -107
  318. package/optimize/es/global_styling/functions/logicals.js +22 -0
  319. package/optimize/es/global_styling/mixins/_responsive.js +46 -0
  320. package/optimize/es/global_styling/mixins/index.js +2 -1
  321. package/optimize/es/services/hooks/index.js +1 -0
  322. package/optimize/es/services/hooks/useLatest.js +18 -0
  323. package/optimize/es/test/emotion-prefix.js +1 -1
  324. package/optimize/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
  325. package/optimize/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
  326. package/optimize/lib/components/accordion/accordion.js +8 -5
  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 +7 -4
  337. package/optimize/lib/components/datagrid/body/data_grid_cell.js +17 -8
  338. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +153 -54
  339. package/optimize/lib/components/datagrid/data_grid.js +2 -0
  340. package/optimize/lib/components/datagrid/utils/ref.js +24 -3
  341. package/optimize/lib/components/datagrid/utils/row_heights.js +25 -30
  342. package/optimize/lib/components/error_boundary/error_boundary.js +20 -10
  343. package/optimize/lib/components/error_boundary/error_boundary.styles.js +30 -0
  344. package/optimize/lib/components/focus_trap/focus_trap.js +1 -0
  345. package/optimize/lib/components/form/form.styles.js +20 -0
  346. package/optimize/lib/components/icon/assets/keyboard.js +44 -0
  347. package/optimize/lib/components/icon/assets/tokenMetricCounter.js +44 -0
  348. package/{test-env/components/icon/assets/keyboard_shortcut.js → optimize/lib/components/icon/assets/tokenMetricGauge.js} +3 -3
  349. package/optimize/lib/components/icon/icon_map.js +39 -37
  350. package/optimize/lib/components/icon/svgs/keyboard.svg +3 -0
  351. package/optimize/lib/components/icon/svgs/tokens/tokenMetricCounter.svg +3 -0
  352. package/optimize/lib/components/icon/svgs/tokens/tokenMetricGauge.svg +3 -0
  353. package/optimize/lib/components/image/image.js +52 -156
  354. package/optimize/lib/components/image/image.styles.js +40 -0
  355. package/optimize/lib/components/image/image_button.js +68 -0
  356. package/optimize/lib/components/image/image_button.styles.js +48 -0
  357. package/optimize/lib/components/image/image_caption.js +42 -0
  358. package/optimize/lib/components/image/image_caption.styles.js +30 -0
  359. package/optimize/lib/components/image/image_fullscreen_wrapper.js +108 -0
  360. package/optimize/lib/components/image/image_fullscreen_wrapper.styles.js +32 -0
  361. package/optimize/lib/components/image/image_types.js +18 -0
  362. package/optimize/lib/components/image/image_wrapper.js +82 -0
  363. package/optimize/lib/components/image/image_wrapper.styles.js +44 -0
  364. package/optimize/lib/components/popover/input_popover.js +7 -3
  365. package/optimize/lib/components/popover/popover.js +60 -150
  366. package/optimize/lib/components/popover/popover.styles.js +26 -0
  367. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.js +39 -0
  368. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
  369. package/optimize/lib/components/popover/popover_arrow/index.js +13 -0
  370. package/optimize/lib/components/popover/popover_footer.js +26 -14
  371. package/optimize/lib/components/popover/popover_footer.styles.js +30 -0
  372. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +74 -0
  373. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +54 -0
  374. package/optimize/lib/components/popover/popover_panel/index.js +13 -0
  375. package/optimize/lib/components/popover/popover_title.js +26 -14
  376. package/optimize/lib/components/popover/popover_title.styles.js +32 -0
  377. package/optimize/lib/components/selectable/selectable.js +10 -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 +3 -3
  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/accordion/accordion.js +8 -5
  405. package/test-env/components/avatar/avatar.js +1 -2
  406. package/test-env/components/badge/badge.js +1 -1
  407. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  408. package/test-env/components/basic_table/basic_table.js +1 -1
  409. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  410. package/test-env/components/basic_table/in_memory_table.js +1 -1
  411. package/test-env/components/button/_button_content_deprecated.js +1 -1
  412. package/test-env/components/button/button.js +2 -2
  413. package/test-env/components/button/button_display/_button_display.js +1 -1
  414. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  415. package/test-env/components/button/button_empty/button_empty.js +1 -1
  416. package/test-env/components/button/button_group/button_group.js +1 -1
  417. package/test-env/components/button/button_group/button_group_button.js +1 -1
  418. package/test-env/components/button/button_icon/button_icon.js +1 -1
  419. package/test-env/components/call_out/call_out.js +1 -1
  420. package/test-env/components/card/card.js +1 -1
  421. package/test-env/components/card/card_select.js +1 -1
  422. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  423. package/test-env/components/color_picker/color_picker.js +1 -1
  424. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
  425. package/test-env/components/comment_list/comment.js +53 -24
  426. package/test-env/components/comment_list/comment_event.js +105 -35
  427. package/test-env/components/comment_list/comment_event.styles.js +86 -0
  428. package/test-env/components/comment_list/comment_list.js +46 -12
  429. package/test-env/components/comment_list/comment_timeline.js +30 -40
  430. package/test-env/components/context_menu/context_menu.js +1 -1
  431. package/test-env/components/context_menu/context_menu_panel.js +1 -1
  432. package/test-env/components/datagrid/body/data_grid_body.js +20 -17
  433. package/test-env/components/datagrid/body/data_grid_cell.js +101 -33
  434. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +166 -67
  435. package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -13
  436. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  437. package/test-env/components/datagrid/data_grid.js +15 -13
  438. package/test-env/components/datagrid/utils/in_memory.js +12 -12
  439. package/test-env/components/datagrid/utils/ref.js +24 -3
  440. package/test-env/components/datagrid/utils/row_heights.js +25 -30
  441. package/test-env/components/date_picker/date_picker.js +2 -2
  442. package/test-env/components/date_picker/date_picker_range.js +1 -1
  443. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  444. package/test-env/components/error_boundary/error_boundary.js +23 -13
  445. package/test-env/components/error_boundary/error_boundary.styles.js +30 -0
  446. package/test-env/components/form/field_number/field_number.js +1 -1
  447. package/test-env/components/form/field_text/field_text.js +2 -2
  448. package/test-env/components/form/form.styles.js +20 -0
  449. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  450. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  451. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  452. package/test-env/components/header/header_links/header_link.js +1 -1
  453. package/test-env/components/header/header_links/header_links.js +10 -8
  454. package/test-env/components/header/header_logo.js +1 -1
  455. package/test-env/components/icon/assets/keyboard.js +44 -0
  456. package/test-env/components/icon/assets/tokenMetricCounter.js +44 -0
  457. package/{optimize/lib/components/icon/assets/keyboard_shortcut.js → test-env/components/icon/assets/tokenMetricGauge.js} +3 -3
  458. package/test-env/components/icon/icon_map.js +39 -37
  459. package/test-env/components/image/image.js +73 -168
  460. package/test-env/components/image/image.styles.js +40 -0
  461. package/test-env/components/image/image_button.js +77 -0
  462. package/test-env/components/image/image_button.styles.js +48 -0
  463. package/test-env/components/image/image_caption.js +49 -0
  464. package/test-env/components/image/image_caption.styles.js +30 -0
  465. package/test-env/components/image/image_fullscreen_wrapper.js +114 -0
  466. package/test-env/components/image/image_fullscreen_wrapper.styles.js +32 -0
  467. package/test-env/components/image/image_types.js +18 -0
  468. package/test-env/components/image/image_wrapper.js +88 -0
  469. package/test-env/components/image/image_wrapper.styles.js +44 -0
  470. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  471. package/test-env/components/list_group/list_group.js +2 -2
  472. package/test-env/components/list_group/list_group_item.js +2 -2
  473. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  474. package/test-env/components/loading/loading_logo.js +1 -1
  475. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  476. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  477. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  478. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  479. package/test-env/components/notification/notification_event.js +2 -2
  480. package/test-env/components/notification/notification_event_meta.js +1 -1
  481. package/test-env/components/page/page_header/page_header.js +1 -1
  482. package/test-env/components/page/page_header/page_header_content.js +1 -1
  483. package/test-env/components/page/page_template.js +1 -1
  484. package/test-env/components/popover/input_popover.js +7 -3
  485. package/test-env/components/popover/popover.js +75 -166
  486. package/test-env/components/popover/popover.styles.js +26 -0
  487. package/test-env/components/popover/popover_arrow/_popover_arrow.js +47 -0
  488. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
  489. package/test-env/components/popover/popover_arrow/index.js +13 -0
  490. package/test-env/components/popover/popover_footer.js +26 -14
  491. package/test-env/components/popover/popover_footer.styles.js +30 -0
  492. package/test-env/components/popover/popover_panel/_popover_panel.js +119 -0
  493. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +54 -0
  494. package/test-env/components/popover/popover_panel/index.js +13 -0
  495. package/test-env/components/popover/popover_title.js +26 -14
  496. package/test-env/components/popover/popover_title.styles.js +32 -0
  497. package/test-env/components/selectable/selectable.js +10 -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,62 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+
4
+ /*
5
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
+ * or more contributor license agreements. Licensed under the Elastic License
7
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
8
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
9
+ * Side Public License, v 1.
10
+ */
11
+ import React from 'react';
12
+ import classNames from 'classnames';
13
+ import { useEuiTheme } from '../../services';
14
+ import { useInnerText } from '../inner_text';
15
+ import { euiImageWrapperStyles } from './image_wrapper.styles';
16
+ import { EuiImageButton } from './image_button';
17
+ import { EuiImageCaption } from './image_caption';
18
+ import { jsx as ___EmotionJSX } from "@emotion/react";
19
+ export var EuiImageWrapper = function EuiImageWrapper(_ref) {
20
+ var alt = _ref.alt,
21
+ caption = _ref.caption,
22
+ hasShadow = _ref.hasShadow,
23
+ allowFullScreen = _ref.allowFullScreen,
24
+ float = _ref.float,
25
+ margin = _ref.margin,
26
+ children = _ref.children,
27
+ setIsFullScreen = _ref.setIsFullScreen,
28
+ wrapperProps = _ref.wrapperProps,
29
+ fullScreenIconColor = _ref.fullScreenIconColor,
30
+ isFullWidth = _ref.isFullWidth;
31
+
32
+ var openFullScreen = function openFullScreen() {
33
+ setIsFullScreen(true);
34
+ };
35
+
36
+ var classes = classNames('euiImageWrapper', wrapperProps && wrapperProps.className);
37
+ var euiTheme = useEuiTheme();
38
+ var styles = euiImageWrapperStyles(euiTheme);
39
+ var cssFigureStyles = [styles.euiImageWrapper, float && styles[float], margin && styles[margin], allowFullScreen && styles.allowFullScreen, isFullWidth && styles.fullWidth];
40
+
41
+ var _useInnerText = useInnerText(),
42
+ _useInnerText2 = _slicedToArray(_useInnerText, 2),
43
+ optionalCaptionRef = _useInnerText2[0],
44
+ optionalCaptionText = _useInnerText2[1];
45
+
46
+ return ___EmotionJSX("figure", _extends({
47
+ "aria-label": optionalCaptionText
48
+ }, wrapperProps, {
49
+ className: classes,
50
+ css: cssFigureStyles
51
+ }), allowFullScreen ? ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiImageButton, {
52
+ hasAlt: !!alt,
53
+ hasShadow: hasShadow,
54
+ onClick: openFullScreen,
55
+ "data-test-subj": "activateFullScreenButton",
56
+ isFullWidth: isFullWidth,
57
+ fullScreenIconColor: fullScreenIconColor
58
+ }, children)) : children, ___EmotionJSX(EuiImageCaption, {
59
+ ref: optionalCaptionRef,
60
+ caption: caption
61
+ }));
62
+ };
@@ -0,0 +1,41 @@
1
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
2
+
3
+ /*
4
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
+ * or more contributor license agreements. Licensed under the Elastic License
6
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
7
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
8
+ * Side Public License, v 1.
9
+ */
10
+ import { css } from '@emotion/react';
11
+ import { logicalCSS, logicalTextAlignCSS, logicalSide } from '../../global_styling';
12
+
13
+ var _ref = process.env.NODE_ENV === "production" ? {
14
+ name: "gacnmc-allowFullScreen",
15
+ styles: "&:hover [class*='euiImageCaption']{text-decoration:underline;};label:allowFullScreen;"
16
+ } : {
17
+ name: "gacnmc-allowFullScreen",
18
+ styles: "&:hover [class*='euiImageCaption']{text-decoration:underline;};label:allowFullScreen;",
19
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
20
+ };
21
+
22
+ export var euiImageWrapperStyles = function euiImageWrapperStyles(euiThemeContext) {
23
+ var euiTheme = euiThemeContext.euiTheme;
24
+ return {
25
+ // Base
26
+ euiImageWrapper: /*#__PURE__*/css("display:table;", logicalCSS('max-width', '100%'), " ", logicalTextAlignCSS('center'), ";line-height:0;flex-shrink:0;;label:euiImageWrapper;"),
27
+ allowFullScreen: _ref,
28
+ // Margins
29
+ s: /*#__PURE__*/css("margin:", euiTheme.size.s, ";;label:s;"),
30
+ m: /*#__PURE__*/css("margin:", euiTheme.size.base, ";;label:m;"),
31
+ l: /*#__PURE__*/css("margin:", euiTheme.size.l, ";;label:l;"),
32
+ xl: /*#__PURE__*/css("margin:", euiTheme.size.xl, ";;label:xl;"),
33
+ // Floats
34
+ // 1: Logical properties/values in `float` is currently not yet supported by all browsers w/o flags
35
+ // @see https://caniuse.com/mdn-css_properties_float_flow_relative_values for when we can remove left/right fallbacks
36
+ left: /*#__PURE__*/css("@media only screen and (min-width: ", euiTheme.breakpoint.m, "px){float:left;float:", logicalSide.left, ";", logicalCSS('margin-left', '0'), ";", logicalCSS('margin-top', '0'), ";};label:left;"),
37
+ right: /*#__PURE__*/css("@media only screen and (min-width: ", euiTheme.breakpoint.m, "px){float:right;float:", logicalSide.right, ";", logicalCSS('margin-right', '0'), ";", logicalCSS('margin-top', '0'), ";};label:right;"),
38
+ // Sizes
39
+ fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;")
40
+ };
41
+ };
@@ -16,7 +16,10 @@ import { tabbable } from 'tabbable';
16
16
  import { EuiFocusTrap } from '../focus_trap';
17
17
  import { EuiPopover } from './popover';
18
18
  import { EuiResizeObserver } from '../observer/resize_observer';
19
- import { cascadingMenuKeys, useCombinedRefs } from '../../services';
19
+ import { cascadingMenuKeys, useCombinedRefs, useEuiTheme } from '../../services';
20
+ import { euiFormMaxWidth } from '../form/form.styles';
21
+ import { css } from '@emotion/react';
22
+ import { logicalCSS } from '../../global_styling';
20
23
  import { jsx as ___EmotionJSX } from "@emotion/react";
21
24
  export var EuiInputPopover = function EuiInputPopover(_ref) {
22
25
  var children = _ref.children,
@@ -31,6 +34,8 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
31
34
  _panelRef = _ref.panelRef,
32
35
  props = _objectWithoutProperties(_ref, _excluded);
33
36
 
37
+ var euiThemeContext = useEuiTheme();
38
+
34
39
  var _useState = useState(null),
35
40
  _useState2 = _slicedToArray(_useState, 2),
36
41
  inputEl = _useState2[0],
@@ -86,10 +91,9 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
86
91
  }
87
92
  };
88
93
 
89
- var classes = classnames('euiInputPopover', {
90
- 'euiInputPopover--fullWidth': fullWidth
91
- }, className);
94
+ var classes = classnames('euiInputPopover', className);
92
95
  return ___EmotionJSX(EuiPopover, _extends({
96
+ css: /*#__PURE__*/css(fullWidth ? undefined : logicalCSS('max-width', euiFormMaxWidth(euiThemeContext)), ";label:EuiInputPopover;"),
93
97
  ownFocus: false,
94
98
  button: ___EmotionJSX(EuiResizeObserver, {
95
99
  onResize: onResize
@@ -1,3 +1,4 @@
1
+ import { css as _css } from "@emotion/react";
1
2
  import _extends from "@babel/runtime/helpers/extends";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
4
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
@@ -8,9 +9,8 @@ import _inherits from "@babel/runtime/helpers/inherits";
8
9
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
9
10
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
10
11
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
- import _typeof from "@babel/runtime/helpers/typeof";
12
12
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
13
- var _excluded = ["anchorClassName", "anchorPosition", "button", "buttonRef", "insert", "isOpen", "ownFocus", "children", "className", "closePopover", "panelClassName", "panelPaddingSize", "panelProps", "panelRef", "panelStyle", "popoverScreenReaderText", "popoverRef", "hasArrow", "arrowChildren", "repositionOnScroll", "zIndex", "initialFocus", "attachToAnchor", "display", "offset", "onTrapDeactivation", "buffer", "aria-label", "aria-labelledby", "container", "focusTrapProps", "tabIndex"];
13
+ var _excluded = ["anchorClassName", "anchorPosition", "button", "buttonRef", "insert", "isOpen", "ownFocus", "children", "className", "closePopover", "panelClassName", "panelPaddingSize", "panelProps", "panelRef", "panelStyle", "popoverScreenReaderText", "popoverRef", "hasArrow", "arrowChildren", "repositionOnScroll", "zIndex", "attachToAnchor", "display", "offset", "onTrapDeactivation", "buffer", "aria-label", "aria-labelledby", "container", "focusTrapProps", "initialFocus", "tabIndex"];
14
14
 
15
15
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
16
16
 
@@ -33,12 +33,14 @@ import { focusable } from 'tabbable';
33
33
  import { EuiFocusTrap } from '../focus_trap';
34
34
  import { cascadingMenuKeys, getTransitionTimings, getWaitDuration, performOnFrame, htmlIdGenerator } from '../../services';
35
35
  import { EuiScreenReaderOnly } from '../accessibility';
36
- import { EuiPanel } from '../panel';
37
36
  import { EuiPortal } from '../portal';
38
37
  import { EuiMutationObserver } from '../observer/mutation_observer';
39
38
  import { findPopoverPosition, getElementZIndex } from '../../services/popover';
40
39
  import { EuiI18n } from '../i18n';
41
40
  import { EuiOutsideClickDetector } from '../outside_click_detector';
41
+ import { EuiPopoverArrow } from './popover_arrow';
42
+ import { euiPopoverStyles } from './popover.styles';
43
+ import { EuiPopoverPanel } from './popover_panel';
42
44
  import { jsx as ___EmotionJSX } from "@emotion/react";
43
45
  export var popoverAnchorPosition = ['upCenter', 'upLeft', 'upRight', 'downCenter', 'downLeft', 'downRight', 'leftCenter', 'leftUp', 'leftDown', 'rightCenter', 'rightUp', 'rightDown'];
44
46
  var anchorPositionToPopoverPositionMap = {
@@ -75,45 +77,10 @@ export function getPopoverAlignFromAnchorPosition(anchorPosition) {
75
77
 
76
78
  return anchorPositionToPopoverPositionMap[align.toLowerCase()];
77
79
  }
78
- var anchorPositionToClassNameMap = {
79
- upCenter: 'euiPopover--anchorUpCenter',
80
- upLeft: 'euiPopover--anchorUpLeft',
81
- upRight: 'euiPopover--anchorUpRight',
82
- downCenter: 'euiPopover--anchorDownCenter',
83
- downLeft: 'euiPopover--anchorDownLeft',
84
- downRight: 'euiPopover--anchorDownRight',
85
- leftCenter: 'euiPopover--anchorLeftCenter',
86
- leftUp: 'euiPopover--anchorLeftUp',
87
- leftDown: 'euiPopover--anchorLeftDown',
88
- rightCenter: 'euiPopover--anchorRightCenter',
89
- rightUp: 'euiPopover--anchorRightUp',
90
- rightDown: 'euiPopover--anchorRightDown'
91
- };
92
- export var ANCHOR_POSITIONS = Object.keys(anchorPositionToClassNameMap);
93
- var displayToClassNameMap = {
94
- inlineBlock: undefined,
95
- block: 'euiPopover--displayBlock'
96
- };
97
- export var DISPLAY = Object.keys(displayToClassNameMap);
98
80
  var DEFAULT_POPOVER_STYLES = {
99
81
  top: 50,
100
82
  left: 50
101
83
  };
102
-
103
- function getElementFromInitialFocus(initialFocus) {
104
- var initialFocusType = _typeof(initialFocus);
105
-
106
- if (initialFocusType === 'string') {
107
- return document.querySelector(initialFocus);
108
- }
109
-
110
- if (initialFocusType === 'function') {
111
- return initialFocus();
112
- }
113
-
114
- return initialFocus;
115
- }
116
-
117
84
  var returnFocusConfig = {
118
85
  preventScroll: true
119
86
  };
@@ -139,14 +106,10 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
139
106
 
140
107
  _defineProperty(_assertThisInitialized(_this), "closingTransitionAnimationFrame", void 0);
141
108
 
142
- _defineProperty(_assertThisInitialized(_this), "updateFocusAnimationFrame", void 0);
143
-
144
109
  _defineProperty(_assertThisInitialized(_this), "button", null);
145
110
 
146
111
  _defineProperty(_assertThisInitialized(_this), "panel", null);
147
112
 
148
- _defineProperty(_assertThisInitialized(_this), "hasSetInitialFocus", false);
149
-
150
113
  _defineProperty(_assertThisInitialized(_this), "descriptionId", htmlIdGenerator()());
151
114
 
152
115
  _defineProperty(_assertThisInitialized(_this), "closePopover", function () {
@@ -231,8 +194,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
231
194
  isOpenStable: true
232
195
  }, function () {
233
196
  _this.positionPopoverFixed();
234
-
235
- _this.updateFocus();
236
197
  });
237
198
  }, durationMatch + delayMatch);
238
199
  });
@@ -358,64 +319,9 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
358
319
  }
359
320
 
360
321
  _createClass(EuiPopover, [{
361
- key: "updateFocus",
362
- value: function updateFocus() {
363
- var _this2 = this;
364
-
365
- // Wait for the DOM to update.
366
- this.updateFocusAnimationFrame = window.requestAnimationFrame(function () {
367
- if (!_this2.props.ownFocus || !_this2.panel || _this2.props.initialFocus === false) {
368
- return;
369
- } // If we've already focused on something inside the panel, everything's fine.
370
-
371
-
372
- if (_this2.hasSetInitialFocus && _this2.panel.contains(document.activeElement)) {
373
- return;
374
- } // Otherwise focus either `initialFocus` or the panel
375
-
376
-
377
- var focusTarget;
378
-
379
- if (_this2.props.initialFocus != null) {
380
- focusTarget = getElementFromInitialFocus(_this2.props.initialFocus);
381
- } // there's a race condition between the popover content becoming visible and this function call
382
- // if the element isn't visible yet (due to css styling) then it can't accept focus
383
- // so wait for another render and try again
384
-
385
-
386
- if (focusTarget == null) {
387
- // there isn't a focus target, one of two reasons:
388
- // #1 is the whole panel hidden? If so, schedule another check
389
- // #2 panel is visible and no `initialFocus` was set, move focus to the panel
390
- var panelVisibility = window.getComputedStyle(_this2.panel).opacity;
391
-
392
- if (panelVisibility === '0') {
393
- // #1
394
- _this2.updateFocus();
395
- } else {
396
- // #2
397
- focusTarget = _this2.panel;
398
- }
399
- } else {
400
- // found an element to focus, but is it visible?
401
- var visibility = window.getComputedStyle(focusTarget).visibility;
402
-
403
- if (visibility === 'hidden') {
404
- // not visible, check again next render frame
405
- _this2.updateFocus();
406
- }
407
- }
408
-
409
- if (focusTarget != null) {
410
- _this2.hasSetInitialFocus = true;
411
- focusTarget.focus();
412
- }
413
- });
414
- }
415
- }, {
416
322
  key: "componentDidMount",
417
323
  value: function componentDidMount() {
418
- var _this3 = this;
324
+ var _this2 = this;
419
325
 
420
326
  if (this.state.suppressingPopover) {
421
327
  // component was created with isOpen=true; now that it's mounted
@@ -425,7 +331,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
425
331
  suppressingPopover: false,
426
332
  isOpening: true
427
333
  }, function () {
428
- _this3.onOpenPopover();
334
+ _this2.onOpenPopover();
429
335
  });
430
336
  }
431
337
 
@@ -436,7 +342,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
436
342
  }, {
437
343
  key: "componentDidUpdate",
438
344
  value: function componentDidUpdate(prevProps) {
439
- var _this4 = this;
345
+ var _this3 = this;
440
346
 
441
347
  // The popover is being opened.
442
348
  if (!prevProps.isOpen && this.props.isOpen) {
@@ -457,9 +363,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
457
363
  // If the user has just closed the popover, queue up the removal of the content after the
458
364
  // transition is complete.
459
365
  this.closingTransitionTimeout = window.setTimeout(function () {
460
- _this4.hasSetInitialFocus = false;
461
-
462
- _this4.setState({
366
+ _this3.setState({
463
367
  isClosing: false
464
368
  });
465
369
  }, closingTransitionTime);
@@ -473,12 +377,11 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
473
377
  clearTimeout(this.strandedFocusTimeout);
474
378
  clearTimeout(this.closingTransitionTimeout);
475
379
  cancelAnimationFrame(this.closingTransitionAnimationFrame);
476
- cancelAnimationFrame(this.updateFocusAnimationFrame);
477
380
  }
478
381
  }, {
479
382
  key: "render",
480
383
  value: function render() {
481
- var _this5 = this;
384
+ var _this4 = this;
482
385
 
483
386
  var _this$props = this.props,
484
387
  anchorClassName = _this$props.anchorClassName,
@@ -502,7 +405,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
502
405
  arrowChildren = _this$props.arrowChildren,
503
406
  repositionOnScroll = _this$props.repositionOnScroll,
504
407
  zIndex = _this$props.zIndex,
505
- initialFocus = _this$props.initialFocus,
506
408
  attachToAnchor = _this$props.attachToAnchor,
507
409
  display = _this$props.display,
508
410
  offset = _this$props.offset,
@@ -512,27 +414,24 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
512
414
  ariaLabelledBy = _this$props['aria-labelledby'],
513
415
  container = _this$props.container,
514
416
  focusTrapProps = _this$props.focusTrapProps,
417
+ initialFocusProp = _this$props.initialFocus,
515
418
  tabIndexProp = _this$props.tabIndex,
516
419
  rest = _objectWithoutProperties(_this$props, _excluded);
517
420
 
518
- var classes = classNames('euiPopover', anchorPosition ? anchorPositionToClassNameMap[anchorPosition] : null, display ? displayToClassNameMap[display] : null, {
421
+ var styles = euiPopoverStyles();
422
+ var popoverStyles = [styles.euiPopover, {
423
+ display: display
424
+ }];
425
+ var classes = classNames('euiPopover', {
519
426
  'euiPopover-isOpen': this.state.isOpening
520
427
  }, className);
521
428
  var anchorClasses = classNames('euiPopover__anchor', anchorClassName);
522
- var panelClasses = classNames('euiPopover__panel', "euiPopover__panel--".concat(this.state.arrowPosition), {
523
- 'euiPopover__panel-isOpen': this.state.isOpening
524
- }, {
525
- 'euiPopover__panel-noArrow': !hasArrow || attachToAnchor
526
- }, {
527
- 'euiPopover__panel-isAttached': attachToAnchor
528
- }, panelClassName, panelProps === null || panelProps === void 0 ? void 0 : panelProps.className);
429
+ var showArrow = hasArrow && !attachToAnchor;
529
430
  var panel;
530
431
 
531
432
  if (!this.state.suppressingPopover && (isOpen || this.state.isClosing)) {
532
433
  var tabIndex = tabIndexProp;
533
-
534
- var _initialFocus;
535
-
434
+ var initialFocus = initialFocusProp;
536
435
  var ariaDescribedby;
537
436
  var ariaLive;
538
437
  var panelAriaModal = panelProps !== null && panelProps !== void 0 && panelProps.hasOwnProperty('aria-modal') ? panelProps['aria-modal'] : 'true';
@@ -542,9 +441,11 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
542
441
  tabIndex = tabIndexProp !== null && tabIndexProp !== void 0 ? tabIndexProp : 0;
543
442
  ariaLive = 'off';
544
443
 
545
- _initialFocus = function _initialFocus() {
546
- return _this5.panel;
547
- };
444
+ if (!initialFocus) {
445
+ initialFocus = function initialFocus() {
446
+ return _this4.panel;
447
+ };
448
+ }
548
449
  } else {
549
450
  ariaLive = 'assertive';
550
451
  }
@@ -561,7 +462,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
561
462
  }), popoverScreenReaderText));
562
463
  }
563
464
 
564
- var arrowClassNames = classNames('euiPopover__panelArrow', "euiPopover__panelArrow--".concat(this.state.arrowPosition));
565
465
  var returnFocus = this.state.isOpenStable ? returnFocusConfig : false;
566
466
  panel = ___EmotionJSX(EuiPortal, {
567
467
  insert: insert
@@ -570,15 +470,17 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
570
470
  }, focusTrapProps, {
571
471
  returnFocus: returnFocus // Ignore temporary state of indecisive focus
572
472
  ,
573
- initialFocus: _initialFocus,
473
+ initialFocus: initialFocus,
574
474
  onDeactivation: onTrapDeactivation,
575
475
  onClickOutside: this.onClickOutside,
576
476
  onEscapeKey: this.onEscapeKey,
577
477
  disabled: !ownFocus || !this.state.isOpenStable || this.state.isClosing
578
- }), ___EmotionJSX(EuiPanel, _extends({}, panelProps, {
579
- "data-popover-panel": true,
478
+ }), ___EmotionJSX(EuiPopoverPanel, _extends({}, panelProps, {
580
479
  panelRef: this.panelRef,
581
- className: panelClasses,
480
+ isOpen: this.state.isOpening,
481
+ position: this.state.arrowPosition,
482
+ isAttached: attachToAnchor,
483
+ className: classNames(panelClassName, panelProps === null || panelProps === void 0 ? void 0 : panelProps.className),
582
484
  hasShadow: false,
583
485
  paddingSize: panelPaddingSize,
584
486
  tabIndex: tabIndex,
@@ -592,8 +494,8 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
592
494
  // Adding `will-change` to reduce risk of a blurry animation in Chrome 86+
593
495
  willChange: !this.state.isOpenStable ? 'transform, opacity' : undefined
594
496
  })
595
- }), ___EmotionJSX("div", {
596
- className: arrowClassNames,
497
+ }), showArrow && this.state.arrowPosition && ___EmotionJSX(EuiPopoverArrow, {
498
+ position: this.state.arrowPosition,
597
499
  style: this.state.arrowStyles
598
500
  }, arrowChildren), focusTrapScreenReaderText, ___EmotionJSX(EuiMutationObserver, {
599
501
  observerOptions: {
@@ -612,15 +514,19 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
612
514
  ref: mutationRef
613
515
  }, children);
614
516
  }))));
615
- } // react-focus-on and relataed do not register outside click detection
517
+ } // react-focus-on and related do not register outside click detection
616
518
  // when disabled, so we still need to conditionally check for that ourselves
617
519
 
618
520
 
619
521
  if (ownFocus) {
620
522
  return ___EmotionJSX("div", _extends({
523
+ css: popoverStyles,
621
524
  className: classes,
622
525
  ref: popoverRef
623
526
  }, rest), ___EmotionJSX("div", {
527
+ css: /*#__PURE__*/_css({
528
+ display: display
529
+ }, ";label:render;"),
624
530
  className: anchorClasses,
625
531
  ref: this.buttonRef
626
532
  }, button instanceof HTMLElement ? null : button), panel);
@@ -628,10 +534,14 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
628
534
  return ___EmotionJSX(EuiOutsideClickDetector, {
629
535
  onOutsideClick: this.closePopover
630
536
  }, ___EmotionJSX("div", _extends({
537
+ css: popoverStyles,
631
538
  className: classes,
632
539
  ref: popoverRef,
633
540
  onKeyDown: this.onKeyDown
634
541
  }, rest), ___EmotionJSX("div", {
542
+ css: /*#__PURE__*/_css({
543
+ display: display
544
+ }, ";label:render;"),
635
545
  className: anchorClasses,
636
546
  ref: this.buttonRef
637
547
  }, button instanceof HTMLElement ? null : button), panel));
@@ -671,5 +581,5 @@ _defineProperty(EuiPopover, "defaultProps", {
671
581
  anchorPosition: 'downCenter',
672
582
  panelPaddingSize: 'm',
673
583
  hasArrow: true,
674
- display: 'inlineBlock'
584
+ display: 'inline-block'
675
585
  });
@@ -0,0 +1,15 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { logicalCSS } from '../../global_styling';
10
+ export var euiPopoverStyles = function euiPopoverStyles() {
11
+ return {
12
+ // Base anchor wrapper
13
+ euiPopover: /*#__PURE__*/css("position:relative;vertical-align:middle;", logicalCSS('max-width', '100%'), ";;label:euiPopover;")
14
+ };
15
+ };
@@ -0,0 +1,29 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["children", "position"];
4
+
5
+ /*
6
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
7
+ * or more contributor license agreements. Licensed under the Elastic License
8
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
9
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
10
+ * Side Public License, v 1.
11
+ */
12
+ import React from 'react';
13
+ import { euiPopoverArrowStyles } from './_popover_arrow.styles';
14
+ import { useEuiTheme } from '../../../services';
15
+ import { jsx as ___EmotionJSX } from "@emotion/react";
16
+ export var POSITIONS = ['top', 'left', 'right', 'bottom'];
17
+ export var EuiPopoverArrow = function EuiPopoverArrow(_ref) {
18
+ var children = _ref.children,
19
+ position = _ref.position,
20
+ rest = _objectWithoutProperties(_ref, _excluded);
21
+
22
+ var euiTheme = useEuiTheme();
23
+ var styles = euiPopoverArrowStyles(euiTheme);
24
+ var cssStyles = [styles.euiPopoverArrow, styles[position]];
25
+ return ___EmotionJSX("div", _extends({
26
+ "data-popover-arrow": position,
27
+ css: cssStyles
28
+ }, rest), children);
29
+ };
@@ -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';
@@ -9,27 +9,30 @@ var _excluded = ["children", "className", "paddingSize"];
9
9
  * in compliance with, at your election, the Elastic License 2.0 or the Server
10
10
  * Side Public License, v 1.
11
11
  */
12
- import React from 'react';
12
+ import React, { useContext } from 'react';
13
13
  import classNames from 'classnames';
14
- import { keysOf } from '../common';
14
+ import { useEuiPaddingCSS } from '../../global_styling';
15
+ import { useEuiTheme } from '../../services';
16
+ import { euiPopoverFooterStyles } from './popover_footer.styles';
17
+ import { EuiPopoverPanelContext } from './popover_panel/_popover_panel';
15
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
16
- var paddingSizeToClassNameMap = {
17
- none: 'euiPopoverFooter--paddingNone',
18
- s: 'euiPopoverFooter--paddingSmall',
19
- m: 'euiPopoverFooter--paddingMedium',
20
- l: 'euiPopoverFooter--paddingLarge'
21
- };
22
- export var PADDING_SIZES = keysOf(paddingSizeToClassNameMap);
23
19
  export var EuiPopoverFooter = function EuiPopoverFooter(_ref) {
24
20
  var children = _ref.children,
25
21
  className = _ref.className,
26
22
  paddingSize = _ref.paddingSize,
27
23
  rest = _objectWithoutProperties(_ref, _excluded);
28
24
 
29
- var classes = classNames('euiPopoverFooter', // @ts-expect-error EuiPanel increased its available sizes.
30
- // When we convert this component to Emotion, we should also increase sizes to match EuiPanel and remove this comment.
31
- paddingSize ? paddingSizeToClassNameMap[paddingSize] : null, className);
25
+ var _useContext = useContext(EuiPopoverPanelContext),
26
+ panelPadding = _useContext.paddingSize;
27
+
28
+ var euiTheme = useEuiTheme();
29
+ var styles = euiPopoverFooterStyles(euiTheme, panelPadding);
30
+ var paddingStyles = useEuiPaddingCSS();
31
+ var cssStyles = [styles.euiPopoverFooter, // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
32
+ paddingStyles[paddingSize || panelPadding]];
33
+ var classes = classNames('euiPopoverFooter', className);
32
34
  return ___EmotionJSX("div", _extends({
35
+ css: cssStyles,
33
36
  className: classes
34
37
  }, rest), children);
35
38
  };
@@ -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
+ };