@elastic/eui 115.0.0 → 116.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 (275) hide show
  1. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  2. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  3. package/es/components/combo_box/combo_box.a11y.js +5 -5
  4. package/es/components/combo_box/combo_box.js +61 -53
  5. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +147 -84
  6. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
  7. package/es/components/context_menu/context_menu.js +19 -21
  8. package/es/components/context_menu/context_menu.styles.js +5 -2
  9. package/es/components/context_menu/context_menu_item.js +69 -58
  10. package/es/components/context_menu/context_menu_item.styles.js +14 -28
  11. package/es/components/context_menu/context_menu_panel.js +37 -21
  12. package/es/components/context_menu/context_menu_panel.styles.js +7 -2
  13. package/es/components/context_menu/context_menu_panel_title.js +124 -0
  14. package/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
  15. package/es/components/context_menu/index.js +2 -1
  16. package/es/components/datagrid/body/cell/data_grid_cell.js +35 -29
  17. package/es/components/datagrid/body/data_grid_body.js +23 -17
  18. package/es/components/datagrid/body/data_grid_body_custom.js +23 -17
  19. package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  20. package/es/components/datagrid/body/header/column_actions.js +1 -2
  21. package/es/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  22. package/es/components/datagrid/controls/column_sorting.js +23 -17
  23. package/es/components/datagrid/utils/in_memory.js +23 -17
  24. package/es/components/filter_group/filter_group.a11y.js +8 -2
  25. package/es/components/flyout/flyout_menu.js +1 -4
  26. package/es/components/form/checkbox/checkbox.js +6 -6
  27. package/es/components/form/checkbox/checkbox.styles.js +1 -22
  28. package/es/components/form/checkbox/checkbox_control.js +78 -0
  29. package/es/components/form/checkbox/checkbox_control.styles.js +40 -0
  30. package/es/components/form/checkbox/index.js +1 -0
  31. package/es/components/form/form.styles.js +2 -1
  32. package/es/components/form/radio/radio.styles.js +1 -1
  33. package/es/components/form/super_select/super_select.js +118 -99
  34. package/es/components/form/super_select/super_select.styles.js +4 -8
  35. package/es/components/form/super_select/super_select_item.js +10 -18
  36. package/es/components/link/external_link_icon.js +4 -2
  37. package/es/components/list_group/list_group.js +20 -34
  38. package/es/components/list_group/list_group.styles.js +2 -16
  39. package/es/components/list_group/list_group_item.js +75 -86
  40. package/es/components/list_group/list_group_item.styles.js +17 -61
  41. package/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
  42. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  43. package/es/components/list_item_layout/_list_item_layout.js +692 -0
  44. package/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
  45. package/es/components/list_item_layout/index.js +9 -0
  46. package/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
  47. package/es/components/selectable/selectable.js +1 -0
  48. package/es/components/selectable/selectable_list/selectable_list.js +52 -36
  49. package/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
  50. package/es/components/selectable/selectable_list/selectable_list_item.js +45 -152
  51. package/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
  52. package/es/components/selectable/selectable_search/selectable_search.js +4 -1
  53. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  54. package/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  55. package/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  56. package/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  57. package/es/global_styling/mixins/_helpers.js +32 -11
  58. package/eui.d.ts +10397 -8051
  59. package/i18ntokens.json +2607 -2589
  60. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  61. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  62. package/lib/components/combo_box/combo_box.a11y.js +5 -5
  63. package/lib/components/combo_box/combo_box.js +61 -53
  64. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
  65. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  66. package/lib/components/context_menu/context_menu.js +20 -22
  67. package/lib/components/context_menu/context_menu.styles.js +4 -1
  68. package/lib/components/context_menu/context_menu_item.js +70 -59
  69. package/lib/components/context_menu/context_menu_item.styles.js +13 -27
  70. package/lib/components/context_menu/context_menu_panel.js +37 -21
  71. package/lib/components/context_menu/context_menu_panel.styles.js +7 -2
  72. package/lib/components/context_menu/context_menu_panel_title.js +130 -0
  73. package/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
  74. package/lib/components/context_menu/index.js +8 -1
  75. package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -29
  76. package/lib/components/datagrid/body/data_grid_body.js +23 -17
  77. package/lib/components/datagrid/body/data_grid_body_custom.js +23 -17
  78. package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  79. package/lib/components/datagrid/body/header/column_actions.js +1 -2
  80. package/lib/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  81. package/lib/components/datagrid/controls/column_sorting.js +23 -17
  82. package/lib/components/datagrid/utils/in_memory.js +23 -17
  83. package/lib/components/filter_group/filter_group.a11y.js +8 -2
  84. package/lib/components/flyout/flyout_menu.js +1 -4
  85. package/lib/components/form/checkbox/checkbox.js +6 -6
  86. package/lib/components/form/checkbox/checkbox.styles.js +1 -22
  87. package/lib/components/form/checkbox/checkbox_control.js +84 -0
  88. package/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
  89. package/lib/components/form/checkbox/index.js +7 -0
  90. package/lib/components/form/form.styles.js +2 -1
  91. package/lib/components/form/radio/radio.styles.js +1 -1
  92. package/lib/components/form/super_select/super_select.js +116 -97
  93. package/lib/components/form/super_select/super_select.styles.js +4 -8
  94. package/lib/components/form/super_select/super_select_item.js +13 -18
  95. package/lib/components/link/external_link_icon.js +4 -2
  96. package/lib/components/list_group/list_group.js +21 -35
  97. package/lib/components/list_group/list_group.styles.js +2 -16
  98. package/lib/components/list_group/list_group_item.js +75 -86
  99. package/lib/components/list_group/list_group_item.styles.js +17 -61
  100. package/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
  101. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  102. package/lib/components/list_item_layout/_list_item_layout.js +699 -0
  103. package/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
  104. package/lib/components/list_item_layout/index.js +12 -0
  105. package/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
  106. package/lib/components/selectable/selectable.js +1 -0
  107. package/lib/components/selectable/selectable_list/selectable_list.js +50 -34
  108. package/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  109. package/lib/components/selectable/selectable_list/selectable_list_item.js +44 -152
  110. package/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  111. package/lib/components/selectable/selectable_search/selectable_search.js +4 -1
  112. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  113. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  114. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  115. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  116. package/lib/global_styling/mixins/_helpers.js +33 -12
  117. package/optimize/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
  118. package/optimize/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  119. package/optimize/es/components/combo_box/combo_box.a11y.js +5 -5
  120. package/optimize/es/components/combo_box/combo_box.js +60 -52
  121. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -83
  122. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
  123. package/optimize/es/components/context_menu/context_menu.js +18 -13
  124. package/optimize/es/components/context_menu/context_menu.styles.js +5 -2
  125. package/optimize/es/components/context_menu/context_menu_item.js +55 -53
  126. package/optimize/es/components/context_menu/context_menu_item.styles.js +14 -28
  127. package/optimize/es/components/context_menu/context_menu_panel.js +36 -17
  128. package/optimize/es/components/context_menu/context_menu_panel.styles.js +7 -2
  129. package/optimize/es/components/context_menu/context_menu_panel_title.js +53 -0
  130. package/optimize/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
  131. package/optimize/es/components/context_menu/index.js +2 -1
  132. package/optimize/es/components/datagrid/body/header/column_actions.js +1 -2
  133. package/optimize/es/components/filter_group/filter_group.a11y.js +8 -2
  134. package/optimize/es/components/flyout/flyout_menu.js +1 -4
  135. package/optimize/es/components/form/checkbox/checkbox.js +6 -6
  136. package/optimize/es/components/form/checkbox/checkbox.styles.js +1 -22
  137. package/optimize/es/components/form/checkbox/checkbox_control.js +48 -0
  138. package/optimize/es/components/form/checkbox/checkbox_control.styles.js +40 -0
  139. package/optimize/es/components/form/checkbox/index.js +1 -0
  140. package/optimize/es/components/form/form.styles.js +2 -1
  141. package/optimize/es/components/form/radio/radio.styles.js +1 -1
  142. package/optimize/es/components/form/super_select/super_select.js +118 -90
  143. package/optimize/es/components/form/super_select/super_select.styles.js +4 -8
  144. package/optimize/es/components/form/super_select/super_select_item.js +10 -14
  145. package/optimize/es/components/link/external_link_icon.js +4 -2
  146. package/optimize/es/components/list_group/list_group.js +7 -14
  147. package/optimize/es/components/list_group/list_group.styles.js +2 -16
  148. package/optimize/es/components/list_group/list_group_item.js +62 -79
  149. package/optimize/es/components/list_group/list_group_item.styles.js +17 -61
  150. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
  151. package/optimize/es/components/list_item_layout/_list_item_layout.js +353 -0
  152. package/optimize/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
  153. package/optimize/es/components/list_item_layout/index.js +9 -0
  154. package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
  155. package/optimize/es/components/selectable/selectable_list/selectable_list.js +48 -33
  156. package/optimize/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
  157. package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +41 -143
  158. package/optimize/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
  159. package/optimize/es/components/selectable/selectable_search/selectable_search.js +4 -1
  160. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  161. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  162. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  163. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  164. package/optimize/es/global_styling/mixins/_helpers.js +32 -11
  165. package/optimize/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
  166. package/optimize/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  167. package/optimize/lib/components/combo_box/combo_box.a11y.js +5 -5
  168. package/optimize/lib/components/combo_box/combo_box.js +60 -52
  169. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +143 -81
  170. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  171. package/optimize/lib/components/context_menu/context_menu.js +19 -14
  172. package/optimize/lib/components/context_menu/context_menu.styles.js +4 -1
  173. package/optimize/lib/components/context_menu/context_menu_item.js +56 -54
  174. package/optimize/lib/components/context_menu/context_menu_item.styles.js +13 -27
  175. package/optimize/lib/components/context_menu/context_menu_panel.js +36 -17
  176. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +7 -2
  177. package/optimize/lib/components/context_menu/context_menu_panel_title.js +59 -0
  178. package/optimize/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
  179. package/optimize/lib/components/context_menu/index.js +8 -1
  180. package/optimize/lib/components/datagrid/body/header/column_actions.js +1 -2
  181. package/optimize/lib/components/filter_group/filter_group.a11y.js +8 -2
  182. package/optimize/lib/components/flyout/flyout_menu.js +1 -4
  183. package/optimize/lib/components/form/checkbox/checkbox.js +6 -6
  184. package/optimize/lib/components/form/checkbox/checkbox.styles.js +1 -22
  185. package/optimize/lib/components/form/checkbox/checkbox_control.js +54 -0
  186. package/optimize/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
  187. package/optimize/lib/components/form/checkbox/index.js +7 -0
  188. package/optimize/lib/components/form/form.styles.js +2 -1
  189. package/optimize/lib/components/form/radio/radio.styles.js +1 -1
  190. package/optimize/lib/components/form/super_select/super_select.js +116 -88
  191. package/optimize/lib/components/form/super_select/super_select.styles.js +4 -8
  192. package/optimize/lib/components/form/super_select/super_select_item.js +13 -14
  193. package/optimize/lib/components/link/external_link_icon.js +4 -2
  194. package/optimize/lib/components/list_group/list_group.js +8 -15
  195. package/optimize/lib/components/list_group/list_group.styles.js +2 -16
  196. package/optimize/lib/components/list_group/list_group_item.js +62 -79
  197. package/optimize/lib/components/list_group/list_group_item.styles.js +17 -61
  198. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
  199. package/optimize/lib/components/list_item_layout/_list_item_layout.js +361 -0
  200. package/optimize/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
  201. package/optimize/lib/components/list_item_layout/index.js +12 -0
  202. package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
  203. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +46 -31
  204. package/optimize/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  205. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +41 -143
  206. package/optimize/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  207. package/optimize/lib/components/selectable/selectable_search/selectable_search.js +4 -1
  208. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  209. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  210. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  211. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  212. package/optimize/lib/global_styling/mixins/_helpers.js +33 -12
  213. package/package.json +4 -4
  214. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
  215. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
  216. package/test-env/components/combo_box/combo_box.a11y.js +5 -5
  217. package/test-env/components/combo_box/combo_box.js +61 -53
  218. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
  219. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
  220. package/test-env/components/context_menu/context_menu.js +20 -22
  221. package/test-env/components/context_menu/context_menu.styles.js +4 -1
  222. package/test-env/components/context_menu/context_menu_item.js +67 -59
  223. package/test-env/components/context_menu/context_menu_item.styles.js +13 -27
  224. package/test-env/components/context_menu/context_menu_panel.js +37 -21
  225. package/test-env/components/context_menu/context_menu_panel.styles.js +7 -2
  226. package/test-env/components/context_menu/context_menu_panel_title.js +129 -0
  227. package/test-env/components/context_menu/context_menu_panel_title.styles.js +26 -0
  228. package/test-env/components/context_menu/index.js +8 -1
  229. package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -29
  230. package/test-env/components/datagrid/body/data_grid_body.js +23 -17
  231. package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -17
  232. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -17
  233. package/test-env/components/datagrid/body/header/column_actions.js +1 -2
  234. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  235. package/test-env/components/datagrid/controls/column_sorting.js +23 -17
  236. package/test-env/components/datagrid/utils/in_memory.js +23 -17
  237. package/test-env/components/filter_group/filter_group.a11y.js +8 -2
  238. package/test-env/components/flyout/flyout_menu.js +1 -4
  239. package/test-env/components/form/checkbox/checkbox.js +6 -6
  240. package/test-env/components/form/checkbox/checkbox.styles.js +1 -22
  241. package/test-env/components/form/checkbox/checkbox_control.js +83 -0
  242. package/test-env/components/form/checkbox/checkbox_control.styles.js +44 -0
  243. package/test-env/components/form/checkbox/index.js +7 -0
  244. package/test-env/components/form/form.styles.js +2 -1
  245. package/test-env/components/form/radio/radio.styles.js +1 -1
  246. package/test-env/components/form/super_select/super_select.js +116 -97
  247. package/test-env/components/form/super_select/super_select.styles.js +4 -8
  248. package/test-env/components/form/super_select/super_select_item.js +13 -18
  249. package/test-env/components/link/external_link_icon.js +4 -2
  250. package/test-env/components/list_group/list_group.js +21 -35
  251. package/test-env/components/list_group/list_group.styles.js +2 -16
  252. package/test-env/components/list_group/list_group_item.js +75 -86
  253. package/test-env/components/list_group/list_group_item.styles.js +17 -61
  254. package/test-env/components/list_group/list_group_item_extra_action.styles.js +5 -5
  255. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
  256. package/test-env/components/list_item_layout/_list_item_layout.js +691 -0
  257. package/test-env/components/list_item_layout/_list_item_layout.styles.js +97 -0
  258. package/test-env/components/list_item_layout/index.js +12 -0
  259. package/test-env/components/search_bar/filters/field_value_selection_filter.js +2 -1
  260. package/test-env/components/selectable/selectable.js +1 -0
  261. package/test-env/components/selectable/selectable_list/selectable_list.js +50 -34
  262. package/test-env/components/selectable/selectable_list/selectable_list.styles.js +20 -5
  263. package/test-env/components/selectable/selectable_list/selectable_list_item.js +42 -147
  264. package/test-env/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
  265. package/test-env/components/selectable/selectable_search/selectable_search.js +4 -1
  266. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  267. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
  268. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
  269. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
  270. package/test-env/global_styling/mixins/_helpers.js +33 -12
  271. package/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
  272. package/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
  273. package/optimize/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
  274. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
  275. package/test-env/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
