@elastic/eui 89.0.0 → 90.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. package/dist/eui_charts_theme.js +1 -1
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +30 -560
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +30 -560
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/accessibility/skip_link/skip_link.js +1 -2
  8. package/es/components/accordion/accordion.js +27 -2
  9. package/es/components/accordion/accordion_children/accordion_children.js +7 -15
  10. package/es/components/avatar/avatar.js +1 -1
  11. package/es/components/badge/badge.js +1 -1
  12. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  13. package/es/components/basic_table/basic_table.js +61 -24
  14. package/es/components/basic_table/collapsed_item_actions.js +2 -2
  15. package/es/components/basic_table/in_memory_table.js +19 -5
  16. package/es/components/button/button.js +17 -45
  17. package/es/components/button/button_display/_button_display.js +1 -1
  18. package/es/components/button/button_display/_button_display_content.js +1 -1
  19. package/es/components/button/button_empty/button_empty.js +31 -48
  20. package/es/components/button/button_group/button_group.js +1 -1
  21. package/es/components/button/button_group/button_group_button.js +1 -1
  22. package/es/components/button/button_icon/button_icon.js +27 -44
  23. package/es/components/call_out/call_out.js +1 -1
  24. package/es/components/card/card.js +2 -7
  25. package/es/components/card/card_select/card_select.js +1 -6
  26. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  27. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  28. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  29. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +20 -6
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +13 -6
  31. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +13 -6
  32. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +14 -7
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +37 -5
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  35. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +158 -0
  36. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +69 -30
  37. package/es/components/collapsible_nav_beta/context.js +1 -0
  38. package/es/components/comment_list/comment.js +2 -2
  39. package/es/components/comment_list/comment_event.js +32 -20
  40. package/es/components/comment_list/comment_event.styles.js +26 -24
  41. package/es/components/comment_list/comment_list.js +2 -2
  42. package/es/components/comment_list/comment_timeline.js +1 -1
  43. package/es/components/context_menu/context_menu.js +28 -22
  44. package/es/components/context_menu/context_menu.styles.js +26 -0
  45. package/es/components/context_menu/context_menu_item.js +95 -125
  46. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  47. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  48. package/es/components/context_menu/context_menu_panel.js +32 -61
  49. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  50. package/es/components/control_bar/control_bar.js +28 -23
  51. package/es/components/datagrid/body/data_grid_body.js +19 -20
  52. package/es/components/datagrid/body/data_grid_body_custom.js +19 -20
  53. package/es/components/datagrid/body/data_grid_body_virtualized.js +19 -20
  54. package/es/components/datagrid/body/data_grid_cell.js +112 -86
  55. package/es/components/datagrid/body/data_grid_cell_actions.js +7 -2
  56. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  57. package/es/components/datagrid/body/header/data_grid_header_cell.js +18 -19
  58. package/es/components/datagrid/body/header/data_grid_header_row.js +19 -20
  59. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  60. package/es/components/datagrid/data_grid.js +19 -20
  61. package/es/components/datagrid/utils/in_memory.js +18 -19
  62. package/es/components/datagrid/utils/row_heights.js +12 -17
  63. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  64. package/es/components/date_picker/date_picker.js +2 -2
  65. package/es/components/date_picker/date_picker_range.js +1 -1
  66. package/es/components/empty_prompt/empty_prompt.js +1 -1
  67. package/es/components/facet/facet_button.js +1 -1
  68. package/es/components/form/field_number/field_number.js +14 -10
  69. package/es/components/form/field_password/field_password.js +4 -7
  70. package/es/components/form/field_text/field_text.js +2 -2
  71. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  72. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  73. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  74. package/es/components/form/range/dual_range.js +110 -85
  75. package/es/components/form/range/range.js +47 -40
  76. package/es/components/form/range/range_track.js +6 -20
  77. package/es/components/form/range/utils.js +1 -2
  78. package/es/components/header/header_links/header_link.js +2 -7
  79. package/es/components/header/header_links/header_links.js +1 -1
  80. package/es/components/header/header_logo/header_logo.js +1 -1
  81. package/es/components/header/header_section/header_section_item_button.js +2 -7
  82. package/es/components/{page/page_content/page_content_header.js → icon/assets/tokenVectorDense.js} +24 -30
  83. package/es/components/icon/assets/{tokenDenseVector.js → tokenVectorSparse.js} +7 -3
  84. package/es/components/icon/icon.js +1 -1
  85. package/es/components/icon/icon_map.js +5 -2
  86. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  87. package/es/components/list_group/list_group.js +3 -4
  88. package/es/components/list_group/list_group_item.js +9 -7
  89. package/es/components/list_group/list_group_item_extra_action.js +2 -3
  90. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  91. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +6 -7
  92. package/es/components/loading/loading_logo.js +1 -1
  93. package/es/components/markdown_editor/markdown_editor.js +1 -1
  94. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  95. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  96. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  97. package/es/components/modal/confirm_modal.js +1 -1
  98. package/es/components/notification/notification_event.js +3 -8
  99. package/es/components/notification/notification_event_meta.js +1 -1
  100. package/es/components/notification/notification_event_read_button.js +1 -2
  101. package/es/components/page/index.js +1 -4
  102. package/es/components/page/page_header/page_header_content.js +1 -1
  103. package/es/components/pagination/pagination_button.js +2 -7
  104. package/es/components/popover/input_popover.js +26 -11
  105. package/es/components/provider/provider.js +3 -3
  106. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  107. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  108. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  109. package/es/components/table/table_header_button.js +1 -1
  110. package/es/components/tabs/tab.js +1 -1
  111. package/es/components/timeline/timeline_item_icon.js +1 -1
  112. package/es/components/toast/global_toast_list.js +1 -1
  113. package/es/components/toast/toast.js +1 -1
  114. package/es/components/token/token_map.js +12 -4
  115. package/es/components/tool_tip/icon_tip.js +1 -1
  116. package/es/services/emotion/css.js +28 -0
  117. package/es/services/emotion/index.js +2 -1
  118. package/es/services/emotion/prefixer.js +93 -0
  119. package/es/services/theme/provider.js +8 -7
  120. package/es/services/theme/utils.js +1 -1
  121. package/eui.d.ts +263 -308
  122. package/i18ntokens.json +113 -77
  123. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  124. package/lib/components/accordion/accordion.js +27 -2
  125. package/lib/components/accordion/accordion_children/accordion_children.js +5 -13
  126. package/lib/components/avatar/avatar.js +1 -1
  127. package/lib/components/badge/badge.js +1 -1
  128. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  129. package/lib/components/basic_table/basic_table.js +61 -24
  130. package/lib/components/basic_table/collapsed_item_actions.js +2 -2
  131. package/lib/components/basic_table/in_memory_table.js +19 -5
  132. package/lib/components/button/button.js +24 -51
  133. package/lib/components/button/button_display/_button_display.js +1 -1
  134. package/lib/components/button/button_display/_button_display_content.js +1 -1
  135. package/lib/components/button/button_empty/button_empty.js +30 -47
  136. package/lib/components/button/button_group/button_group.js +1 -1
  137. package/lib/components/button/button_group/button_group_button.js +1 -1
  138. package/lib/components/button/button_icon/button_icon.js +26 -43
  139. package/lib/components/call_out/call_out.js +1 -1
  140. package/lib/components/card/card.js +2 -7
  141. package/lib/components/card/card_select/card_select.js +1 -6
  142. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  143. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  144. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  145. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +20 -6
  146. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +13 -6
  147. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +13 -6
  148. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +14 -7
  149. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +37 -5
  150. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  151. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +165 -0
  152. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +69 -30
  153. package/lib/components/collapsible_nav_beta/context.js +1 -0
  154. package/lib/components/comment_list/comment.js +2 -2
  155. package/lib/components/comment_list/comment_event.js +34 -19
  156. package/lib/components/comment_list/comment_event.styles.js +28 -25
  157. package/lib/components/comment_list/comment_list.js +2 -2
  158. package/lib/components/comment_list/comment_timeline.js +1 -1
  159. package/lib/components/context_menu/context_menu.js +31 -24
  160. package/lib/components/context_menu/context_menu.styles.js +34 -0
  161. package/lib/components/context_menu/context_menu_item.js +102 -133
  162. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  163. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  164. package/lib/components/context_menu/context_menu_panel.js +35 -63
  165. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  166. package/lib/components/control_bar/control_bar.js +28 -23
  167. package/lib/components/datagrid/body/data_grid_body.js +19 -20
  168. package/lib/components/datagrid/body/data_grid_body_custom.js +19 -20
  169. package/lib/components/datagrid/body/data_grid_body_virtualized.js +19 -20
  170. package/lib/components/datagrid/body/data_grid_cell.js +112 -86
  171. package/lib/components/datagrid/body/data_grid_cell_actions.js +8 -2
  172. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  173. package/lib/components/datagrid/body/header/data_grid_header_cell.js +18 -19
  174. package/lib/components/datagrid/body/header/data_grid_header_row.js +19 -20
  175. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  176. package/lib/components/datagrid/data_grid.js +19 -20
  177. package/lib/components/datagrid/utils/in_memory.js +18 -19
  178. package/lib/components/datagrid/utils/row_heights.js +12 -17
  179. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  180. package/lib/components/date_picker/date_picker.js +2 -2
  181. package/lib/components/date_picker/date_picker_range.js +1 -1
  182. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  183. package/lib/components/facet/facet_button.js +1 -1
  184. package/lib/components/form/field_number/field_number.js +13 -9
  185. package/lib/components/form/field_password/field_password.js +4 -7
  186. package/lib/components/form/field_text/field_text.js +2 -2
  187. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  188. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  189. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  190. package/lib/components/form/range/dual_range.js +110 -85
  191. package/lib/components/form/range/range.js +47 -40
  192. package/lib/components/form/range/range_track.js +5 -19
  193. package/lib/components/form/range/utils.js +1 -2
  194. package/lib/components/header/header_links/header_link.js +2 -7
  195. package/lib/components/header/header_links/header_links.js +1 -1
  196. package/lib/components/header/header_logo/header_logo.js +1 -1
  197. package/lib/components/header/header_section/header_section_item_button.js +2 -7
  198. package/lib/components/icon/assets/tokenVectorDense.js +45 -0
  199. package/lib/components/icon/assets/{tokenDenseVector.js → tokenVectorSparse.js} +7 -3
  200. package/lib/components/icon/icon.js +1 -1
  201. package/lib/components/icon/icon_map.js +5 -2
  202. package/lib/components/icon/svgs/tokens/tokenVectorDense.svg +5 -0
  203. package/lib/components/icon/svgs/tokens/tokenVectorSparse.svg +5 -0
  204. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  205. package/lib/components/list_group/list_group.js +3 -4
  206. package/lib/components/list_group/list_group_item.js +9 -7
  207. package/lib/components/list_group/list_group_item_extra_action.js +2 -3
  208. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  209. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +6 -7
  210. package/lib/components/loading/loading_logo.js +1 -1
  211. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  212. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  213. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  214. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  215. package/lib/components/modal/confirm_modal.js +1 -1
  216. package/lib/components/notification/notification_event.js +3 -8
  217. package/lib/components/notification/notification_event_meta.js +1 -1
  218. package/lib/components/notification/notification_event_read_button.js +1 -2
  219. package/lib/components/page/index.js +1 -40
  220. package/lib/components/page/page_header/page_header_content.js +1 -1
  221. package/lib/components/popover/input_popover.js +26 -11
  222. package/lib/components/provider/provider.js +3 -3
  223. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  224. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  225. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  226. package/lib/components/table/table_header_button.js +1 -1
  227. package/lib/components/tabs/tab.js +1 -1
  228. package/lib/components/timeline/timeline_item_icon.js +1 -1
  229. package/lib/components/toast/global_toast_list.js +1 -1
  230. package/lib/components/toast/toast.js +1 -1
  231. package/lib/components/token/token_map.js +12 -4
  232. package/lib/components/tool_tip/icon_tip.js +1 -1
  233. package/lib/services/emotion/css.js +36 -0
  234. package/lib/services/emotion/index.js +11 -0
  235. package/lib/services/emotion/prefixer.js +99 -0
  236. package/lib/services/theme/provider.js +8 -7
  237. package/lib/services/theme/utils.js +1 -1
  238. package/optimize/es/components/accordion/accordion.js +27 -2
  239. package/optimize/es/components/accordion/accordion_children/accordion_children.js +5 -14
  240. package/optimize/es/components/basic_table/basic_table.js +42 -19
  241. package/optimize/es/components/button/button.js +15 -33
  242. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  243. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  244. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  245. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  246. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  247. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +60 -0
  248. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  249. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  250. package/optimize/es/components/comment_list/comment_event.js +31 -19
  251. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  252. package/optimize/es/components/context_menu/context_menu.js +25 -19
  253. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  254. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  255. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  256. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  257. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  258. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  259. package/optimize/es/components/control_bar/control_bar.js +28 -23
  260. package/optimize/es/components/datagrid/body/data_grid_cell.js +67 -47
  261. package/optimize/es/components/datagrid/body/data_grid_cell_actions.js +7 -2
  262. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  263. package/optimize/es/components/datagrid/utils/row_heights.js +12 -17
  264. package/optimize/es/components/form/field_number/field_number.js +13 -9
  265. package/optimize/es/components/form/field_password/field_password.js +4 -7
  266. package/optimize/es/components/form/range/dual_range.js +110 -85
  267. package/optimize/es/components/form/range/range.js +47 -40
  268. package/optimize/es/components/form/range/range_track.js +5 -14
  269. package/optimize/es/components/form/range/utils.js +1 -2
  270. package/optimize/es/components/icon/assets/tokenVectorDense.js +36 -0
  271. package/optimize/es/components/icon/assets/{tokenDenseVector.js → tokenVectorSparse.js} +7 -3
  272. package/optimize/es/components/icon/icon_map.js +5 -2
  273. package/optimize/es/components/list_group/list_group_item.js +6 -3
  274. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  275. package/optimize/es/components/page/index.js +1 -4
  276. package/optimize/es/components/popover/input_popover.js +26 -11
  277. package/optimize/es/components/provider/provider.js +3 -3
  278. package/optimize/es/components/tabs/tab.js +1 -1
  279. package/optimize/es/components/token/token_map.js +12 -4
  280. package/optimize/es/services/emotion/css.js +28 -0
  281. package/optimize/es/services/emotion/index.js +2 -1
  282. package/optimize/es/services/emotion/prefixer.js +93 -0
  283. package/optimize/es/services/theme/provider.js +8 -7
  284. package/optimize/es/services/theme/utils.js +1 -1
  285. package/optimize/lib/components/accordion/accordion.js +27 -2
  286. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +3 -12
  287. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  288. package/optimize/lib/components/button/button.js +16 -34
  289. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  290. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  291. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  292. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  293. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  294. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +67 -0
  295. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  296. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  297. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  298. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  299. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  300. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  301. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  302. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  303. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  304. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  305. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  306. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  307. package/optimize/lib/components/datagrid/body/data_grid_cell.js +67 -47
  308. package/optimize/lib/components/datagrid/body/data_grid_cell_actions.js +7 -2
  309. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  310. package/optimize/lib/components/datagrid/utils/row_heights.js +12 -17
  311. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  312. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  313. package/optimize/lib/components/form/range/dual_range.js +110 -85
  314. package/optimize/lib/components/form/range/range.js +47 -40
  315. package/optimize/lib/components/form/range/range_track.js +4 -13
  316. package/optimize/lib/components/form/range/utils.js +1 -2
  317. package/optimize/lib/components/icon/assets/tokenVectorDense.js +45 -0
  318. package/{test-env/components/icon/assets/tokenDenseVector.js → optimize/lib/components/icon/assets/tokenVectorSparse.js} +7 -3
  319. package/optimize/lib/components/icon/icon_map.js +5 -2
  320. package/optimize/lib/components/icon/svgs/tokens/tokenVectorDense.svg +5 -0
  321. package/optimize/lib/components/icon/svgs/tokens/tokenVectorSparse.svg +5 -0
  322. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  323. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  324. package/optimize/lib/components/page/index.js +1 -40
  325. package/optimize/lib/components/popover/input_popover.js +27 -12
  326. package/optimize/lib/components/provider/provider.js +3 -3
  327. package/optimize/lib/components/tabs/tab.js +1 -1
  328. package/optimize/lib/components/token/token_map.js +12 -4
  329. package/optimize/lib/services/emotion/css.js +36 -0
  330. package/optimize/lib/services/emotion/index.js +11 -0
  331. package/optimize/lib/services/emotion/prefixer.js +99 -0
  332. package/optimize/lib/services/theme/provider.js +8 -7
  333. package/optimize/lib/services/theme/utils.js +1 -1
  334. package/package.json +7 -12
  335. package/src/components/datagrid/_data_grid_data_row.scss +39 -71
  336. package/src/components/datagrid/_mixins.scss +0 -15
  337. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  338. package/src/components/index.scss +0 -2
  339. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  340. package/test-env/components/accordion/accordion.js +27 -2
  341. package/test-env/components/accordion/accordion_children/accordion_children.js +5 -13
  342. package/test-env/components/avatar/avatar.js +1 -1
  343. package/test-env/components/badge/badge.js +1 -1
  344. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  345. package/test-env/components/basic_table/basic_table.js +61 -24
  346. package/test-env/components/basic_table/collapsed_item_actions.js +2 -2
  347. package/test-env/components/basic_table/in_memory_table.js +19 -5
  348. package/test-env/components/button/button.js +17 -40
  349. package/test-env/components/button/button_display/_button_display.js +1 -1
  350. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  351. package/test-env/components/button/button_empty/button_empty.js +30 -47
  352. package/test-env/components/button/button_group/button_group.js +1 -1
  353. package/test-env/components/button/button_group/button_group_button.js +1 -1
  354. package/test-env/components/button/button_icon/button_icon.js +26 -43
  355. package/test-env/components/call_out/call_out.js +1 -1
  356. package/test-env/components/card/card.js +2 -7
  357. package/test-env/components/card/card_select/card_select.js +1 -6
  358. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  359. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  360. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  361. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +20 -6
  362. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +13 -6
  363. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +13 -6
  364. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +14 -7
  365. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +37 -5
  366. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  367. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +164 -0
  368. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +69 -30
  369. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  370. package/test-env/components/comment_list/comment.js +2 -2
  371. package/test-env/components/comment_list/comment_event.js +34 -19
  372. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  373. package/test-env/components/comment_list/comment_list.js +2 -2
  374. package/test-env/components/comment_list/comment_timeline.js +1 -1
  375. package/test-env/components/context_menu/context_menu.js +31 -24
  376. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  377. package/test-env/components/context_menu/context_menu_item.js +102 -129
  378. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  379. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  380. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  381. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  382. package/test-env/components/control_bar/control_bar.js +28 -23
  383. package/test-env/components/datagrid/body/data_grid_body.js +19 -20
  384. package/test-env/components/datagrid/body/data_grid_body_custom.js +19 -20
  385. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +19 -20
  386. package/test-env/components/datagrid/body/data_grid_cell.js +112 -86
  387. package/test-env/components/datagrid/body/data_grid_cell_actions.js +7 -2
  388. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  389. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +18 -19
  390. package/test-env/components/datagrid/body/header/data_grid_header_row.js +19 -20
  391. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  392. package/test-env/components/datagrid/data_grid.js +19 -20
  393. package/test-env/components/datagrid/utils/in_memory.js +18 -19
  394. package/test-env/components/datagrid/utils/row_heights.js +12 -17
  395. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  396. package/test-env/components/date_picker/date_picker.js +2 -2
  397. package/test-env/components/date_picker/date_picker_range.js +1 -1
  398. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  399. package/test-env/components/facet/facet_button.js +1 -1
  400. package/test-env/components/form/field_number/field_number.js +13 -9
  401. package/test-env/components/form/field_password/field_password.js +4 -7
  402. package/test-env/components/form/field_text/field_text.js +2 -2
  403. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  404. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  405. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  406. package/test-env/components/form/range/dual_range.js +110 -85
  407. package/test-env/components/form/range/range.js +47 -40
  408. package/test-env/components/form/range/range_track.js +5 -14
  409. package/test-env/components/form/range/utils.js +1 -2
  410. package/test-env/components/header/header_links/header_link.js +2 -7
  411. package/test-env/components/header/header_links/header_links.js +1 -1
  412. package/test-env/components/header/header_logo/header_logo.js +1 -1
  413. package/test-env/components/header/header_section/header_section_item_button.js +2 -7
  414. package/test-env/components/icon/assets/tokenVectorDense.js +45 -0
  415. package/{optimize/lib/components/icon/assets/tokenDenseVector.js → test-env/components/icon/assets/tokenVectorSparse.js} +7 -3
  416. package/test-env/components/icon/icon_map.js +5 -2
  417. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  418. package/test-env/components/list_group/list_group.js +3 -4
  419. package/test-env/components/list_group/list_group_item.js +9 -7
  420. package/test-env/components/list_group/list_group_item_extra_action.js +2 -3
  421. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  422. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +6 -7
  423. package/test-env/components/loading/loading_logo.js +1 -1
  424. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  425. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  426. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  427. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  428. package/test-env/components/modal/confirm_modal.js +1 -1
  429. package/test-env/components/notification/notification_event.js +3 -8
  430. package/test-env/components/notification/notification_event_meta.js +1 -1
  431. package/test-env/components/notification/notification_event_read_button.js +1 -2
  432. package/test-env/components/page/index.js +1 -40
  433. package/test-env/components/page/page_header/page_header_content.js +1 -1
  434. package/test-env/components/popover/input_popover.js +26 -11
  435. package/test-env/components/provider/provider.js +3 -3
  436. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  437. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  438. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  439. package/test-env/components/table/table_header_button.js +1 -1
  440. package/test-env/components/tabs/tab.js +1 -1
  441. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  442. package/test-env/components/toast/global_toast_list.js +1 -1
  443. package/test-env/components/toast/toast.js +1 -1
  444. package/test-env/components/token/token_map.js +12 -4
  445. package/test-env/components/tool_tip/icon_tip.js +1 -1
  446. package/test-env/services/emotion/css.js +36 -0
  447. package/test-env/services/emotion/index.js +11 -0
  448. package/test-env/services/emotion/prefixer.js +99 -0
  449. package/test-env/services/theme/provider.js +8 -7
  450. package/test-env/services/theme/utils.js +1 -1
  451. package/es/components/page/page_content/index.js +0 -12
  452. package/es/components/page/page_content/page_content.js +0 -110
  453. package/es/components/page/page_content/page_content_body.js +0 -69
  454. package/es/components/page/page_content/page_content_header_section.js +0 -34
  455. package/es/components/page/page_side_bar/index.js +0 -9
  456. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  457. package/es/components/page/page_template.js +0 -591
  458. package/lib/components/icon/svgs/tokens/tokenDenseVector.svg +0 -3
  459. package/lib/components/page/page_content/index.js +0 -33
  460. package/lib/components/page/page_content/page_content.js +0 -117
  461. package/lib/components/page/page_content/page_content_body.js +0 -77
  462. package/lib/components/page/page_content/page_content_header.js +0 -50
  463. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  464. package/lib/components/page/page_side_bar/index.js +0 -12
  465. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  466. package/lib/components/page/page_template.js +0 -598
  467. package/optimize/es/components/page/page_content/index.js +0 -12
  468. package/optimize/es/components/page/page_content/page_content.js +0 -45
  469. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  470. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  471. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  472. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  473. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  474. package/optimize/es/components/page/page_template.js +0 -325
  475. package/optimize/lib/components/icon/svgs/tokens/tokenDenseVector.svg +0 -3
  476. package/optimize/lib/components/page/page_content/index.js +0 -33
  477. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  478. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  479. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  480. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  481. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  482. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  483. package/optimize/lib/components/page/page_template.js +0 -332
  484. package/src/components/context_menu/_context_menu.scss +0 -27
  485. package/src/components/context_menu/_context_menu_item.scss +0 -65
  486. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  487. package/src/components/context_menu/_index.scss +0 -3
  488. package/src/components/page/_index.scss +0 -2
  489. package/src/components/page/page_content/_index.scss +0 -4
  490. package/src/components/page/page_content/_page_content.scss +0 -25
  491. package/src/components/page/page_content/_page_content_body.scss +0 -19
  492. package/src/components/page/page_content/_page_content_header.scss +0 -20
  493. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  494. package/src/components/page/page_side_bar/_index.scss +0 -1
  495. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  496. package/test-env/components/page/page_content/index.js +0 -33
  497. package/test-env/components/page/page_content/page_content.js +0 -116
  498. package/test-env/components/page/page_content/page_content_body.js +0 -73
  499. package/test-env/components/page/page_content/page_content_header.js +0 -49
  500. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  501. package/test-env/components/page/page_side_bar/index.js +0 -12
  502. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  503. package/test-env/components/page/page_template.js +0 -594
