@elastic/eui 89.1.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 (314) 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_button/collapsible_nav_button.js +12 -7
  18. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  19. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  20. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  21. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  22. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +158 -0
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  26. package/es/components/collapsible_nav_beta/context.js +1 -0
  27. package/es/components/comment_list/comment_event.js +31 -19
  28. package/es/components/comment_list/comment_event.styles.js +26 -24
  29. package/es/components/context_menu/context_menu.js +28 -22
  30. package/es/components/context_menu/context_menu.styles.js +26 -0
  31. package/es/components/context_menu/context_menu_item.js +95 -125
  32. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  33. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  34. package/es/components/context_menu/context_menu_panel.js +32 -61
  35. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  36. package/es/components/control_bar/control_bar.js +28 -23
  37. package/es/components/datagrid/body/data_grid_body.js +6 -7
  38. package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
  39. package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  40. package/es/components/datagrid/body/data_grid_cell.js +12 -13
  41. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  42. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  43. package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
  44. package/es/components/datagrid/data_grid.js +6 -7
  45. package/es/components/datagrid/utils/in_memory.js +6 -7
  46. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  47. package/es/components/form/field_number/field_number.js +13 -9
  48. package/es/components/form/field_password/field_password.js +4 -7
  49. package/es/components/form/range/dual_range.js +110 -85
  50. package/es/components/form/range/range.js +47 -40
  51. package/es/components/form/range/range_track.js +6 -20
  52. package/es/components/form/range/utils.js +1 -2
  53. package/es/components/header/header_links/header_link.js +1 -6
  54. package/es/components/header/header_section/header_section_item_button.js +1 -6
  55. package/es/components/list_group/list_group.js +1 -2
  56. package/es/components/list_group/list_group_item.js +7 -5
  57. package/es/components/list_group/list_group_item_extra_action.js +1 -2
  58. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  59. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  60. package/es/components/modal/confirm_modal.js +1 -1
  61. package/es/components/notification/notification_event.js +1 -6
  62. package/es/components/notification/notification_event_read_button.js +1 -2
  63. package/es/components/page/index.js +1 -4
  64. package/es/components/pagination/pagination_button.js +1 -6
  65. package/es/components/popover/input_popover.js +26 -11
  66. package/es/components/tabs/tab.js +1 -1
  67. package/eui.d.ts +198 -287
  68. package/i18ntokens.json +103 -67
  69. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  70. package/lib/components/accordion/accordion.js +27 -2
  71. package/lib/components/accordion/accordion_children/accordion_children.js +5 -13
  72. package/lib/components/basic_table/basic_table.js +60 -23
  73. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  74. package/lib/components/basic_table/in_memory_table.js +18 -4
  75. package/lib/components/button/button.js +24 -51
  76. package/lib/components/button/button_empty/button_empty.js +29 -46
  77. package/lib/components/button/button_icon/button_icon.js +25 -42
  78. package/lib/components/card/card.js +1 -6
  79. package/lib/components/card/card_select/card_select.js +1 -6
  80. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  81. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  82. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  83. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  84. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  85. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  86. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  87. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  88. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +165 -0
  89. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  90. package/lib/components/collapsible_nav_beta/context.js +1 -0
  91. package/lib/components/comment_list/comment_event.js +33 -18
  92. package/lib/components/comment_list/comment_event.styles.js +28 -25
  93. package/lib/components/context_menu/context_menu.js +31 -24
  94. package/lib/components/context_menu/context_menu.styles.js +34 -0
  95. package/lib/components/context_menu/context_menu_item.js +102 -133
  96. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  97. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  98. package/lib/components/context_menu/context_menu_panel.js +35 -63
  99. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  100. package/lib/components/control_bar/control_bar.js +28 -23
  101. package/lib/components/datagrid/body/data_grid_body.js +6 -7
  102. package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
  103. package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  104. package/lib/components/datagrid/body/data_grid_cell.js +12 -13
  105. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  106. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  107. package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
  108. package/lib/components/datagrid/data_grid.js +6 -7
  109. package/lib/components/datagrid/utils/in_memory.js +6 -7
  110. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  111. package/lib/components/form/field_number/field_number.js +12 -8
  112. package/lib/components/form/field_password/field_password.js +4 -7
  113. package/lib/components/form/range/dual_range.js +110 -85
  114. package/lib/components/form/range/range.js +47 -40
  115. package/lib/components/form/range/range_track.js +5 -19
  116. package/lib/components/form/range/utils.js +1 -2
  117. package/lib/components/header/header_links/header_link.js +1 -6
  118. package/lib/components/header/header_section/header_section_item_button.js +1 -6
  119. package/lib/components/list_group/list_group.js +1 -2
  120. package/lib/components/list_group/list_group_item.js +7 -5
  121. package/lib/components/list_group/list_group_item_extra_action.js +1 -2
  122. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  123. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  124. package/lib/components/modal/confirm_modal.js +1 -1
  125. package/lib/components/notification/notification_event.js +1 -6
  126. package/lib/components/notification/notification_event_read_button.js +1 -2
  127. package/lib/components/page/index.js +1 -40
  128. package/lib/components/popover/input_popover.js +26 -11
  129. package/lib/components/tabs/tab.js +1 -1
  130. package/optimize/es/components/accordion/accordion.js +27 -2
  131. package/optimize/es/components/accordion/accordion_children/accordion_children.js +5 -14
  132. package/optimize/es/components/basic_table/basic_table.js +42 -19
  133. package/optimize/es/components/button/button.js +15 -33
  134. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  135. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  136. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  137. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  138. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  139. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +60 -0
  140. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  141. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  142. package/optimize/es/components/comment_list/comment_event.js +31 -19
  143. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  144. package/optimize/es/components/context_menu/context_menu.js +25 -19
  145. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  146. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  147. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  148. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  149. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  150. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  151. package/optimize/es/components/control_bar/control_bar.js +28 -23
  152. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  153. package/optimize/es/components/form/field_number/field_number.js +13 -9
  154. package/optimize/es/components/form/field_password/field_password.js +4 -7
  155. package/optimize/es/components/form/range/dual_range.js +110 -85
  156. package/optimize/es/components/form/range/range.js +47 -40
  157. package/optimize/es/components/form/range/range_track.js +5 -14
  158. package/optimize/es/components/form/range/utils.js +1 -2
  159. package/optimize/es/components/list_group/list_group_item.js +6 -3
  160. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  161. package/optimize/es/components/page/index.js +1 -4
  162. package/optimize/es/components/popover/input_popover.js +26 -11
  163. package/optimize/es/components/tabs/tab.js +1 -1
  164. package/optimize/lib/components/accordion/accordion.js +27 -2
  165. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +3 -12
  166. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  167. package/optimize/lib/components/button/button.js +16 -34
  168. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  169. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  170. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  171. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  172. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  173. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +67 -0
  174. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  175. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  176. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  177. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  178. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  179. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  180. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  181. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  182. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  183. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  184. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  185. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  186. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  187. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  188. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  189. package/optimize/lib/components/form/range/dual_range.js +110 -85
  190. package/optimize/lib/components/form/range/range.js +47 -40
  191. package/optimize/lib/components/form/range/range_track.js +4 -13
  192. package/optimize/lib/components/form/range/utils.js +1 -2
  193. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  194. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  195. package/optimize/lib/components/page/index.js +1 -40
  196. package/optimize/lib/components/popover/input_popover.js +27 -12
  197. package/optimize/lib/components/tabs/tab.js +1 -1
  198. package/package.json +5 -5
  199. package/src/components/datagrid/_data_grid_data_row.scss +0 -1
  200. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  201. package/src/components/index.scss +0 -2
  202. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  203. package/test-env/components/accordion/accordion.js +27 -2
  204. package/test-env/components/accordion/accordion_children/accordion_children.js +5 -13
  205. package/test-env/components/basic_table/basic_table.js +60 -23
  206. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  207. package/test-env/components/basic_table/in_memory_table.js +18 -4
  208. package/test-env/components/button/button.js +17 -40
  209. package/test-env/components/button/button_empty/button_empty.js +29 -46
  210. package/test-env/components/button/button_icon/button_icon.js +25 -42
  211. package/test-env/components/card/card.js +1 -6
  212. package/test-env/components/card/card_select/card_select.js +1 -6
  213. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  214. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  215. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  216. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  217. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  218. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  219. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  220. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  221. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +164 -0
  222. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  223. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  224. package/test-env/components/comment_list/comment_event.js +33 -18
  225. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  226. package/test-env/components/context_menu/context_menu.js +31 -24
  227. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  228. package/test-env/components/context_menu/context_menu_item.js +102 -129
  229. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  230. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  231. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  232. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  233. package/test-env/components/control_bar/control_bar.js +28 -23
  234. package/test-env/components/datagrid/body/data_grid_body.js +6 -7
  235. package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
  236. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  237. package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
  238. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  239. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  240. package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
  241. package/test-env/components/datagrid/data_grid.js +6 -7
  242. package/test-env/components/datagrid/utils/in_memory.js +6 -7
  243. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  244. package/test-env/components/form/field_number/field_number.js +12 -8
  245. package/test-env/components/form/field_password/field_password.js +4 -7
  246. package/test-env/components/form/range/dual_range.js +110 -85
  247. package/test-env/components/form/range/range.js +47 -40
  248. package/test-env/components/form/range/range_track.js +5 -14
  249. package/test-env/components/form/range/utils.js +1 -2
  250. package/test-env/components/header/header_links/header_link.js +1 -6
  251. package/test-env/components/header/header_section/header_section_item_button.js +1 -6
  252. package/test-env/components/list_group/list_group.js +1 -2
  253. package/test-env/components/list_group/list_group_item.js +7 -5
  254. package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
  255. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  256. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  257. package/test-env/components/modal/confirm_modal.js +1 -1
  258. package/test-env/components/notification/notification_event.js +1 -6
  259. package/test-env/components/notification/notification_event_read_button.js +1 -2
  260. package/test-env/components/page/index.js +1 -40
  261. package/test-env/components/popover/input_popover.js +26 -11
  262. package/test-env/components/tabs/tab.js +1 -1
  263. package/es/components/page/page_content/index.js +0 -12
  264. package/es/components/page/page_content/page_content.js +0 -110
  265. package/es/components/page/page_content/page_content_body.js +0 -69
  266. package/es/components/page/page_content/page_content_header.js +0 -43
  267. package/es/components/page/page_content/page_content_header_section.js +0 -34
  268. package/es/components/page/page_side_bar/index.js +0 -9
  269. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  270. package/es/components/page/page_template.js +0 -591
  271. package/lib/components/page/page_content/index.js +0 -33
  272. package/lib/components/page/page_content/page_content.js +0 -117
  273. package/lib/components/page/page_content/page_content_body.js +0 -77
  274. package/lib/components/page/page_content/page_content_header.js +0 -50
  275. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  276. package/lib/components/page/page_side_bar/index.js +0 -12
  277. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  278. package/lib/components/page/page_template.js +0 -598
  279. package/optimize/es/components/page/page_content/index.js +0 -12
  280. package/optimize/es/components/page/page_content/page_content.js +0 -45
  281. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  282. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  283. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  284. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  285. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  286. package/optimize/es/components/page/page_template.js +0 -325
  287. package/optimize/lib/components/page/page_content/index.js +0 -33
  288. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  289. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  290. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  291. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  292. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  293. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  294. package/optimize/lib/components/page/page_template.js +0 -332
  295. package/src/components/context_menu/_context_menu.scss +0 -27
  296. package/src/components/context_menu/_context_menu_item.scss +0 -65
  297. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  298. package/src/components/context_menu/_index.scss +0 -3
  299. package/src/components/page/_index.scss +0 -2
  300. package/src/components/page/page_content/_index.scss +0 -4
  301. package/src/components/page/page_content/_page_content.scss +0 -25
  302. package/src/components/page/page_content/_page_content_body.scss +0 -19
  303. package/src/components/page/page_content/_page_content_header.scss +0 -20
  304. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  305. package/src/components/page/page_side_bar/_index.scss +0 -1
  306. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  307. package/test-env/components/page/page_content/index.js +0 -33
  308. package/test-env/components/page/page_content/page_content.js +0 -116
  309. package/test-env/components/page/page_content/page_content_body.js +0 -73
  310. package/test-env/components/page/page_content/page_content_header.js +0 -49
  311. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  312. package/test-env/components/page/page_side_bar/index.js +0 -12
  313. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  314. package/test-env/components/page/page_template.js +0 -594