@@ -1,5 +1,5 @@
1
- var _excluded = ["className", "options", "valueOfSelected", "placeholder", "onChange", "isOpen", "isInvalid", "hasDividers", "itemClassName", "itemLayoutAlign", "fullWidth", "popoverProps", "compressed"],
2
- _excluded2 = ["value", "dropdownDisplay", "inputDisplay"];
1
+ var _excluded = ["className", "options", "valueOfSelected", "placeholder", "onChange", "isOpen", "isInvalid", "itemClassName", "fullWidth", "popoverProps", "compressed"],
2
+ _excluded2 = ["value", "dropdownDisplay", "inputDisplay", "disabled"];
3
3
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
5
5
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
@@ -28,13 +28,13 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
28
28
  import React, { Component, createRef } from 'react';
29
29
  import PropTypes from "prop-types";
30
30
  import classNames from 'classnames';
31
- import { htmlIdGenerator, keys } from '../../../services';
31
+ import { htmlIdGenerator, keys, RenderWithEuiStylesMemoizer } from '../../../services';
32
32
  import { EuiI18n } from '../../i18n';
33
33
  import { EuiScreenReaderOnly } from '../../accessibility';
34
34
  import { EuiInputPopover } from '../../popover';
35
35
  import { EuiSuperSelectControl } from './super_select_control';