@@ -2,7 +2,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _extends from "@babel/runtime/helpers/extends";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
- var _excluded = ["label", "isActive", "isDisabled", "href", "target", "rel", "className", "css", "iconType", "icon", "iconProps", "extraAction", "onClick", "size", "color", "showToolTip", "wrapText", "buttonRef", "toolTipText", "toolTipProps"],
5
+ var _excluded = ["label", "isActive", "isDisabled", "href", "target", "rel", "className", "css", "style", "iconType", "icon", "iconProps", "extraAction", "onClick", "size", "color", "showToolTip", "wrapText", "buttonRef", "toolTipText", "toolTipProps"],
6
6
  _excluded2 = ["iconType", "alwaysShow", "isDisabled"];
7
7
  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; }
8
8
  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; }
@@ -37,6 +37,7 @@ export var EuiListGroupItem = function EuiListGroupItem(_ref) {
37
37
  rel = _ref.rel,
38
38
  className = _ref.className,
39
39
  customCss = _ref.css,
40
+ style = _ref.style,
40
41
  iconType = _ref.iconType,
41
42
  icon = _ref.icon,
42
43
  iconProps = _ref.iconProps,
@@ -162,7 +163,8 @@ export var EuiListGroupItem = function EuiListGroupItem(_ref) {
162
163
  });
