@elastic/eui 89.1.0 → 91.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 (508) hide show
  1. package/dist/eui_charts_theme.js +1 -15
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +114 -547
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +114 -547
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/accessibility/skip_link/skip_link.js +1 -2
  8. package/es/components/accordion/accordion.js +40 -4
  9. package/es/components/accordion/accordion_children/accordion_children.js +10 -17
  10. package/es/components/basic_table/basic_table.js +60 -23
  11. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  12. package/es/components/basic_table/in_memory_table.js +18 -4
  13. package/es/components/breadcrumbs/breadcrumb.js +5 -5
  14. package/es/components/breadcrumbs/breadcrumbs.js +5 -5
  15. package/es/components/button/button.js +17 -45
  16. package/es/components/button/button_display/_button_display.js +1 -1
  17. package/es/components/button/button_empty/button_empty.js +30 -47
  18. package/es/components/button/button_group/button_group.js +8 -10
  19. package/es/components/button/button_group/button_group_button.js +8 -51
  20. package/es/components/button/button_group/button_group_button.styles.js +2 -12
  21. package/es/components/button/button_icon/button_icon.js +26 -43
  22. package/es/components/card/card.js +1 -6
  23. package/es/components/card/card_select/card_select.js +1 -6
  24. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  25. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  26. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  27. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +26 -7
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  31. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  32. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  33. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +162 -0
  34. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  35. package/es/components/collapsible_nav_beta/context.js +1 -0
  36. package/es/components/combo_box/combo_box.js +7 -5
  37. package/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  38. package/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  39. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  40. package/es/components/combo_box/utils.js +23 -0
  41. package/es/components/comment_list/comment_event.js +31 -19
  42. package/es/components/comment_list/comment_event.styles.js +26 -24
  43. package/es/components/context_menu/context_menu.js +28 -22
  44. package/es/components/context_menu/context_menu.styles.js +26 -0
  45. package/es/components/context_menu/context_menu_item.js +95 -125
  46. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  47. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  48. package/es/components/context_menu/context_menu_panel.js +32 -61
  49. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  50. package/es/components/control_bar/control_bar.js +33 -28
  51. package/es/components/datagrid/body/data_grid_body.js +6 -7
  52. package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
  53. package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  54. package/es/components/datagrid/body/data_grid_cell.js +12 -13
  55. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  56. package/es/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  57. package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
  58. package/es/components/datagrid/controls/column_selector.js +5 -6
  59. package/es/components/datagrid/controls/column_sorting.js +6 -9
  60. package/es/components/datagrid/controls/display_selector.js +21 -16
  61. package/es/components/datagrid/data_grid.js +3 -865
  62. package/es/components/datagrid/utils/in_memory.js +6 -7
  63. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  64. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +92 -26
  65. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  66. package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  67. package/es/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  68. package/es/components/facet/facet_button.js +1 -1
  69. package/es/components/filter_group/filter_group.styles.js +1 -1
  70. package/es/components/form/field_number/field_number.js +13 -9
  71. package/es/components/form/field_password/field_password.js +4 -7
  72. package/es/components/form/range/dual_range.js +110 -85
  73. package/es/components/form/range/range.js +47 -40
  74. package/es/components/form/range/range_track.js +6 -20
  75. package/es/components/form/range/utils.js +1 -2
  76. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +5 -5
  77. package/es/components/header/header_links/header_link.js +1 -6
  78. package/es/components/header/header_links/header_links.js +5 -5
  79. package/es/components/header/header_section/header_section_item_button.js +1 -6
  80. package/es/components/i18n/i18n.js +1 -0
  81. package/es/components/list_group/list_group.js +1 -2
  82. package/es/components/list_group/list_group_item.js +7 -5
  83. package/es/components/list_group/list_group_item_extra_action.js +1 -2
  84. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  85. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  86. package/es/components/modal/confirm_modal.js +1 -1
  87. package/es/components/notification/notification_event.js +1 -6
  88. package/es/components/notification/notification_event_read_button.js +1 -2
  89. package/es/components/page/index.js +1 -4
  90. package/es/components/page/page_header/page_header_content.js +5 -5
  91. package/es/components/pagination/pagination_button.js +1 -6
  92. package/es/components/popover/input_popover.js +27 -12
  93. package/es/components/popover/popover.js +15 -27
  94. package/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  95. package/es/components/popover/popover_panel/_popover_panel.js +2 -6
  96. package/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  97. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
  98. package/es/components/tabs/tab.js +1 -1
  99. package/es/components/toast/global_toast_list.js +11 -1
  100. package/es/components/tour/tour_step.js +5 -5
  101. package/es/global_styling/mixins/_states.js +4 -1
  102. package/es/services/color/eui_palettes.js +0 -6
  103. package/es/services/color/index.js +1 -1
  104. package/es/services/hooks/useCombinedRefs.js +16 -9
  105. package/es/services/index.js +1 -2
  106. package/es/test/rtl/component_helpers.d.ts +2 -0
  107. package/es/test/rtl/component_helpers.js +40 -1
  108. package/eui.d.ts +294 -369
  109. package/i18ntokens.json +302 -248
  110. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  111. package/lib/components/accordion/accordion.js +40 -4
  112. package/lib/components/accordion/accordion_children/accordion_children.js +8 -15
  113. package/lib/components/basic_table/basic_table.js +60 -23
  114. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  115. package/lib/components/basic_table/in_memory_table.js +18 -4
  116. package/lib/components/breadcrumbs/breadcrumb.js +5 -5
  117. package/lib/components/button/button.js +24 -51
  118. package/lib/components/button/button_display/_button_display.js +1 -1
  119. package/lib/components/button/button_empty/button_empty.js +29 -46
  120. package/lib/components/button/button_group/button_group.js +7 -9
  121. package/lib/components/button/button_group/button_group_button.js +8 -51
  122. package/lib/components/button/button_group/button_group_button.styles.js +2 -12
  123. package/lib/components/button/button_icon/button_icon.js +25 -42
  124. package/lib/components/card/card.js +1 -6
  125. package/lib/components/card/card_select/card_select.js +1 -6
  126. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  127. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  128. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  129. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
  130. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  131. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  132. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  133. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  134. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  135. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +169 -0
  136. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  137. package/lib/components/collapsible_nav_beta/context.js +1 -0
  138. package/lib/components/combo_box/combo_box.js +7 -5
  139. package/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  140. package/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  141. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  142. package/lib/components/combo_box/utils.js +31 -0
  143. package/lib/components/comment_list/comment_event.js +33 -18
  144. package/lib/components/comment_list/comment_event.styles.js +28 -25
  145. package/lib/components/context_menu/context_menu.js +31 -24
  146. package/lib/components/context_menu/context_menu.styles.js +34 -0
  147. package/lib/components/context_menu/context_menu_item.js +102 -133
  148. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  149. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  150. package/lib/components/context_menu/context_menu_panel.js +35 -63
  151. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  152. package/lib/components/control_bar/control_bar.js +28 -23
  153. package/lib/components/datagrid/body/data_grid_body.js +6 -7
  154. package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
  155. package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  156. package/lib/components/datagrid/body/data_grid_cell.js +12 -13
  157. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  158. package/lib/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  159. package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
  160. package/lib/components/datagrid/controls/column_selector.js +5 -6
  161. package/lib/components/datagrid/controls/column_sorting.js +5 -8
  162. package/lib/components/datagrid/controls/display_selector.js +21 -16
  163. package/lib/components/datagrid/data_grid.js +2 -864
  164. package/lib/components/datagrid/utils/in_memory.js +6 -7
  165. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  166. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +91 -26
  167. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  168. package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  169. package/lib/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  170. package/lib/components/facet/facet_button.js +1 -1
  171. package/lib/components/filter_group/filter_group.styles.js +1 -1
  172. package/lib/components/form/field_number/field_number.js +12 -8
  173. package/lib/components/form/field_password/field_password.js +4 -7
  174. package/lib/components/form/range/dual_range.js +110 -85
  175. package/lib/components/form/range/range.js +47 -40
  176. package/lib/components/form/range/range_track.js +5 -19
  177. package/lib/components/form/range/utils.js +1 -2
  178. package/lib/components/header/header_links/header_link.js +1 -6
  179. package/lib/components/header/header_section/header_section_item_button.js +1 -6
  180. package/lib/components/i18n/i18n.js +1 -0
  181. package/lib/components/list_group/list_group.js +1 -2
  182. package/lib/components/list_group/list_group_item.js +7 -5
  183. package/lib/components/list_group/list_group_item_extra_action.js +1 -2
  184. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  185. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  186. package/lib/components/modal/confirm_modal.js +1 -1
  187. package/lib/components/notification/notification_event.js +1 -6
  188. package/lib/components/notification/notification_event_read_button.js +1 -2
  189. package/lib/components/page/index.js +1 -40
  190. package/lib/components/popover/input_popover.js +27 -12
  191. package/lib/components/popover/popover.js +29 -35
  192. package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  193. package/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  194. package/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  195. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  196. package/lib/components/tabs/tab.js +1 -1
  197. package/lib/components/toast/global_toast_list.js +11 -1
  198. package/lib/global_styling/mixins/_states.js +4 -1
  199. package/lib/services/color/eui_palettes.js +1 -8
  200. package/lib/services/color/index.js +0 -7
  201. package/lib/services/hooks/useCombinedRefs.js +19 -10
  202. package/lib/services/index.js +0 -15
  203. package/lib/test/rtl/component_helpers.d.ts +2 -0
  204. package/lib/test/rtl/component_helpers.js +41 -3
  205. package/optimize/es/components/accordion/accordion.js +32 -4
  206. package/optimize/es/components/accordion/accordion_children/accordion_children.js +8 -16
  207. package/optimize/es/components/basic_table/basic_table.js +42 -19
  208. package/optimize/es/components/button/button.js +15 -33
  209. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  210. package/optimize/es/components/button/button_group/button_group.js +7 -8
  211. package/optimize/es/components/button/button_group/button_group_button.js +6 -38
  212. package/optimize/es/components/button/button_group/button_group_button.styles.js +2 -12
  213. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  214. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  215. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  216. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -3
  217. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  218. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +64 -0
  219. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  220. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  221. package/optimize/es/components/combo_box/combo_box.js +7 -5
  222. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  223. package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  224. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  225. package/optimize/es/components/combo_box/utils.js +23 -0
  226. package/optimize/es/components/comment_list/comment_event.js +31 -19
  227. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  228. package/optimize/es/components/context_menu/context_menu.js +25 -19
  229. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  230. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  231. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  232. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  233. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  234. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  235. package/optimize/es/components/control_bar/control_bar.js +28 -23
  236. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  237. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +1 -1
  238. package/optimize/es/components/datagrid/controls/column_selector.js +5 -6
  239. package/optimize/es/components/datagrid/controls/column_sorting.js +6 -9
  240. package/optimize/es/components/datagrid/controls/display_selector.js +21 -16
  241. package/optimize/es/components/datagrid/data_grid.js +3 -3
  242. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +87 -26
  243. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  244. package/optimize/es/components/filter_group/filter_group.styles.js +1 -1
  245. package/optimize/es/components/form/field_number/field_number.js +13 -9
  246. package/optimize/es/components/form/field_password/field_password.js +4 -7
  247. package/optimize/es/components/form/range/dual_range.js +110 -85
  248. package/optimize/es/components/form/range/range.js +47 -40
  249. package/optimize/es/components/form/range/range_track.js +5 -14
  250. package/optimize/es/components/form/range/utils.js +1 -2
  251. package/optimize/es/components/i18n/i18n.js +1 -0
  252. package/optimize/es/components/list_group/list_group_item.js +6 -3
  253. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  254. package/optimize/es/components/page/index.js +1 -4
  255. package/optimize/es/components/popover/input_popover.js +27 -12
  256. package/optimize/es/components/popover/popover.js +10 -22
  257. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
  258. package/optimize/es/components/popover/popover_panel/_popover_panel.js +2 -1
  259. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  260. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
  261. package/optimize/es/components/tabs/tab.js +1 -1
  262. package/optimize/es/components/toast/global_toast_list.js +1 -1
  263. package/optimize/es/global_styling/mixins/_states.js +4 -1
  264. package/optimize/es/services/color/eui_palettes.js +0 -6
  265. package/optimize/es/services/color/index.js +1 -1
  266. package/optimize/es/services/hooks/useCombinedRefs.js +16 -9
  267. package/optimize/es/services/index.js +1 -2
  268. package/optimize/es/test/rtl/component_helpers.d.ts +2 -0
  269. package/optimize/es/test/rtl/component_helpers.js +40 -1
  270. package/optimize/lib/components/accordion/accordion.js +32 -4
  271. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +6 -14
  272. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  273. package/optimize/lib/components/button/button.js +16 -34
  274. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  275. package/optimize/lib/components/button/button_group/button_group.js +6 -7
  276. package/optimize/lib/components/button/button_group/button_group_button.js +6 -38
  277. package/optimize/lib/components/button/button_group/button_group_button.styles.js +2 -12
  278. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  279. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  280. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  281. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +7 -2
  282. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  283. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +71 -0
  284. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  285. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  286. package/optimize/lib/components/combo_box/combo_box.js +7 -5
  287. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  288. package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
  289. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  290. package/optimize/lib/components/combo_box/utils.js +31 -0
  291. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  292. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  293. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  294. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  295. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  296. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  297. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  298. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  299. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  300. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  301. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  302. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +1 -1
  303. package/optimize/lib/components/datagrid/controls/column_selector.js +5 -6
  304. package/optimize/lib/components/datagrid/controls/column_sorting.js +5 -8
  305. package/optimize/lib/components/datagrid/controls/display_selector.js +21 -16
  306. package/optimize/lib/components/datagrid/data_grid.js +2 -2
  307. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  308. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  309. package/optimize/lib/components/filter_group/filter_group.styles.js +1 -1
  310. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  311. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  312. package/optimize/lib/components/form/range/dual_range.js +110 -85
  313. package/optimize/lib/components/form/range/range.js +47 -40
  314. package/optimize/lib/components/form/range/range_track.js +4 -13
  315. package/optimize/lib/components/form/range/utils.js +1 -2
  316. package/optimize/lib/components/i18n/i18n.js +1 -0
  317. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  318. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  319. package/optimize/lib/components/page/index.js +1 -40
  320. package/optimize/lib/components/popover/input_popover.js +28 -13
  321. package/optimize/lib/components/popover/popover.js +24 -35
  322. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  323. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +2 -1
  324. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  325. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  326. package/optimize/lib/components/tabs/tab.js +1 -1
  327. package/optimize/lib/components/toast/global_toast_list.js +1 -1
  328. package/optimize/lib/global_styling/mixins/_states.js +4 -1
  329. package/optimize/lib/services/color/eui_palettes.js +1 -8
  330. package/optimize/lib/services/color/index.js +0 -7
  331. package/optimize/lib/services/hooks/useCombinedRefs.js +19 -10
  332. package/optimize/lib/services/index.js +0 -15
  333. package/optimize/lib/test/rtl/component_helpers.d.ts +2 -0
  334. package/optimize/lib/test/rtl/component_helpers.js +41 -3
  335. package/package.json +14 -14
  336. package/src/components/combo_box/_combo_box.scss +46 -14
  337. package/src/components/combo_box/combo_box_input/_combo_box_pill.scss +0 -17
  338. package/src/components/combo_box/combo_box_input/_index.scss +0 -2
  339. package/src/components/datagrid/_data_grid_data_row.scss +1 -3
  340. package/src/components/date_picker/super_date_picker/date_popover/_absolute_tab.scss +21 -0
  341. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  342. package/src/components/date_picker/super_date_picker/quick_select_popover/_quick_select_popover.scss +0 -4
  343. package/src/components/form/form_control_layout/_form_control_layout.scss +0 -1
  344. package/src/components/index.scss +0 -2
  345. package/src/global_styling/variables/_typography.scss +2 -2
  346. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  347. package/test-env/components/accordion/accordion.js +40 -4
  348. package/test-env/components/accordion/accordion_children/accordion_children.js +8 -15
  349. package/test-env/components/basic_table/basic_table.js +60 -23
  350. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  351. package/test-env/components/basic_table/in_memory_table.js +18 -4
  352. package/test-env/components/breadcrumbs/breadcrumb.js +5 -5
  353. package/test-env/components/button/button.js +17 -40
  354. package/test-env/components/button/button_display/_button_display.js +1 -1
  355. package/test-env/components/button/button_empty/button_empty.js +29 -46
  356. package/test-env/components/button/button_group/button_group.js +7 -9
  357. package/test-env/components/button/button_group/button_group_button.js +8 -51
  358. package/test-env/components/button/button_group/button_group_button.styles.js +2 -12
  359. package/test-env/components/button/button_icon/button_icon.js +25 -42
  360. package/test-env/components/card/card.js +1 -6
  361. package/test-env/components/card/card_select/card_select.js +1 -6
  362. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
  363. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  364. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  365. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
  366. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  367. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  368. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  369. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  370. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  371. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +168 -0
  372. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  373. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  374. package/test-env/components/combo_box/combo_box.js +7 -5
  375. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +107 -65
  376. package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
  377. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
  378. package/test-env/components/combo_box/utils.js +31 -0
  379. package/test-env/components/comment_list/comment_event.js +33 -18
  380. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  381. package/test-env/components/context_menu/context_menu.js +31 -24
  382. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  383. package/test-env/components/context_menu/context_menu_item.js +102 -129
  384. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  385. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  386. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  387. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  388. package/test-env/components/control_bar/control_bar.js +28 -23
  389. package/test-env/components/datagrid/body/data_grid_body.js +6 -7
  390. package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
  391. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  392. package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
  393. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  394. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +7 -8
  395. package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
  396. package/test-env/components/datagrid/controls/column_selector.js +5 -6
  397. package/test-env/components/datagrid/controls/column_sorting.js +5 -8
  398. package/test-env/components/datagrid/controls/display_selector.js +21 -16
  399. package/test-env/components/datagrid/data_grid.js +2 -864
  400. package/test-env/components/datagrid/utils/in_memory.js +6 -7
  401. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  402. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
  403. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  404. package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
  405. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +19 -0
  406. package/test-env/components/facet/facet_button.js +1 -1
  407. package/test-env/components/filter_group/filter_group.styles.js +1 -1
  408. package/test-env/components/form/field_number/field_number.js +12 -8
  409. package/test-env/components/form/field_password/field_password.js +4 -7
  410. package/test-env/components/form/range/dual_range.js +110 -85
  411. package/test-env/components/form/range/range.js +47 -40
  412. package/test-env/components/form/range/range_track.js +5 -14
  413. package/test-env/components/form/range/utils.js +1 -2
  414. package/test-env/components/header/header_links/header_link.js +1 -6
  415. package/test-env/components/header/header_section/header_section_item_button.js +1 -6
  416. package/test-env/components/i18n/i18n.js +1 -0
  417. package/test-env/components/list_group/list_group.js +1 -2
  418. package/test-env/components/list_group/list_group_item.js +7 -5
  419. package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
  420. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  421. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  422. package/test-env/components/modal/confirm_modal.js +1 -1
  423. package/test-env/components/notification/notification_event.js +1 -6
  424. package/test-env/components/notification/notification_event_read_button.js +1 -2
  425. package/test-env/components/page/index.js +1 -40
  426. package/test-env/components/popover/input_popover.js +27 -12
  427. package/test-env/components/popover/popover.js +29 -35
  428. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
  429. package/test-env/components/popover/popover_panel/_popover_panel.js +2 -1
  430. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +6 -1
  431. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
  432. package/test-env/components/tabs/tab.js +1 -1
  433. package/test-env/components/toast/global_toast_list.js +11 -1
  434. package/test-env/global_styling/mixins/_states.js +4 -1
  435. package/test-env/services/color/eui_palettes.js +1 -8
  436. package/test-env/services/color/index.js +0 -7
  437. package/test-env/services/hooks/useCombinedRefs.js +19 -10
  438. package/test-env/services/index.js +0 -15
  439. package/test-env/test/rtl/component_helpers.js +41 -3
  440. package/es/components/page/page_content/index.js +0 -12
  441. package/es/components/page/page_content/page_content.js +0 -110
  442. package/es/components/page/page_content/page_content_body.js +0 -69
  443. package/es/components/page/page_content/page_content_header.js +0 -43
  444. package/es/components/page/page_content/page_content_header_section.js +0 -34
  445. package/es/components/page/page_side_bar/index.js +0 -9
  446. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  447. package/es/components/page/page_template.js +0 -591
  448. package/es/services/random.js +0 -94
  449. package/es/services/utils.js +0 -25
  450. package/es/test/patch_random.js +0 -18
  451. package/lib/components/page/page_content/index.js +0 -33
  452. package/lib/components/page/page_content/page_content.js +0 -117
  453. package/lib/components/page/page_content/page_content_body.js +0 -77
  454. package/lib/components/page/page_content/page_content_header.js +0 -50
  455. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  456. package/lib/components/page/page_side_bar/index.js +0 -12
  457. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  458. package/lib/components/page/page_template.js +0 -598
  459. package/lib/services/random.js +0 -100
  460. package/lib/services/utils.js +0 -35
  461. package/lib/test/patch_random.js +0 -25
  462. package/optimize/es/components/page/page_content/index.js +0 -12
  463. package/optimize/es/components/page/page_content/page_content.js +0 -45
  464. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  465. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  466. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  467. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  468. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  469. package/optimize/es/components/page/page_template.js +0 -325
  470. package/optimize/es/services/random.js +0 -85
  471. package/optimize/es/services/utils.js +0 -25
  472. package/optimize/es/test/patch_random.js +0 -18
  473. package/optimize/lib/components/page/page_content/index.js +0 -33
  474. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  475. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  476. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  477. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  478. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  479. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  480. package/optimize/lib/components/page/page_template.js +0 -332
  481. package/optimize/lib/services/random.js +0 -91
  482. package/optimize/lib/services/utils.js +0 -35
  483. package/optimize/lib/test/patch_random.js +0 -25
  484. package/src/components/combo_box/combo_box_input/_combo_box_input.scss +0 -12
  485. package/src/components/combo_box/combo_box_input/_combo_box_placeholder.scss +0 -11
  486. package/src/components/context_menu/_context_menu.scss +0 -27
  487. package/src/components/context_menu/_context_menu_item.scss +0 -65
  488. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  489. package/src/components/context_menu/_index.scss +0 -3
  490. package/src/components/page/_index.scss +0 -2
  491. package/src/components/page/page_content/_index.scss +0 -4
  492. package/src/components/page/page_content/_page_content.scss +0 -25
  493. package/src/components/page/page_content/_page_content_body.scss +0 -19
  494. package/src/components/page/page_content/_page_content_header.scss +0 -20
  495. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  496. package/src/components/page/page_side_bar/_index.scss +0 -1
  497. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  498. package/test-env/components/page/page_content/index.js +0 -33
  499. package/test-env/components/page/page_content/page_content.js +0 -116
  500. package/test-env/components/page/page_content/page_content_body.js +0 -73
  501. package/test-env/components/page/page_content/page_content_header.js +0 -49
  502. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  503. package/test-env/components/page/page_side_bar/index.js +0 -12
  504. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  505. package/test-env/components/page/page_template.js +0 -594
  506. package/test-env/services/random.js +0 -91
  507. package/test-env/services/utils.js +0 -35
  508. package/test-env/test/patch_random.js +0 -25
