@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
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
- var _excluded = ["className", "url", "src", "size", "caption", "hasShadow", "allowFullScreen", "fullScreenIconColor", "alt", "style", "float", "margin"];
5
+ var _excluded = ["className", "alt", "url", "src", "size", "hasShadow", "style", "wrapperProps", "fullScreenIconColor", "allowFullScreen", "caption", "float", "margin"];
6
6
 
7
7
  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; }
8
8
 
@@ -17,176 +17,72 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
17
17
  */
18
18
  import React, { useState } from 'react';
19
19
  import classNames from 'classnames';
20
- import { EuiOverlayMask } from '../overlay_mask';
21
- import { EuiIcon } from '../icon';
22
- import { useEuiI18n } from '../i18n';
23
- import { EuiFocusTrap } from '../focus_trap';
24
- import { keys } from '../../services';
25
- import { useInnerText } from '../inner_text';
20
+ import { useEuiTheme } from '../../services';
21
+ import { EuiImageWrapper } from './image_wrapper';
22
+ import { euiImageStyles } from './image.styles';
23
+ import { EuiImageFullScreenWrapper } from './image_fullscreen_wrapper';
24
+ import { SIZES } from './image_types';
26
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
27
- var sizeToClassNameMap = {
28
- s: 'euiImage--small',
29
- m: 'euiImage--medium',
30
- l: 'euiImage--large',
31
- xl: 'euiImage--xlarge',
32
- fullWidth: 'euiImage--fullWidth',
33
- original: 'euiImage--original'
34
- };
35
- var marginToClassNameMap = {
36
- s: 'euiImage--marginSmall',
37
- m: 'euiImage--marginMedium',
38
- l: 'euiImage--marginLarge',
39
- xl: 'euiImage--marginXlarge'
40
- };
41
- var floatToClassNameMap = {
42
- left: 'euiImage--floatLeft',
43
- right: 'euiImage--floatRight'
44
- };
45
- export var SIZES = Object.keys(sizeToClassNameMap);
46
- var fullScreenIconColorMap = {
47
- light: 'ghost',
48
- dark: 'default'
49
- };
50
26
  export var EuiImage = function EuiImage(_ref) {
51
27
  var className = _ref.className,
28
+ alt = _ref.alt,
52
29
  url = _ref.url,
53
30
  src = _ref.src,
54
31
  _ref$size = _ref.size,
55
32
  size = _ref$size === void 0 ? 'original' : _ref$size,
56
- caption = _ref.caption,
57
33
  hasShadow = _ref.hasShadow,
58
- allowFullScreen = _ref.allowFullScreen,
59
- _ref$fullScreenIconCo = _ref.fullScreenIconColor,
60
- fullScreenIconColor = _ref$fullScreenIconCo === void 0 ? 'light' : _ref$fullScreenIconCo,
61
- alt = _ref.alt,
62
34
  style = _ref.style,
35
+ wrapperProps = _ref.wrapperProps,
36
+ fullScreenIconColor = _ref.fullScreenIconColor,
37
+ allowFullScreen = _ref.allowFullScreen,
38
+ caption = _ref.caption,
63
39
  float = _ref.float,
64
40
  margin = _ref.margin,
65
41
  rest = _objectWithoutProperties(_ref, _excluded);
66
42
 
67
43
  var _useState = useState(false),
68
44
  _useState2 = _slicedToArray(_useState, 2),
69
- isFullScreenActive = _useState2[0],
70
- setIsFullScreenActive = _useState2[1];
71
-
72
- var onKeyDown = function onKeyDown(event) {
73
- if (event.key === keys.ESCAPE) {
74
- event.preventDefault();
75
- event.stopPropagation();
76
- closeFullScreen();
77
- }
78
- };
79
-
80
- var closeFullScreen = function closeFullScreen() {
81
- setIsFullScreenActive(false);
82
- };
83
-
84
- var openFullScreen = function openFullScreen() {
85
- setIsFullScreenActive(true);
45
+ isFullScreen = _useState2[0],
46
+ setIsFullScreen = _useState2[1];
47
+
48
+ var isNamedSize = typeof size === 'string' && SIZES.includes(size);
49
+ var classes = classNames('euiImage', className);
50
+ var euiTheme = useEuiTheme();
51
+ var styles = euiImageStyles(euiTheme);
52
+ var cssStyles = [styles.euiImage, isNamedSize && styles[size], !isNamedSize && styles.customSize, hasShadow && styles.hasShadow];
53
+ var cssIsFullScreenStyles = [styles.euiImage, styles.isFullScreen];
54
+ var isCustomSize = !isNamedSize && size !== 'original';
55
+ var customSize = typeof size === 'string' ? size : "".concat(size, "px");
56
+ var imageStyleWithCustomSize = isCustomSize ? _objectSpread(_objectSpread({}, style), {}, {
57
+ maxWidth: customSize,
58
+ maxHeight: customSize
59
+ }) : style;
60
+ var isFullWidth = size === 'fullWidth';
61
+ var commonWrapperProps = {
62
+ hasShadow: hasShadow,
63
+ wrapperProps: wrapperProps,
64
+ setIsFullScreen: setIsFullScreen,
65
+ fullScreenIconColor: fullScreenIconColor,
66
+ isFullWidth: isFullWidth,
67
+ allowFullScreen: allowFullScreen,
68
+ alt: alt,
69
+ caption: caption,
70
+ float: float,
71
+ margin: margin
86
72
  };
87
73
 
88
- var customStyle = _objectSpread({}, style);
74
+ var commonImgProps = _objectSpread({
75
+ className: classes,
76
+ src: src || url
77
+ }, rest);
89
78
 
90
- var classes = classNames('euiImage', {
91
- 'euiImage--hasShadow': hasShadow,
92
- 'euiImage--allowFullScreen': allowFullScreen
93
- }, margin ? marginToClassNameMap[margin] : null, float ? floatToClassNameMap[float] : null, className);
94
-
95
- if (typeof size === 'string' && SIZES.includes(size)) {
96
- classes = "".concat(classes, " ").concat(sizeToClassNameMap[size]);
97
- } else {
98
- classes = "".concat(classes);
99
- customStyle.maxWidth = size;
100
- customStyle.maxHeight = size; // Set width back to auto to ensure aspect ratio is kept
101
-
102
- customStyle.width = 'auto';
103
- }
104
-
105
- var allowFullScreenButtonClasses = 'euiImage__button'; // when the button is not custom we need it to go full width
106
- // to match the parent '.euiImage' width except when the size is original
107
-
108
- if (typeof size === 'string' && size !== 'original' && SIZES.includes(size)) {
109
- allowFullScreenButtonClasses = "".concat(allowFullScreenButtonClasses, " euiImage__button--fullWidth");
110
- } else {
111
- allowFullScreenButtonClasses = "".concat(allowFullScreenButtonClasses);
112
- }
113
-
114
- var _useInnerText = useInnerText(),
115
- _useInnerText2 = _slicedToArray(_useInnerText, 2),
116
- optionalCaptionRef = _useInnerText2[0],
117
- optionalCaptionText = _useInnerText2[1];
118
-
119
- var optionalCaption;
120
-
121
- if (caption) {
122
- optionalCaption = ___EmotionJSX("figcaption", {
123
- ref: optionalCaptionRef,
124
- className: "euiImage__caption"
125
- }, caption);
126
- }
127
-
128
- var allowFullScreenIcon = ___EmotionJSX(EuiIcon, {
129
- type: "fullScreen",
130
- color: fullScreenIconColorMap[fullScreenIconColor],
131
- className: "euiImage__icon"
132
- });
133
-
134
- var fullScreenDisplay = ___EmotionJSX(EuiOverlayMask, {
135
- "data-test-subj": "fullScreenOverlayMask",
136
- onClick: closeFullScreen
137
- }, ___EmotionJSX(EuiFocusTrap, {
138
- clickOutsideDisables: true
139
- }, ___EmotionJSX(React.Fragment, null, ___EmotionJSX("figure", {
140
- className: "euiImage euiImage-isFullScreen",
141
- "aria-label": optionalCaptionText
142
- }, ___EmotionJSX("button", {
143
- type: "button",
144
- "aria-label": useEuiI18n('euiImage.closeImage', 'Close fullscreen {alt} image', {
145
- alt: alt
146
- }),
147
- className: "euiImage__button",
148
- "data-test-subj": "deactivateFullScreenButton",
149
- onClick: closeFullScreen,
150
- onKeyDown: onKeyDown
151
- }, ___EmotionJSX("img", _extends({
152
- src: src || url,
79
+ return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiImageWrapper, commonWrapperProps, ___EmotionJSX("img", _extends({
153
80
  alt: alt,
154
- className: "euiImage-isFullScreen__img"
155
- }, rest))), optionalCaption), ___EmotionJSX(EuiIcon, {
156
- type: "cross",
157
- color: "default",
158
- className: "euiImage-isFullScreenCloseIcon"
159
- }))));
160
-
161
- var fullscreenLabel = useEuiI18n('euiImage.openImage', 'Open fullscreen {alt} image', {
162
- alt: alt
163
- });
164
-
165
- if (allowFullScreen) {
166
- return ___EmotionJSX("figure", {
167
- className: classes,
168
- "aria-label": optionalCaptionText
169
- }, ___EmotionJSX("button", {
170
- type: "button",
171
- "aria-label": fullscreenLabel,
172
- className: allowFullScreenButtonClasses,
173
- "data-test-subj": "activateFullScreenButton",
174
- onClick: openFullScreen
175
- }, ___EmotionJSX("img", _extends({
176
- style: customStyle,
177
- src: src || url,
178
- alt: alt,
179
- className: "euiImage__img"
180
- }, rest)), allowFullScreenIcon), isFullScreenActive && fullScreenDisplay, optionalCaption);
181
- } else {
182
- return ___EmotionJSX("figure", {
183
- className: classes,
184
- "aria-label": optionalCaptionText
185
- }, ___EmotionJSX("img", _extends({
186
- style: customStyle,
187
- src: src || url,
188
- className: "euiImage__img",
189
- alt: alt
190
- }, rest)), optionalCaption);
191
- }
81
+ css: cssStyles,
82
+ style: imageStyleWithCustomSize
83
+ }, commonImgProps))), allowFullScreen && isFullScreen && ___EmotionJSX(EuiImageFullScreenWrapper, commonWrapperProps, ___EmotionJSX("img", _extends({
84
+ alt: alt,
85
+ css: cssIsFullScreenStyles,
86
+ style: style
87
+ }, commonImgProps))));
192
88
  };
