@elastic/eui 89.1.0 → 90.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/dist/eui_theme_dark.css +2 -467
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +2 -467
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accessibility/skip_link/skip_link.js +1 -2
  6. package/es/components/accordion/accordion.js +27 -2
  7. package/es/components/accordion/accordion_children/accordion_children.js +7 -15
  8. package/es/components/basic_table/basic_table.js +60 -23
  9. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  10. package/es/components/basic_table/in_memory_table.js +18 -4
  11. package/es/components/button/button.js +17 -45
  12. package/es/components/button/button_empty/button_empty.js +30 -47
  13. package/es/components/button/button_icon/button_icon.js +26 -43
  14. package/es/components/card/card.js +1 -6
  15. package/es/components/card/card_select/card_select.js +1 -6
  16. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  17. package/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  18. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  19. package/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +13 -9
  20. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  21. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -87
  22. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -51
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +90 -31
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +67 -74
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  26. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +16 -79
  27. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +5 -5
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +79 -0
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +176 -117
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  31. package/es/components/collapsible_nav_beta/context.js +1 -0
  32. package/es/components/combo_box/combo_box.js +1 -1
  33. package/es/components/comment_list/comment_event.js +31 -19
  34. package/es/components/comment_list/comment_event.styles.js +26 -24
  35. package/es/components/context_menu/context_menu.js +28 -22
  36. package/es/components/context_menu/context_menu.styles.js +26 -0
  37. package/es/components/context_menu/context_menu_item.js +95 -125
  38. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  39. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  40. package/es/components/context_menu/context_menu_panel.js +32 -61
  41. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  42. package/es/components/control_bar/control_bar.js +28 -23
  43. package/es/components/datagrid/body/data_grid_body.js +6 -7
  44. package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
  45. package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  46. package/es/components/datagrid/body/data_grid_cell.js +12 -13
  47. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  48. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  49. package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
  50. package/es/components/datagrid/data_grid.js +6 -7
  51. package/es/components/datagrid/utils/in_memory.js +6 -7
  52. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  53. package/es/components/form/field_number/field_number.js +13 -9
  54. package/es/components/form/field_password/field_password.js +4 -7
  55. package/es/components/form/range/dual_range.js +110 -85
  56. package/es/components/form/range/range.js +47 -40
  57. package/es/components/form/range/range_track.js +6 -20
  58. package/es/components/form/range/utils.js +1 -2
  59. package/es/components/header/header_links/header_link.js +1 -6
  60. package/es/components/header/header_section/header_section_item_button.js +1 -6
  61. package/es/components/list_group/list_group.js +1 -2
  62. package/es/components/list_group/list_group_item.js +7 -5
  63. package/es/components/list_group/list_group_item_extra_action.js +1 -2
  64. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  65. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  66. package/es/components/modal/confirm_modal.js +1 -1
  67. package/es/components/notification/notification_event.js +1 -6
  68. package/es/components/notification/notification_event_read_button.js +1 -2
  69. package/es/components/page/index.js +1 -4
  70. package/es/components/pagination/pagination_button.js +1 -6
  71. package/es/components/popover/input_popover.js +26 -11
  72. package/es/components/selectable/selectable.js +16 -1
  73. package/es/components/selectable/selectable_list/selectable_list.js +227 -78
  74. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  75. package/es/components/tabs/tab.js +1 -1
  76. package/es/components/text_truncate/text_truncate.js +33 -10
  77. package/eui.d.ts +565 -341
  78. package/i18ntokens.json +141 -105
  79. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  80. package/lib/components/accordion/accordion.js +27 -2
  81. package/lib/components/accordion/accordion_children/accordion_children.js +5 -13
  82. package/lib/components/basic_table/basic_table.js +60 -23
  83. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  84. package/lib/components/basic_table/in_memory_table.js +18 -4
  85. package/lib/components/button/button.js +24 -51
  86. package/lib/components/button/button_empty/button_empty.js +29 -46
  87. package/lib/components/button/button_icon/button_icon.js +25 -42
  88. package/lib/components/card/card.js +1 -6
  89. package/lib/components/card/card_select/card_select.js +1 -6
  90. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  91. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  92. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  93. package/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +13 -9
  94. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  95. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -87
  96. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -51
  97. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +90 -31
  98. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -73
  99. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  100. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +16 -81
  101. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +5 -5
  102. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +86 -0
  103. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +176 -117
  104. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  105. package/lib/components/collapsible_nav_beta/context.js +1 -0
  106. package/lib/components/combo_box/combo_box.js +1 -1
  107. package/lib/components/comment_list/comment_event.js +33 -18
  108. package/lib/components/comment_list/comment_event.styles.js +28 -25
  109. package/lib/components/context_menu/context_menu.js +31 -24
  110. package/lib/components/context_menu/context_menu.styles.js +34 -0
  111. package/lib/components/context_menu/context_menu_item.js +102 -133
  112. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  113. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  114. package/lib/components/context_menu/context_menu_panel.js +35 -63
  115. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  116. package/lib/components/control_bar/control_bar.js +28 -23
  117. package/lib/components/datagrid/body/data_grid_body.js +6 -7
  118. package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
  119. package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  120. package/lib/components/datagrid/body/data_grid_cell.js +12 -13
  121. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  122. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  123. package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
  124. package/lib/components/datagrid/data_grid.js +6 -7
  125. package/lib/components/datagrid/utils/in_memory.js +6 -7
  126. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  127. package/lib/components/form/field_number/field_number.js +12 -8
  128. package/lib/components/form/field_password/field_password.js +4 -7
  129. package/lib/components/form/range/dual_range.js +110 -85
  130. package/lib/components/form/range/range.js +47 -40
  131. package/lib/components/form/range/range_track.js +5 -19
  132. package/lib/components/form/range/utils.js +1 -2
  133. package/lib/components/header/header_links/header_link.js +1 -6
  134. package/lib/components/header/header_section/header_section_item_button.js +1 -6
  135. package/lib/components/list_group/list_group.js +1 -2
  136. package/lib/components/list_group/list_group_item.js +7 -5
  137. package/lib/components/list_group/list_group_item_extra_action.js +1 -2
  138. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  139. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  140. package/lib/components/modal/confirm_modal.js +1 -1
  141. package/lib/components/notification/notification_event.js +1 -6
  142. package/lib/components/notification/notification_event_read_button.js +1 -2
  143. package/lib/components/page/index.js +1 -40
  144. package/lib/components/popover/input_popover.js +26 -11
  145. package/lib/components/selectable/selectable.js +16 -1
  146. package/lib/components/selectable/selectable_list/selectable_list.js +227 -78
  147. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  148. package/lib/components/tabs/tab.js +1 -1
  149. package/lib/components/text_truncate/text_truncate.js +32 -9
  150. package/optimize/es/components/accordion/accordion.js +27 -2
  151. package/optimize/es/components/accordion/accordion_children/accordion_children.js +5 -14
  152. package/optimize/es/components/basic_table/basic_table.js +42 -19
  153. package/optimize/es/components/button/button.js +15 -33
  154. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  155. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  156. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  157. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +2 -2
  158. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  159. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +13 -9
  160. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  161. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  162. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  163. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  164. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +1 -19
  165. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -23
  166. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +5 -5
  167. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +60 -0
  168. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +28 -13
  169. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  170. package/optimize/es/components/comment_list/comment_event.js +31 -19
  171. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  172. package/optimize/es/components/context_menu/context_menu.js +25 -19
  173. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  174. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  175. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  176. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  177. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  178. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  179. package/optimize/es/components/control_bar/control_bar.js +28 -23
  180. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  181. package/optimize/es/components/form/field_number/field_number.js +13 -9
  182. package/optimize/es/components/form/field_password/field_password.js +4 -7
  183. package/optimize/es/components/form/range/dual_range.js +110 -85
  184. package/optimize/es/components/form/range/range.js +47 -40
  185. package/optimize/es/components/form/range/range_track.js +5 -14
  186. package/optimize/es/components/form/range/utils.js +1 -2
  187. package/optimize/es/components/list_group/list_group_item.js +6 -3
  188. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  189. package/optimize/es/components/page/index.js +1 -4
  190. package/optimize/es/components/popover/input_popover.js +26 -11
  191. package/optimize/es/components/selectable/selectable_list/selectable_list.js +199 -76
  192. package/optimize/es/components/tabs/tab.js +1 -1
  193. package/optimize/es/components/text_truncate/text_truncate.js +26 -9
  194. package/optimize/lib/components/accordion/accordion.js +27 -2
  195. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +3 -12
  196. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  197. package/optimize/lib/components/button/button.js +16 -34
  198. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  199. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  200. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  201. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  202. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  203. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +13 -9
  204. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  205. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -3
  206. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +10 -5
  207. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +8 -36
  208. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  209. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -26
  210. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +5 -5
  211. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +67 -0
  212. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +28 -13
  213. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  214. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  215. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  216. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  217. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  218. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  219. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  220. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  221. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  222. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  223. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  224. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  225. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  226. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  227. package/optimize/lib/components/form/range/dual_range.js +110 -85
  228. package/optimize/lib/components/form/range/range.js +47 -40
  229. package/optimize/lib/components/form/range/range_track.js +4 -13
  230. package/optimize/lib/components/form/range/utils.js +1 -2
  231. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  232. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  233. package/optimize/lib/components/page/index.js +1 -40
  234. package/optimize/lib/components/popover/input_popover.js +27 -12
  235. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +199 -76
  236. package/optimize/lib/components/tabs/tab.js +1 -1
  237. package/optimize/lib/components/text_truncate/text_truncate.js +25 -8
  238. package/package.json +5 -5
  239. package/src/components/datagrid/_data_grid_data_row.scss +0 -1
  240. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  241. package/src/components/index.scss +0 -2
  242. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  243. package/test-env/components/accordion/accordion.js +27 -2
  244. package/test-env/components/accordion/accordion_children/accordion_children.js +5 -13
  245. package/test-env/components/auto_sizer/auto_sizer.js +10 -3
  246. package/test-env/components/basic_table/basic_table.js +60 -23
  247. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  248. package/test-env/components/basic_table/in_memory_table.js +18 -4
  249. package/test-env/components/button/button.js +17 -40
  250. package/test-env/components/button/button_empty/button_empty.js +29 -46
  251. package/test-env/components/button/button_icon/button_icon.js +25 -42
  252. package/test-env/components/card/card.js +1 -6
  253. package/test-env/components/card/card_select/card_select.js +1 -6
  254. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  255. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +1 -1
  256. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.js +4 -1
  257. package/test-env/components/collapsible_nav_beta/collapsible_nav_body_footer.styles.js +13 -9
  258. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  259. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +1 -87
  260. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +20 -51
  261. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +90 -31
  262. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +66 -73
  263. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +11 -28
  264. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +16 -82
  265. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +5 -5
  266. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +85 -0
  267. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +176 -117
  268. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +0 -10
  269. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  270. package/test-env/components/combo_box/combo_box.js +1 -1
  271. package/test-env/components/comment_list/comment_event.js +33 -18
  272. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  273. package/test-env/components/context_menu/context_menu.js +31 -24
  274. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  275. package/test-env/components/context_menu/context_menu_item.js +102 -129
  276. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  277. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  278. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  279. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  280. package/test-env/components/control_bar/control_bar.js +28 -23
  281. package/test-env/components/datagrid/body/data_grid_body.js +6 -7
  282. package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
  283. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  284. package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
  285. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  286. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  287. package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
  288. package/test-env/components/datagrid/data_grid.js +6 -7
  289. package/test-env/components/datagrid/utils/in_memory.js +6 -7
  290. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  291. package/test-env/components/form/field_number/field_number.js +12 -8
  292. package/test-env/components/form/field_password/field_password.js +4 -7
  293. package/test-env/components/form/range/dual_range.js +110 -85
  294. package/test-env/components/form/range/range.js +47 -40
  295. package/test-env/components/form/range/range_track.js +5 -14
  296. package/test-env/components/form/range/utils.js +1 -2
  297. package/test-env/components/header/header_links/header_link.js +1 -6
  298. package/test-env/components/header/header_section/header_section_item_button.js +1 -6
  299. package/test-env/components/list_group/list_group.js +1 -2
  300. package/test-env/components/list_group/list_group_item.js +7 -5
  301. package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
  302. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  303. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  304. package/test-env/components/modal/confirm_modal.js +1 -1
  305. package/test-env/components/notification/notification_event.js +1 -6
  306. package/test-env/components/notification/notification_event_read_button.js +1 -2
  307. package/test-env/components/page/index.js +1 -40
  308. package/test-env/components/popover/input_popover.js +26 -11
  309. package/test-env/components/selectable/selectable.js +16 -1
  310. package/test-env/components/selectable/selectable_list/selectable_list.js +227 -78
  311. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +16 -1
  312. package/test-env/components/tabs/tab.js +1 -1
  313. package/test-env/components/text_truncate/text_truncate.js +32 -9
  314. package/es/components/page/page_content/index.js +0 -12
  315. package/es/components/page/page_content/page_content.js +0 -110
  316. package/es/components/page/page_content/page_content_body.js +0 -69
  317. package/es/components/page/page_content/page_content_header.js +0 -43
  318. package/es/components/page/page_content/page_content_header_section.js +0 -34
  319. package/es/components/page/page_side_bar/index.js +0 -9
  320. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  321. package/es/components/page/page_template.js +0 -591
  322. package/lib/components/page/page_content/index.js +0 -33
  323. package/lib/components/page/page_content/page_content.js +0 -117
  324. package/lib/components/page/page_content/page_content_body.js +0 -77
  325. package/lib/components/page/page_content/page_content_header.js +0 -50
  326. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  327. package/lib/components/page/page_side_bar/index.js +0 -12
  328. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  329. package/lib/components/page/page_template.js +0 -598
  330. package/optimize/es/components/page/page_content/index.js +0 -12
  331. package/optimize/es/components/page/page_content/page_content.js +0 -45
  332. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  333. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  334. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  335. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  336. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  337. package/optimize/es/components/page/page_template.js +0 -325
  338. package/optimize/lib/components/page/page_content/index.js +0 -33
  339. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  340. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  341. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  342. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  343. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  344. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  345. package/optimize/lib/components/page/page_template.js +0 -332
  346. package/src/components/context_menu/_context_menu.scss +0 -27
  347. package/src/components/context_menu/_context_menu_item.scss +0 -65
  348. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  349. package/src/components/context_menu/_index.scss +0 -3
  350. package/src/components/page/_index.scss +0 -2
  351. package/src/components/page/page_content/_index.scss +0 -4
  352. package/src/components/page/page_content/_page_content.scss +0 -25
  353. package/src/components/page/page_content/_page_content_body.scss +0 -19
  354. package/src/components/page/page_content/_page_content_header.scss +0 -20
  355. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  356. package/src/components/page/page_side_bar/_index.scss +0 -1
  357. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  358. package/test-env/components/page/page_content/index.js +0 -33
  359. package/test-env/components/page/page_content/page_content.js +0 -116
  360. package/test-env/components/page/page_content/page_content_body.js +0 -73
  361. package/test-env/components/page/page_content/page_content_header.js +0 -49
  362. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  363. package/test-env/components/page/page_side_bar/index.js +0 -12
  364. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  365. package/test-env/components/page/page_template.js +0 -594
