@elastic/eui 66.0.0 → 67.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (325) hide show
  1. package/dist/eui_theme_dark.css +0 -345
  2. package/dist/eui_theme_dark.json +0 -6
  3. package/dist/eui_theme_dark.json.d.ts +0 -6
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +0 -345
  6. package/dist/eui_theme_light.json +0 -6
  7. package/dist/eui_theme_light.json.d.ts +0 -6
  8. package/dist/eui_theme_light.min.css +1 -1
  9. package/es/components/badge/badge.js +84 -78
  10. package/es/components/badge/badge.styles.js +56 -0
  11. package/es/components/basic_table/in_memory_table.js +8 -0
  12. package/es/components/button/button.js +0 -1
  13. package/es/components/button/button_display/_button_display.js +20 -6
  14. package/es/components/button/button_display/_button_display.styles.js +2 -2
  15. package/es/components/button/button_display/_button_display_content.js +5 -3
  16. package/es/components/button/button_display/_button_display_content.styles.js +4 -1
  17. package/es/components/button/button_empty/button_empty.js +10 -1
  18. package/es/components/card/card.js +2 -2
  19. package/es/components/card/card.styles.js +5 -2
  20. package/es/components/collapsible_nav/collapsible_nav.js +0 -5
  21. package/es/components/date_picker/auto_refresh/auto_refresh.js +6 -1
  22. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +6 -2
  23. package/es/components/expression/expression.js +12 -2
  24. package/es/components/header/header_links/header_link.js +10 -1
  25. package/es/components/image/image.js +6 -1
  26. package/es/components/image/image_fullscreen_wrapper.js +2 -3
  27. package/es/components/notification/notification_event.js +25 -6
  28. package/es/components/notification/notification_event_meta.js +1 -1
  29. package/es/components/overlay_mask/overlay_mask.js +27 -65
  30. package/es/components/overlay_mask/overlay_mask.styles.js +28 -0
  31. package/es/components/page/page_content/page_content.js +1 -2
  32. package/es/components/page/page_content/page_content_body.js +1 -2
  33. package/es/components/page/page_content/page_content_header.js +1 -2
  34. package/es/components/page/page_content/page_content_header_section.js +1 -2
  35. package/es/components/page/page_section/page_section.js +15 -3
  36. package/es/components/page/page_side_bar/page_side_bar.js +1 -2
  37. package/es/components/page/page_template.js +3 -1
  38. package/es/components/page_template/empty_prompt/page_empty_prompt.js +11 -1
  39. package/es/components/page_template/page_template.js +18 -2
  40. package/es/components/pagination/pagination.js +17 -4
  41. package/es/components/pagination/pagination.styles.js +31 -0
  42. package/es/components/pagination/pagination_button.js +17 -5
  43. package/es/components/pagination/pagination_button.styles.js +30 -0
  44. package/es/components/pagination/pagination_button_arrow.js +5 -0
  45. package/es/components/popover/popover_title.js +2 -2
  46. package/es/components/popover/popover_title.styles.js +18 -6
  47. package/es/components/progress/progress.js +6 -1
  48. package/es/components/provider/cache/cache_provider.js +3 -9
  49. package/es/components/provider/provider.js +25 -2
  50. package/es/components/resizable_container/resizable_panel.js +6 -1
  51. package/es/components/search_bar/filters/custom_component_filter.js +16 -0
  52. package/es/components/search_bar/filters/filters.js +6 -0
  53. package/es/components/search_bar/query/ast.js +12 -0
  54. package/es/components/search_bar/query/ast_to_es_query_dsl.js +15 -10
  55. package/es/components/search_bar/query/query.js +17 -0
  56. package/es/components/search_bar/search_bar.js +4 -0
  57. package/es/components/search_bar/search_filters.js +4 -0
  58. package/es/components/selectable/selectable_list/selectable_list.js +2 -2
  59. package/es/components/selectable/selectable_list/selectable_list_item.js +2 -2
  60. package/es/components/side_nav/side_nav.js +5 -0
  61. package/es/components/suggest/suggest.js +10 -1
  62. package/es/components/tool_tip/tool_tip.js +42 -66
  63. package/es/components/tool_tip/tool_tip.styles.js +107 -0
  64. package/es/components/tool_tip/tool_tip_anchor.js +73 -0
  65. package/es/components/tool_tip/tool_tip_arrow.js +20 -0
  66. package/es/components/tool_tip/tool_tip_popover.js +48 -101
  67. package/es/global_styling/index.js +2 -1
  68. package/es/global_styling/utility/animations.js +13 -0
  69. package/es/services/color/contrast.js +2 -0
  70. package/es/services/index.js +1 -1
  71. package/es/services/theme/context.js +2 -1
  72. package/es/services/theme/hooks.js +27 -1
  73. package/es/services/theme/index.js +1 -1
  74. package/es/services/theme/provider.js +15 -1
  75. package/eui.d.ts +232 -79
  76. package/i18ntokens.json +54 -54
  77. package/lib/components/badge/badge.js +92 -80
  78. package/lib/components/badge/badge.styles.js +61 -0
  79. package/lib/components/basic_table/in_memory_table.js +8 -0
  80. package/lib/components/button/button.js +0 -1
  81. package/lib/components/button/button_display/_button_display.js +20 -6
  82. package/lib/components/button/button_display/_button_display.styles.js +2 -2
  83. package/lib/components/button/button_display/_button_display_content.js +9 -4
  84. package/lib/components/button/button_display/_button_display_content.styles.js +4 -1
  85. package/lib/components/button/button_empty/button_empty.js +10 -1
  86. package/lib/components/card/card.js +2 -2
  87. package/lib/components/card/card.styles.js +5 -2
  88. package/lib/components/collapsible_nav/collapsible_nav.js +0 -5
  89. package/lib/components/date_picker/auto_refresh/auto_refresh.js +6 -1
  90. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +6 -1
  91. package/lib/components/expression/expression.js +12 -2
  92. package/lib/components/header/header_links/header_link.js +10 -1
  93. package/lib/components/image/image.js +6 -1
  94. package/lib/components/image/image_fullscreen_wrapper.js +2 -3
  95. package/lib/components/notification/notification_event.js +28 -9
  96. package/lib/components/notification/notification_event_meta.js +1 -1
  97. package/lib/components/overlay_mask/overlay_mask.js +27 -65
  98. package/lib/components/overlay_mask/overlay_mask.styles.js +34 -0
  99. package/lib/components/page/page_content/page_content.js +1 -2
  100. package/lib/components/page/page_content/page_content_body.js +1 -2
  101. package/lib/components/page/page_content/page_content_header.js +1 -2
  102. package/lib/components/page/page_content/page_content_header_section.js +1 -2
  103. package/lib/components/page/page_section/page_section.js +15 -3
  104. package/lib/components/page/page_side_bar/page_side_bar.js +1 -2
  105. package/lib/components/page/page_template.js +3 -1
  106. package/lib/components/page_template/empty_prompt/page_empty_prompt.js +11 -1
  107. package/lib/components/page_template/page_template.js +18 -2
  108. package/lib/components/pagination/pagination.js +18 -3
  109. package/lib/components/pagination/pagination.styles.js +34 -0
  110. package/lib/components/pagination/pagination_button.js +9 -4
  111. package/lib/components/pagination/pagination_button.styles.js +45 -0
  112. package/lib/components/pagination/pagination_button_arrow.js +7 -0
  113. package/lib/components/popover/popover_title.js +2 -2
  114. package/lib/components/popover/popover_title.styles.js +19 -7
  115. package/lib/components/progress/progress.js +6 -1
  116. package/lib/components/provider/cache/cache_provider.js +3 -11
  117. package/lib/components/provider/provider.js +31 -6
  118. package/lib/components/resizable_container/resizable_panel.js +6 -1
  119. package/lib/components/search_bar/filters/custom_component_filter.js +29 -0
  120. package/lib/components/search_bar/filters/filters.js +7 -0
  121. package/lib/components/search_bar/query/ast.js +12 -0
  122. package/lib/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  123. package/lib/components/search_bar/query/query.js +17 -0
  124. package/lib/components/search_bar/search_bar.js +4 -0
  125. package/lib/components/search_bar/search_filters.js +4 -0
  126. package/lib/components/selectable/selectable_list/selectable_list.js +2 -2
  127. package/lib/components/selectable/selectable_list/selectable_list_item.js +2 -2
  128. package/lib/components/side_nav/side_nav.js +5 -0
  129. package/lib/components/suggest/suggest.js +10 -1
  130. package/lib/components/tool_tip/tool_tip.js +43 -64
  131. package/lib/components/tool_tip/tool_tip.styles.js +123 -0
  132. package/lib/components/tool_tip/tool_tip_anchor.js +87 -0
  133. package/lib/components/tool_tip/tool_tip_arrow.js +28 -0
  134. package/lib/components/tool_tip/tool_tip_popover.js +49 -98
  135. package/lib/global_styling/index.js +13 -0
  136. package/lib/global_styling/utility/animations.js +15 -0
  137. package/lib/services/color/contrast.js +6 -1
  138. package/lib/services/index.js +7 -0
  139. package/lib/services/theme/context.js +4 -2
  140. package/lib/services/theme/hooks.js +28 -0
  141. package/lib/services/theme/index.js +12 -0
  142. package/lib/services/theme/provider.js +23 -2
  143. package/optimize/es/components/badge/badge.js +82 -76
  144. package/optimize/es/components/badge/badge.styles.js +56 -0
  145. package/optimize/es/components/basic_table/in_memory_table.js +4 -0
  146. package/optimize/es/components/button/button.js +0 -1
  147. package/optimize/es/components/button/button_display/_button_display.js +8 -3
  148. package/optimize/es/components/button/button_display/_button_display.styles.js +2 -2
  149. package/optimize/es/components/button/button_display/_button_display_content.js +3 -1
  150. package/optimize/es/components/button/button_display/_button_display_content.styles.js +4 -1
  151. package/optimize/es/components/card/card.js +2 -2
  152. package/optimize/es/components/card/card.styles.js +5 -2
  153. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +0 -1
  154. package/optimize/es/components/image/image_fullscreen_wrapper.js +2 -3
  155. package/optimize/es/components/notification/notification_event.js +10 -4
  156. package/optimize/es/components/overlay_mask/overlay_mask.js +27 -60
  157. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +28 -0
  158. package/optimize/es/components/page/page_content/page_content.js +1 -2
  159. package/optimize/es/components/page/page_content/page_content_body.js +1 -2
  160. package/optimize/es/components/page/page_content/page_content_header.js +1 -2
  161. package/optimize/es/components/page/page_content/page_content_header_section.js +1 -2
  162. package/optimize/es/components/page/page_section/page_section.js +4 -2
  163. package/optimize/es/components/page/page_side_bar/page_side_bar.js +1 -2
  164. package/optimize/es/components/page/page_template.js +3 -1
  165. package/optimize/es/components/pagination/pagination.js +17 -4
  166. package/optimize/es/components/pagination/pagination.styles.js +31 -0
  167. package/optimize/es/components/pagination/pagination_button.js +7 -4
  168. package/optimize/es/components/pagination/pagination_button.styles.js +30 -0
  169. package/optimize/es/components/pagination/pagination_button_arrow.js +5 -0
  170. package/optimize/es/components/popover/popover_title.js +2 -2
  171. package/optimize/es/components/popover/popover_title.styles.js +18 -6
  172. package/optimize/es/components/provider/cache/cache_provider.js +3 -9
  173. package/optimize/es/components/provider/provider.js +25 -2
  174. package/optimize/es/components/search_bar/filters/custom_component_filter.js +16 -0
  175. package/optimize/es/components/search_bar/filters/filters.js +6 -0
  176. package/optimize/es/components/search_bar/query/ast.js +12 -0
  177. package/optimize/es/components/search_bar/query/ast_to_es_query_dsl.js +14 -9
  178. package/optimize/es/components/search_bar/query/query.js +17 -0
  179. package/optimize/es/components/suggest/suggest.js +4 -1
  180. package/optimize/es/components/tool_tip/tool_tip.js +42 -66
  181. package/optimize/es/components/tool_tip/tool_tip.styles.js +107 -0
  182. package/optimize/es/components/tool_tip/tool_tip_anchor.js +60 -0
  183. package/optimize/es/components/tool_tip/tool_tip_arrow.js +20 -0
  184. package/optimize/es/components/tool_tip/tool_tip_popover.js +46 -87
  185. package/optimize/es/global_styling/index.js +2 -1
  186. package/optimize/es/global_styling/utility/animations.js +13 -0
  187. package/optimize/es/services/color/contrast.js +2 -0
  188. package/optimize/es/services/index.js +1 -1
  189. package/optimize/es/services/theme/context.js +2 -1
  190. package/optimize/es/services/theme/hooks.js +27 -1
  191. package/optimize/es/services/theme/index.js +1 -1
  192. package/optimize/es/services/theme/provider.js +14 -1
  193. package/optimize/lib/components/badge/badge.js +90 -78
  194. package/optimize/lib/components/badge/badge.styles.js +61 -0
  195. package/optimize/lib/components/basic_table/in_memory_table.js +4 -0
  196. package/optimize/lib/components/button/button.js +0 -1
  197. package/optimize/lib/components/button/button_display/_button_display.js +8 -3
  198. package/optimize/lib/components/button/button_display/_button_display.styles.js +2 -2
  199. package/optimize/lib/components/button/button_display/_button_display_content.js +6 -2
  200. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +4 -1
  201. package/optimize/lib/components/card/card.js +2 -2
  202. package/optimize/lib/components/card/card.styles.js +5 -2
  203. package/optimize/lib/components/image/image_fullscreen_wrapper.js +2 -3
  204. package/optimize/lib/components/notification/notification_event.js +11 -11
  205. package/optimize/lib/components/overlay_mask/overlay_mask.js +27 -59
  206. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +34 -0
  207. package/optimize/lib/components/page/page_content/page_content.js +1 -2
  208. package/optimize/lib/components/page/page_content/page_content_body.js +1 -2
  209. package/optimize/lib/components/page/page_content/page_content_header.js +1 -2
  210. package/optimize/lib/components/page/page_content/page_content_header_section.js +1 -2
  211. package/optimize/lib/components/page/page_section/page_section.js +4 -2
  212. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +1 -2
  213. package/optimize/lib/components/page/page_template.js +3 -1
  214. package/optimize/lib/components/pagination/pagination.js +18 -3
  215. package/optimize/lib/components/pagination/pagination.styles.js +34 -0
  216. package/optimize/lib/components/pagination/pagination_button.js +9 -4
  217. package/optimize/lib/components/pagination/pagination_button.styles.js +45 -0
  218. package/optimize/lib/components/pagination/pagination_button_arrow.js +7 -0
  219. package/optimize/lib/components/popover/popover_title.js +2 -2
  220. package/optimize/lib/components/popover/popover_title.styles.js +19 -7
  221. package/optimize/lib/components/provider/cache/cache_provider.js +3 -11
  222. package/optimize/lib/components/provider/provider.js +31 -6
  223. package/optimize/lib/components/search_bar/filters/custom_component_filter.js +29 -0
  224. package/optimize/lib/components/search_bar/filters/filters.js +7 -0
  225. package/optimize/lib/components/search_bar/query/ast.js +12 -0
  226. package/optimize/lib/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  227. package/optimize/lib/components/search_bar/query/query.js +17 -0
  228. package/optimize/lib/components/suggest/suggest.js +4 -1
  229. package/optimize/lib/components/tool_tip/tool_tip.js +42 -64
  230. package/optimize/lib/components/tool_tip/tool_tip.styles.js +125 -0
  231. package/optimize/lib/components/tool_tip/tool_tip_anchor.js +75 -0
  232. package/optimize/lib/components/tool_tip/tool_tip_arrow.js +35 -0
  233. package/optimize/lib/components/tool_tip/tool_tip_popover.js +47 -88
  234. package/optimize/lib/global_styling/index.js +13 -0
  235. package/optimize/lib/global_styling/utility/animations.js +17 -0
  236. package/optimize/lib/services/color/contrast.js +5 -1
  237. package/optimize/lib/services/index.js +7 -0
  238. package/optimize/lib/services/theme/context.js +4 -2
  239. package/optimize/lib/services/theme/hooks.js +28 -0
  240. package/optimize/lib/services/theme/index.js +12 -0
  241. package/optimize/lib/services/theme/provider.js +23 -9
  242. package/package.json +5 -5
  243. package/src/components/badge/_index.scss +0 -1
  244. package/src/components/index.scss +0 -4
  245. package/src/global_styling/mixins/_tool_tip.scss +3 -6
  246. package/src/themes/amsterdam/overrides/_index.scss +0 -2
  247. package/test-env/components/badge/badge.js +92 -80
  248. package/test-env/components/badge/badge.styles.js +61 -0
  249. package/test-env/components/basic_table/in_memory_table.js +8 -0
  250. package/test-env/components/button/button.js +0 -1
  251. package/test-env/components/button/button_display/_button_display.js +20 -6
  252. package/test-env/components/button/button_display/_button_display.styles.js +2 -2
  253. package/test-env/components/button/button_display/_button_display_content.js +8 -4
  254. package/test-env/components/button/button_display/_button_display_content.styles.js +4 -1
  255. package/test-env/components/button/button_empty/button_empty.js +10 -1
  256. package/test-env/components/card/card.js +2 -2
  257. package/test-env/components/card/card.styles.js +5 -2
  258. package/test-env/components/collapsible_nav/collapsible_nav.js +0 -5
  259. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +6 -1
  260. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +6 -1
  261. package/test-env/components/expression/expression.js +12 -2
  262. package/test-env/components/header/header_links/header_link.js +10 -1
  263. package/test-env/components/image/image.js +6 -1
  264. package/test-env/components/image/image_fullscreen_wrapper.js +2 -3
  265. package/test-env/components/notification/notification_event.js +25 -16
  266. package/test-env/components/notification/notification_event_meta.js +1 -1
  267. package/test-env/components/overlay_mask/overlay_mask.js +27 -64
  268. package/test-env/components/overlay_mask/overlay_mask.styles.js +34 -0
  269. package/test-env/components/page/page_content/page_content.js +1 -2
  270. package/test-env/components/page/page_content/page_content_body.js +1 -2
  271. package/test-env/components/page/page_content/page_content_header.js +1 -2
  272. package/test-env/components/page/page_content/page_content_header_section.js +1 -2
  273. package/test-env/components/page/page_section/page_section.js +15 -3
  274. package/test-env/components/page/page_side_bar/page_side_bar.js +1 -2
  275. package/test-env/components/page/page_template.js +3 -1
  276. package/test-env/components/page_template/empty_prompt/page_empty_prompt.js +11 -1
  277. package/test-env/components/page_template/page_template.js +18 -2
  278. package/test-env/components/pagination/pagination.js +18 -3
  279. package/test-env/components/pagination/pagination.styles.js +34 -0
  280. package/test-env/components/pagination/pagination_button.js +9 -4
  281. package/test-env/components/pagination/pagination_button.styles.js +45 -0
  282. package/test-env/components/pagination/pagination_button_arrow.js +7 -0
  283. package/test-env/components/popover/popover_title.js +2 -2
  284. package/test-env/components/popover/popover_title.styles.js +19 -7
  285. package/test-env/components/progress/progress.js +6 -1
  286. package/test-env/components/provider/cache/cache_provider.js +3 -11
  287. package/test-env/components/provider/provider.js +31 -6
  288. package/test-env/components/resizable_container/resizable_panel.js +6 -1
  289. package/test-env/components/search_bar/filters/custom_component_filter.js +29 -0
  290. package/test-env/components/search_bar/filters/filters.js +7 -0
  291. package/test-env/components/search_bar/query/ast.js +12 -0
  292. package/test-env/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  293. package/test-env/components/search_bar/query/query.js +17 -0
  294. package/test-env/components/search_bar/search_bar.js +4 -0
  295. package/test-env/components/search_bar/search_filters.js +4 -0
  296. package/test-env/components/selectable/selectable_list/selectable_list.js +2 -2
  297. package/test-env/components/selectable/selectable_list/selectable_list_item.js +2 -2
  298. package/test-env/components/side_nav/side_nav.js +5 -0
  299. package/test-env/components/suggest/suggest.js +10 -1
  300. package/test-env/components/tool_tip/tool_tip.js +42 -64
  301. package/test-env/components/tool_tip/tool_tip.styles.js +125 -0
  302. package/test-env/components/tool_tip/tool_tip_anchor.js +84 -0
  303. package/test-env/components/tool_tip/tool_tip_arrow.js +35 -0
  304. package/test-env/components/tool_tip/tool_tip_popover.js +49 -89
  305. package/test-env/global_styling/index.js +13 -0
  306. package/test-env/global_styling/utility/animations.js +17 -0
  307. package/test-env/services/color/contrast.js +5 -1
  308. package/test-env/services/index.js +7 -0
  309. package/test-env/services/theme/context.js +4 -2
  310. package/test-env/services/theme/hooks.js +28 -0
  311. package/test-env/services/theme/index.js +12 -0
  312. package/test-env/services/theme/provider.js +23 -9
  313. package/src/components/badge/_badge.scss +0 -133
  314. package/src/components/call_out/_index.scss +0 -3
  315. package/src/components/call_out/_mixins.scss +0 -23
  316. package/src/components/call_out/_variables.scss +0 -7
  317. package/src/components/overlay_mask/_index.scss +0 -1
  318. package/src/components/overlay_mask/_overlay_mask.scss +0 -33
  319. package/src/components/pagination/_index.scss +0 -2
  320. package/src/components/pagination/_pagination.scss +0 -30
  321. package/src/components/pagination/_pagination_button.scss +0 -37
  322. package/src/components/tool_tip/_index.scss +0 -1
  323. package/src/components/tool_tip/_tool_tip.scss +0 -121
  324. package/src/themes/amsterdam/overrides/_overlay_mask.scss +0 -3
  325. package/src/themes/amsterdam/overrides/_tooltip.scss +0 -7
