@elastic/eui 93.5.2 → 93.6.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 (334) hide show
  1. package/es/components/accessibility/screen_reader_only/screen_reader_only.js +9 -8
  2. package/es/components/accessibility/screen_reader_only/screen_reader_only.styles.js +3 -4
  3. package/es/components/accessibility/skip_link/skip_link.js +2 -3
  4. package/es/components/aspect_ratio/aspect_ratio.js +16 -14
  5. package/es/components/avatar/avatar.js +41 -42
  6. package/es/components/avatar/avatar.styles.js +1 -1
  7. package/es/components/badge/badge.js +4 -4
  8. package/es/components/badge/badge_group/badge_group.js +3 -4
  9. package/es/components/badge/beta_badge/beta_badge.js +2 -3
  10. package/es/components/badge/notification_badge/badge_notification.js +3 -4
  11. package/es/components/bottom_bar/bottom_bar.js +8 -18
  12. package/es/components/bottom_bar/bottom_bar.styles.js +3 -2
  13. package/es/components/breadcrumbs/_breadcrumb_content.js +8 -11
  14. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +17 -4
  15. package/es/components/breadcrumbs/breadcrumbs.js +4 -3
  16. package/es/components/button/button_display/_button_display_content.js +28 -30
  17. package/es/components/button/button_group/button_group_button.js +5 -6
  18. package/es/components/button/button_group/button_group_button.styles.js +21 -10
  19. package/es/components/call_out/call_out.js +45 -42
  20. package/es/components/call_out/call_out.styles.js +4 -4
  21. package/es/components/code/code_block_annotations.js +7 -6
  22. package/es/components/code/code_block_annotations.style.js +2 -1
  23. package/es/components/collapsible_nav/collapsible_nav.js +2 -3
  24. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +2 -3
  25. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +4 -4
  26. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +2 -3
  27. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +2 -3
  28. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +2 -3
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +3 -4
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -3
  31. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +2 -3
  32. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +2 -3
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +2 -3
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +2 -3
  35. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +1 -0
  36. package/es/components/combo_box/combo_box.js +22 -16
  37. package/es/components/comment_list/comment_event.js +4 -5
  38. package/es/components/context_menu/context_menu.js +6 -7
  39. package/es/components/context_menu/context_menu_item.js +2 -3
  40. package/es/components/context_menu/context_menu_panel.js +5 -5
  41. package/es/components/description_list/description_list.js +14 -16
  42. package/es/components/description_list/description_list_description.js +2 -3
  43. package/es/components/description_list/description_list_title.js +2 -3
  44. package/es/components/empty_prompt/empty_prompt.js +2 -5
  45. package/es/components/flyout/_flyout_close_button.js +45 -0
  46. package/es/components/flyout/_flyout_close_button.styles.js +27 -0
  47. package/es/components/flyout/flyout.js +77 -64
  48. package/es/components/flyout/flyout.styles.js +3 -17
  49. package/es/components/flyout/flyout_body.js +5 -8
  50. package/es/components/flyout/flyout_body.styles.js +2 -1
  51. package/es/components/flyout/flyout_footer.js +3 -5
  52. package/es/components/flyout/flyout_header.js +2 -3
  53. package/es/components/flyout/flyout_resizable.js +2 -3
  54. package/es/components/form/super_select/super_select.js +33 -22
  55. package/es/components/form/super_select/super_select_control.js +39 -5
  56. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -3
  57. package/es/components/horizontal_rule/horizontal_rule.js +3 -18
  58. package/es/components/loading/loading_chart.js +16 -21
  59. package/es/components/loading/loading_chart.styles.js +28 -10
  60. package/es/components/loading/loading_elastic.js +3 -5
  61. package/es/components/loading/loading_elastic.styles.js +2 -4
  62. package/es/components/loading/loading_logo.js +6 -9
  63. package/es/components/loading/loading_logo.styles.js +1 -6
  64. package/es/components/loading/loading_spinner.js +5 -5
  65. package/es/components/page/page_header/page_header_content.js +1 -1
  66. package/es/components/resizable_container/resizable_collapse_button.js +1 -2
  67. package/es/components/tabs/tab.js +3 -4
  68. package/es/components/tabs/tabs.js +2 -3
  69. package/eui.d.ts +71 -57
  70. package/i18ntokens.json +82 -100
  71. package/lib/components/accessibility/screen_reader_only/screen_reader_only.js +8 -7
  72. package/lib/components/accessibility/screen_reader_only/screen_reader_only.styles.js +3 -4
  73. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  74. package/lib/components/aspect_ratio/aspect_ratio.js +18 -14
  75. package/lib/components/avatar/avatar.js +42 -41
  76. package/lib/components/avatar/avatar.styles.js +1 -1
  77. package/lib/components/badge/badge.js +3 -3
  78. package/lib/components/badge/badge_group/badge_group.js +2 -3
  79. package/lib/components/badge/beta_badge/beta_badge.js +1 -2
  80. package/lib/components/badge/notification_badge/badge_notification.js +2 -3
  81. package/lib/components/bottom_bar/bottom_bar.js +10 -20
  82. package/lib/components/bottom_bar/bottom_bar.styles.js +3 -2
  83. package/lib/components/breadcrumbs/_breadcrumb_content.js +8 -11
  84. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +16 -3
  85. package/lib/components/breadcrumbs/breadcrumbs.js +4 -3
  86. package/lib/components/button/button_display/_button_display_content.js +30 -29
  87. package/lib/components/button/button_group/button_group_button.js +3 -4
  88. package/lib/components/button/button_group/button_group_button.styles.js +22 -12
  89. package/lib/components/call_out/call_out.js +43 -40
  90. package/lib/components/call_out/call_out.styles.js +6 -6
  91. package/lib/components/code/code_block_annotations.js +6 -5
  92. package/lib/components/code/code_block_annotations.style.js +2 -1
  93. package/lib/components/collapsible_nav/collapsible_nav.js +1 -2
  94. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -2
  95. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +3 -3
  96. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +1 -2
  97. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +1 -2
  98. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -2
  99. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -3
  100. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +1 -2
  101. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +1 -2
  102. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +1 -2
  103. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +1 -2
  104. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +1 -2
  105. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +1 -0
  106. package/lib/components/combo_box/combo_box.js +22 -16
  107. package/lib/components/comment_list/comment_event.js +3 -4
  108. package/lib/components/context_menu/context_menu.js +5 -6
  109. package/lib/components/context_menu/context_menu_item.js +1 -2
  110. package/lib/components/context_menu/context_menu_panel.js +4 -4
  111. package/lib/components/description_list/description_list.js +13 -15
  112. package/lib/components/description_list/description_list_description.js +1 -2
  113. package/lib/components/description_list/description_list_title.js +1 -2
  114. package/lib/components/empty_prompt/empty_prompt.js +1 -4
  115. package/lib/components/flyout/_flyout_close_button.js +52 -0
  116. package/lib/components/flyout/_flyout_close_button.styles.js +34 -0
  117. package/lib/components/flyout/flyout.js +76 -63
  118. package/lib/components/flyout/flyout.styles.js +5 -19
  119. package/lib/components/flyout/flyout_body.js +4 -7
  120. package/lib/components/flyout/flyout_body.styles.js +2 -1
  121. package/lib/components/flyout/flyout_footer.js +2 -4
  122. package/lib/components/flyout/flyout_header.js +1 -2
  123. package/lib/components/flyout/flyout_resizable.js +1 -2
  124. package/lib/components/form/super_select/super_select.js +32 -21
  125. package/lib/components/form/super_select/super_select_control.js +38 -4
  126. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -3
  127. package/lib/components/horizontal_rule/horizontal_rule.js +2 -17
  128. package/lib/components/loading/loading_chart.js +14 -19
  129. package/lib/components/loading/loading_chart.styles.js +28 -10
  130. package/lib/components/loading/loading_elastic.js +2 -4
  131. package/lib/components/loading/loading_elastic.styles.js +2 -4
  132. package/lib/components/loading/loading_logo.js +5 -8
  133. package/lib/components/loading/loading_logo.styles.js +3 -9
  134. package/lib/components/loading/loading_spinner.js +5 -5
  135. package/lib/components/page/page_header/page_header_content.js +1 -1
  136. package/lib/components/resizable_container/resizable_collapse_button.js +1 -2
  137. package/lib/components/tabs/tab.js +2 -3
  138. package/lib/components/tabs/tabs.js +1 -2
  139. package/optimize/es/components/accessibility/screen_reader_only/screen_reader_only.js +8 -7
  140. package/optimize/es/components/accessibility/screen_reader_only/screen_reader_only.styles.js +3 -4
  141. package/optimize/es/components/accessibility/skip_link/skip_link.js +2 -3
  142. package/optimize/es/components/aspect_ratio/aspect_ratio.js +16 -14
  143. package/optimize/es/components/avatar/avatar.js +39 -40
  144. package/optimize/es/components/avatar/avatar.styles.js +1 -1
  145. package/optimize/es/components/badge/badge.js +4 -4
  146. package/optimize/es/components/badge/badge_group/badge_group.js +3 -4
  147. package/optimize/es/components/badge/beta_badge/beta_badge.js +2 -3
  148. package/optimize/es/components/badge/notification_badge/badge_notification.js +3 -4
  149. package/optimize/es/components/bottom_bar/bottom_bar.js +6 -16
  150. package/optimize/es/components/bottom_bar/bottom_bar.styles.js +3 -2
  151. package/optimize/es/components/breadcrumbs/_breadcrumb_content.js +7 -10
  152. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +17 -4
  153. package/optimize/es/components/button/button_display/_button_display_content.js +28 -30
  154. package/optimize/es/components/button/button_group/button_group_button.js +5 -6
  155. package/optimize/es/components/button/button_group/button_group_button.styles.js +13 -10
  156. package/optimize/es/components/call_out/call_out.js +45 -42
  157. package/optimize/es/components/call_out/call_out.styles.js +4 -4
  158. package/optimize/es/components/code/code_block_annotations.js +7 -6
  159. package/optimize/es/components/code/code_block_annotations.style.js +2 -1
  160. package/optimize/es/components/collapsible_nav/collapsible_nav.js +2 -3
  161. package/optimize/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +2 -3
  162. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +4 -4
  163. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +2 -3
  164. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +2 -3
  165. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +2 -3
  166. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +3 -4
  167. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -3
  168. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +2 -3
  169. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +2 -3
  170. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +2 -3
  171. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +2 -3
  172. package/optimize/es/components/combo_box/combo_box.js +22 -16
  173. package/optimize/es/components/comment_list/comment_event.js +4 -5
  174. package/optimize/es/components/context_menu/context_menu.js +6 -7
  175. package/optimize/es/components/context_menu/context_menu_item.js +2 -3
  176. package/optimize/es/components/context_menu/context_menu_panel.js +5 -5
  177. package/optimize/es/components/description_list/description_list.js +14 -16
  178. package/optimize/es/components/description_list/description_list_description.js +2 -3
  179. package/optimize/es/components/description_list/description_list_title.js +2 -3
  180. package/optimize/es/components/empty_prompt/empty_prompt.js +2 -5
  181. package/optimize/es/components/flyout/_flyout_close_button.js +44 -0
  182. package/optimize/es/components/flyout/_flyout_close_button.styles.js +27 -0
  183. package/optimize/es/components/flyout/flyout.js +57 -64
  184. package/optimize/es/components/flyout/flyout.styles.js +3 -17
  185. package/optimize/es/components/flyout/flyout_body.js +5 -8
  186. package/optimize/es/components/flyout/flyout_body.styles.js +2 -1
  187. package/optimize/es/components/flyout/flyout_footer.js +3 -5
  188. package/optimize/es/components/flyout/flyout_header.js +2 -3
  189. package/optimize/es/components/flyout/flyout_resizable.js +2 -3
  190. package/optimize/es/components/form/super_select/super_select.js +32 -22
  191. package/optimize/es/components/form/super_select/super_select_control.js +34 -5
  192. package/optimize/es/components/horizontal_rule/horizontal_rule.js +3 -15
  193. package/optimize/es/components/loading/loading_chart.js +16 -21
  194. package/optimize/es/components/loading/loading_chart.styles.js +28 -10
  195. package/optimize/es/components/loading/loading_elastic.js +3 -5
  196. package/optimize/es/components/loading/loading_elastic.styles.js +2 -4
  197. package/optimize/es/components/loading/loading_logo.js +6 -9
  198. package/optimize/es/components/loading/loading_logo.styles.js +1 -6
  199. package/optimize/es/components/loading/loading_spinner.js +5 -5
  200. package/optimize/es/components/resizable_container/resizable_collapse_button.js +1 -2
  201. package/optimize/es/components/tabs/tab.js +3 -4
  202. package/optimize/es/components/tabs/tabs.js +2 -3
  203. package/optimize/lib/components/accessibility/screen_reader_only/screen_reader_only.js +7 -6
  204. package/optimize/lib/components/accessibility/screen_reader_only/screen_reader_only.styles.js +3 -4
  205. package/optimize/lib/components/accessibility/skip_link/skip_link.js +1 -2
  206. package/optimize/lib/components/aspect_ratio/aspect_ratio.js +19 -14
  207. package/optimize/lib/components/avatar/avatar.js +41 -39
  208. package/optimize/lib/components/avatar/avatar.styles.js +1 -1
  209. package/optimize/lib/components/badge/badge.js +3 -3
  210. package/optimize/lib/components/badge/badge_group/badge_group.js +2 -3
  211. package/optimize/lib/components/badge/beta_badge/beta_badge.js +1 -2
  212. package/optimize/lib/components/badge/notification_badge/badge_notification.js +2 -3
  213. package/optimize/lib/components/bottom_bar/bottom_bar.js +8 -18
  214. package/optimize/lib/components/bottom_bar/bottom_bar.styles.js +3 -2
  215. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.js +7 -10
  216. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +16 -3
  217. package/optimize/lib/components/button/button_display/_button_display_content.js +30 -29
  218. package/optimize/lib/components/button/button_group/button_group_button.js +3 -4
  219. package/optimize/lib/components/button/button_group/button_group_button.styles.js +15 -12
  220. package/optimize/lib/components/call_out/call_out.js +43 -40
  221. package/optimize/lib/components/call_out/call_out.styles.js +6 -6
  222. package/optimize/lib/components/code/code_block_annotations.js +6 -5
  223. package/optimize/lib/components/code/code_block_annotations.style.js +2 -1
  224. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -2
  225. package/optimize/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -2
  226. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +3 -3
  227. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +1 -2
  228. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +1 -2
  229. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -2
  230. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -3
  231. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +1 -2
  232. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +1 -2
  233. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +1 -2
  234. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +1 -2
  235. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +1 -2
  236. package/optimize/lib/components/combo_box/combo_box.js +22 -16
  237. package/optimize/lib/components/comment_list/comment_event.js +3 -4
  238. package/optimize/lib/components/context_menu/context_menu.js +5 -6
  239. package/optimize/lib/components/context_menu/context_menu_item.js +1 -2
  240. package/optimize/lib/components/context_menu/context_menu_panel.js +4 -4
  241. package/optimize/lib/components/description_list/description_list.js +13 -15
  242. package/optimize/lib/components/description_list/description_list_description.js +1 -2
  243. package/optimize/lib/components/description_list/description_list_title.js +1 -2
  244. package/optimize/lib/components/empty_prompt/empty_prompt.js +1 -4
  245. package/optimize/lib/components/flyout/_flyout_close_button.js +51 -0
  246. package/optimize/lib/components/flyout/_flyout_close_button.styles.js +34 -0
  247. package/optimize/lib/components/flyout/flyout.js +55 -62
  248. package/optimize/lib/components/flyout/flyout.styles.js +5 -19
  249. package/optimize/lib/components/flyout/flyout_body.js +4 -7
  250. package/optimize/lib/components/flyout/flyout_body.styles.js +2 -1
  251. package/optimize/lib/components/flyout/flyout_footer.js +2 -4
  252. package/optimize/lib/components/flyout/flyout_header.js +1 -2
  253. package/optimize/lib/components/flyout/flyout_resizable.js +1 -2
  254. package/optimize/lib/components/form/super_select/super_select.js +31 -21
  255. package/optimize/lib/components/form/super_select/super_select_control.js +33 -4
  256. package/optimize/lib/components/horizontal_rule/horizontal_rule.js +2 -14
  257. package/optimize/lib/components/loading/loading_chart.js +14 -19
  258. package/optimize/lib/components/loading/loading_chart.styles.js +28 -10
  259. package/optimize/lib/components/loading/loading_elastic.js +2 -4
  260. package/optimize/lib/components/loading/loading_elastic.styles.js +2 -4
  261. package/optimize/lib/components/loading/loading_logo.js +5 -8
  262. package/optimize/lib/components/loading/loading_logo.styles.js +3 -9
  263. package/optimize/lib/components/loading/loading_spinner.js +5 -5
  264. package/optimize/lib/components/resizable_container/resizable_collapse_button.js +1 -2
  265. package/optimize/lib/components/tabs/tab.js +2 -3
  266. package/optimize/lib/components/tabs/tabs.js +1 -2
  267. package/package.json +1 -1
  268. package/test-env/components/accessibility/screen_reader_only/screen_reader_only.js +8 -7
  269. package/test-env/components/accessibility/screen_reader_only/screen_reader_only.styles.js +3 -4
  270. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  271. package/test-env/components/aspect_ratio/aspect_ratio.js +19 -14
  272. package/test-env/components/avatar/avatar.js +41 -39
  273. package/test-env/components/avatar/avatar.styles.js +1 -1
  274. package/test-env/components/badge/badge.js +3 -3
  275. package/test-env/components/badge/badge_group/badge_group.js +2 -3
  276. package/test-env/components/badge/beta_badge/beta_badge.js +1 -2
  277. package/test-env/components/badge/notification_badge/badge_notification.js +2 -3
  278. package/test-env/components/bottom_bar/bottom_bar.js +10 -20
  279. package/test-env/components/bottom_bar/bottom_bar.styles.js +3 -2
  280. package/test-env/components/breadcrumbs/_breadcrumb_content.js +8 -11
  281. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +16 -3
  282. package/test-env/components/breadcrumbs/breadcrumbs.js +4 -3
  283. package/test-env/components/button/button_display/_button_display_content.js +30 -29
  284. package/test-env/components/button/button_group/button_group_button.js +3 -4
  285. package/test-env/components/button/button_group/button_group_button.styles.js +15 -12
  286. package/test-env/components/call_out/call_out.js +43 -40
  287. package/test-env/components/call_out/call_out.styles.js +6 -6
  288. package/test-env/components/code/code_block_annotations.js +6 -5
  289. package/test-env/components/code/code_block_annotations.style.js +2 -1
  290. package/test-env/components/collapsible_nav/collapsible_nav.js +1 -2
  291. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -2
  292. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +3 -3
  293. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.js +1 -2
  294. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +1 -2
  295. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -2
  296. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -3
  297. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +1 -2
  298. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +1 -2
  299. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +1 -2
  300. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +1 -2
  301. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +1 -2
  302. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +1 -0
  303. package/test-env/components/combo_box/combo_box.js +22 -16
  304. package/test-env/components/comment_list/comment_event.js +3 -4
  305. package/test-env/components/context_menu/context_menu.js +5 -6
  306. package/test-env/components/context_menu/context_menu_item.js +1 -2
  307. package/test-env/components/context_menu/context_menu_panel.js +4 -4
  308. package/test-env/components/description_list/description_list.js +13 -15
  309. package/test-env/components/description_list/description_list_description.js +1 -2
  310. package/test-env/components/description_list/description_list_title.js +1 -2
  311. package/test-env/components/empty_prompt/empty_prompt.js +1 -4
  312. package/test-env/components/flyout/_flyout_close_button.js +51 -0
  313. package/test-env/components/flyout/_flyout_close_button.styles.js +34 -0
  314. package/test-env/components/flyout/flyout.styles.js +5 -19
  315. package/test-env/components/flyout/flyout_body.js +4 -7
  316. package/test-env/components/flyout/flyout_body.styles.js +2 -1
  317. package/test-env/components/flyout/flyout_footer.js +2 -4
  318. package/test-env/components/flyout/flyout_header.js +1 -2
  319. package/test-env/components/flyout/flyout_resizable.js +1 -2
  320. package/test-env/components/form/super_select/super_select.js +32 -21
  321. package/test-env/components/form/super_select/super_select_control.js +33 -4
  322. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -3
  323. package/test-env/components/horizontal_rule/horizontal_rule.js +2 -14
  324. package/test-env/components/loading/loading_chart.js +14 -19
  325. package/test-env/components/loading/loading_chart.styles.js +28 -10
  326. package/test-env/components/loading/loading_elastic.js +2 -4
  327. package/test-env/components/loading/loading_elastic.styles.js +2 -4
  328. package/test-env/components/loading/loading_logo.js +5 -8
  329. package/test-env/components/loading/loading_logo.styles.js +3 -9
  330. package/test-env/components/loading/loading_spinner.js +5 -5
  331. package/test-env/components/page/page_header/page_header_content.js +1 -1
  332. package/test-env/components/resizable_container/resizable_collapse_button.js +1 -2
  333. package/test-env/components/tabs/tab.js +2 -3
  334. package/test-env/components/tabs/tabs.js +1 -2
