@elastic/eui 109.2.0 → 110.0.0-snapshot.1764783610243

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 (332) hide show
  1. package/es/components/basic_table/in_memory_table.js +87 -61
  2. package/es/components/collapsible_nav/collapsible_nav.js +20 -101
  3. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  4. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  5. package/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  6. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  7. package/es/components/date_picker/super_date_picker/quick_select_popover/index.js +1 -0
  8. package/es/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  9. package/es/components/filter_group/filter_group.a11y.js +1 -1
  10. package/es/components/flyout/_flyout_overlay.js +52 -0
  11. package/es/components/flyout/_flyout_resize_button.js +32 -0
  12. package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  13. package/es/components/flyout/const.js +42 -0
  14. package/es/components/flyout/flyout.component.js +481 -0
  15. package/es/components/flyout/flyout.js +77 -379
  16. package/es/components/flyout/flyout.styles.js +105 -7
  17. package/es/components/flyout/flyout_menu.js +241 -0
  18. package/es/components/flyout/flyout_menu.styles.js +19 -0
  19. package/{optimize/es/components/flyout/flyout_context.js → es/components/flyout/flyout_menu_context.js} +1 -7
  20. package/es/components/flyout/flyout_parent_context.js +36 -0
  21. package/es/components/flyout/flyout_resizable.js +33 -144
  22. package/es/components/flyout/hooks.js +25 -0
  23. package/es/components/flyout/index.js +5 -2
  24. package/es/components/flyout/manager/actions.js +153 -0
  25. package/es/components/flyout/manager/activity_stage.js +95 -0
  26. package/es/components/flyout/manager/const.js +56 -0
  27. package/es/components/flyout/manager/context.js +33 -0
  28. package/es/components/flyout/manager/flyout_child.js +75 -0
  29. package/es/components/flyout/manager/flyout_main.js +65 -0
  30. package/es/components/flyout/manager/flyout_main.styles.js +25 -0
  31. package/es/components/flyout/manager/flyout_managed.js +227 -0
  32. package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  33. package/es/components/flyout/manager/hooks.js +55 -0
  34. package/es/components/flyout/manager/index.js +31 -0
  35. package/es/components/flyout/manager/layout_mode.js +167 -0
  36. package/es/components/flyout/manager/provider.js +57 -0
  37. package/es/components/flyout/manager/reducer.js +320 -0
  38. package/es/components/flyout/manager/selectors.js +116 -0
  39. package/es/components/flyout/manager/store.js +113 -0
  40. package/es/components/flyout/manager/validation.js +85 -0
  41. package/es/components/flyout/use_flyout_resizable.js +149 -0
  42. package/es/components/flyout/use_flyout_z_index.js +46 -0
  43. package/es/components/header/header_logo/header_logo.js +6 -1
  44. package/es/components/header/header_logo/header_logo.styles.js +1 -1
  45. package/es/components/icon/icon.styles.js +4 -4
  46. package/es/components/overlay_mask/overlay_mask.js +13 -3
  47. package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  48. package/es/components/page/page.js +11 -3
  49. package/es/components/page/page.styles.js +1 -2
  50. package/es/components/page/page_header/page_header.js +11 -3
  51. package/es/components/page_template/outer/page_outer.js +2 -3
  52. package/es/components/page_template/outer/page_outer.styles.js +29 -35
  53. package/es/components/page_template/page_template.js +8 -2
  54. package/es/components/provider/provider.js +2 -1
  55. package/es/components/search_bar/search_bar.js +10 -4
  56. package/es/components/selectable/selectable.js +7 -2
  57. package/es/services/string/to_initials.js +26 -4
  58. package/eui.d.ts +1516 -930
  59. package/i18ntokens.json +577 -523
  60. package/lib/components/basic_table/in_memory_table.js +87 -61
  61. package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
  62. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  63. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  64. package/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  65. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  66. package/lib/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  67. package/lib/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  68. package/lib/components/filter_group/filter_group.a11y.js +1 -1
  69. package/lib/components/flyout/_flyout_overlay.js +59 -0
  70. package/lib/components/flyout/_flyout_resize_button.js +38 -0
  71. package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  72. package/lib/components/flyout/const.js +49 -0
  73. package/lib/components/flyout/flyout.component.js +488 -0
  74. package/lib/components/flyout/flyout.js +102 -379
  75. package/lib/components/flyout/flyout.styles.js +105 -7
  76. package/lib/components/flyout/flyout_menu.js +243 -0
  77. package/lib/components/flyout/flyout_menu.styles.js +25 -0
  78. package/{optimize/lib/components/flyout/flyout_context.js → lib/components/flyout/flyout_menu_context.js} +2 -7
  79. package/lib/components/flyout/flyout_parent_context.js +43 -0
  80. package/lib/components/flyout/flyout_resizable.js +36 -147
  81. package/lib/components/flyout/hooks.js +30 -0
  82. package/lib/components/flyout/index.js +21 -14
  83. package/lib/components/flyout/manager/actions.js +159 -0
  84. package/lib/components/flyout/manager/activity_stage.js +101 -0
  85. package/lib/components/flyout/manager/const.js +62 -0
  86. package/lib/components/flyout/manager/context.js +41 -0
  87. package/lib/components/flyout/manager/flyout_child.js +80 -0
  88. package/lib/components/flyout/manager/flyout_main.js +70 -0
  89. package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  90. package/lib/components/flyout/manager/flyout_managed.js +233 -0
  91. package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
  92. package/lib/components/flyout/manager/hooks.js +131 -0
  93. package/lib/components/flyout/manager/index.js +168 -0
  94. package/lib/components/flyout/manager/layout_mode.js +171 -0
  95. package/lib/components/flyout/manager/provider.js +63 -0
  96. package/lib/components/flyout/manager/reducer.js +325 -0
  97. package/lib/components/flyout/manager/selectors.js +122 -0
  98. package/lib/components/flyout/manager/store.js +120 -0
  99. package/lib/components/flyout/manager/validation.js +94 -0
  100. package/lib/components/flyout/use_flyout_resizable.js +153 -0
  101. package/lib/components/flyout/use_flyout_z_index.js +51 -0
  102. package/lib/components/header/header_logo/header_logo.js +6 -1
  103. package/lib/components/header/header_logo/header_logo.styles.js +1 -1
  104. package/lib/components/icon/icon.styles.js +4 -4
  105. package/lib/components/overlay_mask/overlay_mask.js +12 -2
  106. package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  107. package/lib/components/page/page.js +10 -2
  108. package/lib/components/page/page.styles.js +1 -2
  109. package/lib/components/page/page_header/page_header.js +10 -2
  110. package/lib/components/page_template/outer/page_outer.js +1 -2
  111. package/lib/components/page_template/outer/page_outer.styles.js +29 -35
  112. package/lib/components/page_template/page_template.js +8 -2
  113. package/lib/components/provider/provider.js +2 -1
  114. package/lib/components/search_bar/search_bar.js +9 -4
  115. package/lib/components/selectable/selectable.js +7 -2
  116. package/lib/services/string/to_initials.js +26 -4
  117. package/optimize/es/components/basic_table/in_memory_table.js +71 -46
  118. package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
  119. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  120. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  121. package/optimize/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  122. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  123. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/index.js +1 -0
  124. package/optimize/es/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  125. package/optimize/es/components/filter_group/filter_group.a11y.js +1 -1
  126. package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
  127. package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
  128. package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  129. package/optimize/es/components/flyout/const.js +42 -0
  130. package/optimize/es/components/flyout/flyout.component.js +469 -0
  131. package/optimize/es/components/flyout/flyout.js +53 -349
  132. package/optimize/es/components/flyout/flyout.styles.js +102 -7
  133. package/optimize/es/components/flyout/flyout_menu.js +162 -0
  134. package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
  135. package/{es/components/flyout/flyout_context.js → optimize/es/components/flyout/flyout_menu_context.js} +1 -7
  136. package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
  137. package/optimize/es/components/flyout/flyout_resizable.js +7 -138
  138. package/optimize/es/components/flyout/hooks.js +25 -0
  139. package/optimize/es/components/flyout/index.js +5 -2
  140. package/optimize/es/components/flyout/manager/actions.js +153 -0
  141. package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
  142. package/optimize/es/components/flyout/manager/const.js +56 -0
  143. package/optimize/es/components/flyout/manager/context.js +33 -0
  144. package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
  145. package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
  146. package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
  147. package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
  148. package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  149. package/optimize/es/components/flyout/manager/hooks.js +55 -0
  150. package/optimize/es/components/flyout/manager/index.js +31 -0
  151. package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
  152. package/optimize/es/components/flyout/manager/provider.js +53 -0
  153. package/optimize/es/components/flyout/manager/reducer.js +312 -0
  154. package/optimize/es/components/flyout/manager/selectors.js +116 -0
  155. package/optimize/es/components/flyout/manager/store.js +113 -0
  156. package/optimize/es/components/flyout/manager/types.js +1 -0
  157. package/optimize/es/components/flyout/manager/validation.js +85 -0
  158. package/optimize/es/components/flyout/types.js +1 -0
  159. package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
  160. package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
  161. package/optimize/es/components/header/header_logo/header_logo.js +6 -1
  162. package/optimize/es/components/header/header_logo/header_logo.styles.js +1 -1
  163. package/optimize/es/components/icon/icon.styles.js +4 -4
  164. package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
  165. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  166. package/optimize/es/components/page/page.js +6 -3
  167. package/optimize/es/components/page/page.styles.js +1 -2
  168. package/optimize/es/components/page/page_header/page_header.js +6 -3
  169. package/optimize/es/components/page_template/outer/page_outer.js +2 -3
  170. package/optimize/es/components/page_template/outer/page_outer.styles.js +29 -35
  171. package/optimize/es/components/page_template/page_template.js +2 -1
  172. package/optimize/es/components/provider/provider.js +2 -1
  173. package/optimize/es/components/search_bar/search_bar.js +6 -0
  174. package/optimize/es/components/selectable/selectable.js +7 -2
  175. package/optimize/es/services/string/to_initials.js +26 -4
  176. package/optimize/lib/components/basic_table/in_memory_table.js +71 -46
  177. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
  178. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  179. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  180. package/optimize/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  181. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  182. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  183. package/optimize/lib/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  184. package/optimize/lib/components/filter_group/filter_group.a11y.js +1 -1
  185. package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
  186. package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
  187. package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  188. package/optimize/lib/components/flyout/const.js +49 -0
  189. package/optimize/lib/components/flyout/flyout.component.js +477 -0
  190. package/optimize/lib/components/flyout/flyout.js +77 -349
  191. package/optimize/lib/components/flyout/flyout.styles.js +102 -7
  192. package/optimize/lib/components/flyout/flyout_menu.js +168 -0
  193. package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
  194. package/{lib/components/flyout/flyout_context.js → optimize/lib/components/flyout/flyout_menu_context.js} +2 -7
  195. package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
  196. package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
  197. package/optimize/lib/components/flyout/hooks.js +30 -0
  198. package/optimize/lib/components/flyout/index.js +21 -14
  199. package/optimize/lib/components/flyout/manager/actions.js +159 -0
  200. package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
  201. package/optimize/lib/components/flyout/manager/const.js +62 -0
  202. package/optimize/lib/components/flyout/manager/context.js +41 -0
  203. package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
  204. package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
  205. package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  206. package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
  207. package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
  208. package/optimize/lib/components/flyout/manager/hooks.js +131 -0
  209. package/optimize/lib/components/flyout/manager/index.js +168 -0
  210. package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
  211. package/optimize/lib/components/flyout/manager/provider.js +61 -0
  212. package/optimize/lib/components/flyout/manager/reducer.js +318 -0
  213. package/optimize/lib/components/flyout/manager/selectors.js +122 -0
  214. package/optimize/lib/components/flyout/manager/store.js +120 -0
  215. package/optimize/lib/components/flyout/manager/validation.js +94 -0
  216. package/optimize/lib/components/flyout/types.js +5 -0
  217. package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
  218. package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
  219. package/optimize/lib/components/header/header_logo/header_logo.js +6 -1
  220. package/optimize/lib/components/header/header_logo/header_logo.styles.js +1 -1
  221. package/optimize/lib/components/icon/icon.styles.js +4 -4
  222. package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
  223. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  224. package/optimize/lib/components/page/page.js +5 -2
  225. package/optimize/lib/components/page/page.styles.js +1 -2
  226. package/optimize/lib/components/page/page_header/page_header.js +5 -2
  227. package/optimize/lib/components/page_template/outer/page_outer.js +1 -2
  228. package/optimize/lib/components/page_template/outer/page_outer.styles.js +29 -35
  229. package/optimize/lib/components/page_template/page_template.js +2 -1
  230. package/optimize/lib/components/provider/provider.js +2 -1
  231. package/optimize/lib/components/search_bar/search_bar.js +5 -0
  232. package/optimize/lib/components/selectable/selectable.js +7 -2
  233. package/optimize/lib/services/string/to_initials.js +26 -4
  234. package/package.json +7 -5
  235. package/test-env/components/basic_table/in_memory_table.js +87 -61
  236. package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
  237. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  238. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  239. package/test-env/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  240. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  241. package/test-env/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  242. package/test-env/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  243. package/test-env/components/filter_group/filter_group.a11y.js +1 -1
  244. package/test-env/components/flyout/_flyout_overlay.js +62 -0
  245. package/test-env/components/flyout/_flyout_resize_button.js +37 -0
  246. package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
  247. package/test-env/components/flyout/const.js +49 -0
  248. package/test-env/components/flyout/flyout.component.js +477 -0
  249. package/test-env/components/flyout/flyout.styles.js +102 -7
  250. package/test-env/components/flyout/flyout_menu.js +241 -0
  251. package/test-env/components/flyout/flyout_menu.styles.js +25 -0
  252. package/test-env/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
  253. package/test-env/components/flyout/flyout_parent_context.js +43 -0
  254. package/test-env/components/flyout/flyout_resizable.js +35 -139
  255. package/test-env/components/flyout/hooks.js +30 -0
  256. package/test-env/components/flyout/index.js +21 -14
  257. package/test-env/components/flyout/manager/actions.js +159 -0
  258. package/test-env/components/flyout/manager/activity_stage.js +101 -0
  259. package/test-env/components/flyout/manager/const.js +62 -0
  260. package/test-env/components/flyout/manager/context.js +41 -0
  261. package/test-env/components/flyout/manager/flyout_child.js +76 -0
  262. package/test-env/components/flyout/manager/flyout_main.js +66 -0
  263. package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
  264. package/test-env/components/flyout/manager/flyout_managed.js +231 -0
  265. package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
  266. package/test-env/components/flyout/manager/hooks.js +131 -0
  267. package/test-env/components/flyout/manager/index.js +168 -0
  268. package/test-env/components/flyout/manager/layout_mode.js +169 -0
  269. package/test-env/components/flyout/manager/provider.js +61 -0
  270. package/test-env/components/flyout/manager/reducer.js +318 -0
  271. package/test-env/components/flyout/manager/selectors.js +122 -0
  272. package/test-env/components/flyout/manager/store.js +120 -0
  273. package/test-env/components/flyout/manager/types.js +5 -0
  274. package/test-env/components/flyout/manager/validation.js +94 -0
  275. package/test-env/components/flyout/types.js +5 -0
  276. package/test-env/components/flyout/use_flyout_resizable.js +151 -0
  277. package/test-env/components/flyout/use_flyout_z_index.js +51 -0
  278. package/test-env/components/header/header_logo/header_logo.js +6 -1
  279. package/test-env/components/header/header_logo/header_logo.styles.js +1 -1
  280. package/test-env/components/icon/icon.styles.js +4 -4
  281. package/test-env/components/overlay_mask/overlay_mask.js +12 -2
  282. package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
  283. package/test-env/components/page/page.js +10 -2
  284. package/test-env/components/page/page.styles.js +1 -2
  285. package/test-env/components/page/page_header/page_header.js +10 -2
  286. package/test-env/components/page_template/outer/page_outer.js +1 -2
  287. package/test-env/components/page_template/outer/page_outer.styles.js +29 -35
  288. package/test-env/components/page_template/page_template.js +8 -2
  289. package/test-env/components/provider/provider.js +2 -1
  290. package/test-env/components/search_bar/search_bar.js +9 -4
  291. package/test-env/components/selectable/selectable.js +7 -2
  292. package/test-env/services/string/to_initials.js +26 -4
  293. package/es/components/flyout/flyout_child.js +0 -223
  294. package/es/components/flyout/flyout_child.styles.js +0 -32
  295. package/es/components/flyout/flyout_child_manager.js +0 -114
  296. package/es/components/flyout/sessions/flyout_provider.js +0 -95
  297. package/es/components/flyout/sessions/flyout_reducer.js +0 -195
  298. package/es/components/flyout/sessions/index.js +0 -10
  299. package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  300. package/lib/components/flyout/flyout_child.js +0 -231
  301. package/lib/components/flyout/flyout_child.styles.js +0 -38
  302. package/lib/components/flyout/flyout_child_manager.js +0 -122
  303. package/lib/components/flyout/sessions/flyout_provider.js +0 -102
  304. package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
  305. package/lib/components/flyout/sessions/index.js +0 -25
  306. package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  307. package/optimize/es/components/flyout/flyout_child.js +0 -178
  308. package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
  309. package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
  310. package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
  311. package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
  312. package/optimize/es/components/flyout/sessions/index.js +0 -10
  313. package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  314. package/optimize/lib/components/flyout/flyout_child.js +0 -186
  315. package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
  316. package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
  317. package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
  318. package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
  319. package/optimize/lib/components/flyout/sessions/index.js +0 -25
  320. package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  321. package/test-env/components/flyout/flyout_child.js +0 -230
  322. package/test-env/components/flyout/flyout_child.styles.js +0 -38
  323. package/test-env/components/flyout/flyout_child_manager.js +0 -119
  324. package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
  325. package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
  326. package/test-env/components/flyout/sessions/index.js +0 -25
  327. package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
  328. /package/es/components/flyout/{sessions → manager}/types.js +0 -0
  329. /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
  330. /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
  331. /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
  332. /package/{test-env/components/flyout/sessions → optimize/lib/components/flyout/manager}/types.js +0 -0