@@ -0,0 +1,107 @@
1
+ var _templateObject, _templateObject2;
2
+
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
4
+
5
+ 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)."; }
6
+
7
+ /*
8
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
9
+ * or more contributor license agreements. Licensed under the Elastic License
10
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
11
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
12
+ * Side Public License, v 1.
13
+ */
14
+ import { css, keyframes } from '@emotion/react';
15
+ import { logicalCSS, logicalSizeCSS, euiFontSize } from '../../global_styling';
16
+ import { COLOR_MODES_STANDARD, tint, shade } from '../../services';
17
+ import { euiShadow } from '../../themes/amsterdam';
18
+ export var euiToolTipBackgroundColor = function euiToolTipBackgroundColor(euiTheme, colorMode) {
19
+ return colorMode === COLOR_MODES_STANDARD.dark ? shade(euiTheme.colors.emptyShade, 1) : tint(euiTheme.colors.fullShade, 0.25);
20
+ };
21
+ export var euiToolTipBorderColor = function euiToolTipBorderColor(euiTheme, colorMode) {
22
+ return colorMode === COLOR_MODES_STANDARD.dark ? shade(euiTheme.colors.fullShade, 0.8) : tint(euiTheme.colors.fullShade, 0.35);
23
+ };
24
+
25
+ var euiToolTipAnimationVertical = function euiToolTipAnimationVertical(size) {
26
+ 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);
27
+ };
28
+
29
+ var euiToolTipAnimationHorizontal = function euiToolTipAnimationHorizontal(size) {
30
+ return keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n transform: translateX(", ");\n }\n\n 100% {\n opacity: 1;\n transform: translateX(0);\n }\n"])), size);
31
+ };
32
+
33
+ export var euiToolTipStyles = function euiToolTipStyles(euiThemeContext) {
34
+ var euiTheme = euiThemeContext.euiTheme,
35
+ colorMode = euiThemeContext.colorMode;
36
+ var animationTiming = "".concat(euiTheme.animation.slow, " ease-out 0s forwards");
37
+ /*
38
+ * 1. Shift arrow 1px more than half its size to account for border radius
39
+ */
40
+
41
+ var arrowSize = euiTheme.size.m;
42
+ var arrowSizeInt = parseInt(arrowSize, 10);
43
+ var arrowPlusSize = "".concat((arrowSizeInt / 2 + 1) * -1, "px");
44
+ /* 1 */
45
+
46
+ var arrowMinusSize = "".concat((arrowSizeInt / 2 - 1) * -1, "px");
47
+ /* 1 */
48
+
49
+ return {
50
+ // Base
51
+ euiToolTip: /*#__PURE__*/css(euiShadow(euiThemeContext), ";border-radius:", euiTheme.border.radius.medium, ";background-color:", euiToolTipBackgroundColor(euiTheme, colorMode), ";color:", euiTheme.colors.ghost, ";z-index:", euiTheme.levels.toast, ";", logicalCSS('max-width', '256px'), " overflow-wrap:break-word;padding:", euiTheme.size.s, ";", euiFontSize(euiThemeContext, 's'), ";position:absolute;[class*='euiHorizontalRule']{background-color:", euiToolTipBorderColor(euiTheme, colorMode), ";};label:euiToolTip;"),
52
+ // Sizes
53
+ s: /*#__PURE__*/css(euiFontSize(euiThemeContext, 'xs'), ";;label:s;"),
54
+ // Positions
55
+ top: /*#__PURE__*/css("animation:", euiToolTipAnimationVertical("-".concat(euiTheme.size.base)), " ", animationTiming, ";;label:top;"),
56
+ bottom: /*#__PURE__*/css("animation:", euiToolTipAnimationVertical(euiTheme.size.base), " ", animationTiming, ";[class*='euiToolTip__arrow']{transform:translateY(", arrowMinusSize, ") rotateZ(45deg);};label:bottom;"),
57
+ left: /*#__PURE__*/css("animation:", euiToolTipAnimationHorizontal("-".concat(euiTheme.size.base)), " ", animationTiming, ";[class*='euiToolTip__arrow']{transform:translateX(", arrowPlusSize, ") rotateZ(45deg);};label:left;"),
58
+ right: /*#__PURE__*/css("animation:", euiToolTipAnimationHorizontal(euiTheme.size.base), " ", animationTiming, ";[class*='euiToolTip__arrow']{transform:translateX(", arrowMinusSize, ") rotateZ(45deg);};label:right;"),
59
+ // Elements
60
+ euiToolTip__arrow: /*#__PURE__*/css("content:'';position:absolute;transform-origin:center;border-radius:2px;background-color:", euiToolTipBackgroundColor(euiTheme, colorMode), ";", logicalSizeCSS(arrowSize, arrowSize), ";transform:translateY(", arrowPlusSize, ") rotateZ(45deg);;label:euiToolTip__arrow;")
61
+ };
62
+ };
63
+ export var euiToolTipPopoverStyles = function euiToolTipPopoverStyles(_ref4) {
64
+ var euiTheme = _ref4.euiTheme,
65
+ colorMode = _ref4.colorMode;
66
+ return {
67
+ // Elements
68
+ euiToolTip__title: /*#__PURE__*/css("font-weight:", euiTheme.font.weight.bold, ";", logicalCSS('border-bottom', "solid ".concat(euiTheme.border.width.thin, " ").concat(euiToolTipBorderColor(euiTheme, colorMode))), ";", logicalCSS('padding-bottom', euiTheme.size.xs), ";", logicalCSS('margin-bottom', euiTheme.size.xs), ";;label:euiToolTip__title;")
69
+ };
70
+ };
71
+
72
+ var _ref = process.env.NODE_ENV === "production" ? {
73
+ name: "fzilnk-inlineBlock",
74
+ styles: "display:inline-block;label:inlineBlock;"
75
+ } : {
76
+ name: "fzilnk-inlineBlock",
77
+ styles: "display:inline-block;label:inlineBlock;",
78
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
79
+ };
80
+
81
+ var _ref2 = process.env.NODE_ENV === "production" ? {
82
+ name: "14aceuy-block",
83
+ styles: "display:block;label:block;"
84
+ } : {
85
+ name: "14aceuy-block",
86
+ styles: "display:block;label:block;",
87
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
88
+ };
89
+
90
+ var _ref3 = process.env.NODE_ENV === "production" ? {
91
+ name: "1s3i3p5-euiToolTipAnchor",
92
+ styles: "*[disabled]{pointer-events:none;};label:euiToolTipAnchor;"
93
+ } : {
94
+ name: "1s3i3p5-euiToolTipAnchor",
95
+ styles: "*[disabled]{pointer-events:none;};label:euiToolTipAnchor;",
96
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
97
+ };
98
+
99
+ export var euiToolTipAnchorStyles = function euiToolTipAnchorStyles() {
100
+ return {
101
+ // Elements
102
+ euiToolTipAnchor: _ref3,
103
+ // Variants
104
+ block: _ref2,
105
+ inlineBlock: _ref
106
+ };
107
+ };
@@ -0,0 +1,73 @@
1
+ var _excluded = ["onBlur", "onFocus", "onMouseOver", "onMouseOut", "id", "className", "children", "display", "isVisible"];
2
+
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+
5
+ function 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; }
6
+
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8
+
9
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
10
+
11
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
12
+
13
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
14
+
15
+ /*
16
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
17
+ * or more contributor license agreements. Licensed under the Elastic License
18
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
19
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
20
+ * Side Public License, v 1.
21
+ */
22
+ import React, { cloneElement, forwardRef } from 'react';
23
+ import PropTypes from "prop-types";
24
+ import classNames from 'classnames';
25
+ import { euiToolTipAnchorStyles } from './tool_tip.styles';
26
+ import { jsx as ___EmotionJSX } from "@emotion/react";
27
+ export var EuiToolTipAnchor = /*#__PURE__*/forwardRef(function (_ref, ref) {
28
+ var _onBlur = _ref.onBlur,
29
+ _onFocus = _ref.onFocus,
30
+ onMouseOver = _ref.onMouseOver,
31
+ onMouseOut = _ref.onMouseOut,
32
+ id = _ref.id,
33
+ className = _ref.className,
34
+ children = _ref.children,
35
+ display = _ref.display,
36
+ isVisible = _ref.isVisible,
37
+ rest = _objectWithoutProperties(_ref, _excluded);
38
+
39
+ var anchorCss = euiToolTipAnchorStyles();
40
+ var cssStyles = [anchorCss.euiToolTipAnchor, anchorCss[display]];
41
+ var classes = classNames('euiToolTipAnchor', className);
42
+ return (// eslint-disable-next-line jsx-a11y/mouse-events-have-key-events
43
+ ___EmotionJSX("span", _extends({
44
+ ref: ref
45
+ }, rest, {
46
+ css: cssStyles,
47
+ className: classes,
48
+ onMouseOver: onMouseOver,
49
+ onMouseOut: onMouseOut
50
+ }), /*#__PURE__*/cloneElement(children, _objectSpread({
51
+ onFocus: function onFocus(e) {
52
+ _onFocus();
53
+
54
+ children.props.onFocus && children.props.onFocus(e);
55
+ },
56
+ onBlur: function onBlur(e) {
57
+ _onBlur();
58
+
59
+ children.props.onBlur && children.props.onBlur(e);
60
+ }
61
+ }, isVisible && {
62
+ 'aria-describedby': id
63
+ })))
64
+ );
65
+ });
66
+ EuiToolTipAnchor.propTypes = {
67
+ onBlur: PropTypes.func.isRequired,
68
+ onFocus: PropTypes.func.isRequired,
69
+ children: PropTypes.element.isRequired,
70
+ isVisible: PropTypes.bool.isRequired,
71
+ display: PropTypes.oneOf(["block", "inlineBlock"]).isRequired
72
+ };
73
+ EuiToolTipAnchor.displayName = 'EuiToolTipAnchor';
@@ -0,0 +1,20 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
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 React from 'react';
11
+ import { useEuiTheme } from '../../services';
12
+ import { euiToolTipStyles } from './tool_tip.styles';
13
+ import { jsx as ___EmotionJSX } from "@emotion/react";
14
+ export var EuiToolTipArrow = function EuiToolTipArrow(props) {
15
+ var euiTheme = useEuiTheme();
16
+ var toolTipCss = euiToolTipStyles(euiTheme);
17
+ return ___EmotionJSX("div", _extends({
18
+ css: [toolTipCss.euiToolTip__arrow, ";label:EuiToolTipArrow;"]
19
+ }, props));
20
+ };
@@ -1,6 +1,4 @@
1
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
2
-
3
- var _excluded = ["children", "title", "className", "positionToolTip", "popoverRef"];
1
+ var _excluded = ["children", "title", "className", "positionToolTip", "popoverRef", "calculatedPosition"];
4
2
 