@@ -97,6 +97,31 @@ var EuiCollapsibleNavAccordion = function EuiCollapsibleNavAccordion(_ref) {
97
97
  };
98
98
  exports.EuiCollapsibleNavAccordion = EuiCollapsibleNavAccordion;
99
99
  EuiCollapsibleNavAccordion.propTypes = {
100
+ className: _propTypes.default.string,
101
+ "aria-label": _propTypes.default.string,
102
+ "data-test-subj": _propTypes.default.string,
103
+ css: _propTypes.default.any,
104
+ /**
105
+ * The nav item link.
106
+ * If not included, and no `onClick` is specified, the nav item
107
+ * will render as an non-interactive `<span>`.
108
+ */
109
+ href: _propTypes.default.string,
110
+ /**
111
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
112
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
113
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
114
+ */
115
+ accordionProps: _propTypes.default.any,
116
+ /**
117
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
118
+ */
119
+ linkProps: _propTypes.default.any,
120
+ /**
121
+ * Highlights whether an item is currently selected, e.g.
122
+ * if the user is on the same page as the nav link
123
+ */
124
+ isSelected: _propTypes.default.bool,
100
125
  /**
101
126
  * Determines whether the item should render as a top-level nav item
102
127
  * or a nested nav subitem. Set internally by EUI
@@ -133,7 +158,7 @@ EuiCollapsibleNavAccordion.propTypes = {
133
158
  */
134
159
  href: _propTypes.default.string,
135
160
  /**
136
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
161
+ * Will render either an accordion or group of nested child item links.
137
162
  *
138
163
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
139
164
  * subitem content, pass an object with a `renderItem` callback.
@@ -142,9 +167,16 @@ EuiCollapsibleNavAccordion.propTypes = {
142
167
  renderItem: _propTypes.default.func
143
168
  }).isRequired),
144
169
  /**
145
- * If `items` is specified, use this prop to pass any prop that `EuiAccordion`
146
- * accepts, including props that control the toggled state of the accordion
147
- * (e.g. `initialIsOpen`, `forceState`)
170
+ * If set to false, will (visually) render an always-open accordion that cannot
171
+ * be toggled closed. Ignored if `items` is not passed.
172
+ *
173
+ * @default true
174
+ */
175
+ isCollapsible: _propTypes.default.bool,
176
+ /**
177
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
178
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
179
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
148
180
  */
149
181
  accordionProps: _propTypes.default.any,
150
182
  /**
@@ -24,7 +24,7 @@ var euiCollapsibleNavAccordionStyles = function euiCollapsibleNavAccordionStyles
24
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
25
  isTopItem: /*#__PURE__*/(0, _react.css)("margin:", sharedStyles.padding, ";&>.euiAccordion__triggerWrapper{&:hover{background-color:", sharedStyles.backgroundHoverColor, ";}};label:isTopItem;"),
26
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;"),
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
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;")
30
30
  };