@@ -0,0 +1,168 @@
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
+ var labelledById = (0, _services.useGeneratedHtmlId)();
55
+ return (0, _react2.jsx)("div", (0, _extends2.default)({
56
+ className: classes
57
+ }, cssStyles, rest), (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({
58
+ href: href,
59
+ id: labelledById
60
+ }, linkProps, {
61
+ isSelected: isSelected,
62
+ isSubItem: isSubItem,
63
+ isInteractive: !!(href || rest.onClick || linkProps !== null && linkProps !== void 0 && linkProps.onClick)
64
+ }), header), (0, _react2.jsx)(_collapsible_nav_item.EuiCollapsibleNavSubItems, {
65
+ items: items,
66
+ isSubItem: isSubItem,
67
+ className: "euiCollapsibleNavGroup__children",
68
+ role: "group",
69
+ "aria-labelledby": (linkProps === null || linkProps === void 0 ? void 0 : linkProps.id) || labelledById
70
+ }));
71
+ };
72
+ exports.EuiCollapsibleNavGroup = EuiCollapsibleNavGroup;
73
+ EuiCollapsibleNavGroup.propTypes = {
74
+ className: _propTypes.default.string,
75
+ "aria-label": _propTypes.default.string,
76
+ "data-test-subj": _propTypes.default.string,
77
+ css: _propTypes.default.any,
78
+ /**
79
+ * The nav item link.
80
+ * If not included, and no `onClick` is specified, the nav item
81
+ * will render as an non-interactive `<span>`.
82
+ */
83
+ href: _propTypes.default.string,
84
+ /**
85
+ * If set to false, will (visually) render an always-open accordion that cannot
86
+ * be toggled closed. Ignored if `items` is not passed.
87
+ *
88
+ * @default true
89
+ */
90
+ isCollapsible: _propTypes.default.bool,
91
+ /**
92
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
93
+ */
94
+ linkProps: _propTypes.default.any,
95
+ /**
96
+ * Highlights whether an item is currently selected, e.g.
97
+ * if the user is on the same page as the nav link
98
+ */
99
+ isSelected: _propTypes.default.bool,
100
+ /**
101
+ * Determines whether the item should render as a top-level nav item
102
+ * or a nested nav subitem. Set internally by EUI
103
+ */
104
+ isSubItem: _propTypes.default.bool,
105
+ header: _propTypes.default.node.isRequired,
106
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
107
+ /**
108
+ * Required text to render as the nav item title
109
+ */
110
+ title: _propTypes.default.string,
111
+ /**
112
+ * Allows customizing the title element.
113
+ * Consider using a heading element for better accessibility.
114
+ * Defaults to an unsemantic `span` or `div`, depending on context.
115
+ */
116
+ titleElement: _propTypes.default.oneOf(["h2", "h3", "h4", "h5", "h6", "span", "div"]),
117
+ /**
118
+ * Optional icon to render to the left of title content
119
+ */
120
+ 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]),
121
+ /**
122
+ * Optional props to pass to the title icon
123
+ */
124
+ iconProps: _propTypes.default.any,
125
+ className: _propTypes.default.string,
126
+ "aria-label": _propTypes.default.string,
127
+ "data-test-subj": _propTypes.default.string,
128
+ css: _propTypes.default.any,
129
+ /**
130
+ * The nav item link.
131
+ * If not included, and no `onClick` is specified, the nav item
132
+ * will render as an non-interactive `<span>`.
133
+ */
134
+ href: _propTypes.default.string,
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
+ */
141
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
142
+ renderItem: _propTypes.default.func
143
+ }).isRequired),
144
+ /**
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,
151
+ /**
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,
157
+ /**
158
+ * If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
159
+ */
160
+ linkProps: _propTypes.default.any,
161
+ /**
162
+ * Highlights whether an item is currently selected, e.g.
163
+ * if the user is on the same page as the nav link
164
+ */
165
+ isSelected: _propTypes.default.bool,
166
+ renderItem: _propTypes.default.func
167
+ }).isRequired).isRequired
168
+ };
@@ -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;
@@ -411,14 +411,16 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
411
411
  var _this$props10 = _this.props,