163
164
  itemContent = ___EmotionJSX("li", {
164
165
  className: classes,
165
- css: cssStyles
166
+ css: cssStyles,
167
+ style: style
166
168
  }, ___EmotionJSX(EuiToolTip, _extends({
167
169
  content: toolTipText !== null && toolTipText !== void 0 ? toolTipText : label,
168
170
  position: "right",
@@ -174,7 +176,8 @@ export var EuiListGroupItem = function EuiListGroupItem(_ref) {
174
176
  } else {
175
177
  itemContent = ___EmotionJSX("li", {
176
178
  className: classes,
177
- css: cssStyles
179
+ css: cssStyles,
180
+ style: style
178
181
  }, itemContent, extraActionNode);
179
182
  }
180
183
  return ___EmotionJSX(Fragment, null, itemContent);
@@ -28,7 +28,7 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
28
28
  export var euiListGroupItemExtraActionStyles = function euiListGroupItemExtraActionStyles(_ref3) {
29
29
  var euiTheme = _ref3.euiTheme;
30
30
  return {
31
- euiListGroupItemExtraAction: /*#__PURE__*/css("flex-shrink:0;opacity:0;", logicalCSS('margin-right', euiTheme.size.s), ";", euiCanAnimate, "{transition:opacity ", euiTheme.animation.fast, ";};label:euiListGroupItemExtraAction;"),
31
+ euiListGroupItemExtraAction: /*#__PURE__*/css("flex-shrink:0;opacity:0;", logicalCSS('margin-right', euiTheme.size.s), ";", euiCanAnimate, "{transition:opacity ", euiTheme.animation.fast, ";&&:hover,&&:focus{transform:translateY(0);}};label:euiListGroupItemExtraAction;"),
32
32
  hoverStyles: _ref2,
33
33
  alwaysShow: _ref
34
34
  };
@@ -8,9 +8,6 @@
8
8
 
9
9
  export { EuiPage } from './page';
10
10
  export { EuiPageBody } from './page_body';
11
- export { EuiPageContent_Deprecated, EuiPageContentBody_Deprecated, EuiPageContentHeader_Deprecated, EuiPageContentHeaderSection_Deprecated } from './page_content';
12
11
  export { EuiPageHeader, EuiPageHeaderContent, EuiPageHeaderSection } from './page_header';
13
12
  export { EuiPageSection } from './page_section';
14
- export { EuiPageSideBar_Deprecated } from './page_side_bar';
15
- export { EuiPageSidebar } from './page_sidebar';
16
- export { EuiPageTemplate_Deprecated } from './page_template';
13
+ export { EuiPageSidebar } from './page_sidebar';
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
- var _excluded = ["children", "className", "closePopover", "closeOnScroll", "disableFocusTrap", "focusTrapProps", "input", "fullWidth", "panelMinWidth", "onPanelResize", "inputRef", "panelRef"];
5
+ var _excluded = ["children", "className", "closePopover", "anchorPosition", "attachToAnchor", "repositionToCrossAxis", "display", "panelPaddingSize", "closeOnScroll", "ownFocus", "disableFocusTrap", "focusTrapProps", "input", "fullWidth", "panelMinWidth", "onPanelResize", "inputRef", "panelRef"];
6
6
  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; }
7
7
  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; }
8
8
  /*
@@ -31,8 +31,20 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
31
31
  var children = _ref.children,
32
32
  className = _ref.className,
33
33
  closePopover = _ref.closePopover,
34
+ _ref$anchorPosition = _ref.anchorPosition,
35
+ anchorPosition = _ref$anchorPosition === void 0 ? 'downLeft' : _ref$anchorPosition,
36
+ _ref$attachToAnchor = _ref.attachToAnchor,
37
+ attachToAnchor = _ref$attachToAnchor === void 0 ? true : _ref$attachToAnchor,
38
+ _ref$repositionToCros = _ref.repositionToCrossAxis,
39
+ repositionToCrossAxis = _ref$repositionToCros === void 0 ? false : _ref$repositionToCros,
40
+ _ref$display = _ref.display,
41
+ display = _ref$display === void 0 ? 'block' : _ref$display,
42
+ _ref$panelPaddingSize = _ref.panelPaddingSize,
43
+ panelPaddingSize = _ref$panelPaddingSize === void 0 ? 's' : _ref$panelPaddingSize,
34
44
  _ref$closeOnScroll = _ref.closeOnScroll,
35
45
  closeOnScroll = _ref$closeOnScroll === void 0 ? false : _ref$closeOnScroll,
46
+ _ref$ownFocus = _ref.ownFocus,
47
+ ownFocus = _ref$ownFocus === void 0 ? false : _ref$ownFocus,
36
48
  _ref$disableFocusTrap = _ref.disableFocusTrap,
37
49
  disableFocusTrap = _ref$disableFocusTrap === void 0 ? false : _ref$disableFocusTrap,
38
50
  focusTrapProps = _ref.focusTrapProps,
@@ -75,6 +87,11 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
75
87
  var panelWidth = useMemo(function () {
76
88
  return inputWidth < panelMinWidth ? panelMinWidth : inputWidth;
77
89
  }, [panelMinWidth, inputWidth]);
90
+
91
+ // Resize callback
92
+ useEffect(function () {
93
+ onPanelResize === null || onPanelResize === void 0 ? void 0 : onPanelResize(panelWidth);
94
+ }, [panelWidth, onPanelResize]);
78
95
  useEffect(function () {
79
96
  if (panelEl) {
80
97
  // We have to modify the popover panel DOM node directly instead of using
@@ -148,15 +165,19 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
148
165
  }
149
166
  }, [closeOnScroll, closePopover, panelEl, inputEl]);
150
167
  return ___EmotionJSX(EuiPopover, _extends({
168
+ className: classes,
151
169
  css: /*#__PURE__*/css(fullWidth ? undefined : logicalCSS('max-width', form.maxWidth), ";label:EuiInputPopover;"),
152
- repositionToCrossAxis: false,
153
- ownFocus: false,
170
+ display: display,
154
171
  button: input,
155
172
  buttonRef: inputRef,
156
173
  panelRef: panelRef,
157
- className: classes,
158
174
  ref: popoverClassRef,
159
- closePopover: closePopover
175
+ closePopover: closePopover,
176
+ anchorPosition: anchorPosition,
177
+ attachToAnchor: attachToAnchor,
178
+ repositionToCrossAxis: repositionToCrossAxis,
179
+ panelPaddingSize: panelPaddingSize,
180
+ ownFocus: ownFocus
160
181
  }, props, {
161
182
  panelProps: _objectSpread(_objectSpread({}, props.panelProps), {}, {
162
183
  onKeyDown: onKeyDown
@@ -167,10 +188,4 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
167
188
  }, focusTrapProps), ___EmotionJSX(EuiInputPopoverWidthContext.Provider, {
168
189
  value: panelWidth
169
190
  }, children)));
170
- };
171
- EuiInputPopover.defaultProps = {
172
- anchorPosition: 'downLeft',
173
- attachToAnchor: true,
174
- display: 'block',
175
- panelPaddingSize: 's'
176
191
  };