@@ -0,0 +1,164 @@
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", "href", "items", "isSubItem", "isSelected", "linkProps", "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
+ href = _ref.href,
38
+ items = _ref.items,
39
+ isSubItem = _ref.isSubItem,
40
+ isSelected = _ref.isSelected,
41
+ linkProps = _ref.linkProps,
42
+ _children = _ref.children,
43
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
44
+ var classes = (0, _classnames.default)('euiCollapsibleNavGroup', className);
45
+ var euiTheme = (0, _services.useEuiTheme)();
46
+ var sharedStyles = (0, _collapsible_nav_item2.euiCollapsibleNavItemVariables)(euiTheme);
47
+ var cssStyles = !isSubItem ? {
48
+ css: {
49
+ margin: sharedStyles.padding,
50
+ label: 'euiCollapsibleNavGroup-isTopItem'
51
+ }
52
+ } : undefined; // Prevents Emotion from generating a selector if no styles need to be applied
53
+
54
+ return (0, _react2.jsx)("div", (0, _extends2.default)({
55
+ className: classes
56
+ }, cssStyles, rest), (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({
57
+ href: href
58
+ }, linkProps, {
59
+ isSelected: isSelected,
60
+ isSubItem: isSubItem,
61
+ isInteractive: !!(href || rest.onClick || linkProps !== null && linkProps !== void 0 && linkProps.onClick)
62
+ }), header), (0, _react2.jsx)(_collapsible_nav_item.EuiCollapsibleNavSubItems, {
63
+ items: items,
64
+ isSubItem: isSubItem,
65
+ className: "euiCollapsibleNavGroup__children"
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
+ * The nav item link.
76
+ * If not included, and no `onClick` is specified, the nav item
77
+ * will render as an non-interactive `<span>`.
78
+ */
79
+ href: _propTypes.default.string,
80
+ /**
81
+ * If set to false, will (visually) render an always-open accordion that cannot
82
+ * be toggled closed. Ignored if `items` is not passed.
83
+ *
84
+ * @default true
85
+ */
86
+ isCollapsible: _propTypes.default.bool,
87
+ /**
88
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
89
+ */
90
+ linkProps: _propTypes.default.any,
91
+ /**
92
+ * Highlights whether an item is currently selected, e.g.
93
+ * if the user is on the same page as the nav link
94
+ */
95
+ isSelected: _propTypes.default.bool,
96
+ /**
97
+ * Determines whether the item should render as a top-level nav item
98
+ * or a nested nav subitem. Set internally by EUI
99
+ */
100
+ isSubItem: _propTypes.default.bool,
101
+ header: _propTypes.default.node.isRequired,
102
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
103
+ /**
104
+ * Required text to render as the nav item title
105
+ */
106
+ title: _propTypes.default.string,
107
+ /**
108
+ * Allows customizing the title element.
109
+ * Consider using a heading element for better accessibility.
110
+ * Defaults to an unsemantic `span` or `div`, depending on context.
111
+ */
112
+ titleElement: _propTypes.default.oneOf(["h2", "h3", "h4", "h5", "h6", "span", "div"]),
113
+ /**
114
+ * Optional icon to render to the left of title content
115
+ */
116
+ icon: _propTypes.default.oneOfType([_propTypes.default.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "analyzeEvent", "annotation", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "article", "asterisk", "at", "auditbeatApp", "beaker", "bell", "bellSlash", "beta", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "check", "checkInCircleFilled", "cheer", "classificationJob", "clock", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "codeApp", "color", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "discoverApp", "discuss", "document", "documentEdit", "documentation", "documents", "dot", "dotInCircle", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "eql", "eraser", "error", "exit", "expand", "expandMini", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "filebeatApp", "filter", "filterExclude", "filterIgnore", "filterInclude", "filterInCircle", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "grabOmnidirectional", "gradient", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "indexTemporary", "infinity", "inputOutput", "inspect", "invert", "ip", "key", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "launch", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoVulnerabilityManagement", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "mobile", "monitoringApp", "moon", "namespace", "nested", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "palette", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipelineApp", "pivot", "play", "playFilled", "plus", "plusInCircle", "plusInCircleFilled", "popout", "push", "questionInCircle", "quote", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "snowflake", "sortAscending", "sortDescending", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spaces", "spacesApp", "sparkles", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelineWithArrow", "timelionApp", "timeRefresh", "timeslider", "training", "transitionLeftIn", "transitionLeftOut", "transitionTopIn", "transitionTopOut", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "vulnerabilityManagementApp", "warning", "alert", "watchesApp", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable", "tokenVectorDense", "tokenDenseVector", "tokenVectorSparse"]).isRequired, _propTypes.default.string.isRequired, _propTypes.default.elementType.isRequired]),
117
+ /**
118
+ * Optional props to pass to the title icon
119
+ */
120
+ iconProps: _propTypes.default.any,
121
+ className: _propTypes.default.string,
122
+ "aria-label": _propTypes.default.string,
123
+ "data-test-subj": _propTypes.default.string,
124
+ css: _propTypes.default.any,
125
+ /**
126
+ * The nav item link.
127
+ * If not included, and no `onClick` is specified, the nav item
128
+ * will render as an non-interactive `<span>`.
129
+ */
130
+ href: _propTypes.default.string,
131
+ /**
132
+ * Will render either an accordion or group of nested child item links.
133
+ *
134
+ * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
135
+ * subitem content, pass an object with a `renderItem` callback.
136
+ */
137
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
138
+ renderItem: _propTypes.default.func
139
+ }).isRequired),
140
+ /**
141
+ * If set to false, will (visually) render an always-open accordion that cannot
142
+ * be toggled closed. Ignored if `items` is not passed.
143
+ *
144
+ * @default true
145
+ */
146
+ isCollapsible: _propTypes.default.bool,
147
+ /**
148
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
149
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
150
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
151
+ */
152
+ accordionProps: _propTypes.default.any,
153
+ /**
154
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
155
+ */
156
+ linkProps: _propTypes.default.any,
157
+ /**
158
+ * Highlights whether an item is currently selected, e.g.
159
+ * if the user is on the same page as the nav link
160
+ */
161
+ isSelected: _propTypes.default.bool,
162
+ renderItem: _propTypes.default.func
163
+ }).isRequired).isRequired
164
+ };
@@ -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", "items", "isCollapsible", "accordionProps", "children"],
23
24
  _excluded2 = ["renderItem", "className"],