@@ -0,0 +1,113 @@
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 { addFlyout as addFlyoutAction, closeFlyout as closeFlyoutAction, setActiveFlyout as setActiveFlyoutAction, setFlyoutWidth as setFlyoutWidthAction, setPushPadding as setPushPaddingAction, goBack as goBackAction, goToFlyout as goToFlyoutAction, addUnmanagedFlyout as addUnmanagedFlyoutAction, closeUnmanagedFlyout as closeUnmanagedFlyoutAction } from './actions';
10
+ import { flyoutManagerReducer, initialState } from './reducer';
11
+ function createStore() {
12
+ var initial = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
13
+ var currentState = initial;
14
+ var listeners = new Set();
15
+ var getState = function getState() {
16
+ return currentState;
17
+ };
18
+ var subscribe = function subscribe(listener) {
19
+ listeners.add(listener);
20
+ return function () {
21
+ listeners.delete(listener);
22
+ };
23
+ };
24
+
25
+ // The onClick handlers won't execute until after store is fully assigned.
26
+ // eslint-disable-next-line prefer-const -- Forward declaration requires 'let' not 'const'
27
+ var store;
28
+ var computeHistoryItems = function computeHistoryItems() {
29
+ var currentSessionIndex = currentState.sessions.length - 1;
30
+ var previousSessions = currentState.sessions.slice(0, currentSessionIndex);
31
+ return previousSessions.reverse().map(function (_ref) {
32
+ var title = _ref.title,
33
+ mainFlyoutId = _ref.mainFlyoutId;
34
+ return {
35
+ title: title,
36
+ onClick: function onClick() {
37
+ store.dispatch(goToFlyoutAction(mainFlyoutId));
38
+ }
39
+ };
40
+ });
41
+ };
42
+ var dispatch = function dispatch(action) {
43
+ var nextState = flyoutManagerReducer(currentState, action);
44
+ if (nextState !== currentState) {
45
+ var previousSessions = currentState.sessions;
46
+ currentState = nextState;
47
+
48
+ // Recompute history items eagerly if sessions changed
49
+ // This ensures stable references and avoids stale closures
50
+ if (nextState.sessions !== previousSessions) {
51
+ store.historyItems = computeHistoryItems();
52
+ }
53
+ listeners.forEach(function (l) {
54
+ l();
55
+ });
56
+ }
57
+ };
58
+ store = {
59
+ getState: getState,
60
+ subscribe: subscribe,
61
+ dispatch: dispatch,
62
+ addFlyout: function addFlyout(flyoutId, title, level, size) {
63
+ return dispatch(addFlyoutAction(flyoutId, title, level, size));
64
+ },
65
+ closeFlyout: function closeFlyout(flyoutId) {
66
+ return dispatch(closeFlyoutAction(flyoutId));
67
+ },
68
+ setActiveFlyout: function setActiveFlyout(flyoutId) {
69
+ return dispatch(setActiveFlyoutAction(flyoutId));
70
+ },
71
+ setFlyoutWidth: function setFlyoutWidth(flyoutId, width) {
72
+ return dispatch(setFlyoutWidthAction(flyoutId, width));
73
+ },
74
+ setPushPadding: function setPushPadding(side, width) {
75
+ return dispatch(setPushPaddingAction(side, width));
76
+ },
77
+ goBack: function goBack() {
78
+ return dispatch(goBackAction());
79
+ },
80
+ goToFlyout: function goToFlyout(flyoutId) {
81
+ return dispatch(goToFlyoutAction(flyoutId));
82
+ },
83
+ addUnmanagedFlyout: function addUnmanagedFlyout(flyoutId) {
84
+ return dispatch(addUnmanagedFlyoutAction(flyoutId));
85
+ },
86
+ closeUnmanagedFlyout: function closeUnmanagedFlyout(flyoutId) {
87
+ return dispatch(closeUnmanagedFlyoutAction(flyoutId));
88
+ },
89
+ historyItems: computeHistoryItems() // Initialize with current state
90
+ };
91
+ return store;
92
+ }
93
+
94
+ // Module-level singleton. A necessary trade-off to avoid global namespace pollution or the need for a third-party library.
95
+ var storeInstance = null;
96
+
97
+ /**
98
+ * Returns a singleton store instance shared across all React roots within the same JS context.
99
+ * Uses module-level singleton to ensure deduplication even if modules are loaded twice.
100
+ */
101
+ export function getFlyoutManagerStore() {
102
+ if (!storeInstance) {
103
+ storeInstance = createStore();
104
+ }
105
+ return storeInstance;
106
+ }
107
+
108
+ /**
109
+ * For testing purposes - allows resetting the store
110
+ */
111
+ export function _resetFlyoutManagerStore() {
112
+ storeInstance = null;
113
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,85 @@
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 { FLYOUT_SIZES } from '../const';
10
+ import { LEVEL_CHILD } from './const';
11
+ /**
12
+ * Checks if a size is a named size (s, m, l)
13
+ */
14
+ export function isNamedSize(size) {
15
+ return FLYOUT_SIZES.includes(size);
16
+ }
17
+
18
+ /**
19
+ * Validates that a managed flyout only uses named sizes
20
+ */
21
+ export function validateManagedFlyoutSize(size, flyoutId, level) {
22
+ if (level === LEVEL_CHILD && !isNamedSize(size)) {
23
+ var namedSizes = FLYOUT_SIZES.join(', ');
24
+ return {
25
+ type: 'INVALID_SIZE_TYPE',
26
+ message: "Child flyout ".concat(flyoutId, " must use a named size (").concat(namedSizes, "). Received: ").concat(size),
27
+ flyoutId: flyoutId,
28
+ level: level,
29
+ size: size
30
+ };
31
+ }
32
+ return null;
33
+ }
34
+
35
+ /**
36
+ * Validates size combinations for parent-child flyouts
37
+ */
38
+ export function validateSizeCombination(parentSize, childSize) {
39
+ var sizes = [parentSize, childSize];
40
+
41
+ // Parent and child can't both be 'm'
42
+ if (sizes.every(function (s) {
43
+ return s === 'm';
44
+ })) {
45
+ return {
46
+ type: 'INVALID_SIZE_COMBINATION',
47
+ message: 'Parent and child flyouts cannot both be size "m"'
48
+ };
49
+ }
50
+
51
+ // Parent and child can't both be 'fill'
52
+ if (sizes.every(function (s) {
53
+ return s === 'fill';
54
+ })) {
55
+ return {
56
+ type: 'INVALID_SIZE_COMBINATION',
57
+ message: 'Parent and child flyouts cannot both be size "fill"'
58
+ };
59
+ }
60
+
61
+ // Flyout can't be 'l' if the other in the pair is not "fill"
62
+ if (sizes.includes('l') && !sizes.includes('fill')) {
63
+ return {
64
+ type: 'INVALID_SIZE_COMBINATION',
65
+ message: 'Flyouts cannot be size "l" unless the other flyout is "fill"'
66
+ };
67
+ }
68
+ return null;
69
+ }
70
+
71
+ /**
72
+ * Creates a user-friendly error message for validation errors
73
+ */
74
+ export function createValidationErrorMessage(error) {
75
+ console.error(error);
76
+ var prefix = "EuiFlyout validation error";
77
+ switch (error.type) {
78
+ case 'INVALID_SIZE_TYPE':
79
+ case 'INVALID_SIZE_COMBINATION':
80
+ case 'INVALID_FLYOUT_MENU_TITLE':
81
+ return "".concat(prefix, ": ").concat(error.message);
82
+ default:
83
+ return "".concat(prefix, ": Unknown validation error");
84
+ }
85
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,144 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ /*
3
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
4
+ * or more contributor license agreements. Licensed under the Elastic License
5
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
6
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
7
+ * Side Public License, v 1.
8
+ */
9
+
10
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
11
+ import { keys } from '../../services';
12
+ import { getPosition } from '../resizable_container/helpers';
13
+ /**
14
+ * @internal
15
+ */
16
+ export var useEuiFlyoutResizable = function useEuiFlyoutResizable(_ref) {
17
+ var enabled = _ref.enabled,
18
+ _ref$minWidth = _ref.minWidth,
19
+ minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,
20
+ maxWidth = _ref.maxWidth,
21
+ onResize = _ref.onResize,
22
+ side = _ref.side,
23
+ _size = _ref.size;
24
+ var getFlyoutMinMaxWidth = useCallback(function (width) {
25
+ return Math.min(Math.max(width, minWidth), maxWidth || Infinity, window.innerWidth - 20 // Leave some offset
26
+ );
27
+ }, [minWidth, maxWidth]);
28
+ var _useState = useState(0),
29
+ _useState2 = _slicedToArray(_useState, 2),
30
+ flyoutWidth = _useState2[0],
31
+ setFlyoutWidth = _useState2[1];
32
+ var _useState3 = useState(false),
33
+ _useState4 = _slicedToArray(_useState3, 2),
34
+ callOnResize = _useState4[0],
35
+ setCallOnResize = _useState4[1];
36
+
37
+ // Must use state for the flyout ref in order for the useEffect to be correctly called after render
38
+ var _useState5 = useState(null),
39
+ _useState6 = _slicedToArray(_useState5, 2),
40
+ flyoutRef = _useState6[0],
41
+ setFlyoutRef = _useState6[1];
42
+ useEffect(function () {
43
+ if (!enabled) return; // Don't measure when resizing is disabled
44
+ if (!flyoutWidth && flyoutRef) {
45
+ setCallOnResize(false); // Don't call `onResize` for non-user width changes
46
+ setFlyoutWidth(getFlyoutMinMaxWidth(flyoutRef.offsetWidth));
47
+ }
48
+ }, [flyoutWidth, flyoutRef, getFlyoutMinMaxWidth, enabled]);
49
+
50
+ // Update flyout width when consumers pass in a new `size`
51
+ useEffect(function () {
52
+ if (!enabled) return; // Don't update width when resizing is disabled
53
+ setCallOnResize(false);
54
+ // For string `size`s, resetting flyoutWidth to 0 will trigger the above useEffect's recalculation
55
+ setFlyoutWidth(typeof _size === 'number' ? getFlyoutMinMaxWidth(_size) : 0);
56
+ }, [_size, getFlyoutMinMaxWidth, enabled]);
57
+
58
+ // Initial numbers to calculate from, on resize drag start
59
+ var initialWidth = useRef(0);
60
+ var initialMouseX = useRef(0);
61
+
62
+ // Account for flyout side and logical property direction
63
+ var direction = useMemo(function () {
64
+ var modifier = side === 'right' ? -1 : 1;
65
+ if (flyoutRef) {
66
+ var languageDirection = window.getComputedStyle(flyoutRef).direction;
67
+ if (languageDirection === 'rtl') modifier *= -1;
68
+ }
69
+ return modifier;
70
+ }, [side, flyoutRef]);
71
+ var onMouseMove = useCallback(function (e) {
72
+ if (!enabled) {
73
+ return;
74
+ }
75
+ var mouseOffset = getPosition(e, true) - initialMouseX.current;
76
+ var changedFlyoutWidth = initialWidth.current + mouseOffset * direction;
77
+ setFlyoutWidth(getFlyoutMinMaxWidth(changedFlyoutWidth));
78
+ }, [getFlyoutMinMaxWidth, direction, enabled]);
79
+ var onMouseUp = useCallback(function () {
80
+ setCallOnResize(true);
81
+ if (!enabled) {
82
+ return;
83
+ }
84
+ initialMouseX.current = 0;
85
+ window.removeEventListener('mousemove', onMouseMove);
86
+ window.removeEventListener('mouseup', onMouseUp);
87
+ window.removeEventListener('touchmove', onMouseMove);
88
+ window.removeEventListener('touchend', onMouseUp);
89
+ }, [onMouseMove, enabled]);
90
+ var onMouseDown = useCallback(function (e) {
91
+ var _flyoutRef$offsetWidt;
92
+ setCallOnResize(false);
93
+ if (!enabled) {
94
+ return;
95
+ }
96
+ initialMouseX.current = getPosition(e, true);
97
+ initialWidth.current = (_flyoutRef$offsetWidt = flyoutRef === null || flyoutRef === void 0 ? void 0 : flyoutRef.offsetWidth) !== null && _flyoutRef$offsetWidt !== void 0 ? _flyoutRef$offsetWidt : 0;
98
+
99
+ // Window event listeners instead of React events are used
100
+ // in case the user's mouse leaves the component
101
+ window.addEventListener('mousemove', onMouseMove);
102
+ window.addEventListener('mouseup', onMouseUp);
103
+ window.addEventListener('touchmove', onMouseMove);
104
+ window.addEventListener('touchend', onMouseUp);
105
+ }, [flyoutRef, onMouseMove, onMouseUp, enabled]);
106
+ var onKeyDown = useCallback(function (e) {
107
+ setCallOnResize(true);
108
+ if (!enabled) {
109
+ return;
110
+ }
111
+ var KEYBOARD_OFFSET = 10;
112
+ switch (e.key) {
113
+ case keys.ARROW_RIGHT:
114
+ e.preventDefault(); // Safari+VO will screen reader navigate off the button otherwise
115
+ setFlyoutWidth(function (flyoutWidth) {
116
+ return getFlyoutMinMaxWidth(flyoutWidth + KEYBOARD_OFFSET * direction);
117
+ });
118
+ break;
119
+ case keys.ARROW_LEFT:
120
+ e.preventDefault(); // Safari+VO will screen reader navigate off the button otherwise
121
+ setFlyoutWidth(function (flyoutWidth) {
122
+ return getFlyoutMinMaxWidth(flyoutWidth - KEYBOARD_OFFSET * direction);
123
+ });
124
+ }
125
+ }, [getFlyoutMinMaxWidth, direction, enabled]);
126
+
127
+ // To reduce unnecessary calls, only fire onResize callback:
128
+ // 1. After initial mount / on user width change events only
129
+ // 2. If not currently mouse dragging
130
+ useEffect(function () {
131
+ if (callOnResize && enabled) {
132
+ onResize === null || onResize === void 0 || onResize(flyoutWidth);
133
+ }
134
+ }, [onResize, callOnResize, flyoutWidth, enabled]);
135
+ var size = useMemo(function () {
136
+ return enabled ? flyoutWidth || _size : _size;
137
+ }, [enabled, flyoutWidth, _size]);
138
+ return {
139
+ onKeyDown: onKeyDown,
140
+ onMouseDown: onMouseDown,
141
+ setFlyoutRef: setFlyoutRef,
142
+ size: size
143
+ };
144
+ };
@@ -0,0 +1,46 @@
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 { useEuiTheme } from '../../services';
10
+
11
+ /**
12
+ * @internal
13
+ */
14
+
15
+ var calculateZIndex = function calculateZIndex(baseLevel, isChildFlyout) {
16
+ var level = Number(baseLevel);
17
+ return {
18
+ // Child flyouts slide in from below and need to have a lower z-index
19
+ flyoutZIndex: isChildFlyout ? level - 1 : level,
20
+ maskZIndex: level - 2
21
+ };
22
+ };
23
+
24
+ /**
25
+ * @internal
26
+ */
27
+ export var useEuiFlyoutZIndex = function useEuiFlyoutZIndex(_ref) {
28
+ var maskProps = _ref.maskProps,
29
+ isPushed = _ref.isPushed,
30
+ managedFlyoutIndex = _ref.managedFlyoutIndex,
31
+ isChildFlyout = _ref.isChildFlyout;
32
+ var _useEuiTheme = useEuiTheme(),
33
+ euiTheme = _useEuiTheme.euiTheme;
34
+ var baseLevel = Number(euiTheme.levels.flyout);
35
+
36
+ // The default headerZindexLocation for EuiFlyout is "below"
37
+ // which is different from what EuiOverlayMask fallbacks to - see
38
+ // _flyout_overlay.tsx.
39
+ // We set z-index to mask level only when explicitly overridden
40
+ // via the maskProps prop
41
+ if (!isPushed && (maskProps === null || maskProps === void 0 ? void 0 : maskProps.headerZindexLocation) === 'above') {
42
+ baseLevel = Number(euiTheme.levels.mask);
43
+ }
44
+ baseLevel += managedFlyoutIndex;
45
+ return calculateZIndex(baseLevel, isChildFlyout);
46
+ };
@@ -13,6 +13,7 @@ import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { useEuiMemoizedStyles, getSecureRelForTarget } from '../../../services';
15
15
  import { validateHref } from '../../../services/security/href_validator';
16
+ import { useEuiButtonColorCSS } from '../../../global_styling';
16
17
  import { EuiIcon } from '../../icon';
17
18
  import { euiHeaderLogoStyles } from './header_logo.styles';
18
19
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -29,6 +30,10 @@ export var EuiHeaderLogo = function EuiHeaderLogo(_ref) {
29
30
  rest = _objectWithoutProperties(_ref, _excluded);
30
31
  var classes = classNames('euiHeaderLogo', className);
31
32
  var styles = useEuiMemoizedStyles(euiHeaderLogoStyles);
33
+ var buttonColorStyles = useEuiButtonColorCSS({
34
+ display: 'empty'
35
+ });
36
+ var cssStyles = [styles.euiHeaderLogo, buttonColorStyles.text];
32
37
  var secureRel = getSecureRelForTarget({
33
38
  href: href,
34
39
  rel: rel,
@@ -39,7 +44,7 @@ export var EuiHeaderLogo = function EuiHeaderLogo(_ref) {
39
44
  href: isHrefValid ? href : '',
40
45
  rel: secureRel,
41
46
  target: target,
42
- css: styles.euiHeaderLogo,
47
+ css: cssStyles,
43
48
  className: classes
44
49
  }, rest), ___EmotionJSX(EuiIcon, {
45
50
  "aria-label": iconTitle,
@@ -15,7 +15,7 @@ export var euiHeaderLogoStyles = function euiHeaderLogoStyles(euiThemeContext) {
15
15
  var _euiHeaderVariables = euiHeaderVariables(euiThemeContext),
16
16
  childHeight = _euiHeaderVariables.childHeight;
17
17
  return {
18
- euiHeaderLogo: /*#__PURE__*/css("position:relative;", logicalCSS('height', childHeight), " line-height:", childHeight, ";", logicalCSS('min-width', childHeight), " padding-inline:", euiTheme.size.s, ";display:inline-flex;align-items:center;white-space:nowrap;", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.xs), ";};label:euiHeaderLogo;"),
18
+ euiHeaderLogo: /*#__PURE__*/css("position:relative;", logicalCSS('height', childHeight), " line-height:", childHeight, ";", logicalCSS('min-width', childHeight), " padding-inline:", euiTheme.size.s, ";display:inline-flex;border-radius:", euiTheme.border.radius.small, ";align-items:center;white-space:nowrap;", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.xs), ";};label:euiHeaderLogo;"),
19
19
  euiHeaderLogo__text: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), " ", logicalCSS('padding-left', euiTheme.size.base), " ", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.s), ";};label:euiHeaderLogo__text;")
20
20
  };
21
21
  };
@@ -14,11 +14,11 @@ import { logicalSizeCSS, euiCanAnimate } from '../../global_styling';
14
14
  export var iconLoadingOpacity = 0.05;
15
15
  var iconLoading = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% {\n opacity: ", ";\n }\n\n 100% {\n opacity: 1;\n }\n"])), iconLoadingOpacity);
16
16
  var _ref = process.env.NODE_ENV === "production" ? {
17
- name: "njd749-logoElasticOutline",
18
- styles: "*[fill]{fill:none!important;}.outline{fill:currentColor!important;};label:logoElasticOutline;"
17
+ name: "p0011s-logoElasticOutline",
18
+ styles: "*[fill]{fill:none!important;stroke:currentColor!important;};label:logoElasticOutline;"
19
19
  } : {
20
- name: "njd749-logoElasticOutline",
21
- styles: "*[fill]{fill:none!important;}.outline{fill:currentColor!important;};label:logoElasticOutline;",
20
+ name: "p0011s-logoElasticOutline",
21
+ styles: "*[fill]{fill:none!important;stroke:currentColor!important;};label:logoElasticOutline;",
22
22
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
23
  };
24
24
  var _ref2 = process.env.NODE_ENV === "production" ? {
@@ -10,7 +10,7 @@ var _excluded = ["className", "children", "headerZindexLocation", "maskRef"];
10
10
  * Side Public License, v 1.
11
11
  */
12
12
 
13
- import React, { useEffect, useState } from 'react';
13
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
14
14
  import { cx } from '@emotion/css';
15
15
  import { Global } from '@emotion/react';
16
16
  import { keysOf } from '../common';
@@ -26,13 +26,17 @@ export var EuiOverlayMask = function EuiOverlayMask(_ref) {
26
26
  headerZindexLocation = _ref$headerZindexLoca === void 0 ? 'above' : _ref$headerZindexLoca,
27
27
  maskRef = _ref.maskRef,
28
28
  rest = _objectWithoutProperties(_ref, _excluded);
29
+ var hasRendered = useRef(false);
29
30
  var _useState = useState(null),
30
31
  _useState2 = _slicedToArray(_useState, 2),
31
32
  overlayMaskNode = _useState2[0],
32
33
  setOverlayMaskNode = _useState2[1];
33
34
  var combinedMaskRef = useCombinedRefs([setOverlayMaskNode, maskRef]);
35
+ var handleAnimationEnd = useCallback(function () {
36
+ hasRendered.current = true;
37
+ }, []);
34
38
  var styles = useEuiMemoizedStyles(euiOverlayMaskStyles);
35
- var cssStyles = cx([styles.euiOverlayMask, styles["".concat(headerZindexLocation, "Header")]]);
39
+ var cssStyles = cx([styles.euiOverlayMask, styles["".concat(headerZindexLocation, "Header")], hasRendered.current && styles.noAnimation]);
36
40
  useEffect(function () {
37
41
  if (!overlayMaskNode) return;
38
42
  keysOf(rest).forEach(function (key) {
@@ -43,7 +47,13 @@ export var EuiOverlayMask = function EuiOverlayMask(_ref) {
43
47
  overlayMaskNode.setAttribute(key, rest[key]);
44
48
  }
45
49
  });
46
- }, [overlayMaskNode]); // eslint-disable-line react-hooks/exhaustive-deps
50
+ overlayMaskNode.addEventListener('animationend', handleAnimationEnd, {
51
+ once: true
52
+ });
53
+ return function () {
54
+ overlayMaskNode.removeEventListener('animationend', handleAnimationEnd);
55
+ };
56
+ }, [overlayMaskNode, handleAnimationEnd]); // eslint-disable-line react-hooks/exhaustive-deps
47
57
 
48
58
  // Note: Use `classList.add/remove` instead of setting the entire `className`
49
59
  // so as not to override any existing classes set by `EuiPortal`
@@ -1,3 +1,4 @@
1
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
1
2
  /*
2
3
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
4
  * or more contributor license agreements. Licensed under the Elastic License
@@ -12,8 +13,16 @@ export var euiOverlayMaskStyles = function euiOverlayMaskStyles(_ref) {
12
13
  var euiTheme = _ref.euiTheme,
13
14
  highContrastMode = _ref.highContrastMode;
14
15
  return {
15
- euiOverlayMask: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('left', 0), " ", logicalCSS('right', 0), " ", logicalCSS('bottom', 0), " display:flex;align-items:center;justify-content:center;animation:", euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
16
+ euiOverlayMask: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('left', 0), " ", logicalCSS('right', 0), " ", logicalCSS('bottom', 0), " display:flex;align-items:center;justify-content:center;animation:", euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in forwards;animation-iteration-count:1;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
16
17
  aboveHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.mask, ";;label:aboveHeader;"),
17
- belowHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.maskBelowHeader, ";", logicalCSS('top', 'var(--euiFixedHeadersOffset, 0)'), ";;label:belowHeader;")
18
+ belowHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.maskBelowHeader, ";", logicalCSS('top', 'var(--euiFixedHeadersOffset, 0)'), ";;label:belowHeader;"),
19
+ noAnimation: /*#__PURE__*/css(process.env.NODE_ENV === "production" ? {
20
+ name: "lqr4xc-noAnimation",
21
+ styles: "animation:none;label:noAnimation;"
22
+ } : {
23
+ name: "lqr4xc-noAnimation",
24
+ styles: "animation:none;label:noAnimation;",
25
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
26
+ })
18
27
  };