@@ -7,11 +7,11 @@
7
7
  */
8
8
 
9
9
  import React from 'react';
10
- import { cache as fallbackCache } from '@emotion/css';
11
- import { EuiGlobalStyles } from '../../global_styling/reset/global_styles';
12
- import { EuiUtilityClasses } from '../../global_styling/utility/utility';
13
10
  import { EuiThemeProvider, CurrentEuiBreakpointProvider } from '../../services';
14
11
  import { emitEuiProviderWarning } from '../../services/theme/warning';
12
+ import { cache as fallbackCache } from '../../services/emotion/css';
13
+ import { EuiGlobalStyles } from '../../global_styling/reset/global_styles';
14
+ import { EuiUtilityClasses } from '../../global_styling/utility/utility';
15
15
  import { EuiThemeAmsterdam } from '../../themes';
16
16
  import { EuiCacheProvider } from './cache';
17
17
  import { EuiProviderNestedCheck, useIsNestedEuiProvider } from './nested';
@@ -78,7 +78,7 @@ export var EuiTab = function EuiTab(_ref) {
78
78
  css: cssTabStyles,
79
79
  disabled: disabled
80
80
  }, rest), prependNode, ___EmotionJSX("span", {
81
- className: "euiTab__content",
81
+ className: "euiTab__content eui-textTruncate",
82
82
  css: cssTabContentStyles
83
83
  }, children), appendNode);