412
412
  onSearchChange = _this$props10.onSearchChange,
413
413
  delimiter = _this$props10.delimiter;
414
- if (onSearchChange) {
415
- var _hasMatchingOptions = _this.state.matchingOptions.length > 0;
416
- onSearchChange(searchValue, _hasMatchingOptions);
417
- }
418
414
  _this.setState({
419
415
  searchValue: searchValue
420
416
  }, function () {
421
- if (searchValue && _this.state.isListOpen === false) _this.openList();
417
+ if (searchValue && _this.state.isListOpen === false) {
418
+ _this.openList();
419
+ }
420
+ if (onSearchChange) {
421
+ var _hasMatchingOptions = _this.state.matchingOptions.length > 0;
422
+ onSearchChange(searchValue, _hasMatchingOptions);
423
+ }
422
424
  });
423
425
  if (delimiter && searchValue.endsWith(delimiter)) {
424
426
  _this.setCustomOptions(false);
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.EuiComboBoxInput = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
12
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
14
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
@@ -23,6 +23,7 @@ var _services = require("../../../services");
23
23
  var _accessibility = require("../../accessibility");
24
24
  var _form_control_layout = require("../../form/form_control_layout");
25
25
  var _num_icons = require("../../form/form_control_layout/_num_icons");
26
+ var _utils = require("../utils");
26
27
  var _combo_box_pill = require("./combo_box_pill");
27
28
  var _react2 = require("@emotion/react");
28
29
  var _excluded = ["key", "label", "color", "onClick", "append", "prepend", "truncationProps"];
@@ -60,6 +61,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
60
61
  });