5
3
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
4
 
@@ -8,28 +6,6 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
8
6
 
9
7
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
10
8
 
11
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
12
-
13
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
14
-
15
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
16
-
17
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
18
-
19
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
20
-
21
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
22
-
23
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
24
-
25
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
26
-
27
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
28
-
29
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
30
-
31
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
32
-
33
9
  /*
34
10
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
35
11
  * or more contributor license agreements. Licensed under the Elastic License
@@ -37,89 +13,59 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
37
13
  * in compliance with, at your election, the Elastic License 2.0 or the Server
38
14
  * Side Public License, v 1.
39
15
  */
40
- import React, { Component } from 'react';
16
+ import React, { useEffect, useRef, useCallback } from 'react';
41
17
  import PropTypes from "prop-types";
42
18
  import classNames from 'classnames';
19
+ import { useEuiTheme } from '../../services';
20
+ import { euiToolTipStyles, euiToolTipPopoverStyles } from './tool_tip.styles';
43
21
  import { jsx as ___EmotionJSX } from "@emotion/react";
44
- export var EuiToolTipPopover = /*#__PURE__*/function (_Component) {
45
- _inherits(EuiToolTipPopover, _Component);
46
-
47
- var _super = _createSuper(EuiToolTipPopover);
48
-
49
- function EuiToolTipPopover() {
50
- var _this;
51
-
52
- _classCallCheck(this, EuiToolTipPopover);
53
-
54
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
- args[_key] = arguments[_key];
56
- }
57
-
58
- _this = _super.call.apply(_super, [this].concat(args));
59
-
60
- _defineProperty(_assertThisInitialized(_this), "popover", void 0);
61
-
62
- _defineProperty(_assertThisInitialized(_this), "updateDimensions", function () {
63
- requestAnimationFrame(function () {
64
- // Because of this delay, sometimes `positionToolTip` becomes unavailable.
65
- if (_this.popover) {
66
- _this.props.positionToolTip();
67
- }
68
- });
69
- });
70
-
71
- _defineProperty(_assertThisInitialized(_this), "setPopoverRef", function (ref) {
72
- _this.popover = ref;
73
-
74
- if (_this.props.popoverRef) {
75
- _this.props.popoverRef(ref);
22
+ export var EuiToolTipPopover = function EuiToolTipPopover(_ref) {
23
+ var children = _ref.children,
24
+ title = _ref.title,
25
+ className = _ref.className,
26
+ positionToolTip = _ref.positionToolTip,
27
+ popoverRef = _ref.popoverRef,
28
+ calculatedPosition = _ref.calculatedPosition,
29
+ rest = _objectWithoutProperties(_ref, _excluded);
30
+
31
+ var popover = useRef();
32
+ var euiTheme = useEuiTheme();
33
+ var toolTipCss = euiToolTipStyles(euiTheme);
34
+ var popoverStyles = euiToolTipPopoverStyles(euiTheme);
35
+ var titleCss = [popoverStyles.euiToolTip__title];
36
+ var updateDimensions = useCallback(function () {
37
+ requestAnimationFrame(function () {
38
+ // Because of this delay, sometimes `positionToolTip` becomes unavailable.
39
+ if (popover.current) {
40
+ positionToolTip();
76
41
  }
77
42
  });
43
+ }, [positionToolTip]);
78
44
 
79
- return _this;
80
- }
81
-
82
- _createClass(EuiToolTipPopover, [{
83
- key: "componentDidMount",
84
- value: function componentDidMount() {
85
- document.body.classList.add('euiBody-hasPortalContent');
86
- window.addEventListener('resize', this.updateDimensions);
45
+ var setPopoverRef = function setPopoverRef(ref) {
46
+ if (popoverRef) {
47
+ popoverRef(ref);
87
48
  }
88
- }, {
89
- key: "componentWillUnmount",
90
- value: function componentWillUnmount() {
91
- document.body.classList.remove('euiBody-hasPortalContent');
92
- window.removeEventListener('resize', this.updateDimensions);
93
- }
94
- }, {
95
- key: "render",
96
- value: function render() {
97
- var _this$props = this.props,
98
- children = _this$props.children,
99
- title = _this$props.title,
100
- className = _this$props.className,
101
- positionToolTip = _this$props.positionToolTip,
102
- popoverRef = _this$props.popoverRef,
103
- rest = _objectWithoutProperties(_this$props, _excluded);
104
-
105
- var classes = classNames('euiToolTipPopover', className);
106
- var optionalTitle;
107
-
108
- if (title) {
109
- optionalTitle = ___EmotionJSX("div", {
110
- className: "euiToolTip__title"
111
- }, title);
112
- }
113
-
114
- return ___EmotionJSX("div", _extends({
115
- className: classes,
116
- ref: this.setPopoverRef
117
- }, rest), optionalTitle, children);
118
- }
119
- }]);
49
+ };
120
50
 
121
- return EuiToolTipPopover;
122
- }(Component);
51
+ useEffect(function () {
52
+ document.body.classList.add('euiBody-hasPortalContent');
53
+ window.addEventListener('resize', updateDimensions);
54
+ return function () {
55
+ document.body.classList.remove('euiBody-hasPortalContent');
56
+ window.removeEventListener('resize', updateDimensions);
57
+ };
58
+ }, [updateDimensions]);
59
+ var classes = classNames('euiToolTipPopover', className);
60
+ return ___EmotionJSX("div", _extends({
61
+ css: [toolTipCss.euiToolTip, calculatedPosition && toolTipCss[calculatedPosition], ";label:EuiToolTipPopover;"],
62
+ className: classes,
63
+ ref: setPopoverRef
64
+ }, rest), title && ___EmotionJSX("div", {
65
+ css: titleCss,
66
+ className: "euiToolTip__title"
67
+ }, title), children);
68
+ };
123
69
  EuiToolTipPopover.propTypes = {
124
70
  className: PropTypes.string,
125
71
  "aria-label": PropTypes.string,
@@ -128,5 +74,6 @@ EuiToolTipPopover.propTypes = {
128
74
  positionToolTip: PropTypes.func.isRequired,
129
75
  children: PropTypes.node,
130
76
  title: PropTypes.node,
131
- popoverRef: PropTypes.func
77
+ popoverRef: PropTypes.func,
78
+ calculatedPosition: PropTypes.oneOf(["top", "right", "bottom", "left"])
132
79
  };
@@ -8,4 +8,5 @@
8
8
  export * from './reset/global_styles';
9
9
  export * from './functions';
10
10
  export * from './variables';
11
- export * from './mixins';
11
+ export * from './mixins';
12
+ export * from './utility/animations';
@@ -0,0 +1,13 @@
1
+ var _templateObject;
2
+
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
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 { keyframes } from '@emotion/react';
13
+ export var euiAnimFadeIn = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n"])));
@@ -10,6 +10,8 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
10
10
  import chroma from 'chroma-js';
11
11
  import { shade, tint, lightness as getLightness } from './manipulation';
12
12
  import { getOn } from '../theme/utils';
13
+ export var wcagContrastMin = 4.5; // WCAG AA minimum contrast ratio for normal (non-large) text
14
+
13
15
  /**
14
16
  * Creates a new color that meets or exceeds WCAG level AA
15
17
  * @param foreground - Color to manipulate
@@ -11,7 +11,7 @@ export { keys };
11
11
  export { accessibleClickKeys, cascadingMenuKeys, comboBoxKeys, htmlIdGenerator, useGeneratedHtmlId } from './accessibility';
12
12
  export { LEFT_ALIGNMENT, RIGHT_ALIGNMENT, CENTER_ALIGNMENT } from './alignment';
13
13
  export { useIsWithinBreakpoints, useIsWithinMaxBreakpoint, useIsWithinMinBreakpoint, CurrentEuiBreakpointContext, CurrentEuiBreakpointProvider, useCurrentEuiBreakpoint } from './breakpoint';
14
- export { isColorDark, isValidHex, calculateContrast, calculateLuminance, hexToHsv, hexToRgb, hsvToHex, hsvToRgb, rgbToHex, rgbToHsv, VISUALIZATION_COLORS, DEFAULT_VISUALIZATION_COLOR, colorPalette, euiPaletteForLightBackground, euiPaletteForDarkBackground, euiPaletteColorBlind, euiPaletteColorBlindBehindText, euiPaletteForStatus, euiPaletteForTemperature, euiPaletteComplimentary, euiPaletteNegative, euiPalettePositive, euiPaletteCool, euiPaletteWarm, euiPaletteGray, getSteppedGradient, transparentize, tint, shade, tintOrShade, shadeOrTint, saturate, desaturate, lightness, makeHighContrastColor, makeDisabledContrastColor } from './color';
14
+ export { isColorDark, isValidHex, calculateContrast, calculateLuminance, hexToHsv, hexToRgb, hsvToHex, hsvToRgb, rgbToHex, rgbToHsv, VISUALIZATION_COLORS, DEFAULT_VISUALIZATION_COLOR, colorPalette, euiPaletteForLightBackground, euiPaletteForDarkBackground, euiPaletteColorBlind, euiPaletteColorBlindBehindText, euiPaletteForStatus, euiPaletteForTemperature, euiPaletteComplimentary, euiPaletteNegative, euiPalettePositive, euiPaletteCool, euiPaletteWarm, euiPaletteGray, getSteppedGradient, transparentize, tint, shade, tintOrShade, shadeOrTint, saturate, desaturate, lightness, makeHighContrastColor, makeDisabledContrastColor, wcagContrastMin } from './color';
15
15
  export { useColorPickerState, useColorStopsState } from './color_picker';
16
16
  export * from './console';
17
17
  export { copyToClipboard } from './copy_to_clipboard';
@@ -11,4 +11,5 @@ import { DEFAULT_COLOR_MODE, getComputed } from './utils';
11
11
  export var EuiSystemContext = /*#__PURE__*/createContext(EuiThemeAmsterdam);
12
12
  export var EuiModificationsContext = /*#__PURE__*/createContext({});
13
13
  export var EuiColorModeContext = /*#__PURE__*/createContext(DEFAULT_COLOR_MODE);
14
- export var EuiThemeContext = /*#__PURE__*/createContext(getComputed(EuiThemeAmsterdam, {}, DEFAULT_COLOR_MODE));
14
+ export var defaultComputedTheme = getComputed(EuiThemeAmsterdam, {}, DEFAULT_COLOR_MODE);
15
+ export var EuiThemeContext = /*#__PURE__*/createContext(defaultComputedTheme);
@@ -8,12 +8,38 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
8
8
  * Side Public License, v 1.
9
9
  */
10
10
  import React, { forwardRef, useContext, useMemo } from 'react';
11
- import { EuiThemeContext, EuiModificationsContext, EuiColorModeContext } from './context';
11
+ import { EuiThemeContext, EuiModificationsContext, EuiColorModeContext, defaultComputedTheme } from './context';
12
+ import { getEuiDevProviderWarning } from './provider';
12
13
  import { jsx as ___EmotionJSX } from "@emotion/react";
14
+ var providerMessage = "`EuiProvider` is missing which can result in negative effects.\nWrap your component in `EuiProvider`: https://ela.st/euiprovider.";
13
15
  export var useEuiTheme = function useEuiTheme() {
14
16
  var theme = useContext(EuiThemeContext);
15
17
  var colorMode = useContext(EuiColorModeContext);
16
18
  var modifications = useContext(EuiModificationsContext);
19
+
20
+ if (process.env.NODE_ENV !== 'production') {
21
+ var isFallback = theme === defaultComputedTheme;
22
+ var warningLevel = getEuiDevProviderWarning();
23
+
24
+ if (isFallback && typeof warningLevel !== 'undefined') {
25
+ switch (warningLevel) {
26
+ case 'log':
27
+ console.log(providerMessage);
28
+ break;
29
+
30
+ case 'warn':
31
+ console.warn(providerMessage);
32
+ break;
33
+
34
+ case 'error':
35
+ throw new Error(providerMessage);
36
+
37
+ default:
38
+ break;
39
+ }
40
+ }
41
+ }
42
+
17
43
  var assembledTheme = useMemo(function () {
18
44
  return {
19
45
  euiTheme: theme,
@@ -7,6 +7,6 @@
7
7
  */
8
8
  export { EuiSystemContext, EuiThemeContext, EuiModificationsContext, EuiColorModeContext } from './context';
9
9
  export { useEuiTheme, withEuiTheme } from './hooks';
10
- export { EuiThemeProvider } from './provider';
10
+ export { EuiThemeProvider, getEuiDevProviderWarning, setEuiDevProviderWarning } from './provider';
11
11
  export { buildTheme, computed, isInverseColorMode, getColorMode, getComputed, getOn, mergeDeep, setOn, Computed } from './utils';
12
12
  export { COLOR_MODES_STANDARD } from './types';
@@ -1,3 +1,9 @@
1
+ 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; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
1
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
8
 
3
9
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -22,6 +28,13 @@ import isEqual from 'lodash/isEqual';
22
28
  import { EuiSystemContext, EuiThemeContext, EuiModificationsContext, EuiColorModeContext } from './context';
23
29
  import { buildTheme, getColorMode, getComputed, mergeDeep } from './utils';
24
30
  import { jsx as ___EmotionJSX } from "@emotion/react";
31
+ var providerWarning = undefined;
32
+ export var setEuiDevProviderWarning = function setEuiDevProviderWarning(level) {
33
+ return providerWarning = level;
34
+ };
35
+ export var getEuiDevProviderWarning = function getEuiDevProviderWarning() {
36
+ return providerWarning;
37
+ };
25
38
  export var EuiThemeProvider = function EuiThemeProvider(_ref) {
26
39
  var _system = _ref.theme,
27
40
  _colorMode = _ref.colorMode,
@@ -54,7 +67,8 @@ export var EuiThemeProvider = function EuiThemeProvider(_ref) {
54
67
  var prevColorMode = useRef(colorMode);
55
68
  var isParentTheme = useRef(prevSystemKey.current === parentSystem.key && colorMode === parentColorMode && isEqual(parentModifications, modifications));
56
69
 
57
- var _useState7 = useState(isParentTheme.current && Object.keys(parentTheme).length ? parentTheme : getComputed(system, buildTheme(modifications, "_".concat(system.key)), colorMode)),
70
+ var _useState7 = useState(isParentTheme.current && Object.keys(parentTheme).length ? _objectSpread({}, parentTheme) // Intentionally create a new object to break referential equality
71
+ : getComputed(system, buildTheme(modifications, "_".concat(system.key)), colorMode)),
58
72
  _useState8 = _slicedToArray(_useState7, 2),
59
73
  theme = _useState8[0],
60
74
  setTheme = _useState8[1];