84
84
  };
@@ -49,10 +49,6 @@ export var TOKEN_MAP = {
49
49
  shape: 'square',
50
50
  color: 'euiColorVis6'
51
51
  },
52
- tokenDenseVector: {
53
- shape: 'square',
54
- color: 'euiColorVis2'
55
- },
56
52
  tokenElement: {
57
53
  shape: 'square',
58
54
  color: 'euiColorVis3'
@@ -224,5 +220,17 @@ export var TOKEN_MAP = {
224
220
  tokenVariable: {
225
221
  shape: 'circle',
226
222
  color: 'euiColorVis7'
223
+ },
224
+ tokenVectorDense: {
225
+ shape: 'square',
226
+ color: 'euiColorVis5'
227
+ },
228
+ tokenDenseVector: {
229
+ shape: 'square',
230
+ color: 'euiColorVis5'
231
+ },
232
+ tokenVectorSparse: {
233
+ shape: 'square',
234
+ color: 'euiColorVis1'
227
235
  }
228
236
  };
@@ -0,0 +1,28 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import createEmotion from '@emotion/css/create-instance';
10
+ import { euiStylisPrefixer } from './prefixer';
11
+
12
+ /**
13
+ * This custom instance is needed for internal EUI components to call
14
+ * `@emotion/css` with EUI's custom prefixer plugin
15
+ * @see https://emotion.sh/docs/@emotion/css#custom-instances
16
+ *
17
+ * NOTE: Usage is currently being beta tested internally,
18
+ * and is not yet intended to be a public export
19
+ */
20
+ var _createEmotion = createEmotion({
21
+ key: 'css',
22
+ stylisPlugins: [euiStylisPrefixer],
23
+ speedy: false
24
+ }),
25
+ css = _createEmotion.css,
26
+ cx = _createEmotion.cx,
27
+ cache = _createEmotion.cache;
28
+ export { css, cx, cache };
@@ -6,4 +6,5 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
 
9
- export * from './clone_element';
9
+ export * from './clone_element';
10
+ export * from './prefixer';
@@ -0,0 +1,93 @@
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 { charat, DECLARATION, hash, indexof, MOZ, replace, strlen, WEBKIT } from 'stylis';
10
+
11
+ // This is a heavily modified version of Emotion's default `prefixer` plugin
12
+ // (mostly removing unnecessary prefixes), which is in turn a modified version
13
+ // of stylis's default prefixer.
14
+ // @see https://github.com/emotion-js/emotion/blob/main/packages/cache/src/prefixer.js
15
+ /* eslint-disable prefer-template */
16
+
17
+ /**
18
+ * This is a stylis plugin which handles auto-prefixing CSS output by Emotion.
19
+ *
20
+ * *Please note*: EUI/Elastic targets latest evergreen browsers for support only.
21
+ * @see https://www.elastic.co/support/matrix#matrix_browsers
22
+ */
23
+ export var euiStylisPrefixer = function euiStylisPrefixer(element) {
24
+ if (element.length > -1) if (!element.return) switch (element.type) {
25
+ case DECLARATION:
26
+ element.return = prefix(element.value, element.length);
27
+ break;
28
+ }
29
+ };
30
+ var prefix = function prefix(value, length) {
31
+ switch (hash(value, length)) {
32
+ /**
33
+ * `-webkit` prefixes
34
+ */
35
+ // user-select - https://caniuse.com/mdn-css_properties_user-select - needed by Safari
36
+ case 4246:
37
+ // text-decoration - https://caniuse.com/text-decoration - iOS Safari is the main one that needs this
38
+ case 5572:
39
+ // text-size-adjust - https://caniuse.com/text-size-adjust - iOS Safari
40
+ case 2756:
41
+ // box-decoration-break - https://caniuse.com/css-boxdecorationbreak - Chrome & Safari
42
+ case 3005:
43
+ // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite - Chrome
44
+ case 6391:
45
+ case 5879:
46
+ case 5623:
47
+ case 6135:
48
+ case 4599:
49
+ case 4855:
50
+ // print-color-adjust - https://caniuse.com/css-color-adjust - Chrome
51
+ case 2282:
52
+ return WEBKIT + value + value;
53
+
54
+ // background-clip - https://caniuse.com/background-clip-text - Chrome, only for `text` value
55
+ case 4215:
56
+ if (~indexof(value, 'text')) {
57
+ return WEBKIT + value + value;
58
+ }
59
+
60
+ /**
61
+ * Intrinsic/extrinsic sizing value prefixes
62
+ * `stretch` alternatives needed by Chrome & Firefox - https://caniuse.com/intrinsic-width
63
+ */
64
+ // (min|max)?(width|height|inline-size|block-size)
65
+ case 8116:
66
+ case 7059:
67
+ case 5753:
68
+ case 5535:
69
+ case 5445:
70
+ case 5701:
71
+ case 4933:
72
+ case 4677:
73
+ case 5533:
74
+ case 5789:
75
+ case 5021:
76
+ case 4765:
77
+ // stretch, max-content, min-content, fill-available
78
+ if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {
79
+ // (f)ill-available
80
+ case 102:
81
+ if (~indexof(value, 'fill-available')) {
82
+ return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) === 108 ? '$3' : '$2-$3'));
83
+ }
84
+ // (s)tretch
85
+ case 115:
86
+ if (~indexof(value, 'stretch')) {
87
+ return prefix(replace(value, 'stretch', 'fill-available'), length) + value;
88
+ }
89
+ }
90
+ break;
91
+ }
92
+ return value;
93
+ };
@@ -1,9 +1,11 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
3
4
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
5
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
6
  import { css as _css } from "@emotion/react";