@@ -0,0 +1,28 @@
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
+ import { euiShadow } from '../../themes/amsterdam/global_styling/mixins';
11
+ export var euiImageStyles = function euiImageStyles(euiThemeContext) {
12
+ return {
13
+ euiImage: /*#__PURE__*/css("vertical-align:middle;", logicalCSS('max-width', '100%'), ";&,[class*='euiText'] &{", logicalCSS('margin-bottom', 0), ";};label:euiImage;"),
14
+ // Variations
15
+ isFullScreen: /*#__PURE__*/css("position:relative;", logicalCSS('max-height', '80vh'), ";", logicalCSS('max-width', '80vw'), ";;label:isFullScreen;"),
16
+ hasShadow: /*#__PURE__*/css(euiShadow(euiThemeContext, 's'), ";;label:hasShadow;"),
17
+ // Sizes
18
+ // These sizes are mostly suggestions. Don't look too hard for meaning in their values.
19
+ // Size is applied to the image, rather than the wrapper figure to work better with floats
20
+ s: /*#__PURE__*/css(logicalCSS('width', '100px'), ";;label:s;"),
21
+ m: /*#__PURE__*/css(logicalCSS('width', '200px'), ";;label:m;"),
22
+ l: /*#__PURE__*/css(logicalCSS('width', '360px'), ";;label:l;"),
23
+ xl: /*#__PURE__*/css(logicalCSS('width', '600px'), ";;label:xl;"),
24
+ original: /*#__PURE__*/css(logicalCSS('width', 'auto'), ";;label:original;"),
25
+ fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;"),
26
+ customSize: /*#__PURE__*/css(logicalCSS('width', 'auto'), ";;label:customSize;")
27
+ };
28
+ };
@@ -0,0 +1,56 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["hasAlt", "hasShadow", "children", "onClick", "onKeyDown", "isFullScreen", "isFullWidth", "fullScreenIconColor"];
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 { useEuiTheme } from '../../services';
14
+ import { useEuiI18n } from '../i18n';
15
+ import { EuiIcon } from '../icon';
16
+ import { EuiScreenReaderOnly } from '../accessibility';
17
+ import { euiImageButtonStyles, euiImageButtonIconStyles } from './image_button.styles';
18
+ import { jsx as ___EmotionJSX } from "@emotion/react";
19
+ var fullScreenIconColorMap = {
20
+ light: 'ghost',
21
+ dark: 'default'
22
+ };
23
+ export var EuiImageButton = function EuiImageButton(_ref) {
24
+ var hasAlt = _ref.hasAlt,
25
+ hasShadow = _ref.hasShadow,
26
+ children = _ref.children,
27
+ onClick = _ref.onClick,
28
+ onKeyDown = _ref.onKeyDown,
29
+ isFullScreen = _ref.isFullScreen,
30
+ isFullWidth = _ref.isFullWidth,
31
+ _ref$fullScreenIconCo = _ref.fullScreenIconColor,
32
+ fullScreenIconColor = _ref$fullScreenIconCo === void 0 ? 'light' : _ref$fullScreenIconCo,
33
+ rest = _objectWithoutProperties(_ref, _excluded);
34
+
35
+ var euiTheme = useEuiTheme();
36
+ var buttonStyles = euiImageButtonStyles(euiTheme);
37
+ var cssButtonStyles = [buttonStyles.euiImageButton, hasShadow ? buttonStyles.hasShadowHover : buttonStyles.shadowHover, !isFullScreen && isFullWidth && buttonStyles.fullWidth];
38
+ var iconStyles = euiImageButtonIconStyles(euiTheme);
39
+ var cssIconStyles = [iconStyles.euiImageButton__icon, iconStyles.openFullScreen];
40
+ var openFullScreenInstructions = useEuiI18n('euiImageButton.openFullScreen', 'Click to open this image in fullscreen mode');
41
+ var closeFullScreenInstructions = useEuiI18n('euiImageButton.closeFullScreen', 'Press Escape or click to close image fullscreen mode');
42
+ var iconColor = fullScreenIconColorMap[fullScreenIconColor];
43
+ return ___EmotionJSX(React.Fragment, null, ___EmotionJSX("button", _extends({
44
+ type: "button",
45
+ css: cssButtonStyles,
46
+ onClick: onClick,
47
+ onKeyDown: onKeyDown
48
+ }, rest), isFullScreen && // In fullscreen mode, instructions should come first to allow screen reader
49
+ // users to quickly exit vs. potentially reading out long/unskippable alt text
50
+ ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", null, closeFullScreenInstructions, hasAlt && ' — ')), children, !isFullScreen && ___EmotionJSX("div", {
51
+ css: cssIconStyles
52
+ }, ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", null, hasAlt && ' — ', openFullScreenInstructions)), ___EmotionJSX(EuiIcon, {
53
+ type: "fullScreen",
54
+ color: iconColor
55
+ }))));
56
+ };
@@ -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 { euiFocusRing, logicalCSS, euiCanAnimate } from '../../global_styling';
12
+ import { euiShadow } from '../../themes/amsterdam/global_styling/mixins';
13
+ export var euiImageButtonStyles = function euiImageButtonStyles(euiThemeContext) {
14
+ var euiTheme = euiThemeContext.euiTheme;
15
+ return {
16
+ // Base
17
+ euiImageButton: /*#__PURE__*/css("position:relative;cursor:pointer;text-align:match-parent;line-height:0;&::before{opacity:0;content:'';pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;", euiCanAnimate, "{transition:opacity ", euiTheme.animation.fast, " ", euiTheme.animation.resistance, ";}}&:hover,&:focus{&::before{opacity:1;}[class*='euiImageButton__icon']{opacity:1;}}&:focus{", euiFocusRing(euiTheme, 'outset'), ";};label:euiImageButton;"),
18
+ fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;"),
19
+ shadowHover: /*#__PURE__*/css("&::before{", euiShadow(euiThemeContext, 's'), ";};label:shadowHover;"),
20
+ hasShadowHover: /*#__PURE__*/css("&::before{", euiShadow(euiThemeContext, 'm'), ";};label:hasShadowHover;")
21
+ };
22
+ };
23
+
24
+ var _ref = process.env.NODE_ENV === "production" ? {
25
+ name: "xj4dsa-closeFullScreen",
26
+ styles: "pointer-events:none;label:closeFullScreen;"
27
+ } : {
28
+ name: "xj4dsa-closeFullScreen",
29
+ styles: "pointer-events:none;label:closeFullScreen;",
30
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
31
+ };
32
+
33
+ export var euiImageButtonIconStyles = function euiImageButtonIconStyles(_ref2) {
34
+ var euiTheme = _ref2.euiTheme;
35
+ return {
36
+ // Base
37
+ euiImageButton__icon: /*#__PURE__*/css("position:absolute;", logicalCSS('top', euiTheme.size.base), ";", logicalCSS('right', euiTheme.size.base), ";;label:euiImageButton__icon;"),
38
+ openFullScreen: /*#__PURE__*/css("opacity:0;cursor:pointer;", euiCanAnimate, "{transition:opacity ", euiTheme.animation.slow, " ", euiTheme.animation.resistance, ";};label:openFullScreen;"),
39
+ closeFullScreen: _ref
40
+ };
41
+ };
@@ -0,0 +1,24 @@
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 React, { forwardRef } from 'react';
9
+ import { useEuiTheme } from '../../services';
10
+ import { euiImageCaptionStyles } from './image_caption.styles';
11
+ import { jsx as ___EmotionJSX } from "@emotion/react";
12
+ export var EuiImageCaption = /*#__PURE__*/forwardRef(function (_ref, ref) {
13
+ var caption = _ref.caption,
14
+ _ref$isOnOverlayMask = _ref.isOnOverlayMask,
15
+ isOnOverlayMask = _ref$isOnOverlayMask === void 0 ? false : _ref$isOnOverlayMask;
16
+ var euiTheme = useEuiTheme();
17
+ var styles = euiImageCaptionStyles(euiTheme);
18
+ var cssStyles = [styles.euiImageCaption, isOnOverlayMask && styles.isOnOverlayMask];
19
+ return caption ? ___EmotionJSX("figcaption", {
20
+ ref: ref,
21
+ css: cssStyles
22
+ }, caption) : null;
23
+ });
24
+ EuiImageCaption.displayName = 'EuiImageCaption';
@@ -0,0 +1,18 @@
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, logicalCSS } from '../../global_styling';
10
+ import { transparentize } from '../../services';
11
+ export var euiImageCaptionStyles = function euiImageCaptionStyles(euiThemeContext) {
12
+ var euiTheme = euiThemeContext.euiTheme;
13
+ return {
14
+ // Base
15
+ euiImageCaption: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";", logicalCSS('margin-top', euiTheme.size.xs), ";;label:euiImageCaption;"),
16
+ isOnOverlayMask: /*#__PURE__*/css("color:", euiTheme.colors.ghost, ";text-shadow:0 1px 2px ", transparentize(euiTheme.colors.ink, 0.6), ";[class*='euiLink']{color:", euiTheme.colors.ghost, ";};label:isOnOverlayMask;")
17
+ };
18
+ };
@@ -0,0 +1,84 @@
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 { EuiFocusTrap } from '../focus_trap';
14
+ import { EuiOverlayMask } from '../overlay_mask';
15
+ import { EuiIcon } from '../icon';
16
+ import { useEuiTheme, keys } from '../../services';
17
+ import { useInnerText } from '../inner_text';
18
+ import { euiImageFullscreenWrapperStyles } from './image_fullscreen_wrapper.styles';
19
+ import { EuiImageButton } from './image_button';
20
+ import { euiImageButtonIconStyles } from './image_button.styles';
21
+ import { EuiImageCaption } from './image_caption';
22
+ import { jsx as ___EmotionJSX } from "@emotion/react";
23
+ export var EuiImageFullScreenWrapper = function EuiImageFullScreenWrapper(_ref) {
24
+ var alt = _ref.alt,
25
+ hasShadow = _ref.hasShadow,
26
+ caption = _ref.caption,
27
+ children = _ref.children,
28
+ setIsFullScreen = _ref.setIsFullScreen,
29
+ wrapperProps = _ref.wrapperProps,
30
+ isFullWidth = _ref.isFullWidth,
31
+ fullScreenIconColor = _ref.fullScreenIconColor;
32
+ var euiTheme = useEuiTheme();
33
+ var styles = euiImageFullscreenWrapperStyles(euiTheme);
34
+ var cssStyles = [styles.euiImageFullscreenWrapper];
35
+ var classes = classNames('euiImageFullScreenWrapper', wrapperProps && wrapperProps.className);
36
+
37
+ var onKeyDown = function onKeyDown(event) {
38
+ if (event.key === keys.ESCAPE) {
39
+ event.preventDefault();
40
+ event.stopPropagation();
41
+ closeFullScreen();
42
+ }
43
+ };
44
+
45
+ var closeFullScreen = function closeFullScreen() {
46
+ setIsFullScreen(false);
47
+ };
48
+
49
+ var _useInnerText = useInnerText(),
50
+ _useInnerText2 = _slicedToArray(_useInnerText, 2),
51
+ optionalCaptionRef = _useInnerText2[0],
52
+ optionalCaptionText = _useInnerText2[1];
53
+
54
+ var iconStyles = euiImageButtonIconStyles(euiTheme);
55
+ var cssIconStyles = [iconStyles.euiImageButton__icon, iconStyles.closeFullScreen];
56
+ return ___EmotionJSX(EuiOverlayMask, {
57
+ "data-test-subj": "fullScreenOverlayMask",
58
+ onClick: closeFullScreen
59
+ }, ___EmotionJSX(EuiFocusTrap, {
60
+ clickOutsideDisables: true
61
+ }, ___EmotionJSX(React.Fragment, null, ___EmotionJSX("figure", _extends({
62
+ "aria-label": optionalCaptionText
63
+ }, wrapperProps, {
64
+ className: classes,
65
+ css: cssStyles
66
+ }), ___EmotionJSX(EuiImageButton, {
67
+ hasAlt: !!alt,
68
+ hasShadow: hasShadow,
69
+ onClick: closeFullScreen,
70
+ onKeyDown: onKeyDown,
71
+ "data-test-subj": "deactivateFullScreenButton",
72
+ isFullScreen: true,
73
+ isFullWidth: isFullWidth,
74
+ fullScreenIconColor: fullScreenIconColor
75
+ }, children), ___EmotionJSX(EuiImageCaption, {
76
+ caption: caption,
77
+ ref: optionalCaptionRef,
78
+ isOnOverlayMask: true
79
+ })), ___EmotionJSX(EuiIcon, {
80
+ type: "fullScreenExit",
81
+ color: "ghost",
82
+ css: cssIconStyles
83
+ }))));
84
+ };
@@ -0,0 +1,26 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+
3
+ var _templateObject;
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 { css, keyframes } from '@emotion/react';
13
+ import { logicalCSS, logicalTextAlignCSS, euiCanAnimate } from '../../global_styling';
14
+ export var euiImageFullscreenWrapperStyles = function euiImageFullscreenWrapperStyles(euiThemeContext) {
15
+ var euiTheme = euiThemeContext.euiTheme;
16
+ return {
17
+ // Base
18
+ euiImageFullscreenWrapper: /*#__PURE__*/css(logicalCSS('max-height', '80vh'), ";", logicalCSS('max-width', '80vw'), ";", logicalTextAlignCSS('center'), ";line-height:0;", euiCanAnimate, "{animation:", euiImageFullScreen(euiTheme.size.xxxxl), " ", euiTheme.animation.extraSlow, " ", euiTheme.animation.bounce, ";}&:hover [class*='euiImageCaption']{text-decoration:underline;};label:euiImageFullscreenWrapper;"),
19
+ // Sizes
20
+ fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;")
21
+ };
22
+ };
23
+
24
+ var euiImageFullScreen = function euiImageFullScreen(size) {
25
+ return keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n transform: translateY(", ");\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n"])), size);
26
+ };
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ export var SIZES = ['s', 'm', 'l', 'xl', 'fullWidth', 'original'];
9
+ var FLOATS = ['left', 'right'];
10
+ var MARGINS = ['s', 'm', 'l', 'xl'];
@@ -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:inline-block;", 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
+ };