@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
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.EuiCheckboxControl = 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 _classnames = _interopRequireDefault(require("classnames"));
12
+ var _services = require("../../../services");
13
+ var _icon = require("../../icon");
14
+ var _checkbox_control = require("./checkbox_control.styles");
15
+ var _react2 = require("@emotion/react");
16
+ var _excluded = ["className", "checked", "indeterminate", "excluded", "disabled"];
17
+ /*
18
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
19
+ * or more contributor license agreements. Licensed under the Elastic License
20
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
21
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
22
+ * Side Public License, v 1.
23
+ */
24
+ /**
25
+ * Presentation-only checkbox control element. Renders a checkbox square and state icon only without functionality.
26
+ */
27
+ var EuiCheckboxControl = exports.EuiCheckboxControl = function EuiCheckboxControl(_ref) {
28
+ var className = _ref.className,
29
+ _ref$checked = _ref.checked,
30
+ checked = _ref$checked === void 0 ? false : _ref$checked,
31
+ _ref$indeterminate = _ref.indeterminate,
32
+ indeterminate = _ref$indeterminate === void 0 ? false : _ref$indeterminate,
33
+ _ref$excluded = _ref.excluded,
34
+ excluded = _ref$excluded === void 0 ? false : _ref$excluded,
35
+ _ref$disabled = _ref.disabled,
36
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
37
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
38
+ var isSelected = checked || indeterminate || excluded;
39
+ var isExcluded = excluded && !indeterminate;
40
+ var classes = (0, _classnames.default)('euiCheckboxControl', className);
41
+ var styles = (0, _services.useEuiMemoizedStyles)(_checkbox_control.euiCheckboxControlStyles);
42
+ var cssStyles = [styles.euiCheckboxControl, disabled ? isSelected ? styles.disabled.selected : styles.disabled.unselected : isExcluded ? styles.enabled.excluded : isSelected ? styles.enabled.selected : styles.enabled.unselected];
43
+ var iconStyles = [styles.icon.euiCheckbox__icon, indeterminate ? styles.icon.indeterminate : styles.icon.check];
44
+ var iconType = indeterminate ? 'stopFill' : excluded ? 'cross' : checked ? 'check' : 'empty';
45
+ return (0, _react2.jsx)("span", (0, _extends2.default)({
46
+ css: cssStyles,
47
+ className: classes
48
+ }, rest), (0, _react2.jsx)(_icon.EuiIcon, {
49
+ role: "presentation",
50
+ css: iconStyles,
51
+ type: iconType,
52
+ size: "m"
53
+ }));
54
+ };
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiCheckboxControlStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ var _form = require("../form.styles");
9
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; } /*
10
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
11
+ * or more contributor license agreements. Licensed under the Elastic License
12
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
13
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
14
+ * Side Public License, v 1.
15
+ */
16
+ var _ref = process.env.NODE_ENV === "production" ? {
17
+ name: "u54glv-indeterminate",
18
+ styles: "transform:scale(0.5);label:indeterminate;"
19
+ } : {
20
+ name: "u54glv-indeterminate",
21
+ styles: "transform:scale(0.5);label:indeterminate;",
22
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
+ };
24
+ var euiCheckboxControlStyles = exports.euiCheckboxControlStyles = function euiCheckboxControlStyles(euiThemeContext) {
25
+ var euiTheme = euiThemeContext.euiTheme;
26
+ var controlStyles = (0, _form.euiFormCustomControlStyles)(euiThemeContext);
27
+ return {
28
+ euiCheckboxControl: /*#__PURE__*/(0, _react.css)(controlStyles.input.fauxInput, " border-radius:", euiTheme.border.radius.small, ";;label:euiCheckboxControl;"),
29
+ enabled: {
30
+ selected: /*#__PURE__*/(0, _react.css)(controlStyles.input.enabled.selected, ";label:selected;"),
31
+ unselected: /*#__PURE__*/(0, _react.css)(controlStyles.input.enabled.unselected, ";label:unselected;"),
32
+ excluded: /*#__PURE__*/(0, _react.css)(controlStyles.input.enabled.selected, " background-color:", euiTheme.colors.backgroundFilledDanger, ";border-color:", euiTheme.colors.backgroundFilledDanger, ";;label:excluded;")
33
+ },
34
+ disabled: {
35
+ selected: /*#__PURE__*/(0, _react.css)(controlStyles.input.disabled.selected, ";label:selected;"),
36
+ unselected: /*#__PURE__*/(0, _react.css)(controlStyles.input.disabled.unselected, ";label:unselected;")
37
+ },
38
+ icon: {
39
+ euiCheckbox__icon: /*#__PURE__*/(0, _react.css)(";label:euiCheckbox__icon;"),
40
+ check: /*#__PURE__*/(0, _react.css)(controlStyles.input.icon, " stroke:currentColor;;label:check;"),
41
+ indeterminate: _ref
42
+ }
43
+ };
44
+ };
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "EuiCheckbox", {
9
9
  return _checkbox.EuiCheckbox;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "EuiCheckboxControl", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _checkbox_control.EuiCheckboxControl;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "EuiCheckboxGroup", {
13
19
  enumerable: true,
14
20
  get: function get() {
@@ -16,4 +22,5 @@ Object.defineProperty(exports, "EuiCheckboxGroup", {
16
22
  }
17
23
  });
18
24
  var _checkbox = require("./checkbox");
25
+ var _checkbox_control = require("./checkbox_control");
19
26
  var _checkbox_group = require("./checkbox_group");
@@ -280,7 +280,8 @@ var euiFormCustomControlStyles = exports.euiFormCustomControlStyles = function e
280
280
  return {
281
281
  wrapper: "\n display: flex;\n align-items: flex-start;\n ",
282
282
  input: {
283
- fauxInput: "\n position: relative;\n ".concat((0, _global_styling.logicalCSS)('height', controlVars.sizes.control), "\n ").concat((0, _global_styling.logicalCSS)('width', controlVars.sizes.control), "\n display: flex;\n justify-content: center;\n align-items: center;\n /* For Windows high contrast themes, a border must always be rendered, not just a background */\n border: ").concat(euiTheme.border.width.thin, " solid transparent;\n\n &:has(input:focus-visible) {\n outline: ").concat(euiTheme.focus.width, " solid ").concat(controlVars.colors.selected, ";\n outline-offset: ").concat(euiTheme.focus.width, ";\n }\n\n ").concat(_global_styling.euiCanAnimate, " {\n transition-property: background-color, color;\n transition-duration: ").concat(controlVars.animation.speed, ";\n transition-timing-function: ").concat(controlVars.animation.easing, ";\n }\n "),
283
+ fauxInput: "\n position: relative;\n ".concat((0, _global_styling.logicalCSS)('height', controlVars.sizes.control), "\n ").concat((0, _global_styling.logicalCSS)('width', controlVars.sizes.control), "\n display: flex;\n justify-content: center;\n align-items: center;\n /* For Windows high contrast themes, a border must always be rendered, not just a background */\n border: ").concat(euiTheme.border.width.thin, " solid transparent;\n\n ").concat(_global_styling.euiCanAnimate, " {\n transition-property: background-color, color;\n transition-duration: ").concat(controlVars.animation.speed, ";\n transition-timing-function: ").concat(controlVars.animation.easing, ";\n }\n "),
284
+ focusVisible: "\n &:has(input:focus-visible) {\n outline: ".concat(euiTheme.focus.width, " solid ").concat(controlVars.colors.selected, ";\n outline-offset: ").concat(euiTheme.focus.width, ";\n }\n "),
284
285
  // TODO: Revert https://github.com/elastic/eui/pull/7981
285
286
  // once https://github.com/dperini/nwsapi/issues/123
286
287
  // has been fixed, and restore `&:has(+ label)` selector
@@ -19,7 +19,7 @@ var euiRadioStyles = exports.euiRadioStyles = function euiRadioStyles(euiThemeCo
19
19
  return {
20
20
  euiRadio: /*#__PURE__*/(0, _react.css)(controlStyles.wrapper, ";label:euiRadio;"),
21
21
  input: {
22
- euiRadio__circle: /*#__PURE__*/(0, _react.css)(controlStyles.input.fauxInput, " border-radius:50%;;label:euiRadio__circle;"),
22
+ euiRadio__circle: /*#__PURE__*/(0, _react.css)(controlStyles.input.fauxInput, " ", controlStyles.input.focusVisible, " border-radius:50%;;label:euiRadio__circle;"),
23
23
  hasLabel: controlStyles.input.hasLabel,
24
24
  // Skip css`` className generation
25
25
  enabled: {
@@ -24,8 +24,8 @@ var _super_select_control = require("./super_select_control");
24
24
  var _super_select_item = require("./super_select_item");
25
25
  var _super_select = require("./super_select.styles");
26
26
  var _react2 = require("@emotion/react");
27
- var _excluded = ["className", "options", "valueOfSelected", "placeholder", "onChange", "isOpen", "isInvalid", "hasDividers", "itemClassName", "itemLayoutAlign", "fullWidth", "popoverProps", "compressed"],
28
- _excluded2 = ["value", "dropdownDisplay", "inputDisplay"];
27
+ var _excluded = ["className", "options", "valueOfSelected", "placeholder", "onChange", "isOpen", "isInvalid", "itemClassName", "fullWidth", "popoverProps", "compressed"],
28
+ _excluded2 = ["value", "dropdownDisplay", "inputDisplay", "disabled"];
29
29
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
30
30
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
31
31
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
@@ -54,40 +54,50 @@ var EuiSuperSelect = exports.EuiSuperSelect = /*#__PURE__*/function (_Component)
54
54
  (0, _defineProperty2.default)(_this, "controlButtonRef", /*#__PURE__*/(0, _react.createRef)());
55
55
  (0, _defineProperty2.default)(_this, "describedById", (0, _services.htmlIdGenerator)('euiSuperSelect_')('_screenreaderDescribeId'));
56
56
  (0, _defineProperty2.default)(_this, "state", {
57
- isPopoverOpen: _this.props.isOpen || false
57
+ isPopoverOpen: _this.props.isOpen || false,
58
+ currentIndex: 0
58
59
  });
59
60
  (0, _defineProperty2.default)(_this, "setItemNode", function (node, index) {
60
61
  _this.itemNodes[index] = node;
61
62
  });
62
63
  (0, _defineProperty2.default)(_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
  (0, _defineProperty2.default)(_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 @@ var EuiSuperSelect = exports.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 = (0, _objectWithoutProperties2.default)(_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 = (0, _objectWithoutProperties2.default)(_this$props2, _excluded);
208
222
  var popoverClasses = (0, _classnames.default)('euiSuperSelect', popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.className);
209
223
  var button = (0, _react2.jsx)(_super_select_control.EuiSuperSelectControl, (0, _extends2.default)({
210
224
  options: options,
@@ -224,58 +238,72 @@ var EuiSuperSelect = exports.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 = (0, _objectWithoutProperties2.default)(option, _excluded2);
228
243
  if (value == null) return;
229
244
  return (0, _react2.jsx)(_super_select_item.EuiSuperSelectItem, (0, _extends2.default)({
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 (0, _react2.jsx)(_popover.EuiInputPopover, (0, _extends2.default)({
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
- }), (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("p", {
256
- id: this.describedById
257
- }, (0, _react2.jsx)(_i18n.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
- }))), (0, _react2.jsx)(_i18n.EuiI18n, {
261
- token: "euiSuperSelect.ariaLabel",
262
- default: "Select listbox"
263
- }, function (ariaLabel) {
264
- return (0, _react2.jsx)("div", {
265
- "aria-label": ariaLabel,
266
- "aria-describedby": _this2.describedById,
267
- css: _super_select.euiSuperSelectStyles.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 (0, _react2.jsx)(_services.RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
273
+ var styles = stylesMemoizer(_super_select.euiSuperSelectStyles);
274
+ return (0, _react2.jsx)(_popover.EuiInputPopover, (0, _extends2.default)({
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
+ }), (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("p", {
284
+ id: _this2.describedById
285
+ }, (0, _react2.jsx)(_i18n.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
+ }))), (0, _react2.jsx)(_i18n.EuiI18n, {
289
+ token: "euiSuperSelect.ariaLabel",
290
+ default: "Select listbox"
291
+ }, function (ariaLabel) {
292
+ return (0, _react2.jsx)("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
  }(_react.Component);
277
306
  (0, _defineProperty2.default)(EuiSuperSelect, "defaultProps", {
278
- hasDividers: false,
279
307
  fullWidth: false,
280
308
  compressed: false,
281
309
  isInvalid: false,
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.euiSuperSelectStyles = exports.euiSuperSelectItemStyles = exports.euiSuperSelectControlStyles = void 0;
6
+ exports.euiSuperSelectStyles = exports.euiSuperSelectControlStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
8
  var _global_styling = require("../../../global_styling");
9
9
  var _form = require("../form.styles");
@@ -15,14 +15,10 @@ var _form = require("../form.styles");
15
15
  * Side Public License, v 1.
16
16
  */
17
17
 
18
- var euiSuperSelectStyles = exports.euiSuperSelectStyles = {
19
- euiSuperSelect__listbox: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-height', '300px'), " ", (0, _global_styling.logicalCSSWithFallback)('overflow-y', 'auto'), " ", (0, _global_styling.logicalCSSWithFallback)('overflow-x', 'hidden'), ";;label:euiSuperSelect__listbox;")
20
- };
21
- var euiSuperSelectItemStyles = exports.euiSuperSelectItemStyles = function euiSuperSelectItemStyles(euiThemeContext) {
22
- var euiTheme = euiThemeContext.euiTheme;
18
+ var euiSuperSelectStyles = exports.euiSuperSelectStyles = function euiSuperSelectStyles(_ref) {
19
+ var euiTheme = _ref.euiTheme;
23
20
  return {
24
- euiSuperSelect__item: /*#__PURE__*/(0, _react.css)("padding:", euiTheme.size.s, ";", (0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";;label:euiSuperSelect__item;"),
25
- hasDividers: /*#__PURE__*/(0, _react.css)("&:not(:last-of-type){", (0, _global_styling.logicalCSS)('border-bottom', euiTheme.border.thin), ";};label:hasDividers;")
21
+ euiSuperSelect__listbox: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-height', '300px'), " ", (0, _global_styling.logicalCSSWithFallback)('overflow-y', 'auto'), " ", (0, _global_styling.logicalCSSWithFallback)('overflow-x', 'hidden'), " padding:", euiTheme.size.s, ";.euiSuperSelect__item:focus{outline:none;};label:euiSuperSelect__listbox;")
26
22
  };
27
23
  };
28
24
  var euiSuperSelectControlStyles = exports.euiSuperSelectControlStyles = function euiSuperSelectControlStyles(euiThemeContext) {
@@ -1,19 +1,18 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.EuiSuperSelectItem = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
- var _react = _interopRequireDefault(require("react"));
11
+ var _react = _interopRequireWildcard(require("react"));
11
12
  var _classnames = _interopRequireDefault(require("classnames"));
12
- var _services = require("../../../services");
13
- var _context_menu = require("../../context_menu");
14
- var _super_select = require("./super_select.styles");
13
+ var _list_item_layout = require("../../list_item_layout");
15
14
  var _react2 = require("@emotion/react");
16
- var _excluded = ["children", "className", "hasDividers"];
15
+ var _excluded = ["children", "className"];
17
16
  /*
18
17
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
19
18
  * or more contributor license agreements. Licensed under the Elastic License
@@ -24,18 +23,18 @@ var _excluded = ["children", "className", "hasDividers"];
24
23
  // Type exposed to consumers via API
25
24
  // Actual props used by below component, transmogged by parent EuiSuperSelect
26
25
  // from consumer props to internal EUI props
26
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
27
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
28
  // Internal subcomponent util, primarily for easier usage of hooks
28
- var EuiSuperSelectItem = exports.EuiSuperSelectItem = function EuiSuperSelectItem(_ref) {
29
+ var EuiSuperSelectItem = exports.EuiSuperSelectItem = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
29
30
  var children = _ref.children,
30
31
  className = _ref.className,
31
- hasDividers = _ref.hasDividers,
32
32
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
33
33
  var classes = (0, _classnames.default)('euiSuperSelect__item', className);
34
- var styles = (0, _services.useEuiMemoizedStyles)(_super_select.euiSuperSelectItemStyles);
35
- var cssStyles = [styles.euiSuperSelect__item, hasDividers && styles.hasDividers];
36
- return (0, _react2.jsx)(_context_menu.EuiContextMenuItem, (0, _extends2.default)({
37
- css: cssStyles,
38
- className: classes,
39
- role: "option"
34
+ return (0, _react2.jsx)(_list_item_layout.EuiListItemLayout, (0, _extends2.default)({
35
+ ref: ref,
36
+ role: "option",
37
+ className: classes
40
38
  }, rest), children);
41
- };
39
+ });
40
+ EuiSuperSelectItem.displayName = 'EuiSuperSelectItem';
@@ -14,7 +14,7 @@ var _icon = require("../icon");
14
14
  var _i18n = require("../i18n");
15
15
  var _accessibility = require("../accessibility");
16
16
  var _react2 = require("@emotion/react");
17
- var _excluded = ["target", "external"];
17
+ var _excluded = ["target", "external", "size"];
18
18
  /*
19
19
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
20
20
  * or more contributor license agreements. Licensed under the Elastic License
@@ -33,6 +33,8 @@ var iconStyle = function iconStyle(_ref) {
33
33
  var EuiExternalLinkIcon = exports.EuiExternalLinkIcon = function EuiExternalLinkIcon(_ref2) {
34
34
  var target = _ref2.target,
35
35
  external = _ref2.external,
36
+ _ref2$size = _ref2.size,
37
+ size = _ref2$size === void 0 ? 's' : _ref2$size,
36
38
  rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
37
39
  var iconCssStyle = (0, _services.useEuiMemoizedStyles)(iconStyle);
38
40
  var showExternalLinkIcon = target === '_blank' && external !== false || external === true;
@@ -41,7 +43,7 @@ var EuiExternalLinkIcon = exports.EuiExternalLinkIcon = function EuiExternalLink
41
43
  }
42
44
  return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_icon.EuiIcon, (0, _extends2.default)({
43
45
  css: iconCssStyle,
44
- size: "s",
46
+ size: size,
45
47
  type: "external",
46
48
  role: "presentation"
47
49
  }, rest)), target === '_blank' ? (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("span", null, (0, _react2.jsx)(_i18n.EuiI18n, {
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.GUTTER_SIZES = exports.EuiListGroup = void 0;
8
+ exports.EuiListGroup = void 0;
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
@@ -16,7 +16,7 @@ var _global_styling = require("../../global_styling");
16
16
  var _list_group_item = require("./list_group_item");
17
17
  var _list_group = require("./list_group.styles");
18
18
  var _react2 = require("@emotion/react");
19
- var _excluded = ["children", "className", "listItems", "style", "flush", "bordered", "gutterSize", "wrapText", "maxWidth", "showToolTips", "color", "size", "ariaLabelledby"];
19
+ var _excluded = ["children", "className", "listItems", "style", "bordered", "wrapText", "maxWidth", "showToolTips", "color", "ariaLabelledby"];
20
20
  /*
21
21
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
22
22
  * or more contributor license agreements. Licensed under the Elastic License
@@ -28,31 +28,26 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
28
28
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
29
29
  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; }
30
30
  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) { (0, _defineProperty2.default)(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; }
31
- var GUTTER_SIZES = exports.GUTTER_SIZES = ['none', 's', 'm'];
32
31
  var EuiListGroup = exports.EuiListGroup = function EuiListGroup(_ref) {
33
32
  var children = _ref.children,
34
33
  className = _ref.className,
35
34
  listItems = _ref.listItems,
36
35
  style = _ref.style,
37
- _ref$flush = _ref.flush,
38
- flush = _ref$flush === void 0 ? false : _ref$flush,
39
36
  _ref$bordered = _ref.bordered,
40
37
  bordered = _ref$bordered === void 0 ? false : _ref$bordered,
41
- _ref$gutterSize = _ref.gutterSize,
42
- gutterSize = _ref$gutterSize === void 0 ? 's' : _ref$gutterSize,
43
38
  _ref$wrapText = _ref.wrapText,
44
39
  wrapText = _ref$wrapText === void 0 ? false : _ref$wrapText,
45
40
  _ref$maxWidth = _ref.maxWidth,
46
41
  maxWidth = _ref$maxWidth === void 0 ? true : _ref$maxWidth,
47
42
  _ref$showToolTips = _ref.showToolTips,
48
43
  showToolTips = _ref$showToolTips === void 0 ? false : _ref$showToolTips,
49
- color = _ref.color,
50
- size = _ref.size,
44
+ _ref$color = _ref.color,
45
+ color = _ref$color === void 0 ? 'text' : _ref$color,
51
46
  ariaLabelledby = _ref.ariaLabelledby,
52
47
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
53
48
  var classes = (0, _classnames.default)('euiListGroup', className);
54
49
  var styles = (0, _services.useEuiMemoizedStyles)(_list_group.euiListGroupStyles);
55
- var cssStyles = [styles.euiListGroup, styles[gutterSize], flush && styles.flush, bordered && styles.bordered, maxWidth === true && styles.maxWidthDefault];
50
+ var cssStyles = [styles.euiListGroup, bordered && styles.bordered, maxWidth === true && styles.maxWidthDefault];
56
51
  var maxWidthStyle = (0, _react.useMemo)(function () {
57
52
  if (maxWidth && maxWidth !== true) {
58
53
  return (0, _global_styling.logicalStyle)('max-width', maxWidth);
@@ -68,12 +63,11 @@ var EuiListGroup = exports.EuiListGroup = function EuiListGroup(_ref) {
68
63
  // we're passing the parent `color` and `size` down to the children
69
64
  // so that they can inherit it if they don't have one
70
65
  ,
71
- color: color,
72
- size: size
66
+ color: color
73
67
  }, item));
74
68
  });
75
69
  }
76
- }, [listItems, color, size, wrapText, showToolTips]);
70
+ }, [listItems, color, wrapText, showToolTips]);
77
71
  var listItemsOrChildren = renderedListItems ||
78
72
  // Note that there's no point in memoizing `children`, as JSX changes every rerender
79
73
  _react.default.Children.map(children, function (child) {
@@ -81,8 +75,7 @@ var EuiListGroup = exports.EuiListGroup = function EuiListGroup(_ref) {
81
75
  return (0, _services.cloneElementWithCss)(child, _objectSpread(_objectSpread({
82
76
  // we're passing the parent `color` and `size` down to the children
83
77
  // so that they can inherit it if they don't have one
84
- color: color,
85
- size: size
78
+ color: color
86
79
  }, showToolTips && {
87
80
  showToolTip: true
88
81
  }), child.props));