6
7
  var _excluded = ["cloneElement", "className"];
8
+ var _templateObject;
7
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; }
8
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; }
9
11
  /*
@@ -15,11 +17,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
15
17
  */
16
18
 
17
19
  import React, { useContext, useEffect, useRef, useMemo, useState, useCallback } from 'react';
18
- import classNames from 'classnames';
19
- import { css } from '@emotion/css';
20
20
  import { Global } from '@emotion/react';
21
21
  import isEqual from 'lodash/isEqual';
22
22
  import { cloneElementWithCss } from '../emotion';
23
+ import { css, cx } from '../emotion/css';
23
24
  import { EuiSystemContext, EuiThemeContext, EuiNestedThemeContext, EuiModificationsContext, EuiColorModeContext } from './context';
24
25
  import { EuiEmotionThemeProvider } from './emotion';
25
26
  import { buildTheme, getColorMode, getComputed, mergeDeep } from './utils';
@@ -104,13 +105,13 @@ export var EuiThemeProvider = function EuiThemeProvider(_ref) {
104
105
  // The theme that determines the global body styles
105
106
  bodyColor: isGlobalTheme ? theme.colors.text : bodyColor,
106
107
  hasDifferentColorFromGlobalTheme: isGlobalTheme ? false : bodyColor !== theme.colors.text,
107
- colorClassName: /*#__PURE__*/css("label:euiColorMode-", _colorMode, ";color:", theme.colors.text, ";;label:colorClassName;"),
108
+ colorClassName: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n label: euiColorMode-", ";\n color: ", ";\n "])), _colorMode || colorMode, theme.colors.text),
108
109
  setGlobalCSSVariables: isGlobalTheme ? setThemeCSSVariables : setGlobalCSSVariables,
109
110
  globalCSSVariables: isGlobalTheme ? themeCSSVariables : globalCSSVariables,
110
111
  setNearestThemeCSSVariables: setThemeCSSVariables,
111
112
  themeCSSVariables: themeCSSVariables
112
113
  };