19
28
  };
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow", "direction"];
3
+ var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow", "direction", "color"];
4
4
  /*
5
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -12,7 +12,7 @@ var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow"
12
12
  import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { setStyleForRestrictedPageWidth } from './_restrict_width';
15
- import { useEuiPaddingCSS } from '../../global_styling';
15
+ import { useEuiPaddingCSS, useEuiBackgroundColorCSS } from '../../global_styling';
16
16
  import { euiPageStyles } from './page.styles';
17
17
  import { useEuiTheme } from '../../services';
18
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -27,13 +27,16 @@ export var EuiPage = function EuiPage(_ref) {
27
27
  grow = _ref$grow === void 0 ? true : _ref$grow,
28
28
  _ref$direction = _ref.direction,
29
29
  direction = _ref$direction === void 0 ? 'row' : _ref$direction,
30
+ _ref$color = _ref.color,
31
+ color = _ref$color === void 0 ? 'transparent' : _ref$color,
30
32
  rest = _objectWithoutProperties(_ref, _excluded);
31
33
  // Set max-width as a style prop
32
34
  var widthStyles = setStyleForRestrictedPageWidth(restrictWidth, rest === null || rest === void 0 ? void 0 : rest.style);
33
35
  var euiTheme = useEuiTheme();
34
36
  var styles = euiPageStyles(euiTheme);
35
37
  var padding = useEuiPaddingCSS()[paddingSize];
36
- var stylesCSS = [styles.euiPage, styles[direction], grow && styles.grow, padding, restrictWidth && styles.restrictWidth];
38
+ var backgroundColor = useEuiBackgroundColorCSS()[color];
39
+ var stylesCSS = [styles.euiPage, styles[direction], backgroundColor, grow && styles.grow, padding, restrictWidth && styles.restrictWidth];
37
40
  var classes = classNames('euiPage', className);
38
41
  return ___EmotionJSX("div", _extends({
39
42
  css: stylesCSS,
@@ -26,9 +26,8 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
26
26
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
27
27
  };
28
28
  export var euiPageStyles = function euiPageStyles(euiThemeContext) {
29
- var euiTheme = euiThemeContext.euiTheme;
30
29
  return {
31
- euiPage: /*#__PURE__*/css("display:flex;background-color:", euiTheme.colors.body, ";flex-shrink:0;", logicalCSS('max-width', '100%'), ";;label:euiPage;"),
30
+ euiPage: /*#__PURE__*/css("display:flex;flex-shrink:0;", logicalCSS('max-width', '100%'), ";;label:euiPage;"),
32
31
  // Grow