@@ -21,12 +21,12 @@ var euiCollapsibleNavAccordionStyles = function euiCollapsibleNavAccordionStyles
21
21
  return {
22
22
  // NOTE: Specific usage of `>`s selectors are important here, because accordions can be nested
23
23
  // - just because a parent accordion is open or selected does not mean its child accordion is the same
24
- euiCollapsibleNavAccordion: /*#__PURE__*/(0, _react.css)(".euiAccordion__button{overflow:hidden;&:hover,&:focus{cursor:default;text-decoration:none;}}.euiAccordion__triggerWrapper{border-radius:", sharedStyles.borderRadius, ";", _global_styling.euiCanAnimate, "{transition:background-color ", sharedStyles.animation, ";}}.euiAccordion__buttonContent{", (0, _global_styling.logicalCSS)('max-width', '100%'), " flex-basis:100%;display:flex;align-items:center;}.euiCollapsibleNavLink{", (0, _global_styling.logicalCSS)('width', '100%'), ";};label:euiCollapsibleNavAccordion;"),
25
- isTopItem: /*#__PURE__*/(0, _react.css)("margin:", sharedStyles.padding, ";&>.euiAccordion__triggerWrapper{&:hover{background-color:", sharedStyles.backgroundHoverColor, ";}};label:isTopItem;"),
26
- isSelected: /*#__PURE__*/(0, _react.css)("&>.euiAccordion__triggerWrapper{background-color:", sharedStyles.backgroundSelectedColor, ";&:hover{background-color:", sharedStyles.backgroundSelectedColor, ";}};label:isSelected;"),
27
- isSubItem: /*#__PURE__*/(0, _react.css)("&.euiAccordion-isOpen{", (0, _global_styling.logicalCSS)('margin-bottom', euiTheme.size.m), ";};label:isSubItem;"),
24
+ euiCollapsibleNavAccordion: /*#__PURE__*/(0, _react.css)(".euiAccordion__button{overflow:hidden;}&>.euiAccordion__triggerWrapper{border-radius:", sharedStyles.borderRadius, ";overflow:hidden;", _global_styling.euiCanAnimate, "{transition:background-color ", sharedStyles.animation, ";}&:hover,&:focus-within{background-color:", sharedStyles.backgroundHoverColor, ";.euiAccordion__arrow .euiIcon{color:", sharedStyles.color, ";}}&:has(:focus-visible){outline-style:auto;outline-offset:-", euiTheme.focus.width, ";*:focus{outline:none;}}}.euiAccordion__buttonContent{", (0, _global_styling.logicalCSS)('max-width', '100%'), " flex-basis:100%;display:flex;align-items:center;}.euiCollapsibleNavLink{", (0, _global_styling.logicalCSS)('width', '100%'), ";};label:euiCollapsibleNavAccordion;"),
25
+ isSelected: /*#__PURE__*/(0, _react.css)("&>.euiAccordion__triggerWrapper{background-color:", sharedStyles.backgroundSelectedColor, ";&:hover,&:focus-within{background-color:", sharedStyles.backgroundSelectedColor, ";}};label:isSelected;"),
26
+ isTopItem: /*#__PURE__*/(0, _react.css)("margin:", sharedStyles.padding, ";;label:isTopItem;"),
27
+ isSubItem: /*#__PURE__*/(0, _react.css)("&.euiAccordion-isOpen .euiAccordion__children::after{content:'';display:block;", (0, _global_styling.logicalCSS)('height', euiTheme.size.m), ";};label:isSubItem;"),
28
28
  // Arrow element
29
- euiCollapsibleNavAccordion__arrow: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('margin-right', euiTheme.size.xs), _global_styling.euiCanAnimate, "{transition:background-color ", sharedStyles.animation, ";}&:hover,&:focus-visible{background-color:", euiTheme.colors.lightShade, ";&>.euiIcon{color:", sharedStyles.color, ";}}transform:none!important;&>.euiIcon{color:", sharedStyles.rightIconColor, ";transform:rotate(90deg);", _global_styling.euiCanAnimate, "{transition:transform ", sharedStyles.animation, ",color ", sharedStyles.animation, ";}}&.euiAccordion__arrow[aria-expanded='true']>.euiIcon{color:", sharedStyles.color, ";transform:rotate(-90deg);};label:euiCollapsibleNavAccordion__arrow;")
29
+ euiCollapsibleNavAccordion__arrow: /*#__PURE__*/(0, _react.css)("margin:0;", (0, _global_styling.logicalCSS)('height', sharedStyles.height), (0, _global_styling.logicalCSS)('width', euiTheme.size.xl), "transform:none!important;&>.euiIcon{color:", sharedStyles.rightIconColor, ";transform:rotate(90deg);", _global_styling.euiCanAnimate, "{transition:transform ", sharedStyles.animation, ",color ", sharedStyles.animation, ";}}&.euiAccordion__arrow[aria-expanded='true']>.euiIcon{color:", sharedStyles.color, ";transform:rotate(-90deg);}&:hover,&:focus{background-color:transparent;};label:euiCollapsibleNavAccordion__arrow;")
30
30
  };