61
62
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateInputSize", function (inputValue) {
62
63
  if (!_this.widthUtils) return;
64
+ if (_this.asPlainText) return;
63
65
  _this.widthUtils.setTextToCheck(inputValue);
64
66
  // Canvas has minute subpixel differences in rendering compared to DOM
65
67
  // We'll buffer the input by ~2px just to ensure sufficient width
@@ -85,65 +87,42 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
85
87
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onKeyDown", function (event) {
86
88
  var _this$props2 = _this.props,
87
89
  searchValue = _this$props2.searchValue,
90
+ hasSelectedOptions = _this$props2.hasSelectedOptions,
88
91
  selectedOptions = _this$props2.selectedOptions,
89
92
  onRemoveOption = _this$props2.onRemoveOption,
90
93
  singleSelection = _this$props2.singleSelection,
91
94
  isListOpen = _this$props2.isListOpen,
92
- onOpenListClick = _this$props2.onOpenListClick;
93
-
94
- // When backspacing from an empty input, delete the last pill option in the list
95
+ onOpenListClick = _this$props2.onOpenListClick,
96
+ onChange = _this$props2.onChange;
95
97
  var searchIsEmpty = !searchValue.length;
96
- var hasPills = selectedOptions.length;
97
- if (event.key === _services.keys.BACKSPACE && searchIsEmpty && hasPills) {
98
- onRemoveOption(selectedOptions[selectedOptions.length - 1]);
99
- if (!!singleSelection && !isListOpen) {
100
- onOpenListClick();
98
+ if (event.key === _services.keys.BACKSPACE) {
99
+ // When backspacing in a plain text combobox, change normally and remove the selection
100
+ if (_this.asPlainText) {
101
+ onChange(event.currentTarget.value);
102
+ if (hasSelectedOptions) {
103
+ onRemoveOption(selectedOptions[selectedOptions.length - 1]);
104
+ }
105
+ }
106
+ // When backspacing from an empty input, delete the last pill option in the list
107
+ else if (searchIsEmpty && hasSelectedOptions) {
108
+ onRemoveOption(selectedOptions[selectedOptions.length - 1]);
109
+ if (!!singleSelection && !isListOpen) {
110
+ onOpenListClick();
111
+ }
101
112
  }
102
113
  }
103
114
  });