113
- }, [theme, isGlobalTheme, bodyColor, _colorMode, setGlobalCSSVariables, globalCSSVariables, setThemeCSSVariables, themeCSSVariables]);
114
+ }, [theme, isGlobalTheme, bodyColor, _colorMode, colorMode, setGlobalCSSVariables, globalCSSVariables, setThemeCSSVariables, themeCSSVariables]);
114
115
  var renderedChildren = useMemo(function () {
115
116
  if (isGlobalTheme) {
116
117
  return children; // No wrapper
@@ -121,7 +122,7 @@ export var EuiThemeProvider = function EuiThemeProvider(_ref) {
121
122
  className = _ref2.className,
122
123
  rest = _objectWithoutProperties(_ref2, _excluded);
123
124
  var props = _objectSpread(_objectSpread({}, rest), {}, {
124
- className: classNames(className, nestedThemeContext.colorClassName)
125
+ className: cx(className, nestedThemeContext.colorClassName)
125
126
  });
126
127
  // Condition avoids rendering an empty Emotion selector if no
127
128
  // theme-specific CSS variables have been set by child components
@@ -132,11 +133,11 @@ export var EuiThemeProvider = function EuiThemeProvider(_ref) {
132
133
  }
133
134
  if (cloneElement) {
134
135
  return cloneElementWithCss(children, _objectSpread(_objectSpread({}, props), {}, {
135
- className: classNames(children.props.className, props.className)
136
+ className: cx(children.props.className, props.className)
136
137
  }));
137
138
  } else {
138
139
  return ___EmotionJSX("span", _extends({}, props, {
139
- className: classNames('euiThemeProvider', props.className)
140
+ className: cx('euiThemeProvider', props.className)
140
141
  }), children);
141
142
  }
142
143
  }, [isGlobalTheme, themeCSSVariables, nestedThemeContext, wrapperProps, children]);
@@ -35,7 +35,7 @@ export var isInverseColorMode = function isInverseColorMode(colorMode) {
35
35
  /**
36
36
  * Returns the color mode configured in the current EuiThemeProvider.
37
37
  * Returns the parent color mode if none is explicity set.
38
- * @param {string} coloMode - `light`, `dark`, or `inverse`
38
+ * @param {string} colorMode - `light`, `dark`, or `inverse`
39
39
  * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback
40
40
  */
41
41
  export var getColorMode = function getColorMode(colorMode, parentColorMode) {
@@ -53,7 +53,19 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
53
53
  var forceState = _this.props.forceState;
54
54
  if (forceState) {
55
55
  var _this$props$onToggle, _this$props;
56
- (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, forceState === 'open' ? false : true);
56
+ var nextState = !_this.isOpen;
57
+ (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, nextState);
58
+
59
+ // If the accordion should theoretically be opened, wait a tick (allows
60
+ // consumer state to update) and attempt to focus the child content.
61
+ // NOTE: Even if the accordion does not actually open, this is fine -
62
+ // the `inert` property on the hidden children will prevent focus
63
+ if (nextState === true) {
64
+ requestAnimationFrame(function () {
65
+ var _this$accordionChildr;
66
+ (_this$accordionChildr = _this.accordionChildrenEl) === null || _this$accordionChildr === void 0 ? void 0 : _this$accordionChildr.focus();
67
+ });
68
+ }
57
69
  } else {
58
70
  _this.setState(function (prevState) {
59
71
  return {
@@ -62,9 +74,21 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
62
74
  }, function () {
63
75
  var _this$props$onToggle2, _this$props2;
64
76
  (_this$props$onToggle2 = (_this$props2 = _this.props).onToggle) === null || _this$props$onToggle2 === void 0 ? void 0 : _this$props$onToggle2.call(_this$props2, _this.state.isOpen);
77
+
78
+ // If the accordion is open, programmatically move focus
79
+ // from the accordion trigger to the child content
80
+ if (_this.state.isOpen) {
81
+ var _this$accordionChildr2;
82
+ (_this$accordionChildr2 = _this.accordionChildrenEl) === null || _this$accordionChildr2 === void 0 ? void 0 : _this$accordionChildr2.focus();
83
+ }
65
84
  });
66
85
  }
67
86
  });
87
+ // Used to focus the accordion children on user trigger click only (vs controlled/programmatic open)
88
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "accordionChildrenEl", null);
89
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "accordionChildrenRef", function (node) {
90
+ _this.accordionChildrenEl = node;
91
+ });
68
92
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "generatedId", (0, _services.htmlIdGenerator)()());
69
93
  return _this;
70
94
  }
@@ -131,7 +155,8 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
131
155
  paddingSize: paddingSize,
132
156
  isLoading: isLoading,
133
157
  isLoadingMessage: isLoadingMessage,
134
- isOpen: this.isOpen
158
+ isOpen: this.isOpen,
159
+ accordionChildrenRef: this.accordionChildrenRef
135
160
  }, children));
136
161
  }
137
162
  }]);
@@ -16,7 +16,7 @@ var _resize_observer = require("../../observer/resize_observer");
16
16
  var _accordion_children_loading = require("./accordion_children_loading");
17
17
  var _accordion_children = require("./accordion_children.styles");