36
36
  import { EuiSuperSelectItem } from './super_select_item';
37
- import { euiSuperSelectStyles as styles } from './super_select.styles';
37
+ import { euiSuperSelectStyles } from './super_select.styles';
38
38
  import { jsx as ___EmotionJSX } from "@emotion/react";
39
39
  var ShiftDirection = /*#__PURE__*/function (ShiftDirection) {
40
40
  ShiftDirection["BACK"] = "back";
@@ -54,40 +54,50 @@ export var EuiSuperSelect = /*#__PURE__*/function (_Component) {
54
54
  _defineProperty(_this, "controlButtonRef", /*#__PURE__*/createRef());
55
55
  _defineProperty(_this, "describedById", htmlIdGenerator('euiSuperSelect_')('_screenreaderDescribeId'));
56
56
  _defineProperty(_this, "state", {
57
- isPopoverOpen: _this.props.isOpen || false
57
+ isPopoverOpen: _this.props.isOpen || false,
58
+ currentIndex: 0
58
59
  });
59
60
  _defineProperty(_this, "setItemNode", function (node, index) {
60
61
  _this.itemNodes[index] = node;
61
62
  });
62
63
  _defineProperty(_this, "openPopover", function () {
64
+ var _this$props = _this.props,
65
+ options = _this$props.options,
66
+ valueOfSelected = _this$props.valueOfSelected;
67
+ var indexOfSelected = options.findIndex(function (option) {
68
+ return (option === null || option === void 0 ? void 0 : option.value) === valueOfSelected;
69
+ });
70
+ var candidateIndex = valueOfSelected != null && indexOfSelected >= 0 ? indexOfSelected : 0;
71
+ var initialIndex = candidateIndex;
72
+
73
+ // If the item is disabled, find the first focusable item going forward
74
+ while (initialIndex < options.length && (_options$initialIndex = options[initialIndex]) !== null && _options$initialIndex !== void 0 && _options$initialIndex.disabled) {
75
+ var _options$initialIndex;
76
+ initialIndex++;
77
+ }
78
+ if (initialIndex >= options.length) {
79
+ initialIndex = candidateIndex;
80
+ }
63
81
  _this.setState({
64
- isPopoverOpen: true
82
+ isPopoverOpen: options.length > 0,
83
+ currentIndex: initialIndex
65
84
  });
66
- var focusSelected = function focusSelected() {
67
- var indexOfSelected = _this.props.options.reduce(function (indexOfSelected, option, index) {
68
- if (indexOfSelected != null) return indexOfSelected;
69
- if (option == null) return null;
70
- return option.value === _this.props.valueOfSelected ? index : null;
71
- }, null);
85
+ requestAnimationFrame(function () {
72
86
  requestAnimationFrame(function () {
73
87
  if (!_this._isMounted) {
74
88
  return;
75
89
  }
76
- if (_this.props.valueOfSelected != null && indexOfSelected != null) {
77
- _this.focusItemAt(indexOfSelected);
78
- } else {
79
- _this.focusItemAt(0);
80
- }
90
+ _this.focusItemAt(initialIndex);
81
91
  if (_this.props.onFocus) {
82
92
  _this.props.onFocus();
83
93
  }
84
94
  });
85
- };
86
- requestAnimationFrame(focusSelected);
95
+ });
87
96
  });
88
97
  _defineProperty(_this, "closePopover", function () {
89
98
  _this.setState({
90
- isPopoverOpen: false
99
+ isPopoverOpen: false,
100
+ currentIndex: -1
91
101
  });
92
102
 
93
103
  // Refocus back to the toggling control button on popover close
@@ -157,54 +167,58 @@ export var EuiSuperSelect = /*#__PURE__*/function (_Component) {
157
167
  }
158
168
  }, {
159
169
  key: "focusItemAt",
160
- value: function focusItemAt(index, direction) {
161
- var _targetElement;
162
- var targetElement = this.itemNodes[index];
163
- // If the current index is disabled, find the next non-disabled element
164
- while (targetElement && targetElement.disabled) {
165
- direction === ShiftDirection.BACK ? index-- : index++;
166
- targetElement = this.itemNodes[index];
167
- }
168
- (_targetElement = targetElement) === null || _targetElement === void 0 || _targetElement.focus();
170
+ value: function focusItemAt(index) {
171
+ var _this$itemNodes$index;
172
+ (_this$itemNodes$index = this.itemNodes[index]) === null || _this$itemNodes$index === void 0 || _this$itemNodes$index.focus();
169
173
  }
170
174
  }, {
171
175
  key: "shiftFocus",
172
176
  value: function shiftFocus(direction) {
173
- var currentIndex = this.itemNodes.indexOf(document.activeElement);
174
- var targetElementIndex;
177
+ var options = this.props.options;
178
+ var currentIndex = this.state.currentIndex;
175
179
  if (currentIndex === -1) {
176
180
  // somehow the select options has lost focus
177
- targetElementIndex = 0;
178
- } else {
179
- // Note: this component purposely does not cycle arrow key navigation
180
- // to match native <select> elements
181
- if (direction === ShiftDirection.BACK) {
182
- targetElementIndex = currentIndex - 1;
183
- } else {
184
- targetElementIndex = currentIndex + 1;
181
+ this.focusItemAt(0);
182
+ this.setState({
183
+ currentIndex: 0
184
+ });
185
+ return;
186
+ }
187
+
188
+ // Note: this component purposely does not cycle arrow key navigation
189
+ // to match native <select> elements
190
+ var step = direction === ShiftDirection.BACK ? -1 : 1;
191
+ var nextIndex = currentIndex + step;
192
+ while (nextIndex >= 0 && nextIndex < options.length) {
193
+ var _options$nextIndex;
194
+ if (!((_options$nextIndex = options[nextIndex]) !== null && _options$nextIndex !== void 0 && _options$nextIndex.disabled)) {
195
+ this.focusItemAt(nextIndex);
196
+ this.setState({
197
+ currentIndex: nextIndex
198
+ });
199
+ return;
185
200
  }
201
+ nextIndex += step;
186
202
  }
187
- this.focusItemAt(targetElementIndex, direction);
188
203
  }
189
204
  }, {
190
205
  key: "render",
191
206
  value: function render() {
192
- var _this2 = this;
193
- var _this$props = this.props,
194
- className = _this$props.className,
195
- options = _this$props.options,
196
- valueOfSelected = _this$props.valueOfSelected,
197
- placeholder = _this$props.placeholder,
198
- onChange = _this$props.onChange,
199
- isOpen = _this$props.isOpen,
200
- isInvalid = _this$props.isInvalid,
201
- hasDividers = _this$props.hasDividers,
202
- itemClassName = _this$props.itemClassName,
203
- itemLayoutAlign = _this$props.itemLayoutAlign,
204
- fullWidth = _this$props.fullWidth,
205
- popoverProps = _this$props.popoverProps,
206
- compressed = _this$props.compressed,
207
- rest = _objectWithoutProperties(_this$props, _excluded);
207
+ var _this2 = this,
208
+ _options$this$state$c;
209
+ var _this$props2 = this.props,
210
+ className = _this$props2.className,
211
+ options = _this$props2.options,
212
+ valueOfSelected = _this$props2.valueOfSelected,
213
+ placeholder = _this$props2.placeholder,
214
+ onChange = _this$props2.onChange,
215
+ isOpen = _this$props2.isOpen,
216
+ isInvalid = _this$props2.isInvalid,
217
+ itemClassName = _this$props2.itemClassName,
218
+ fullWidth = _this$props2.fullWidth,
219
+ popoverProps = _this$props2.popoverProps,
220
+ compressed = _this$props2.compressed,
221
+ rest = _objectWithoutProperties(_this$props2, _excluded);
208
222
  var popoverClasses = classNames('euiSuperSelect', popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.className);
209
223
  var button = ___EmotionJSX(EuiSuperSelectControl, _extends({
210
224
  options: options,
@@ -224,58 +238,72 @@ export var EuiSuperSelect = /*#__PURE__*/function (_Component) {
224
238
  var value = option.value,
225
239
  dropdownDisplay = option.dropdownDisplay,
226
240
  inputDisplay = option.inputDisplay,
241
+ disabled = option.disabled,
227
242
  optionRest = _objectWithoutProperties(option, _excluded2);
228
243
  if (value == null) return;
229
244
  return ___EmotionJSX(EuiSuperSelectItem, _extends({
230
- key: index,
245
+ key: index
246
+ /* NOTE: This should rather use "li" to align select-like behavior. But the current
247
+ implementation relies on the interactive and focusable item for the navigation.
248
+ This will require additional refactoring to adjust but we might want to decide first
249
+ if the effort is worth it, considering the unification plans for selection components
250
+ as part of OneSelect (https://github.com/elastic/eui/issues/8808).
251
+ */,
252
+ element: "button",
231
253
  id: String(value),
232
254
  className: itemClassName,
233
- hasDividers: hasDividers,
234
- layoutAlign: itemLayoutAlign,
235
- icon: valueOfSelected === value ? 'check' : 'empty',
255
+ checked: valueOfSelected === value ? 'on' : undefined,
256
+ isSelected: valueOfSelected === value,
257
+ isFocused: _this2.state.currentIndex === index,
258
+ isSingleSelection: true,
259
+ isDisabled: disabled,
260
+ textWrap: "wrap",
236
261
  onClick: function onClick() {
237
262
  return _this2.itemClicked(value);
238
263
  },
239
264
  onKeyDown: _this2.onItemKeyDown,
240
- buttonRef: function buttonRef(node) {
265
+ ref: function ref(node) {
241
266
  return _this2.setItemNode(node, index);
242
267
  },
243
268
  "aria-selected": valueOfSelected === value
244
269
  }, optionRest), dropdownDisplay || inputDisplay);
245
270
  });
246
- return ___EmotionJSX(EuiInputPopover, _extends({
247
- closePopover: this.closePopover,
248
- panelPaddingSize: "none"
249
- }, popoverProps, {
250
- className: popoverClasses,
251
- isOpen: isOpen || this.state.isPopoverOpen,
252
- input: button,
253
- fullWidth: fullWidth,
254
- disableFocusTrap: true // This component handles its own focus manually
255
- }), ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
256
- id: this.describedById
257
- }, ___EmotionJSX(EuiI18n, {
258
- token: "euiSuperSelect.screenReaderAnnouncement",
259
- default: "You are in a form selector and must select a single option. Use the Up and Down arrow keys to navigate or Escape to close."
260
- }))), ___EmotionJSX(EuiI18n, {
261
- token: "euiSuperSelect.ariaLabel",
262
- default: "Select listbox"
263
- }, function (ariaLabel) {
264
- return ___EmotionJSX("div", {
265
- "aria-label": ariaLabel,
266
- "aria-describedby": _this2.describedById,
267
- css: styles.euiSuperSelect__listbox,
268
- className: "euiSuperSelect__listbox eui-scrollBar",
269
- role: "listbox",
270
- "aria-activedescendant": valueOfSelected != null ? String(valueOfSelected) : undefined,
271
- tabIndex: 0
272
- }, items);
273
- }));
271
+ var ariaActiveDescendant = ((_options$this$state$c = options[this.state.currentIndex]) === null || _options$this$state$c === void 0 ? void 0 : _options$this$state$c.value) != null ? String(options[this.state.currentIndex].value) : undefined;
272
+ return ___EmotionJSX(RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
273
+ var styles = stylesMemoizer(euiSuperSelectStyles);
274
+ return ___EmotionJSX(EuiInputPopover, _extends({
275
+ closePopover: _this2.closePopover,
276
+ panelPaddingSize: "none"
277
+ }, popoverProps, {
278
+ className: popoverClasses,
279
+ isOpen: isOpen || _this2.state.isPopoverOpen,
280
+ input: button,
281
+ fullWidth: fullWidth,
282
+ disableFocusTrap: true // This component handles its own focus manually
283
+ }), ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
284
+ id: _this2.describedById
285
+ }, ___EmotionJSX(EuiI18n, {
286
+ token: "euiSuperSelect.screenReaderAnnouncement",
287
+ default: "You are in a form selector and must select a single option. Use the Up and Down arrow keys to navigate or Escape to close."
288
+ }))), ___EmotionJSX(EuiI18n, {
289
+ token: "euiSuperSelect.ariaLabel",
290
+ default: "Select listbox"
291
+ }, function (ariaLabel) {
292
+ return ___EmotionJSX("div", {
293
+ "aria-label": ariaLabel,
294
+ "aria-describedby": _this2.describedById,
295
+ css: styles.euiSuperSelect__listbox,
296
+ className: "euiSuperSelect__listbox eui-scrollBar",
297
+ role: "listbox",
298
+ "aria-activedescendant": ariaActiveDescendant,
299
+ tabIndex: 0
300
+ }, items);
301
+ }));
302
+ });
274
303
  }
275
304
  }]);