104
- return _this;
105
- }
106
- (0, _createClass2.default)(EuiComboBoxInput, [{
107
- key: "componentDidUpdate",
108
- value: function componentDidUpdate(prevProps) {
109
- if (prevProps.searchValue !== this.props.searchValue) {
110
- this.updateInputSize(this.props.searchValue);
111
- }
112
- }
113
- }, {
114
- key: "render",
115
- value: function render() {
116
- var _this$props3 = this.props,
117
- compressed = _this$props3.compressed,
118
- focusedOptionId = _this$props3.focusedOptionId,
119
- fullWidth = _this$props3.fullWidth,
120
- hasSelectedOptions = _this$props3.hasSelectedOptions,
121
- id = _this$props3.id,
122
- isDisabled = _this$props3.isDisabled,
123
- isListOpen = _this$props3.isListOpen,
124
- noIcon = _this$props3.noIcon,
125
- _onChange = _this$props3.onChange,
126
- onClear = _this$props3.onClear,
127
- onClick = _this$props3.onClick,
128
- onCloseListClick = _this$props3.onCloseListClick,
129
- onOpenListClick = _this$props3.onOpenListClick,
130
- onRemoveOption = _this$props3.onRemoveOption,
131
- placeholder = _this$props3.placeholder,
132
- rootId = _this$props3.rootId,
133
- searchValue = _this$props3.searchValue,
115
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderPills", function () {
116
+ // Don't render a pill for plain text comboboxes - use the input instead
117
+ if (_this.asPlainText) return null;
118
+ // Don't render the single pill selection while searching
119
+ if (_this.props.singleSelection && _this.props.searchValue) return null;
120
+ var _this$props3 = _this.props,
134
121
  selectedOptions = _this$props3.selectedOptions,
135
- singleSelectionProp = _this$props3.singleSelection,
136
- value = _this$props3.value,
137
- prepend = _this$props3.prepend,
138
- append = _this$props3.append,
139
- isLoading = _this$props3.isLoading,
140
- isInvalid = _this$props3.isInvalid,
141
- autoFocus = _this$props3.autoFocus,
142
- ariaLabel = _this$props3['aria-label'],
143
- ariaLabelledby = _this$props3['aria-labelledby'];
144
- var singleSelection = Boolean(singleSelectionProp);
145
- var asPlainText = singleSelectionProp && (0, _typeof2.default)(singleSelectionProp) === 'object' && singleSelectionProp.asPlainText || false;
146
- var pills = selectedOptions ? selectedOptions.map(function (option) {
122
+ isDisabled = _this$props3.isDisabled,
123
+ onRemoveOption = _this$props3.onRemoveOption;
124
+ if (!selectedOptions || !selectedOptions.length) return null;
125
+ return selectedOptions.map(function (option) {
147
126
  var key = option.key,
148
127
  label = option.label,
149
128
  color = option.color,
@@ -152,17 +131,77 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
152
131
  prepend = option.prepend,
153
132
  truncationProps = option.truncationProps,
154
133
  rest = (0, _objectWithoutProperties2.default)(option, _excluded);
155
- var pillOnClose = isDisabled || singleSelection || onClick ? undefined : onRemoveOption;
134
+ var pillOnClose = isDisabled || _this.props.singleSelection || onClick ? undefined : onRemoveOption;
156
135
  return (0, _react2.jsx)(_combo_box_pill.EuiComboBoxPill, (0, _extends2.default)({
157
136
  option: option,
158
137
  onClose: pillOnClose,
159
138
  key: key !== null && key !== void 0 ? key : label.toLowerCase(),
160
139
  color: color,
161
140
  onClick: onClick,
162
- onClickAriaLabel: onClick ? 'Change' : undefined,
163
- asPlainText: asPlainText
141
+ onClickAriaLabel: onClick ? 'Change' : undefined
164
142
  }, rest), label);
165
- }) : null;
143
+ });
144
+ });
145
+ return _this;
146
+ }
147
+ (0, _createClass2.default)(EuiComboBoxInput, [{
148
+ key: "componentDidUpdate",
149
+ value: function componentDidUpdate(prevProps) {
150
+ if (prevProps.searchValue !== this.props.searchValue) {
151
+ this.updateInputSize(this.props.searchValue);
152
+ }
153
+ }
154
+ }, {
155
+ key: "asPlainText",
156
+ get: function get() {
157
+ var singleSelection = this.props.singleSelection;
158
+ var isSingleSelectionConfig = singleSelection && (0, _typeof2.default)(singleSelection) === 'object';
159
+ return !!(isSingleSelectionConfig && singleSelection.asPlainText);
160
+ }
161
+ }, {
162
+ key: "searchValue",
163
+ get: function get() {
164
+ var _this$props4 = this.props,
165
+ searchValue = _this$props4.searchValue,
166
+ selectedOptions = _this$props4.selectedOptions;
167
+ if (this.asPlainText) {
168
+ var _selectedOptions$;
169
+ return searchValue || (selectedOptions === null || selectedOptions === void 0 ? void 0 : (_selectedOptions$ = selectedOptions[0]) === null || _selectedOptions$ === void 0 ? void 0 : _selectedOptions$.label) || '';
170
+ } else {
171
+ return searchValue;
172
+ }
173
+ }
174
+ }, {
175
+ key: "render",
176
+ value: function render() {
177
+ var _this$props5 = this.props,
178
+ compressed = _this$props5.compressed,
179
+ focusedOptionId = _this$props5.focusedOptionId,
180
+ fullWidth = _this$props5.fullWidth,
181
+ hasSelectedOptions = _this$props5.hasSelectedOptions,
182
+ id = _this$props5.id,
183
+ isDisabled = _this$props5.isDisabled,
184
+ isListOpen = _this$props5.isListOpen,
185
+ noIcon = _this$props5.noIcon,
186
+ _onChange = _this$props5.onChange,
187
+ onClear = _this$props5.onClear,
188
+ onClick = _this$props5.onClick,
189
+ onFocus = _this$props5.onFocus,
190
+ onCloseListClick = _this$props5.onCloseListClick,
191
+ onOpenListClick = _this$props5.onOpenListClick,
192
+ placeholder = _this$props5.placeholder,
193
+ rootId = _this$props5.rootId,
194
+ searchValue = _this$props5.searchValue,
195
+ selectedOptions = _this$props5.selectedOptions,
196
+ singleSelection = _this$props5.singleSelection,
197
+ value = _this$props5.value,
198
+ prepend = _this$props5.prepend,
199
+ append = _this$props5.append,
200
+ isLoading = _this$props5.isLoading,
201
+ isInvalid = _this$props5.isInvalid,
202
+ autoFocus = _this$props5.autoFocus,
203
+ ariaLabel = _this$props5['aria-label'],
204
+ ariaLabelledby = _this$props5['aria-labelledby'];
166
205
  var removeOptionMessage;
167
206
  var removeOptionMessageId;
168
207
  if (this.state.hasFocus) {
@@ -179,12 +218,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
179
218
  id: removeOptionMessageId
180
219
  }, removeOptionMessageContent));
181
220
  }
182
- var placeholderMessage;
183
- if (placeholder && selectedOptions && !selectedOptions.length && !searchValue) {
184
- placeholderMessage = (0, _react2.jsx)("p", {
185
- className: "euiComboBoxPlaceholder"
186
- }, placeholder);
187
- }
221
+ var showPlaceholder = placeholder && !(selectedOptions !== null && selectedOptions !== void 0 && selectedOptions.length) && !searchValue;
188
222
  var clickProps = {};
189
223
  if (!isDisabled && onClear && hasSelectedOptions) {
190
224
  clickProps.clear = {
@@ -214,6 +248,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
214
248
  'euiComboBox__inputWrap--compressed': compressed,
215
249
  'euiComboBox__inputWrap--fullWidth': fullWidth,
216
250
  'euiComboBox__inputWrap--noWrap': singleSelection,
251
+ 'euiComboBox__inputWrap--plainText': this.asPlainText || showPlaceholder,
217
252
  'euiComboBox__inputWrap--inGroup': prepend || append
218
253
  });
219
254
  return (0, _react2.jsx)(_form_control_layout.EuiFormControlLayout, (0, _extends2.default)({
@@ -231,7 +266,10 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
231
266
  "data-test-subj": "comboBoxInput",
232
267
  onClick: onClick,
233
268
  tabIndex: -1 // becomes onBlur event's relatedTarget, otherwise relatedTarget is null when clicking on this div
234
- }, !singleSelection || !searchValue ? pills : null, placeholderMessage, (0, _react2.jsx)("input", {
269
+ }, this.renderPills(), (0, _react2.jsx)(_utils.EuiComboBoxOptionAppendPrepend, {
270
+ option: this.asPlainText ? selectedOptions === null || selectedOptions === void 0 ? void 0 : selectedOptions[0] : undefined,
271
+ classNamePrefix: "euiComboBoxPlainTextSelection"
272
+ }, (0, _react2.jsx)("input", {
235
273
  "aria-activedescendant": focusedOptionId,
236
274
  "aria-autocomplete": "list",
237
275
  "aria-controls": isListOpen ? rootId('listbox') : '',
@@ -252,11 +290,15 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
252
290
  ref: this.inputRefCallback,
253
291
  role: "combobox",
254
292
  style: {
255
- inlineSize: this.state.inputWidth
293
+ inlineSize: this.asPlainText || showPlaceholder ? '100%' : this.state.inputWidth
256
294
  },
257
- value: searchValue,
295
+ placeholder: showPlaceholder ? placeholder : undefined,
296
+ value: this.searchValue,
258
297
  autoFocus: autoFocus
259
- }), removeOptionMessage));
298
+ // Force the menu to re-open on every input click - only necessary when plain text
299
+ ,
300
+ onClick: this.asPlainText ? onFocus : undefined // Type shenanigans - event should be mostly the same
301
+ })), removeOptionMessage));
260
302
  }
261
303
  }]);
262
304
  return EuiComboBoxInput;