18
18
  var _react2 = require("@emotion/react");
19
- var _excluded = ["children", "paddingSize", "isLoading", "isLoadingMessage", "isOpen"];
19
+ var _excluded = ["children", "accordionChildrenRef", "paddingSize", "isLoading", "isLoadingMessage", "isOpen"];
20
20
  /*
21
21
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
22
22
  * or more contributor license agreements. Licensed under the Elastic License
@@ -28,6 +28,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
28
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
29
  var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
30
30
  var children = _ref.children,
31
+ accordionChildrenRef = _ref.accordionChildrenRef,
31
32
  paddingSize = _ref.paddingSize,
32
33
  isLoading = _ref.isLoading,
33
34
  isLoadingMessage = _ref.isLoadingMessage,
@@ -48,7 +49,6 @@ var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
48
49
  */
49
50
  var wrapperStyles = (0, _accordion_children.euiAccordionChildWrapperStyles)(euiTheme);
50
51
  var wrapperCssStyles = [wrapperStyles.euiAccordion__childWrapper, isOpen ? wrapperStyles.isOpen : wrapperStyles.isClosed];
51
- var wrapperRef = (0, _react.useRef)(null);
52
52
 
53
53
  /**
54
54
  * Update the accordion wrapper height whenever the accordion opens, and also
@@ -67,20 +67,11 @@ var EuiAccordionChildren = function EuiAccordionChildren(_ref) {
67
67
  blockSize: isOpen ? contentHeight : 0
68
68
  };
69
69
  }, [isOpen, contentHeight]);
70
-
71
- /**
72
- * Focus the children wrapper when the accordion is opened,
73
- * but not if the accordion is initially open on mount
74
- */
75
- (0, _services.useUpdateEffect)(function () {
76
- var _wrapperRef$current;
77
- if (isOpen) (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.focus();
78
- }, [isOpen]);
79
70
  return (0, _react2.jsx)("div", (0, _extends2.default)({}, rest, {
80
71
  className: "euiAccordion__childWrapper",
81
72
  css: wrapperCssStyles,
82
73
  style: heightInlineStyle,
83
- ref: wrapperRef,
74
+ ref: accordionChildrenRef,
84
75
  role: "region",
85
76
  tabIndex: -1
86
77
  // @ts-expect-error - inert property not yet available in React TS defs. TODO: Remove this once https://github.com/DefinitelyTyped/DefinitelyTyped/pull/60822 is merged
@@ -227,18 +227,27 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
227
227
  var _ref5, _this$props$paginatio, _this$props$paginatio2, _this$context$EuiTabl;
228
228
  return (_ref5 = (_this$props$paginatio = (_this$props$paginatio2 = this.props.pagination) === null || _this$props$paginatio2 === void 0 ? void 0 : _this$props$paginatio2.pageSize) !== null && _this$props$paginatio !== void 0 ? _this$props$paginatio : (_this$context$EuiTabl = this.context.EuiTablePagination) === null || _this$context$EuiTabl === void 0 ? void 0 : _this$context$EuiTabl.itemsPerPage) !== null && _ref5 !== void 0 ? _ref5 : _table_pagination.euiTablePaginationDefaults.itemsPerPage;
229
229
  }
230
+ }, {
231
+ key: "isSelectionControlled",
232
+ get: function get() {
233
+ var _this$props$selection;
234
+ return !!((_this$props$selection = this.props.selection) !== null && _this$props$selection !== void 0 && _this$props$selection.selected);
235
+ }
230
236
  }, {
231
237
  key: "getInitialSelection",
232
238
  value: function getInitialSelection() {
239
+ if (this.isSelectionControlled) return;
233
240
  if (this.props.selection && this.props.selection.initialSelected && !this.state.initialSelectionRendered && this.props.items.length > 0) {
234
241
  this.setState({
235
- selection: this.props.selection.initialSelected
236
- });
237
- this.setState({
242
+ selection: this.props.selection.initialSelected,
238
243
  initialSelectionRendered: true
239
244
  });
240
245
  }
241
246
  }
247
+
248
+ /**
249
+ * @deprecated Use `selection.selected` instead to declaratively control table selection
250
+ */
242
251
  }, {
243
252
  key: "setSelection",
244
253
  value: function setSelection(newSelection) {
@@ -261,15 +270,15 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
261
270
  }
262
271
  }, {
263
272
  key: "changeSelection",
264
- value: function changeSelection(selection) {
265
- if (!this.props.selection) {
266
- return;
267
- }
268
- this.setState({
269
- selection: selection
270
- });
271
- if (this.props.selection.onSelectionChange) {
272
- this.props.selection.onSelectionChange(selection);
273
+ value: function changeSelection(changedSelection) {
274
+ var _selection$onSelectio;
275
+ var selection = this.props.selection;
276
+ if (!selection) return;
277
+ (_selection$onSelectio = selection.onSelectionChange) === null || _selection$onSelectio === void 0 ? void 0 : _selection$onSelectio.call(selection, changedSelection);
278
+ if (!this.isSelectionControlled) {
279
+ this.setState({
280
+ selection: changedSelection
281
+ });
273
282
  }
274
283
  }
275
284
  }, {
@@ -957,16 +966,30 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
957
966
  selection: []
958
967
  };
959
968
  }
960
- var itemId = nextProps.itemId;
961
- var selection = prevState.selection.filter(function (selectedItem) {
962
- return nextProps.items.findIndex(function (item) {
969
+ var controlledSelection = nextProps.selection.selected;
970
+ var unfilteredSelection = controlledSelection !== null && controlledSelection !== void 0 ? controlledSelection : prevState.selection;
971
+
972
+ // Ensure we're not including selections that aren't in the
973
+ // current `items` array (affected by pagination)
974
+ var itemId = nextProps.itemId,
975
+ items = nextProps.items;
976
+ var selection = unfilteredSelection.filter(function (selectedItem) {
977
+ return items.findIndex(function (item) {
963
978
  return getItemId(item, itemId) === getItemId(selectedItem, itemId);
964
979
  }) !== -1;
965
980
  });
966
- if (selection.length !== prevState.selection.length) {
967
- if (nextProps.selection.onSelectionChange) {
968
- nextProps.selection.onSelectionChange(selection);
969
- }
981
+
982
+ // If some selected items were filtered out, update state and callback
983
+ if (selection.length !== unfilteredSelection.length) {
984
+ var _nextProps$selection$, _nextProps$selection;
985
+ (_nextProps$selection$ = (_nextProps$selection = nextProps.selection).onSelectionChange) === null || _nextProps$selection$ === void 0 ? void 0 : _nextProps$selection$.call(_nextProps$selection, selection);
986
+ return {
987
+ selection: selection
988
+ };
989
+ }
990
+
991
+ // Always update selection state from props if controlled
992
+ if (controlledSelection) {
970
993
  return {
971
994
  selection: selection
972
995
  };