276
305
  }(Component);
277
306
  _defineProperty(EuiSuperSelect, "defaultProps", {
278
- hasDividers: false,
279
307
  fullWidth: false,
280
308
  compressed: false,
281
309
  isInvalid: false,
@@ -345,15 +373,6 @@ EuiSuperSelect.propTypes = {
345
373
  onChange: PropTypes.func,
346
374
  onFocus: PropTypes.func,
347
375
  onBlur: PropTypes.func,
348
- /**
349
- * Change to `true` if you want horizontal lines between options.
350
- * This is best used when options are multi-line.
351
- */
352
- hasDividers: PropTypes.bool,
353
- /**
354
- * Change `EuiContextMenuItem` layout position of icon
355
- */
356
- itemLayoutAlign: PropTypes.oneOf(["center", "top", "bottom"]),
357
376
  /**
358
377
  * Controls whether the options are shown. Default: false
359
378
  */
@@ -7,16 +7,12 @@
7
7
  */
8
8
 
9
9
  import { css } from '@emotion/react';
10
- import { euiFontSize, euiTextTruncate, logicalCSS, logicalCSSWithFallback, logicalTextAlignCSS } from '../../../global_styling';
10
+ import { euiTextTruncate, logicalCSS, logicalCSSWithFallback, logicalTextAlignCSS } from '../../../global_styling';
11
11
  import { euiFormControlStyles, euiFormVariables } from '../form.styles';
12
- export var euiSuperSelectStyles = {
13
- euiSuperSelect__listbox: /*#__PURE__*/css(logicalCSS('max-height', '300px'), " ", logicalCSSWithFallback('overflow-y', 'auto'), " ", logicalCSSWithFallback('overflow-x', 'hidden'), ";;label:euiSuperSelect__listbox;")
14
- };
15
- export var euiSuperSelectItemStyles = function euiSuperSelectItemStyles(euiThemeContext) {
16
- var euiTheme = euiThemeContext.euiTheme;
12
+ export var euiSuperSelectStyles = function euiSuperSelectStyles(_ref) {
13
+ var euiTheme = _ref.euiTheme;
17
14
  return {
18
- euiSuperSelect__item: /*#__PURE__*/css("padding:", euiTheme.size.s, ";", euiFontSize(euiThemeContext, 's'), ";;label:euiSuperSelect__item;"),
19
- hasDividers: /*#__PURE__*/css("&:not(:last-of-type){", logicalCSS('border-bottom', euiTheme.border.thin), ";};label:hasDividers;")
15
+ euiSuperSelect__listbox: /*#__PURE__*/css(logicalCSS('max-height', '300px'), " ", logicalCSSWithFallback('overflow-y', 'auto'), " ", logicalCSSWithFallback('overflow-x', 'hidden'), " padding:", euiTheme.size.s, ";.euiSuperSelect__item:focus{outline:none;};label:euiSuperSelect__listbox;")
20
16
  };
21
17
  };
22
18
  export var euiSuperSelectControlStyles = function euiSuperSelectControlStyles(euiThemeContext) {
@@ -1,4 +1,4 @@
1
- var _excluded = ["children", "className", "hasDividers"];
1
+ var _excluded = ["children", "className"];
2
2
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
3
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
4
4
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }
@@ -10,12 +10,9 @@ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t =
10
10
  * Side Public License, v 1.
11
11
  */
12
12
 
13
- import React from 'react';
14
- import PropTypes from "prop-types";
13
+ import React, { forwardRef } from 'react';
15
14
  import classNames from 'classnames';
16
- import { useEuiMemoizedStyles } from '../../../services';
17
- import { EuiContextMenuItem } from '../../context_menu';
18
- import { euiSuperSelectItemStyles } from './super_select.styles';
15
+ import { EuiListItemLayout } from '../../list_item_layout';
19
16
 
20
17
  // Type exposed to consumers via API
21
18
 
@@ -23,20 +20,15 @@ import { euiSuperSelectItemStyles } from './super_select.styles';
23
20
  // from consumer props to internal EUI props
24
21
  import { jsx as ___EmotionJSX } from "@emotion/react";
25
22
  // Internal subcomponent util, primarily for easier usage of hooks
26
- export var EuiSuperSelectItem = function EuiSuperSelectItem(_ref) {
23
+ export var EuiSuperSelectItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
27
24
  var children = _ref.children,
28
25
  className = _ref.className,
29
- hasDividers = _ref.hasDividers,
30
26
  rest = _objectWithoutProperties(_ref, _excluded);
31
27
  var classes = classNames('euiSuperSelect__item', className);
32
- var styles = useEuiMemoizedStyles(euiSuperSelectItemStyles);
33
- var cssStyles = [styles.euiSuperSelect__item, hasDividers && styles.hasDividers];
34
- return ___EmotionJSX(EuiContextMenuItem, _extends({
35
- css: cssStyles,
36
- className: classes,
37
- role: "option"
28
+ return ___EmotionJSX(EuiListItemLayout, _extends({
29
+ ref: ref,
30
+ role: "option",
31
+ className: classes
38
32
  }, rest), children);
39
- };
40
- EuiSuperSelectItem.propTypes = {
41
- hasDividers: PropTypes.bool
42
- };
33
+ });
34
+ EuiSuperSelectItem.displayName = 'EuiSuperSelectItem';
@@ -1,4 +1,4 @@
1
- var _excluded = ["target", "external"];
1
+ var _excluded = ["target", "external", "size"];
2
2
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
3
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
4
4
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }
@@ -30,6 +30,8 @@ var iconStyle = function iconStyle(_ref) {
30
30
  export var EuiExternalLinkIcon = function EuiExternalLinkIcon(_ref2) {
31
31
  var target = _ref2.target,
32
32
  external = _ref2.external,
33
+ _ref2$size = _ref2.size,
34
+ size = _ref2$size === void 0 ? 's' : _ref2$size,
33
35
  rest = _objectWithoutProperties(_ref2, _excluded);
34
36
  var iconCssStyle = useEuiMemoizedStyles(iconStyle);
35
37
  var showExternalLinkIcon = target === '_blank' && external !== false || external === true;
@@ -38,7 +40,7 @@ export var EuiExternalLinkIcon = function EuiExternalLinkIcon(_ref2) {
38
40
  }
39
41
  return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiIcon, _extends({
40
42
  css: iconCssStyle,
41
- size: "s",
43
+ size: size,
42
44
  type: "external",
43
45
  role: "presentation"
44
46
  }, rest)), target === '_blank' ? ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("span", null, ___EmotionJSX(EuiI18n, {
@@ -1,5 +1,5 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["children", "className", "listItems", "style", "flush", "bordered", "gutterSize", "wrapText", "maxWidth", "showToolTips", "color", "size", "ariaLabelledby"];
2
+ var _excluded = ["children", "className", "listItems", "style", "bordered", "wrapText", "maxWidth", "showToolTips", "color", "ariaLabelledby"];
3
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -24,31 +24,26 @@ import { logicalStyle } from '../../global_styling';
24
24
  import { EuiListGroupItem } from './list_group_item';
25
25
  import { euiListGroupStyles } from './list_group.styles';
26
26
  import { jsx as ___EmotionJSX } from "@emotion/react";
27
- export var GUTTER_SIZES = ['none', 's', 'm'];
28
27
  export var EuiListGroup = function EuiListGroup(_ref) {
29
28
  var children = _ref.children,
30
29
  className = _ref.className,
31
30
  listItems = _ref.listItems,
32
31
  style = _ref.style,
33
- _ref$flush = _ref.flush,
34
- flush = _ref$flush === void 0 ? false : _ref$flush,
35
32
  _ref$bordered = _ref.bordered,
36
33
  bordered = _ref$bordered === void 0 ? false : _ref$bordered,
37
- _ref$gutterSize = _ref.gutterSize,
38
- gutterSize = _ref$gutterSize === void 0 ? 's' : _ref$gutterSize,
39
34
  _ref$wrapText = _ref.wrapText,
40
35
  wrapText = _ref$wrapText === void 0 ? false : _ref$wrapText,
41
36
  _ref$maxWidth = _ref.maxWidth,
42
37
  maxWidth = _ref$maxWidth === void 0 ? true : _ref$maxWidth,
43
38
  _ref$showToolTips = _ref.showToolTips,
44
39
  showToolTips = _ref$showToolTips === void 0 ? false : _ref$showToolTips,
45
- color = _ref.color,
46
- size = _ref.size,
40
+ _ref$color = _ref.color,
41
+ color = _ref$color === void 0 ? 'text' : _ref$color,
47
42
  ariaLabelledby = _ref.ariaLabelledby,
48
43
  rest = _objectWithoutProperties(_ref, _excluded);
49
44
  var classes = classNames('euiListGroup', className);
50
45
  var styles = useEuiMemoizedStyles(euiListGroupStyles);
51
- var cssStyles = [styles.euiListGroup, styles[gutterSize], flush && styles.flush, bordered && styles.bordered, maxWidth === true && styles.maxWidthDefault];
46
+ var cssStyles = [styles.euiListGroup, bordered && styles.bordered, maxWidth === true && styles.maxWidthDefault];
52
47
  var maxWidthStyle = useMemo(function () {
53
48
  if (maxWidth && maxWidth !== true) {
54
49
  return logicalStyle('max-width', maxWidth);
@@ -64,12 +59,11 @@ export var EuiListGroup = function EuiListGroup(_ref) {
64
59
  // we're passing the parent `color` and `size` down to the children
65
60
  // so that they can inherit it if they don't have one
66
61
  ,
67
- color: color,
68
- size: size
62
+ color: color
69
63
  }, item));
70
64
  });
71
65
  }
72
- }, [listItems, color, size, wrapText, showToolTips]);
66
+ }, [listItems, color, wrapText, showToolTips]);
73
67
  var listItemsOrChildren = renderedListItems ||
74
68
  // Note that there's no point in memoizing `children`, as JSX changes every rerender
75
69
  React.Children.map(children, function (child) {
@@ -77,8 +71,7 @@ export var EuiListGroup = function EuiListGroup(_ref) {
77
71
  return cloneElementWithCss(child, _objectSpread(_objectSpread({
78
72
  // we're passing the parent `color` and `size` down to the children
79
73
  // so that they can inherit it if they don't have one
80
- color: color,
81
- size: size
74
+ color: color
82
75
  }, showToolTips && {
83
76
  showToolTip: true
84
77
  }), child.props));
@@ -100,14 +93,6 @@ EuiListGroup.propTypes = {
100
93
  * Add a border to the list container
101
94
  */
102
95
  bordered: PropTypes.bool,
103
- /**
104
- * Remove container padding, stretching list items to the edges
105
- */
106
- flush: PropTypes.bool,
107
- /**
108
- * Spacing between list items
109
- */
110
- gutterSize: PropTypes.any,
111
96
  /**
112
97
  * Items to display in this group. See {@link EuiListGroupItem}
113
98
  */
@@ -117,12 +102,22 @@ EuiListGroup.propTypes = {
117
102
  "data-test-subj": PropTypes.string,
118
103
  css: PropTypes.any,
119
104
  /**
120
- * Size of the label text
121
- */
122
- size: PropTypes.any,
105
+ * Controls the disabled behavior via the native `disabled` attribute.
106
+ */
107
+ isDisabled: PropTypes.bool,
108
+ /**
109
+ * NOTE: Beta feature, may be changed or removed in the future
110
+ *
111
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
112
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
113
+ *
114
+ * Use e.g. when a disabled button should have a tooltip.
115
+ */
116
+ hasAriaDisabled: PropTypes.bool,
123
117
  /**
124
118
  * By default the item will get the color `text`.
125
119
  * You can customize the color of the item by passing a color name.
120
+ * @default 'text'
126
121
  */
127
122
  color: PropTypes.any,
128
123
  /**
@@ -133,10 +128,6 @@ EuiListGroup.propTypes = {
133
128
  * Apply styles indicating an item is active
134
129
  */
135
130
  isActive: PropTypes.bool,
136
- /**
137
- * Apply styles indicating an item is disabled
138
- */
139
- isDisabled: PropTypes.bool,
140
131
  /**
141
132
  * Make the list item label a link.
142
133
  * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
@@ -263,11 +254,6 @@ EuiListGroup.propTypes = {
263
254
  * @default text
264
255
  */
265
256
  color: PropTypes.any,
266
- /**
267
- * Change the size of all `listItems` at once
268
- * @default m
269
- */
270
- size: PropTypes.any,
271
257
  /**
272
258
  * Sets the max-width of the page.
273
259
  * Set to `true` to use the default size,
@@ -11,14 +11,6 @@ import { css } from '@emotion/react';
11
11
  import { logicalCSS } from '../../global_styling';
12
12
  import { euiFormMaxWidth } from '../form/form.styles';
13
13
  var _ref = process.env.NODE_ENV === "production" ? {
14
- name: "1urrzow-flush",
15
- styles: "padding:0;border:none;.euiListGroupItem{border-radius:0;};label:flush;"
16
- } : {
17
- name: "1urrzow-flush",
18
- styles: "padding:0;border:none;.euiListGroupItem{border-radius:0;};label:flush;",
19
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
20
- };
21
- var _ref2 = process.env.NODE_ENV === "production" ? {
22
14
  name: "2tmo78-euiListGroup",
23
15
  styles: "display:flex;flex-direction:column;label:euiListGroup;"
24
16
  } : {
@@ -31,14 +23,8 @@ export var euiListGroupStyles = function euiListGroupStyles(euiThemeContext) {
31
23
  var formMaxWidth = euiFormMaxWidth(euiThemeContext);
32
24
  return {
33
25
  // Base
34
- euiListGroup: _ref2,
35
- // Variants
36
- flush: _ref,
26
+ euiListGroup: _ref,
37
27
  bordered: /*#__PURE__*/css("border-radius:", euiTheme.border.radius.medium, ";border:", euiTheme.border.thin, ";;label:bordered;"),
38
- maxWidthDefault: /*#__PURE__*/css(logicalCSS('max-width', formMaxWidth), ";;label:maxWidthDefault;"),
39
- // Gutter sizes
40
- none: /*#__PURE__*/css(";label:none;"),
41
- s: /*#__PURE__*/css("padding:", euiTheme.size.s, ";gap:", euiTheme.size.s, ";;label:s;"),
42
- m: /*#__PURE__*/css("padding:", euiTheme.size.base, ";gap:", euiTheme.size.base, ";;label:m;")
28
+ maxWidthDefault: /*#__PURE__*/css(logicalCSS('max-width', formMaxWidth), ";;label:maxWidthDefault;")
43
29
  };
44
30
  };