24
25
  _excluded3 = ["items", "isSubItem", "isGroup", "className"],
25
26
  _excluded4 = ["className"];
@@ -45,6 +46,8 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
45
46
  icon = _ref.icon,
46
47
  iconProps = _ref.iconProps,
47
48
  items = _ref.items,
49
+ _ref$isCollapsible = _ref.isCollapsible,
50
+ isCollapsible = _ref$isCollapsible === void 0 ? true : _ref$isCollapsible,
48
51
  accordionProps = _ref.accordionProps,
49
52
  children = _ref.children,
50
53
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
@@ -54,15 +57,23 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
54
57
  icon: icon,
55
58
  iconProps: iconProps
56
59
  });
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
- }));
60
+ if (items && items.length > 0) {
61
+ if (isCollapsible) {
62
+ return (0, _react2.jsx)(_collapsible_nav_accordion.EuiCollapsibleNavAccordion, (0, _extends2.default)({
63
+ buttonContent: headerContent,
64
+ items: items,
65
+ accordionProps: accordionProps
66
+ }, props, {
67
+ isSubItem: isSubItem
68
+ }));
69
+ } else {
70
+ return (0, _react2.jsx)(_collapsible_nav_group.EuiCollapsibleNavGroup, (0, _extends2.default)({
71
+ header: headerContent,
72
+ items: items
73
+ }, props, {
74
+ isSubItem: isSubItem
75
+ }));
76
+ }
66
77
  }