31
31
  };
32
32
  exports.euiCollapsibleNavAccordionStyles = euiCollapsibleNavAccordionStyles;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.EuiCollapsibleNavGroup = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+ var _services = require("../../../services");
14
+ var _collapsible_nav_item = require("./collapsible_nav_item");
15
+ var _collapsible_nav_item2 = require("./collapsible_nav_item.styles");
16
+ var _collapsible_nav_link = require("./collapsible_nav_link");
17
+ var _react2 = require("@emotion/react");
18
+ var _excluded = ["className", "header", "items", "isSubItem", "isSelected", "children"];
19
+ /*
20
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
21
+ * or more contributor license agreements. Licensed under the Elastic License
22
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
23
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
24
+ * Side Public License, v 1.
25
+ */
26
+ /**
27
+ * Internal nav group. Should look the same as an open accordion,
28
+ * but not be toggle-able to close.
29
+ *
30
+ * Yes, I know this is the 3rd component in EUI named EuiCollapsibleNavGroup :|
31
+ * I'm waiting for serverless's design architecture to settle before untangling
32
+ * this pasghetti
33
+ */
34
+ var EuiCollapsibleNavGroup = function EuiCollapsibleNavGroup(_ref) {
35
+ var className = _ref.className,
36
+ header = _ref.header,
37
+ items = _ref.items,
38
+ isSubItem = _ref.isSubItem,
39
+ isSelected = _ref.isSelected,
40
+ _children = _ref.children,
41
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
42
+ var classes = (0, _classnames.default)('euiCollapsibleNavGroup', className);
43
+ var euiTheme = (0, _services.useEuiTheme)();
44
+ var sharedStyles = (0, _collapsible_nav_item2.euiCollapsibleNavItemVariables)(euiTheme);
45
+ var cssStyles = !isSubItem ? {
46
+ css: {
47
+ margin: sharedStyles.padding,
48
+ label: 'euiCollapsibleNavGroup-isTopItem'
49
+ }
50
+ } : undefined; // Prevents Emotion from generating a selector if no styles need to be applied
51
+
52
+ var labelledById = (0, _services.useGeneratedHtmlId)();
53
+ return (0, _react2.jsx)("div", (0, _extends2.default)({
54
+ className: classes
55
+ }, cssStyles, rest), (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, {
56
+ id: labelledById,
57
+ isSelected: isSelected,
58
+ isSubItem: isSubItem,
59
+ isInteractive: false
60
+ }, header), (0, _react2.jsx)(_collapsible_nav_item.EuiCollapsibleNavSubItems, {
61
+ items: items,
62
+ isSubItem: isSubItem,
63
+ className: "euiCollapsibleNavGroup__children",
64
+ role: "group",
65
+ "aria-labelledby": labelledById
66
+ }));
67
+ };
68
+ exports.EuiCollapsibleNavGroup = EuiCollapsibleNavGroup;
69
+ EuiCollapsibleNavGroup.propTypes = {
70
+ className: _propTypes.default.string,
71
+ "aria-label": _propTypes.default.string,
72
+ "data-test-subj": _propTypes.default.string,
73
+ css: _propTypes.default.any,
74
+ /**
75
+ * Highlights whether an item is currently selected, e.g.
76
+ * if the user is on the same page as the nav link
77
+ */
78
+ isSelected: _propTypes.default.bool,
79
+ /**
80
+ * Determines whether the item should render as a top-level nav item
81
+ * or a nested nav subitem. Set internally by EUI
82
+ */
83
+ isSubItem: _propTypes.default.bool,
84
+ header: _propTypes.default.node.isRequired
85
+ };
@@ -16,10 +16,11 @@ var _icon = require("../../icon");
16
16
  var _context = require("../context");