33
32
  grow: _ref2,
34
33
  // Direction
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["className", "restrictWidth", "paddingSize", "bottomBorder", "alignItems", "responsive", "children", "pageTitle", "pageTitleProps", "iconType", "iconProps", "tabs", "tabsProps", "breadcrumbs", "breadcrumbProps", "description", "rightSideItems", "rightSideGroupProps"];
3
+ var _excluded = ["className", "restrictWidth", "paddingSize", "bottomBorder", "color", "alignItems", "responsive", "children", "pageTitle", "pageTitleProps", "iconType", "iconProps", "tabs", "tabsProps", "breadcrumbs", "breadcrumbProps", "description", "rightSideItems", "rightSideGroupProps"];
4
4
  /*
5
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -12,7 +12,7 @@ var _excluded = ["className", "restrictWidth", "paddingSize", "bottomBorder", "a
12
12
  import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { useEuiTheme } from '../../../services';
15
- import { useEuiPaddingCSS } from '../../../global_styling';
15
+ import { useEuiPaddingCSS, useEuiBackgroundColorCSS } from '../../../global_styling';
16
16
  import { EuiPageHeaderContent } from './page_header_content';
17
17
  import { euiPageHeaderStyles } from './page_header.styles';
18
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -23,6 +23,8 @@ export var EuiPageHeader = function EuiPageHeader(_ref) {
23
23
  _ref$paddingSize = _ref.paddingSize,
24
24
  paddingSize = _ref$paddingSize === void 0 ? 'none' : _ref$paddingSize,
25
25
  bottomBorder = _ref.bottomBorder,
26
+ _ref$color = _ref.color,
27
+ color = _ref$color === void 0 ? 'transparent' : _ref$color,
26
28
  alignItems = _ref.alignItems,
27
29
  _ref$responsive = _ref.responsive,
28
30
  responsive = _ref$responsive === void 0 ? true : _ref$responsive,
@@ -42,7 +44,8 @@ export var EuiPageHeader = function EuiPageHeader(_ref) {
42
44
  var useTheme = useEuiTheme();
43
45
  var styles = euiPageHeaderStyles(useTheme);
44
46
  var inlinePadding = useEuiPaddingCSS('horizontal');
45
- var cssStyles = [styles.euiPageHeader, inlinePadding[paddingSize], bottomBorder === 'extended' && styles.border];
47
+ var backgroundColor = useEuiBackgroundColorCSS()[color];
48
+ var cssStyles = [styles.euiPageHeader, inlinePadding[paddingSize], bottomBorder === 'extended' && styles.border, backgroundColor];
46
49
  var classes = classNames('euiPageHeader', className);
47
50
  var contentProps = {
48
51
  restrictWidth: restrictWidth,
@@ -10,7 +10,7 @@ var _excluded = ["children", "grow", "direction", "responsive"];
10
10
  */
11
11
 
12
12
  import React from 'react';
13
- import { useEuiTheme, useIsWithinBreakpoints } from '../../../services';
13
+ import { useIsWithinBreakpoints } from '../../../services';
14
14
  import { euiPageOuterStyles } from './page_outer.styles';
15
15
  import { jsx as ___EmotionJSX } from "@emotion/react";
16
16
  export var PAGE_DIRECTIONS = ['row', 'column'];
@@ -23,8 +23,7 @@ export var _EuiPageOuter = function _EuiPageOuter(_ref) {
23
23
  _ref$responsive = _ref.responsive,
24
24
  responsive = _ref$responsive === void 0 ? ['xs', 's'] : _ref$responsive,
25
25
  rest = _objectWithoutProperties(_ref, _excluded);
26
- var themeContext = useEuiTheme();
27
- var styles = euiPageOuterStyles(themeContext);
26
+ var styles = euiPageOuterStyles;
28
27
  var isResponding = useIsWithinBreakpoints(responsive);
29
28
  var cssStyles = [styles.euiPageOuter, styles[isResponding ? 'column' : direction], grow && styles.grow];
30
29
  return ___EmotionJSX("div", _extends({