67
78
  return (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({}, props, {
68
79
  // EuiLink ExclusiveUnion type shenanigans
@@ -105,7 +116,7 @@ EuiCollapsibleNavItemDisplay.propTypes = {
105
116
  */
106
117
  href: _propTypes.default.string,
107
118
  /**
108
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
119
+ * Will render either an accordion or group of nested child item links.
109
120
  *
110
121
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
111
122
  * subitem content, pass an object with a `renderItem` callback.
@@ -114,9 +125,16 @@ EuiCollapsibleNavItemDisplay.propTypes = {
114
125
  renderItem: _propTypes.default.func
115
126
  }).isRequired),
116
127
  /**
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`)
128
+ * If set to false, will (visually) render an always-open accordion that cannot
129
+ * be toggled closed. Ignored if `items` is not passed.
130
+ *
131
+ * @default true
132
+ */
133
+ isCollapsible: _propTypes.default.bool,
134
+ /**
135
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
136
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
137
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
120
138
  */
121
139
  accordionProps: _propTypes.default.any,
122
140
  /**
@@ -205,16 +223,23 @@ EuiCollapsibleNavSubItem.propTypes = {
205
223
  */
206
224
  href: _propTypes.default.string,
207
225
  /**
208
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
226
+ * Will render either an accordion or group of nested child item links.
209
227
  *
210
228
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
211
229
  * subitem content, pass an object with a `renderItem` callback.
212
230
  */
213
231
  items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
214
232
  /**
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`)
233
+ * If set to false, will (visually) render an always-open accordion that cannot
234
+ * be toggled closed. Ignored if `items` is not passed.
235
+ *
236
+ * @default true
237
+ */
238
+ isCollapsible: _propTypes.default.bool,
239
+ /**
240
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
241
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
242
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
218
243
  */
219
244
  accordionProps: _propTypes.default.any,
220
245
  /**
@@ -303,16 +328,23 @@ EuiCollapsibleNavSubItems.propTypes = {
303
328
  */
304
329
  href: _propTypes.default.string,
305
330
  /**
306
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
331
+ * Will render either an accordion or group of nested child item links.
307
332
  *
308
333
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
309
334
  * subitem content, pass an object with a `renderItem` callback.
310
335
  */
311
336
  items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
312
337
  /**
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`)
338
+ * If set to false, will (visually) render an always-open accordion that cannot
339
+ * be toggled closed. Ignored if `items` is not passed.
340
+ *
341
+ * @default true
342
+ */
343
+ isCollapsible: _propTypes.default.bool,
344
+ /**
345
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
346
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
347
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
316
348
  */
317
349
  accordionProps: _propTypes.default.any,
318
350
  /**
@@ -374,7 +406,7 @@ EuiCollapsibleNavItem.propTypes = {
374
406
  */
375
407
  href: _propTypes.default.string,
376
408
  /**
377
- * When passed, an `EuiAccordion` with nested child item links will be rendered.
409
+ * Will render either an accordion or group of nested child item links.
378
410
  *
379
411
  * Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
380
412
  * subitem content, pass an object with a `renderItem` callback.
@@ -383,9 +415,16 @@ EuiCollapsibleNavItem.propTypes = {
383
415
  renderItem: _propTypes.default.func
384
416
  }).isRequired),
385
417
  /**
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`)
418
+ * If set to false, will (visually) render an always-open accordion that cannot
419
+ * be toggled closed. Ignored if `items` is not passed.
420
+ *
421
+ * @default true
422
+ */
423
+ isCollapsible: _propTypes.default.bool,
424
+ /**
425
+ * If `items` is specified, and `isCollapsible` is not set to false, you may
426
+ * use this prop to pass any prop that `EuiAccordion` accepts, including props
427
+ * that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
389
428
  */
390
429
  accordionProps: _propTypes.default.any,
391
430
  /**
@@ -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;
@@ -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,
@@ -3,8 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.euiCommentEventStyles = exports.euiCommentEventHeaderStyles = exports.euiCommentEventBodyStyles = void 0;
6
+ exports.euiCommentEventStyles = exports.euiCommentEventHeaderStyles = exports.euiCommentEventBorderColors = exports.euiCommentEventBodyStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../services");
8
9
  var _global_styling = require("../../global_styling");
9
10
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; } /*
10
11
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -13,7 +14,23 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
13
14
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
15
  * Side Public License, v 1.
15
16
  */
16
- var _ref3 = process.env.NODE_ENV === "production" ? {
17
+ var euiCommentEventBorderColors = function euiCommentEventBorderColors(_ref3) {
18
+ var euiTheme = _ref3.euiTheme,
19
+ colorMode = _ref3.colorMode;
20
+ var ratio = 0.6;
21
+ return {
22
+ warning: /*#__PURE__*/(0, _react.css)("border-color:", (0, _services.tintOrShade)(euiTheme.colors.warning, 0.4, colorMode), ";;label:warning;"),
23
+ accent: /*#__PURE__*/(0, _react.css)("border-color:", (0, _services.tintOrShade)(euiTheme.colors.accent, ratio, colorMode), ";;label:accent;"),
24
+ primary: /*#__PURE__*/(0, _react.css)("border-color:", (0, _services.tintOrShade)(euiTheme.colors.primary, ratio, colorMode), ";;label:primary;"),
25
+ success: /*#__PURE__*/(0, _react.css)("border-color:", (0, _services.tintOrShade)(euiTheme.colors.success, ratio, colorMode), ";;label:success;"),
26
+ danger: /*#__PURE__*/(0, _react.css)("border-color:", (0, _services.tintOrShade)(euiTheme.colors.danger, ratio, colorMode), ";;label:danger;"),
27
+ subdued: /*#__PURE__*/(0, _react.css)("border-color:", euiTheme.border.color, ";;label:subdued;"),
28
+ transparent: /*#__PURE__*/(0, _react.css)("border-color:", euiTheme.border.color, ";;label:transparent;"),
29
+ plain: /*#__PURE__*/(0, _react.css)("border-color:", euiTheme.border.color, ";;label:plain;")
30
+ };
31
+ };
32
+ exports.euiCommentEventBorderColors = euiCommentEventBorderColors;
33
+ var _ref2 = process.env.NODE_ENV === "production" ? {
17
34
  name: "yoyozp-euiCommentEvent",
18
35
  styles: "overflow:hidden;label:euiCommentEvent;"
19
36
  } : {
@@ -21,14 +38,11 @@ var _ref3 = process.env.NODE_ENV === "production" ? {
21
38
  styles: "overflow:hidden;label:euiCommentEvent;",
22
39
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
40
  };
24
- var euiCommentEventStyles = function euiCommentEventStyles(_ref4) {
25
- var euiTheme = _ref4.euiTheme;
41
+ var euiCommentEventStyles = function euiCommentEventStyles(euiThemeContext) {
42
+ var euiTheme = euiThemeContext.euiTheme;
26
43
  return {
27
- euiCommentEvent: _ref3,
28
- // types
29
- regular: /*#__PURE__*/(0, _react.css)("border:", euiTheme.border.thin, ";border-radius:", euiTheme.border.radius.medium, ";;label:regular;"),
30
- update: /*#__PURE__*/(0, _react.css)(";label:update;"),
31
- custom: /*#__PURE__*/(0, _react.css)(";label:custom;")
44
+ euiCommentEvent: _ref2,
45
+ border: /*#__PURE__*/(0, _react.css)("border-width:", euiTheme.border.width.thin, ";border-style:solid;border-radius:", euiTheme.border.radius.medium, ";;label:border;")
32
46
  };
33
47
  };
34
48
  exports.euiCommentEventStyles = euiCommentEventStyles;
@@ -40,22 +54,11 @@ var _ref = process.env.NODE_ENV === "production" ? {
40
54
  styles: "align-items:center;display:inline-flex;white-space:pre-wrap;flex-wrap:wrap;label:euiCommentEvent__headerEvent;",
41
55
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
42
56
  };
43
- var _ref2 = process.env.NODE_ENV === "production" ? {
44
- name: "bqgcpj-hasEventColor",
45
- styles: "padding:0;label:hasEventColor;"
46
- } : {
47
- name: "bqgcpj-hasEventColor",
48
- styles: "padding:0;label:hasEventColor;",
49
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
50
- };
51
- var euiCommentEventHeaderStyles = function euiCommentEventHeaderStyles(_ref5) {
52
- var euiTheme = _ref5.euiTheme;
57
+ var euiCommentEventHeaderStyles = function euiCommentEventHeaderStyles(euiThemeContext) {
58
+ var euiTheme = euiThemeContext.euiTheme;
53
59
  return {
54
60
  euiCommentEvent__header: /*#__PURE__*/(0, _react.css)(";label:euiCommentEvent__header;"),
55
- // types
56
- regular: /*#__PURE__*/(0, _react.css)("background:", euiTheme.colors.lightestShade, ";", (0, _global_styling.logicalCSS)('border-bottom', euiTheme.border.thin), " padding:", euiTheme.size.s, ";;label:regular;"),
57
- // variants
58
- hasEventColor: _ref2,
61
+ border: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('border-bottom-style', 'solid'), " ", (0, _global_styling.logicalCSS)('border-bottom-width', euiTheme.border.width.thin), ";;label:border;"),
59
62
  // Children
60
63
  euiCommentEvent__headerMain: /*#__PURE__*/(0, _react.css)("display:flex;flex:1;gap:", euiTheme.size.s, ";;label:euiCommentEvent__headerMain;"),
61
64
  euiCommentEvent__headerData: /*#__PURE__*/(0, _react.css)("display:flex;flex:1;align-items:center;flex-wrap:wrap;gap:", euiTheme.size.xs, ";;label:euiCommentEvent__headerData;"),
@@ -66,8 +69,8 @@ var euiCommentEventHeaderStyles = function euiCommentEventHeaderStyles(_ref5) {
66
69
  };
67
70
  };
68
71
  exports.euiCommentEventHeaderStyles = euiCommentEventHeaderStyles;
69
- var euiCommentEventBodyStyles = function euiCommentEventBodyStyles(_ref6) {
70
- var euiTheme = _ref6.euiTheme;
72
+ var euiCommentEventBodyStyles = function euiCommentEventBodyStyles(_ref4) {
73
+ var euiTheme = _ref4.euiTheme;
71
74
  return {
72
75
  euiCommentEvent__body: /*#__PURE__*/(0, _react.css)(";label:euiCommentEvent__body;"),
73
76
  // types