17
17
  var _collapsed = require("./collapsed");
18
18
  var _collapsible_nav_accordion = require("./collapsible_nav_accordion");
19
+ var _collapsible_nav_group = require("./collapsible_nav_group");
19
20
  var _collapsible_nav_link = require("./collapsible_nav_link");
20
21
  var _collapsible_nav_item = require("./collapsible_nav_item.styles");
21
22
  var _react2 = require("@emotion/react");
22
- var _excluded = ["isSubItem", "title", "titleElement", "icon", "iconProps", "items", "accordionProps", "children"],
23
+ var _excluded = ["isSubItem", "title", "titleElement", "icon", "iconProps", "href", "linkProps", "items", "isCollapsible", "accordionProps", "children"],
23
24
  _excluded2 = ["renderItem", "className"],
24
25
  _excluded3 = ["items", "isSubItem", "isGroup", "className"],
25
26
  _excluded4 = ["className"];
@@ -38,13 +39,16 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
38
39
  * determine whether to render an accordion or a link
39
40
  */
40
41
  var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
41
- var _props$linkProps;
42
42
  var isSubItem = _ref.isSubItem,
43
43
  title = _ref.title,
44
44
  titleElement = _ref.titleElement,
45
45
  icon = _ref.icon,
46
46
  iconProps = _ref.iconProps,