@@ -19,7 +19,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  import React from 'react';
20
20
  import PropTypes from "prop-types";
21
21
  import classNames from 'classnames';
22
- import { useEuiTheme } from '../../../services';
22
+ import { useEuiMemoizedStyles } from '../../../services';
23
23
  import { EuiLink } from '../../link';
24
24
  import { euiCollapsibleNavLinkStyles } from './collapsible_nav_link.styles';
25
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -47,8 +47,7 @@ export var EuiCollapsibleNavLink = function EuiCollapsibleNavLink(_ref) {
47
47
  linkProps = _ref.linkProps,
48
48
  rest = _objectWithoutProperties(_ref, _excluded);
49
49
  var classes = classNames('euiCollapsibleNavLink', className, isInteractive && (linkProps === null || linkProps === void 0 ? void 0 : linkProps.className));
50
- var euiTheme = useEuiTheme();
51
- var styles = euiCollapsibleNavLinkStyles(euiTheme);
50
+ var styles = useEuiMemoizedStyles(euiCollapsibleNavLinkStyles);
52
51
  var cssStyles = [styles.euiCollapsibleNavLink, isSelected && styles.isSelected, isSubItem ? styles.isSubItem : styles.isTopItem.isTopItem, isNotAccordion && !isSubItem && styles.isTopItem.isNotAccordion, isInteractive && !isSelected && !isSubItem && styles.isTopItem.isInteractive, isInteractive && (linkProps === null || linkProps === void 0 ? void 0 : linkProps.css)];
53
52
  return isInteractive ? ___EmotionJSX(EuiLink, _extends({
54
53
  href: href,
@@ -93,6 +93,7 @@ EuiColorPalettePicker.propTypes = {
93
93
  "aria-label": PropTypes.string,
94
94
  "data-test-subj": PropTypes.string,
95
95
  css: PropTypes.any,
96
+ buttonRef: PropTypes.any,
96
97
  /**
97
98
  * @default false
98
99
  */
@@ -158,10 +158,9 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
158
158
  options = _this$props2.options,
159
159
  selectedOptions = _this$props2.selectedOptions,
160
160
  singleSelection = _this$props2.singleSelection;
161
- var matchingOptions = _this.state.matchingOptions;
162
- if (_this.doesSearchMatchOnlyOption()) {
163
- _this.onAddOption(matchingOptions[0], isContainerBlur);
164
- return;
161
+ var matchedOption = _this.doesSearchMatchOnlyOption();
162
+ if (matchedOption) {
163
+ return _this.onAddOption(matchedOption, isContainerBlur);
165
164
  }
166
165
  if (!onCreateOption) {
167
166
  return;
@@ -195,13 +194,20 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
195
194
  }
196
195
  });
197
196
  _defineProperty(_assertThisInitialized(_this), "doesSearchMatchOnlyOption", function () {
198
- var searchValue = _this.state.searchValue;
199
- if (_this.state.matchingOptions.length !== 1) {
200
- return false;
197
+ var isCaseSensitive = _this.props.isCaseSensitive;
198
+ var _this$state = _this.state,
199
+ matchingOptions = _this$state.matchingOptions,
200
+ searchValue = _this$state.searchValue;
201
+ if (!matchingOptions.length) return;
202
+ var isMatchWithGroup = matchingOptions[0].isGroupLabelOption;
203
+ var isOnlyOption = matchingOptions.length === (isMatchWithGroup ? 2 : 1);
204
+ if (!isOnlyOption) return;
205
+ var matchedOption = matchingOptions[isMatchWithGroup ? 1 : 0];
206
+ var normalizedSearchSubject = transformForCaseSensitivity(matchedOption.label, isCaseSensitive);
207
+ var normalizedSearchValue = transformForCaseSensitivity(searchValue, isCaseSensitive);
208
+ if (normalizedSearchSubject === normalizedSearchValue) {
209
+ return matchedOption;
201
210
  }
202
- var normalizedSearchSubject = transformForCaseSensitivity(_this.state.matchingOptions[0].label, _this.props.isCaseSensitive);
203
- var normalizedSearchValue = transformForCaseSensitivity(searchValue, _this.props.isCaseSensitive);
204
- return normalizedSearchSubject === normalizedSearchValue;
205
211
  });
206
212
  _defineProperty(_assertThisInitialized(_this), "areAllOptionsSelected", function () {
207
213
  var _this$props3 = _this.props,
@@ -468,12 +474,12 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
468
474
  ariaLabel = _this$props11['aria-label'],
469
475
  ariaLabelledby = _this$props11['aria-labelledby'],
470
476
  rest = _objectWithoutProperties(_this$props11, _excluded);
471
- var _this$state = this.state,
472
- activeOptionIndex = _this$state.activeOptionIndex,
473
- hasFocus = _this$state.hasFocus,
474
- isListOpen = _this$state.isListOpen,
475
- searchValue = _this$state.searchValue,
476
- matchingOptions = _this$state.matchingOptions;
477
+ var _this$state2 = this.state,
478
+ activeOptionIndex = _this$state2.activeOptionIndex,
479
+ hasFocus = _this$state2.hasFocus,
480
+ isListOpen = _this$state2.isListOpen,
481
+ searchValue = _this$state2.searchValue,
482
+ matchingOptions = _this$state2.matchingOptions;
477
483
 
478
484
  // Make sure we have a valid ID if users don't pass one as a prop
479
485
  var inputId = id !== null && id !== void 0 ? id : this.rootId('_eui-combobox-id');
@@ -9,7 +9,7 @@
9
9
  import React, { useMemo } from 'react';
10
10
  import PropTypes from "prop-types";
11
11
  import classNames from 'classnames';
12
- import { useEuiTheme } from '../../services';
12
+ import { useEuiMemoizedStyles } from '../../services';
13
13
  import { useEuiBorderColorCSS } from '../../global_styling';
14
14
  import { EuiPanel } from '../panel';
15
15
  import { EuiAvatar } from '../avatar';
@@ -64,13 +64,12 @@ export var EuiCommentEvent = function EuiCommentEvent(_ref) {
64
64
  /**
65
65
  * Styles
66
66
  */
67
- var euiTheme = useEuiTheme();
68
67
  var borderStyles = useEuiBorderColorCSS();
69
- var styles = euiCommentEventStyles(euiTheme);
68
+ var styles = useEuiMemoizedStyles(euiCommentEventStyles);
70
69
  var cssStyles = [styles.euiCommentEvent, showEventBorders && styles.border, showEventBorders && borderStyles[eventColor]];
71
- var headerStyles = euiCommentEventHeaderStyles(euiTheme);
70
+ var headerStyles = useEuiMemoizedStyles(euiCommentEventHeaderStyles);
72
71
  var cssHeaderStyles = [headerStyles.euiCommentEvent__header, showEventBorders && headerStyles.border, showEventBorders && borderStyles[eventColor]];
73
- var bodyStyles = euiCommentEventBodyStyles(euiTheme);
72
+ var bodyStyles = useEuiMemoizedStyles(euiCommentEventBodyStyles);
74
73
  var cssBodyStyles = [bodyStyles.euiCommentEvent__body, bodyStyles[type]];
75
74
  return ___EmotionJSX(Element, {
76
75
  className: classes,
@@ -1,6 +1,6 @@
1
1
  var _excluded = ["isSeparator", "key"],
2
2
  _excluded2 = ["panel", "name", "key", "icon", "onClick"],
3
- _excluded3 = ["theme", "panels", "onPanelChange", "className", "initialPanelId", "size"];
3
+ _excluded3 = ["stylesMemoizer", "panels", "onPanelChange", "className", "initialPanelId", "size"];
4
4
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
5
5
  function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
6
  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; }
@@ -29,7 +29,7 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
29
29
  import React, { Component, Fragment } from 'react';
30
30
  import PropTypes from "prop-types";
31
31
  import classNames from 'classnames';
32
- import { withEuiTheme } from '../../services';
32
+ import { withEuiStylesMemoizer } from '../../services';
33
33
  import { EuiHorizontalRule } from '../horizontal_rule';
34
34
  import { EuiContextMenuPanel } from './context_menu_panel';
35
35
  import { EuiContextMenuItem } from './context_menu_item';
@@ -288,7 +288,7 @@ export var EuiContextMenuClass = /*#__PURE__*/function (_Component) {
288
288
  key: "render",
289
289
  value: function render() {
290
290
  var _this$props2 = this.props,
291
- theme = _this$props2.theme,
291
+ stylesMemoizer = _this$props2.stylesMemoizer,
292
292
  panels = _this$props2.panels,
293
293
  onPanelChange = _this$props2.onPanelChange,
294
294
  className = _this$props2.className,
@@ -302,10 +302,9 @@ export var EuiContextMenuClass = /*#__PURE__*/function (_Component) {
302
302
  }
303
303
  var width = this.state.idToPanelMap[this.state.incomingPanelId] && this.state.idToPanelMap[this.state.incomingPanelId].width ? this.state.idToPanelMap[this.state.incomingPanelId].width : undefined;
304
304
  var classes = classNames('euiContextMenu', className);
305
- var styles = euiContextMenuStyles(theme);
306
- var cssStyles = [styles.euiContextMenu];
305
+ var styles = stylesMemoizer(euiContextMenuStyles);
307
306
  return ___EmotionJSX("div", _extends({
308
- css: cssStyles,
307
+ css: styles.euiContextMenu,
309
308
  className: classes,
310
309
  style: {
311
310
  height: this.state.height,
@@ -383,4 +382,4 @@ EuiContextMenuClass.propTypes = {
383
382
  */
384
383
  size: PropTypes.any
385
384
  };
386
- export var EuiContextMenu = withEuiTheme(EuiContextMenuClass);
385
+ export var EuiContextMenu = withEuiStylesMemoizer(EuiContextMenuClass);
@@ -13,7 +13,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
13
13
  import React from 'react';
14
14
  import PropTypes from "prop-types";
15
15
  import classNames from 'classnames';
16
- import { useEuiTheme, getSecureRelForTarget, cloneElementWithCss } from '../../services';
16
+ import { useEuiMemoizedStyles, getSecureRelForTarget, cloneElementWithCss } from '../../services';
17
17
  import { validateHref } from '../../services/security/href_validator';
18
18
  import { keysOf } from '../common';
19
19
  import { EuiIcon } from '../icon';
@@ -47,8 +47,7 @@ export var EuiContextMenuItem = function EuiContextMenuItem(_ref) {
47
47
  var isHrefValid = !href || validateHref(href);
48
48
  var disabled = _disabled || !isHrefValid;
49
49
  var classes = classNames('euiContextMenuItem', className);
50
- var euiTheme = useEuiTheme();
51
- var styles = euiContextMenuItemStyles(euiTheme);
50
+ var styles = useEuiMemoizedStyles(euiContextMenuItemStyles);
52
51
  var cssStyles = [styles.euiContextMenuItem, styles.sizes[size], styles.layoutAlign[layoutAlign], disabled && styles.disabled];
53
52
  var iconInstance = icon && (typeof icon === 'string' ? ___EmotionJSX(EuiIcon, {
54
53
  type: icon,
@@ -1,4 +1,4 @@
1
- var _excluded = ["theme", "children", "className", "onClose", "title", "onHeightChange", "transitionType", "transitionDirection", "onTransitionComplete", "onUseKeyboardToNavigate", "items", "initialFocusedItemIndex", "showNextPanel", "showPreviousPanel", "size"];
1
+ var _excluded = ["stylesMemoizer", "children", "className", "onClose", "title", "onHeightChange", "transitionType", "transitionDirection", "onTransitionComplete", "onUseKeyboardToNavigate", "items", "initialFocusedItemIndex", "showNextPanel", "showPreviousPanel", "size"];
2
2
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
3
  function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
4
  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; }
@@ -28,7 +28,7 @@ import React, { cloneElement, Component } from 'react';
28
28
  import PropTypes from "prop-types";
29
29
  import classNames from 'classnames';
30
30
  import { tabbable } from 'tabbable';
31
- import { withEuiTheme, keys } from '../../services';
31
+ import { withEuiStylesMemoizer, keys } from '../../services';
32
32
  import { EuiResizeObserver } from '../observer/resize_observer';
33
33
  import { EuiContextMenuItem } from './context_menu_item';
34
34
  import { euiContextMenuPanelStyles } from './context_menu_panel.styles';
@@ -318,7 +318,7 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
318
318
  value: function render() {
319
319
  var _this3 = this;
320
320
  var _this$props2 = this.props,
321
- theme = _this$props2.theme,
321
+ stylesMemoizer = _this$props2.stylesMemoizer,
322
322
  children = _this$props2.children,
323
323
  className = _this$props2.className,
324
324
  onClose = _this$props2.onClose,
@@ -335,7 +335,7 @@ export var EuiContextMenuPanelClass = /*#__PURE__*/function (_Component) {
335
335
  size = _this$props2.size,
336
336
  rest = _objectWithoutProperties(_this$props2, _excluded);
337
337
  var classes = classNames('euiContextMenuPanel', className);
338
- var styles = euiContextMenuPanelStyles(theme);
338
+ var styles = stylesMemoizer(euiContextMenuPanelStyles);
339
339
  var cssStyles = [styles.euiContextMenuPanel, transitionDirection && transitionType && styles[transitionDirection][transitionType]];
340
340
  var panelTitle = title && ___EmotionJSX(EuiContextMenuItem, {
341
341
  css: styles.euiContextMenuPanel__title,
@@ -417,4 +417,4 @@ EuiContextMenuPanelClass.propTypes = {
417
417
  */
418
418
  size: PropTypes.any
419
419
  };
420
- export var EuiContextMenuPanel = withEuiTheme(EuiContextMenuPanelClass);
420
+ export var EuiContextMenuPanel = withEuiStylesMemoizer(EuiContextMenuPanelClass);
@@ -19,7 +19,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  import React, { useMemo } from 'react';
20
20
  import PropTypes from "prop-types";
21
21
  import classNames from 'classnames';
22
- import { useEuiTheme, useIsWithinBreakpoints } from '../../services';
22
+ import { useEuiMemoizedStyles, useIsWithinBreakpoints } from '../../services';
23
23
  import { EuiDescriptionListContext } from './description_list_context';
24
24
  import { EuiDescriptionListTitle } from './description_list_title';
25
25
  import { EuiDescriptionListDescription } from './description_list_description';
@@ -54,8 +54,7 @@ export var EuiDescriptionList = function EuiDescriptionList(_ref) {
54
54
  return _type;
55
55
  }
56
56
  }, [_type, showResponsiveColumns]);
57
- var euiTheme = useEuiTheme();
58
- var styles = euiDescriptionListStyles(euiTheme);
57
+ var styles = useEuiMemoizedStyles(euiDescriptionListStyles);
59
58
  var cssStyles = [styles.euiDescriptionList, styles[type], styles[align], type === 'column' && styles.rowGap[rowGutterSize], type === 'column' && styles.columnGap[columnGutterSize]];
60
59
  var inlineStyles = useMemo(function () {
61
60
  if (type === 'column' && columnWidths) {
@@ -72,18 +71,17 @@ export var EuiDescriptionList = function EuiDescriptionList(_ref) {
72
71
  return style;
73
72
  }, [style, type, columnWidths]);
74
73
  var classes = classNames('euiDescriptionList', className);
75
- var childrenOrListItems = null;
76
- if (listItems) {
77
- childrenOrListItems = listItems.map(function (item, index) {
78
- return [___EmotionJSX(EuiDescriptionListTitle, _extends({
79
- key: "title-".concat(index)
80
- }, titleProps), item.title), ___EmotionJSX(EuiDescriptionListDescription, _extends({
81
- key: "description-".concat(index)
82
- }, descriptionProps), item.description)];
83
- });
84
- } else {
85
- childrenOrListItems = children;
86
- }
74
+ var renderedListItems = useMemo(function () {
75
+ if (listItems) {
76
+ return listItems.map(function (item, index) {
77
+ return [___EmotionJSX(EuiDescriptionListTitle, _extends({
78
+ key: "title-".concat(index)
79
+ }, titleProps), item.title), ___EmotionJSX(EuiDescriptionListDescription, _extends({
80
+ key: "description-".concat(index)
81
+ }, descriptionProps), item.description)];
82
+ });
83
+ }
84
+ }, [listItems, descriptionProps, titleProps]);
87
85
  return ___EmotionJSX(EuiDescriptionListContext.Provider, {
88
86
  value: {
89
87
  type: type,
@@ -98,7 +96,7 @@ export var EuiDescriptionList = function EuiDescriptionList(_ref) {
98
96
  style: inlineStyles
99
97
  }, rest, {
100
98
  "data-type": _type
101
- }), childrenOrListItems));
99
+ }), listItems ? renderedListItems : children));
102
100
  };
103
101
  EuiDescriptionList.propTypes = {
104
102
  className: PropTypes.string,
@@ -19,7 +19,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  import React, { useContext } from 'react';
20
20
  import PropTypes from "prop-types";
21
21
  import classNames from 'classnames';
22
- import { useEuiTheme } from '../../services';
22
+ import { useEuiMemoizedStyles } from '../../services';
23
23
  import { EuiDescriptionListContext } from './description_list_context';
24
24
  import { euiDescriptionListDescriptionStyles } from './description_list_description.styles';
25
25
 
@@ -34,8 +34,7 @@ export var EuiDescriptionListDescription = function EuiDescriptionListDescriptio
34
34
  textStyle = _useContext.textStyle,
35
35
  compressed = _useContext.compressed,
36
36
  align = _useContext.align;
37
- var theme = useEuiTheme();
38
- var styles = euiDescriptionListDescriptionStyles(theme);
37
+ var styles = useEuiMemoizedStyles(euiDescriptionListDescriptionStyles);
39
38
  var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
40
39
  switch (type) {
41
40
  case 'inline':
@@ -19,7 +19,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  import React, { useContext } from 'react';
20
20
  import PropTypes from "prop-types";
21
21
  import classNames from 'classnames';
22
- import { useEuiTheme } from '../../services';
22
+ import { useEuiMemoizedStyles } from '../../services';
23
23
  import { EuiDescriptionListContext } from './description_list_context';
24
24
  import { euiDescriptionListTitleStyles } from './description_list_title.styles';
25
25
 
@@ -35,8 +35,7 @@ export var EuiDescriptionListTitle = function EuiDescriptionListTitle(_ref) {
35
35
  compressed = _useContext.compressed,
36
36
  align = _useContext.align,
37
37
  rowGutterSize = _useContext.rowGutterSize;
38
- var theme = useEuiTheme();
39
- var styles = euiDescriptionListTitleStyles(theme);
38
+ var styles = useEuiMemoizedStyles(euiDescriptionListTitleStyles);
40
39
  var conditionalStyles = compressed && textStyle !== 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
41
40
  switch (type) {
42
41
  case 'inline':
@@ -13,7 +13,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
13
13
  import React, { useMemo } from 'react';
14
14
  import PropTypes from "prop-types";
15
15
  import classNames from 'classnames';
16
- import { useEuiTheme } from '../../services';
16
+ import { useEuiMemoizedStyles } from '../../services';
17
17
  import { EuiTitle } from '../title';
18
18
  import { EuiFlexGroup, EuiFlexItem } from '../flex';
19
19
  import { EuiSpacer } from '../spacer';
@@ -44,10 +44,7 @@ export var EuiEmptyPrompt = function EuiEmptyPrompt(_ref) {
44
44
  footer = _ref.footer,
45
45
  rest = _objectWithoutProperties(_ref, _excluded);
46
46
  var classes = classNames('euiEmptyPrompt', className);
47
- var euiTheme = useEuiTheme();
48
- var styles = useMemo(function () {
49
- return euiEmptyPromptStyles(euiTheme);
50
- }, [euiTheme]);
47
+ var styles = useEuiMemoizedStyles(euiEmptyPromptStyles);
51
48
  var cssStyles = [styles.euiEmptyPrompt, styles[layout]];
52
49
  var mainStyles = [styles.main.euiEmptyPrompt__main, styles.main[layout], styles.main[paddingSize], layout === 'horizontal' && styles.main.horizontalPadding[paddingSize]];
53
50
  var contentStyles = [styles.content.euiEmptyPrompt__content, styles.content[layout]];
@@ -0,0 +1,45 @@
1
+ var _excluded = ["className", "onClick", "onClose", "closeButtonPosition", "side"];
2
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
3
+ 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; }
4
+ 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; }
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
+
13
+ import React from 'react';
14
+ import classNames from 'classnames';
15
+ import { useEuiMemoizedStyles } from '../../services';
16
+ import { useEuiI18n } from '../i18n';
17
+ import { EuiButtonIcon } from '../button';
18
+ import { euiFlyoutCloseButtonStyles } from './_flyout_close_button.styles';
19
+ import { jsx as ___EmotionJSX } from "@emotion/react";
20
+ export var EuiFlyoutCloseButton = function EuiFlyoutCloseButton(_ref) {
21
+ var className = _ref.className,
22
+ _onClick = _ref.onClick,
23
+ onClose = _ref.onClose,
24
+ closeButtonPosition = _ref.closeButtonPosition,
25
+ side = _ref.side,
26
+ rest = _objectWithoutProperties(_ref, _excluded);
27
+ var classes = classNames('euiFlyout__closeButton', className);
28
+ var styles = useEuiMemoizedStyles(euiFlyoutCloseButtonStyles);
29
+ var cssStyles = [styles.euiFlyout__closeButton, styles[closeButtonPosition], closeButtonPosition === 'outside' && styles.outsideSide[side]];
30
+ var ariaLabel = useEuiI18n('euiFlyoutCloseButton.ariaLabel', 'Close this dialog');
31
+ return ___EmotionJSX(EuiButtonIcon, _extends({
32
+ display: closeButtonPosition === 'outside' ? 'fill' : 'empty',
33
+ iconType: "cross",
34
+ color: "text",
35
+ "aria-label": ariaLabel,
36
+ "data-test-subj": "euiFlyoutCloseButton"
37
+ }, rest, {
38
+ className: classes,
39
+ css: cssStyles,
40
+ onClick: function onClick(e) {
41
+ onClose(e.nativeEvent);
42
+ _onClick === null || _onClick === void 0 ? void 0 : _onClick(e);
43
+ }
44
+ }));
45
+ };
@@ -0,0 +1,27 @@
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
+
9
+ import { css } from '@emotion/react';
10
+ import { euiMaxBreakpoint, euiMinBreakpoint, logicalCSS } from '../../global_styling';
11
+ import { euiShadowXLarge } from '../../themes/amsterdam/global_styling/mixins';
12
+ import { transparentize } from '../../services';
13
+ import { FLYOUT_BREAKPOINT } from './flyout.styles';
14
+ export var euiFlyoutCloseButtonStyles = function euiFlyoutCloseButtonStyles(euiThemeContext) {
15
+ var euiTheme = euiThemeContext.euiTheme;
16
+ return {
17
+ euiFlyout__closeButton: /*#__PURE__*/css("position:absolute;", logicalCSS('right', euiTheme.size.s), " ", logicalCSS('top', euiTheme.size.s), " z-index:3;;label:euiFlyout__closeButton;"),
18
+ inside: /*#__PURE__*/css("background-color:", transparentize(euiTheme.colors.emptyShade, 0.9), ";;label:inside;"),
19
+ outside: /*#__PURE__*/css(euiShadowXLarge(euiThemeContext), "animation:none!important;;label:outside;"),
20
+ outsideSide: {
21
+ // `transforms` pull in close buttons a little
22
+ // `!important` is necessary here to override the hover/focus transitions of buttons
23
+ right: /*#__PURE__*/css(logicalCSS('left', 0), " ", euiMaxBreakpoint(euiThemeContext, FLYOUT_BREAKPOINT), "{transform:translateX(calc(-100% - ", euiTheme.size.xs, "))!important;}", euiMinBreakpoint(euiThemeContext, FLYOUT_BREAKPOINT), "{transform:translateX(calc(-100% - ", euiTheme.size.l, "))!important;};label:right;"),
24
+ left: /*#__PURE__*/css(logicalCSS('right', 0), " ", euiMaxBreakpoint(euiThemeContext, FLYOUT_BREAKPOINT), "{transform:translateX(calc(100% + ", euiTheme.size.xs, "))!important;}", euiMinBreakpoint(euiThemeContext, FLYOUT_BREAKPOINT), "{transform:translateX(calc(100% + ", euiTheme.size.l, "))!important;};label:left;")
25
+ }
26
+ };
27
+ };
@@ -1,10 +1,11 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
2
  var _excluded = ["className", "children", "as", "hideCloseButton", "closeButtonProps", "closeButtonPosition", "onClose", "ownFocus", "side", "size", "paddingSize", "maxWidth", "style", "maskProps", "type", "outsideClickCloses", "pushMinBreakpoint", "pushAnimation", "focusTrapProps", "includeFixedHeadersInFocusTrap", "aria-describedby"];
3
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
+ import PropTypes from "prop-types";
3
5
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
4
6
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5
7
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
6
8
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
7
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
8
9
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
10
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
11
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -28,16 +29,16 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
28
29
 
29
30
  import React, { useEffect, useRef, useMemo, useCallback, useState, forwardRef } from 'react';
30
31
  import classnames from 'classnames';
31
- import { keys, EuiWindowEvent, useCombinedRefs, useIsWithinMinBreakpoint, useEuiTheme, useGeneratedHtmlId } from '../../services';
32
+ import { keys, EuiWindowEvent, useCombinedRefs, useIsWithinMinBreakpoint, useEuiMemoizedStyles, useGeneratedHtmlId } from '../../services';
32
33
  import { logicalStyle } from '../../global_styling';
33
34
  import { EuiFocusTrap } from '../focus_trap';
34
35
  import { EuiOverlayMask } from '../overlay_mask';
35
- import { EuiButtonIcon } from '../button';
36
36
  import { EuiI18n } from '../i18n';
37
37
  import { useResizeObserver } from '../observer/resize_observer';
38
38
  import { EuiPortal } from '../portal';
39
39
  import { EuiScreenReaderOnly } from '../accessibility';
40
- import { euiFlyoutStyles, euiFlyoutCloseButtonStyles } from './flyout.styles';
40
+ import { EuiFlyoutCloseButton } from './_flyout_close_button';
41
+ import { euiFlyoutStyles } from './flyout.styles';
41
42
  import { jsx as ___EmotionJSX } from "@emotion/react";
42
43
  export var TYPES = ['push', 'overlay'];
43
44
  export var SIDES = ['left', 'right'];
@@ -143,36 +144,9 @@ export var EuiFlyout = /*#__PURE__*/forwardRef(function (_ref, ref) {
143
144
  var maxWidthStyle = typeof maxWidth !== 'boolean' && logicalStyle('max-width', maxWidth);
144
145
  return _objectSpread(_objectSpread(_objectSpread({}, style), widthStyle), maxWidthStyle);
145
146
  }, [style, maxWidth, size]);
146
- var euiTheme = useEuiTheme();
147
- var styles = euiFlyoutStyles(euiTheme);
147
+ var styles = useEuiMemoizedStyles(euiFlyoutStyles);
148
148
  var cssStyles = [styles.euiFlyout, styles.paddingSizes[paddingSize], isEuiFlyoutSizeNamed(size) && styles[size], maxWidth === false && styles.noMaxWidth, isPushed ? styles.push.push : styles.overlay, isPushed && styles.push[side], isPushed && !pushAnimation && styles.push.noAnimation, styles[side]];
149
149
  var classes = classnames('euiFlyout', className);
150
- var closeButton = useMemo(function () {
151
- if (hideCloseButton || !onClose) return null;
152
- var closeButtonClasses = classnames('euiFlyout__closeButton', closeButtonProps === null || closeButtonProps === void 0 ? void 0 : closeButtonProps.className);
153
- var closeButtonStyles = euiFlyoutCloseButtonStyles(euiTheme);
154
- var closeButtonCssStyles = [closeButtonStyles.euiFlyout__closeButton, closeButtonStyles[closeButtonPosition], closeButtonPosition === 'outside' && closeButtonStyles.outsideSide[side], closeButtonProps === null || closeButtonProps === void 0 ? void 0 : closeButtonProps.css];
155
- return ___EmotionJSX(EuiI18n, {
156
- token: "euiFlyout.closeAriaLabel",
157
- default: "Close this dialog"
158
- }, function (closeAriaLabel) {
159
- return ___EmotionJSX(EuiButtonIcon, _extends({
160
- display: closeButtonPosition === 'outside' ? 'fill' : 'empty',
161
- iconType: "cross",
162
- color: "text",
163
- "aria-label": closeAriaLabel,
164
- "data-test-subj": "euiFlyoutCloseButton"
165
- }, closeButtonProps, {
166
- className: closeButtonClasses,
167
- css: closeButtonCssStyles,
168
- onClick: function onClick(e) {
169
- var _closeButtonProps$onC;
170
- onClose(e.nativeEvent);
171
- closeButtonProps === null || closeButtonProps === void 0 ? void 0 : (_closeButtonProps$onC = closeButtonProps.onClick) === null || _closeButtonProps$onC === void 0 ? void 0 : _closeButtonProps$onC.call(closeButtonProps, e);
172
- }
173
- }));
174
- });
175
- }, [onClose, hideCloseButton, closeButtonPosition, closeButtonProps, side, euiTheme]);
176
150
 
177
151
  /*
178
152
  * If not disabled, automatically add fixed EuiHeaders as shards
@@ -214,18 +188,20 @@ export var EuiFlyout = /*#__PURE__*/forwardRef(function (_ref, ref) {
214
188
  var hasOverlayMask = ownFocus && !isPushed;
215
189
  var descriptionId = useGeneratedHtmlId();
216
190
  var ariaDescribedBy = classnames(descriptionId, _ariaDescribedBy);
217
- var screenReaderDescription = ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
218
- id: descriptionId
219
- }, hasOverlayMask ? ___EmotionJSX(EuiI18n, {
220
- token: "euiFlyout.screenReaderModalDialog",
221
- default: "You are in a modal dialog. Press Escape or tap/click outside the dialog on the shadowed overlay to close."
222
- }) : ___EmotionJSX(EuiI18n, {
223
- token: "euiFlyout.screenReaderNonModalDialog",
224
- default: "You are in a non-modal dialog. To close the dialog, press Escape."
225
- }), ' ', fixedHeaders.length > 0 && ___EmotionJSX(EuiI18n, {
226
- token: "euiFlyout.screenReaderFixedHeaders",
227
- default: "You can still continue tabbing through the page headers in addition to the dialog."
228
- })));
191
+ var screenReaderDescription = useMemo(function () {
192
+ return ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
193
+ id: descriptionId
194
+ }, hasOverlayMask ? ___EmotionJSX(EuiI18n, {
195
+ token: "euiFlyout.screenReaderModalDialog",
196
+ default: "You are in a modal dialog. Press Escape or tap/click outside the dialog on the shadowed overlay to close."
197
+ }) : ___EmotionJSX(EuiI18n, {
198
+ token: "euiFlyout.screenReaderNonModalDialog",
199
+ default: "You are in a non-modal dialog. To close the dialog, press Escape."
200
+ }), ' ', fixedHeaders.length > 0 && ___EmotionJSX(EuiI18n, {
201
+ token: "euiFlyout.screenReaderFixedHeaders",
202
+ default: "You can still continue tabbing through the page headers in addition to the dialog."
203
+ })));
204
+ }, [hasOverlayMask, descriptionId, fixedHeaders.length]);
229
205
 
230
206
  /*
231
207
  * Trap focus even when `ownFocus={false}`, otherwise closing
@@ -252,7 +228,16 @@ export var EuiFlyout = /*#__PURE__*/forwardRef(function (_ref, ref) {
252
228
  // Otherwise if ownFocus is false and outsideClickCloses is undefined, outside clicks should not close the flyout
253
229
  return undefined;
254
230
  }, [onClose, hasOverlayMask, outsideClickCloses]);
255
- var flyout = ___EmotionJSX(EuiFocusTrap, _extends({
231
+ return ___EmotionJSX(EuiFlyoutWrapper, {
232
+ hasOverlayMask: hasOverlayMask,
233
+ maskProps: _objectSpread(_objectSpread({}, maskProps), {}, {
234
+ maskRef: useCombinedRefs([maskProps === null || maskProps === void 0 ? void 0 : maskProps.maskRef, maskRef])
235
+ }),
236
+ isPortalled: !isPushed
237
+ }, ___EmotionJSX(EuiWindowEvent, {
238
+ event: "keydown",
239
+ handler: onKeyDown
240
+ }), ___EmotionJSX(EuiFocusTrap, _extends({
256
241
  disabled: isPushed,
257
242
  scrollLock: hasOverlayMask,
258
243
  clickOutsideDisables: !ownFocus,
@@ -267,28 +252,56 @@ export var EuiFlyout = /*#__PURE__*/forwardRef(function (_ref, ref) {
267
252
  tabIndex: !isPushed ? 0 : rest.tabIndex,
268
253
  "aria-describedby": !isPushed ? ariaDescribedBy : _ariaDescribedBy,
269
254
  "data-autofocus": !isPushed || undefined
270
- }), !isPushed && screenReaderDescription, closeButton, children));
271
-
272
- // If ownFocus is set, wrap with an overlay and allow the user to click it to close it.
273
- var mergedMaskProps = _objectSpread(_objectSpread({}, maskProps), {}, {
274
- maskRef: useCombinedRefs([maskProps === null || maskProps === void 0 ? void 0 : maskProps.maskRef, maskRef])
275
- });
276
- if (hasOverlayMask) {
277
- flyout = ___EmotionJSX(EuiOverlayMask, _extends({
278
- headerZindexLocation: "below"
279
- }, mergedMaskProps), flyout);
280
- } else if (!isPushed) {
281
- // Otherwise still wrap within an EuiPortal so it appends (unless it is the push style)
282
- flyout = ___EmotionJSX(EuiPortal, null, flyout);
283
- }
284
- return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiWindowEvent, {
285
- event: "keydown",
286
- handler: onKeyDown
287
- }), flyout);
255
+ }), !isPushed && screenReaderDescription, !hideCloseButton && onClose && ___EmotionJSX(EuiFlyoutCloseButton, _extends({}, closeButtonProps, {
256
+ onClose: onClose,
257
+ closeButtonPosition: closeButtonPosition,
258
+ side: side
259
+ })), children)));
288
260
  }
289
261
  // React.forwardRef interferes with the inferred element type
290
262
  // Casting to ensure correct element prop type checking for `as`
291
263
  // e.g., `href` is not on a `div`
292
264
  );
293
265
  // Recast to allow `displayName`
294
- EuiFlyout.displayName = 'EuiFlyout';
266
+ EuiFlyout.displayName = 'EuiFlyout';
267
+
268
+ /**
269
+ * Light wrapper for conditionally rendering portals or overlay masks:
270
+ * - If ownFocus is set, wrap with an overlay and allow the user to click it to close it.
271
+ * - Otherwise still wrap within an EuiPortal so it appends to the bottom of the window.
272
+ * Push flyouts have no overlay OR portal behavior.
273
+ */
274
+ var EuiFlyoutWrapper = function EuiFlyoutWrapper(_ref2) {
275
+ var children = _ref2.children,
276
+ hasOverlayMask = _ref2.hasOverlayMask,
277
+ maskProps = _ref2.maskProps,
278
+ isPortalled = _ref2.isPortalled;
279
+ if (hasOverlayMask) {
280
+ return ___EmotionJSX(EuiOverlayMask, _extends({
281
+ headerZindexLocation: "below"
282
+ }, maskProps), children);
283
+ } else if (isPortalled) {
284
+ return ___EmotionJSX(EuiPortal, null, children);
285
+ } else {
286
+ return ___EmotionJSX(React.Fragment, null, children);
287
+ }
288
+ };
289
+ EuiFlyoutWrapper.propTypes = {
290
+ children: PropTypes.node.isRequired,
291
+ hasOverlayMask: PropTypes.bool.isRequired,
292
+ maskProps: PropTypes.shape({
293
+ /**
294
+ * ReactNode to render as this component's content
295
+ */
296
+ children: PropTypes.node,
297
+ /**
298
+ * Should the mask visually sit above or below the EuiHeader (controlled by z-index)
299
+ */
300
+ headerZindexLocation: PropTypes.oneOf(["above", "below"]),
301
+ /**
302
+ * React ref to be passed to the wrapping container
303
+ */
304
+ maskRef: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.any.isRequired])
305
+ }).isRequired,
306
+ isPortalled: PropTypes.bool.isRequired
307
+ };