47
+ href = _ref.href,
48
+ linkProps = _ref.linkProps,
47
49
  items = _ref.items,
50
+ _ref$isCollapsible = _ref.isCollapsible,
51
+ isCollapsible = _ref$isCollapsible === void 0 ? true : _ref$isCollapsible,
48
52
  accordionProps = _ref.accordionProps,
49
53
  children = _ref.children,
50
54
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
@@ -54,21 +58,32 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
54
58
  icon: icon,
55
59
  iconProps: iconProps
56
60
  });
57
- var isAccordion = items && items.length > 0;
58
- if (isAccordion) {
59
- return (0, _react2.jsx)(_collapsible_nav_accordion.EuiCollapsibleNavAccordion, (0, _extends2.default)({
60
- buttonContent: headerContent,
61
- items: items,
62
- accordionProps: accordionProps
63
- }, props, {
64
- isSubItem: isSubItem
65
- }));
61
+ if (items) {
62
+ if (isCollapsible) {
63
+ return (0, _react2.jsx)(_collapsible_nav_accordion.EuiCollapsibleNavAccordion, (0, _extends2.default)({
64
+ buttonContent: headerContent,
65
+ items: items,
66
+ accordionProps: accordionProps
67
+ }, props, {
68
+ isSubItem: isSubItem
69
+ }));
70
+ } else {
71
+ return (0, _react2.jsx)(_collapsible_nav_group.EuiCollapsibleNavGroup, (0, _extends2.default)({
72
+ header: headerContent,
73
+ items: items
74
+ }, props, {
75
+ isSubItem: isSubItem
76
+ }));
77
+ }
66
78
  }
67
- return (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({}, props, {
79
+ return (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({
80
+ href: href,
81
+ linkProps: linkProps
82
+ }, props, {
68
83
  // EuiLink ExclusiveUnion type shenanigans
69
84
  isSubItem: isSubItem,
70
85
  isNotAccordion: true,
71
- isInteractive: !!(props.href || props.onClick || (_props$linkProps = props.linkProps) !== null && _props$linkProps !== void 0 && _props$linkProps.onClick)
86
+ isInteractive: !!(href || props.onClick || linkProps !== null && linkProps !== void 0 && linkProps.onClick)
72
87
  }), headerContent);
73
88
  };
74
89
 
@@ -76,6 +91,15 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
76
91
  * Internal subcomponent for title display
77
92
  */
78
93
  EuiCollapsibleNavItemDisplay.propTypes = {
94
+ className: _propTypes.default.string,
95
+ "aria-label": _propTypes.default.string,
96
+ "data-test-subj": _propTypes.default.string,
97
+ css: _propTypes.default.any,
98
+ /**
99
+ * Highlights whether an item is currently selected, e.g.
100
+ * if the user is on the same page as the nav link
101
+ */
102
+ isSelected: _propTypes.default.bool,
79
103
  /**
80
104
  * Required text to render as the nav item title
81
105
  */
@@ -94,40 +118,42 @@ EuiCollapsibleNavItemDisplay.propTypes = {
94
118
  * Optional props to pass to the title icon
95
119
  */
96
120
  iconProps: _propTypes.default.any,
97
- className: _propTypes.default.string,
98
- "aria-label": _propTypes.default.string,
99
- "data-test-subj": _propTypes.default.string,
100
- css: _propTypes.default.any,
101
121
  /**
102
- * The nav item link.
103
- * If not included, and no `onClick` is specified, the nav item
104
- * will render as an non-interactive `<span>`.
105
- */
122
+ * The nav item link.
123
+ *
124
+ * If not included, and no `onClick` is specified, the nav item
125
+ * will render as an non-interactive `<span>`.
126
+ *
127
+ * Should not be used together with `items`, as the title will
128
+ * trigger the accordion collapse/expand action instead of a link.
129
+ */
106
130
  href: _propTypes.default.string,
107
131
  /**
108
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
109
- *
110
- * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
111
- * subitem content, pass an object with a `renderItem` callback.
112
- */
132
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
133
+ */
134
+ linkProps: _propTypes.default.any,
135
+ /**
136
+ * Will render either an accordion or group of nested child item links.
137
+ *
138
+ * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
139
+ * subitem content, pass an object with a `renderItem` callback.
140
+ */
113
141
  items: _propTypes.default.arrayOf(_propTypes.default.shape({
114
142
  renderItem: _propTypes.default.func
115
143
  }).isRequired),
116
144
  /**
117
- * If `items` is specified, use this prop to pass any prop that `EuiAccordion`
118
- * accepts, including props that control the toggled state of the accordion
119
- * (e.g. `initialIsOpen`, `forceState`)
120
- */
121
- accordionProps: _propTypes.default.any,
122
- /**
123
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
124
- */
125
- linkProps: _propTypes.default.any,
145
+ * If set to false, will (visually) render an always-open accordion that cannot
146
+ * be toggled closed. Ignored if `items` is not passed.
147
+ *
148
+ * @default true
149
+ */
150
+ isCollapsible: _propTypes.default.bool,
126
151
  /**
127
- * Highlights whether an item is currently selected, e.g.
128
- * if the user is on the same page as the nav link
129
- */
130
- isSelected: _propTypes.default.bool,
152
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
153
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
154
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
155
+ */
156
+ accordionProps: _propTypes.default.any,
131
157
  /**
132
158
  * Determines whether the item should render as a top-level nav item
133
159
  * or a nested nav subitem. Set internally by EUI
@@ -176,6 +202,15 @@ var EuiCollapsibleNavSubItem = function EuiCollapsibleNavSubItem(_ref3) {
176
202
  */
177
203
  exports.EuiCollapsibleNavSubItem = EuiCollapsibleNavSubItem;
178
204
  EuiCollapsibleNavSubItem.propTypes = {
205
+ className: _propTypes.default.string,
206
+ "aria-label": _propTypes.default.string,
207
+ "data-test-subj": _propTypes.default.string,
208
+ css: _propTypes.default.any,
209
+ /**
210
+ * Highlights whether an item is currently selected, e.g.
211
+ * if the user is on the same page as the nav link
212
+ */
213
+ isSelected: _propTypes.default.bool,
179
214
  /**
180
215
  * Required text to render as the nav item title
181
216
  */
@@ -194,38 +229,40 @@ EuiCollapsibleNavSubItem.propTypes = {
194
229
  * Optional props to pass to the title icon
195
230
  */
196
231
  iconProps: _propTypes.default.any,
197
- className: _propTypes.default.string,
198
- "aria-label": _propTypes.default.string,
199
- "data-test-subj": _propTypes.default.string,
200
- css: _propTypes.default.any,
201
232
  /**
202
- * The nav item link.
203
- * If not included, and no `onClick` is specified, the nav item
204
- * will render as an non-interactive `<span>`.
205
- */
233
+ * The nav item link.
234
+ *
235
+ * If not included, and no `onClick` is specified, the nav item
236
+ * will render as an non-interactive `<span>`.
237
+ *
238
+ * Should not be used together with `items`, as the title will
239
+ * trigger the accordion collapse/expand action instead of a link.
240
+ */
206
241
  href: _propTypes.default.string,
207
242
  /**
208
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
209
- *
210
- * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
211
- * subitem content, pass an object with a `renderItem` callback.
212
- */
213
- items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
243
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
244
+ */
245
+ linkProps: _propTypes.default.any,
214
246
  /**
215
- * If `items` is specified, use this prop to pass any prop that `EuiAccordion`
216
- * accepts, including props that control the toggled state of the accordion
217
- * (e.g. `initialIsOpen`, `forceState`)
218
- */
219
- accordionProps: _propTypes.default.any,
247
+ * Will render either an accordion or group of nested child item links.
248
+ *
249
+ * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
250
+ * subitem content, pass an object with a `renderItem` callback.
251
+ */
252
+ items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
220
253
  /**
221
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
222
- */
223
- linkProps: _propTypes.default.any,
254
+ * If set to false, will (visually) render an always-open accordion that cannot
255
+ * be toggled closed. Ignored if `items` is not passed.
256
+ *
257
+ * @default true
258
+ */
259
+ isCollapsible: _propTypes.default.bool,
224
260
  /**
225
- * Highlights whether an item is currently selected, e.g.
226
- * if the user is on the same page as the nav link
227
- */
228
- isSelected: _propTypes.default.bool,
261
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
262
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
263
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
264
+ */
265
+ accordionProps: _propTypes.default.any,
229
266
  renderItem: _propTypes.default.func
230
267
  };
231
268
  var EuiCollapsibleNavSubItems = function EuiCollapsibleNavSubItems(_ref4) {
@@ -274,6 +311,15 @@ EuiCollapsibleNavSubItems.propTypes = {
274
311
  */
275
312
  isSubItem: _propTypes.default.bool,
276
313
  items: _propTypes.default.arrayOf(_propTypes.default.shape({
314
+ className: _propTypes.default.string,
315
+ "aria-label": _propTypes.default.string,
316
+ "data-test-subj": _propTypes.default.string,
317
+ css: _propTypes.default.any,
318
+ /**
319
+ * Highlights whether an item is currently selected, e.g.
320
+ * if the user is on the same page as the nav link
321
+ */
322
+ isSelected: _propTypes.default.bool,
277
323
  /**
278
324
  * Required text to render as the nav item title
279
325
  */
@@ -292,38 +338,40 @@ EuiCollapsibleNavSubItems.propTypes = {
292
338
  * Optional props to pass to the title icon
293
339
  */
294
340
  iconProps: _propTypes.default.any,
295
- className: _propTypes.default.string,
296
- "aria-label": _propTypes.default.string,
297
- "data-test-subj": _propTypes.default.string,
298
- css: _propTypes.default.any,
299
341
  /**
300
- * The nav item link.
301
- * If not included, and no `onClick` is specified, the nav item
302
- * will render as an non-interactive `<span>`.
303
- */
342
+ * The nav item link.
343
+ *
344
+ * If not included, and no `onClick` is specified, the nav item
345
+ * will render as an non-interactive `<span>`.
346
+ *
347
+ * Should not be used together with `items`, as the title will
348
+ * trigger the accordion collapse/expand action instead of a link.
349
+ */
304
350
  href: _propTypes.default.string,
305
351
  /**
306
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
307
- *
308
- * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
309
- * subitem content, pass an object with a `renderItem` callback.
310
- */
311
- items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
352
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
353
+ */
354
+ linkProps: _propTypes.default.any,
312
355
  /**
313
- * If `items` is specified, use this prop to pass any prop that `EuiAccordion`
314
- * accepts, including props that control the toggled state of the accordion
315
- * (e.g. `initialIsOpen`, `forceState`)
316
- */
317
- accordionProps: _propTypes.default.any,
356
+ * Will render either an accordion or group of nested child item links.
357
+ *
358
+ * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
359
+ * subitem content, pass an object with a `renderItem` callback.
360
+ */
361
+ items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
318
362
  /**
319
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
320
- */
321
- linkProps: _propTypes.default.any,
363
+ * If set to false, will (visually) render an always-open accordion that cannot
364
+ * be toggled closed. Ignored if `items` is not passed.
365
+ *
366
+ * @default true
367
+ */
368
+ isCollapsible: _propTypes.default.bool,
322
369
  /**
323
- * Highlights whether an item is currently selected, e.g.
324
- * if the user is on the same page as the nav link
325
- */
326
- isSelected: _propTypes.default.bool,
370
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
371
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
372
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
373
+ */
374
+ accordionProps: _propTypes.default.any,
327
375
  renderItem: _propTypes.default.func
328
376
  }).isRequired).isRequired,
329
377
  isGroup: _propTypes.default.bool
@@ -345,6 +393,15 @@ var EuiCollapsibleNavItem = function EuiCollapsibleNavItem(_ref5) {
345
393
  };
346
394
  exports.EuiCollapsibleNavItem = EuiCollapsibleNavItem;
347
395
  EuiCollapsibleNavItem.propTypes = {
396
+ className: _propTypes.default.string,
397
+ "aria-label": _propTypes.default.string,
398
+ "data-test-subj": _propTypes.default.string,
399
+ css: _propTypes.default.any,
400
+ /**
401
+ * Highlights whether an item is currently selected, e.g.
402
+ * if the user is on the same page as the nav link
403
+ */
404
+ isSelected: _propTypes.default.bool,
348
405
  /**
349
406
  * Required text to render as the nav item title
350
407
  */
@@ -363,38 +420,40 @@ EuiCollapsibleNavItem.propTypes = {
363
420
  * Optional props to pass to the title icon
364
421
  */
365
422
  iconProps: _propTypes.default.any,
366
- className: _propTypes.default.string,
367
- "aria-label": _propTypes.default.string,
368
- "data-test-subj": _propTypes.default.string,
369
- css: _propTypes.default.any,
370
423
  /**
371
- * The nav item link.
372
- * If not included, and no `onClick` is specified, the nav item
373
- * will render as an non-interactive `<span>`.
374
- */
424
+ * The nav item link.
425
+ *
426
+ * If not included, and no `onClick` is specified, the nav item
427
+ * will render as an non-interactive `<span>`.
428
+ *
429
+ * Should not be used together with `items`, as the title will
430
+ * trigger the accordion collapse/expand action instead of a link.
431
+ */
375
432
  href: _propTypes.default.string,
376
433
  /**
377
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
378
- *
379
- * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
380
- * subitem content, pass an object with a `renderItem` callback.
381
- */
434
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
435
+ */
436
+ linkProps: _propTypes.default.any,
437
+ /**
438
+ * Will render either an accordion or group of nested child item links.
439
+ *
440
+ * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
441
+ * subitem content, pass an object with a `renderItem` callback.
442
+ */
382
443
  items: _propTypes.default.arrayOf(_propTypes.default.shape({
383
444
  renderItem: _propTypes.default.func
384
445
  }).isRequired),
385
446
  /**
386
- * If `items` is specified, use this prop to pass any prop that `EuiAccordion`
387
- * accepts, including props that control the toggled state of the accordion
388
- * (e.g. `initialIsOpen`, `forceState`)
389
- */
390
- accordionProps: _propTypes.default.any,
391
- /**
392
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
393
- */
394
- linkProps: _propTypes.default.any,
447
+ * If set to false, will (visually) render an always-open accordion that cannot
448
+ * be toggled closed. Ignored if `items` is not passed.
449
+ *
450
+ * @default true
451
+ */
452
+ isCollapsible: _propTypes.default.bool,
395
453
  /**
396
- * Highlights whether an item is currently selected, e.g.
397
- * if the user is on the same page as the nav link
398
- */
399
- isSelected: _propTypes.default.bool
454
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
455
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
456
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
457
+ */
458
+ accordionProps: _propTypes.default.any
400
459
  };
@@ -70,16 +70,6 @@ EuiCollapsibleNavLink.propTypes = {
70
70
  "aria-label": _propTypes.default.string,
71
71
  "data-test-subj": _propTypes.default.string,
72
72
  css: _propTypes.default.any,
73
- /**
74
- * The nav item link.
75
- * If not included, and no `onClick` is specified, the nav item
76
- * will render as an non-interactive `<span>`.
77
- */
78
- href: _propTypes.default.string,
79
- /**
80
- * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
81
- */
82
- linkProps: _propTypes.default.any,
83
73
  /**
84
74
  * Highlights whether an item is currently selected, e.g.
85
75
  * if the user is on the same page as the nav link
@@ -16,6 +16,7 @@ var _react = require("react");
16
16
  var EuiCollapsibleNavContext = /*#__PURE__*/(0, _react.createContext)({
17
17
  isCollapsed: false,
18
18
  isPush: true,
19
+ isOverlayOpen: false,
19
20
  side: 'left'
20
21
  });
21
22
  exports.EuiCollapsibleNavContext = EuiCollapsibleNavContext;
@@ -730,7 +730,7 @@ EuiComboBox.propTypes = {
730
730
  /**
731
731
  * By default, EuiComboBox will truncate option labels at the end of
732
732
  * the string. You can use pass in a custom truncation configuration that
733
- * accepts any prop that [EuiTextTruncate](/#/utilities/text-truncate) prop
733
+ * accepts any [EuiTextTruncate](/#/utilities/text-truncation) prop,
734
734
  * except for `text` and `children`.
735
735
  *
736
736
  * Note: when searching, custom truncation props are ignored. The highlighted search
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.EuiCommentEvent = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
+ var _react = _interopRequireWildcard(require("react"));
9
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _services = require("../../services");
11
11
  var _classnames = _interopRequireDefault(require("classnames"));
12
+ var _services = require("../../services");
12
13
  var _panel = require("../panel");
13
14
  var _avatar = require("../avatar");
14
15
  var _comment_event = require("./comment_event.styles");
15
16
  var _react2 = require("@emotion/react");
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+ 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; }
16
19
  /*
17
20
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
18
21
  * or more contributor license agreements. Licensed under the Elastic License
@@ -33,6 +36,9 @@ var EuiCommentEvent = function EuiCommentEvent(_ref) {
33
36
  eventColor = _ref.eventColor;
34
37
  var classes = (0, _classnames.default)('euiCommentEvent', className);
35
38
 
39
+ /**
40
+ * Branching logic
41
+ */
36
42
  // the username is required so we only check if other elements are define
37
43
  var hasEventElements = eventIcon || timestamp || event || actions;
38
44
  var isTypeRegular = children && hasEventElements;
@@ -45,27 +51,36 @@ var EuiCommentEvent = function EuiCommentEvent(_ref) {
45
51
  } else {
46
52
  type = 'custom';
47
53
  }
54
+ if (isTypeRegular && !eventColor) {
55
+ eventColor = 'subdued';
56
+ }
57
+ if (isTypeUpdate && !eventColor) {
58
+ eventColor = 'transparent';
59
+ }
60
+ var showEventBorders = isTypeRegular;
61
+ var panelProps = (0, _react.useMemo)(function () {
62
+ return {
63
+ color: type === 'custom' ? 'transparent' : eventColor,
64
+ paddingSize: type === 'custom' ? 'none' : 's',
65
+ borderRadius: type === 'regular' ? 'none' : 'm',
66
+ hasShadow: false // `plain` color needs this
67
+ };
68
+ }, [type, eventColor]);
69
+ var isFigure = isTypeRegular;
70
+ var Element = isFigure ? 'figure' : 'div';
71
+ var HeaderElement = isFigure ? 'figcaption' : 'div';
72
+
73
+ /**
74
+ * Styles
75
+ */
48
76
  var euiTheme = (0, _services.useEuiTheme)();
77
+ var borderStyles = (0, _comment_event.euiCommentEventBorderColors)(euiTheme);
49
78
  var styles = (0, _comment_event.euiCommentEventStyles)(euiTheme);
50
- var cssStyles = [styles.euiCommentEvent, styles[type]];
79
+ var cssStyles = [styles.euiCommentEvent, showEventBorders && styles.border, showEventBorders && borderStyles[eventColor]];
51
80
  var headerStyles = (0, _comment_event.euiCommentEventHeaderStyles)(euiTheme);
52
- var cssHeaderStyles = [headerStyles.euiCommentEvent__header, eventColor && headerStyles.hasEventColor, isTypeRegular && headerStyles.regular];
81
+ var cssHeaderStyles = [headerStyles.euiCommentEvent__header, showEventBorders && headerStyles.border, showEventBorders && borderStyles[eventColor]];
53
82
  var bodyStyles = (0, _comment_event.euiCommentEventBodyStyles)(euiTheme);
54
83
  var cssBodyStyles = [bodyStyles.euiCommentEvent__body, bodyStyles[type]];
55
- var isFigure = isTypeRegular;
56
- var Element = isFigure ? 'figure' : 'div';
57
- var HeaderElement = isFigure ? 'figcaption' : 'div';
58
-
59
- // The 'plain' color creates a shadow and adds a border radius that we don't want.
60
- // So for these cases we use the transparent color instead.
61
- var finalEventColor = eventColor === 'plain' ? 'transparent' : eventColor;
62
- var panelProps = finalEventColor ? {
63
- color: finalEventColor,
64
- paddingSize: 's'
65
- } : {
66
- color: 'transparent',
67
- paddingSize: 'none'
68
- };
69
84
  return (0, _react2.jsx)(Element, {
70
85
  className: classes,
71
86
  css: cssStyles,