@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,93 @@
1
+ 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)."; }
2
+ /*
3
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
4
+ * or more contributor license agreements. Licensed under the Elastic License
5
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
6
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
7
+ * Side Public License, v 1.
8
+ */
9
+
10
+ import { css } from '@emotion/react';
11
+ import { mathWithUnits } from '@elastic/eui-theme-common';
12
+ import { euiFontSize, euiTextTruncate, highContrastModeStyles, logicalCSS } from '../../global_styling';
13
+ export var euiListItemVariables = function euiListItemVariables(_ref3) {
14
+ var euiTheme = _ref3.euiTheme;
15
+ var spacing = {
16
+ horizontal: euiTheme.size.s,
17
+ vertical: euiTheme.size.xs
18
+ };
19
+ var textPadding = {
20
+ horizontal: euiTheme.size.xs,
21
+ vertical: mathWithUnits([spacing.vertical, euiTheme.size.xxs], function (x, y) {
22
+ return x + y;
23
+ })
24
+ };
25
+ return {
26
+ spacing: spacing,
27
+ textPadding: textPadding
28
+ };
29
+ };
30
+ var listItemCommonStyles = function listItemCommonStyles(euiThemeContext) {
31
+ var euiTheme = euiThemeContext.euiTheme;
32
+ return "\n display: inline-flex; /* Necessary to make sure it doesn't force the whole popover to be too wide */\n align-items: center;\n ".concat(logicalCSS('width', '100%'), "\n border-radius: ").concat(euiTheme.border.radius.small, ";\n line-height: ").concat(euiFontSize(euiThemeContext, 's').lineHeight, ";\n font-size: ").concat(euiFontSize(euiThemeContext, 's').fontSize, ";\n color: ").concat(euiTheme.colors.textParagraph, ";\n overflow: hidden;\n ");
33
+ };
34
+ var _ref = process.env.NODE_ENV === "production" ? {
35
+ name: "8595p9-isDisabled",
36
+ styles: "cursor:not-allowed;label:isDisabled;"
37
+ } : {
38
+ name: "8595p9-isDisabled",
39
+ styles: "cursor:not-allowed;label:isDisabled;",
40
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
41
+ };
42
+ var _ref2 = process.env.NODE_ENV === "production" ? {
43
+ name: "2nxums-buttonIsDisabled",
44
+ styles: "&[aria-disabled='true']{pointer-events:none;>*{pointer-events:none;}};label:buttonIsDisabled;"
45
+ } : {
46
+ name: "2nxums-buttonIsDisabled",
47
+ styles: "&[aria-disabled='true']{pointer-events:none;>*{pointer-events:none;}};label:buttonIsDisabled;",
48
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
49
+ };
50
+ export var euiListItemLayoutStyles = function euiListItemLayoutStyles(euiThemeContext) {
51
+ var euiTheme = euiThemeContext.euiTheme;
52
+ var _euiListItemVariables = euiListItemVariables(euiThemeContext),
53
+ spacing = _euiListItemVariables.spacing,
54
+ textPadding = _euiListItemVariables.textPadding;
55
+
56
+ // uses `aria-disabled` only as not all variants can have a native `:disabled` state
57
+ var notDisabledSelector = "&:not([aria-disabled=\"true\"])";
58
+ var sharedFlexStyles = "\n display: flex;\n align-items: center;\n flex-shrink: 0;\n ";
59
+ var highlightedStyles = "\n ".concat(notDisabledSelector, " {\n background-color: ").concat(euiTheme.colors.backgroundBaseInteractiveHover, ";\n\n ").concat(highContrastModeStyles(euiThemeContext, {
60
+ preferred: "\n text-decoration: underline;\n "
61
+ }), "\n }\n ");
62
+ return {
63
+ euiListItemLayout: /*#__PURE__*/css(listItemCommonStyles(euiThemeContext), " ", logicalCSS('padding-horizontal', spacing.horizontal), ";;label:euiListItemLayout;"),
64
+ euiListItemLayout__action: /*#__PURE__*/css("display:flex;flex-grow:1;", logicalCSS('width', '100%'), " color:inherit;overflow:hidden;;label:euiListItemLayout__action;"),
65
+ euiListItemLayout__content: /*#__PURE__*/css(logicalCSS('width', '100%'), " display:flex;align-items:center;gap:", spacing.horizontal, ";;label:euiListItemLayout__content;"),
66
+ euiListItemLayout__text: /*#__PURE__*/css("flex-grow:1;", logicalCSS('padding-vertical', textPadding.vertical), " ", euiFontSize(euiThemeContext, 's'), " text-align:start;>*:only-child,>*:first-child{vertical-align:middle;}>*+*{", logicalCSS('margin-top', euiTheme.size.xxs), ";};label:euiListItemLayout__text;"),
67
+ textWrap: {
68
+ truncate: /*#__PURE__*/css(euiTextTruncate(), ";label:truncate;"),
69
+ wrap: /*#__PURE__*/css(";label:wrap;")
70
+ },
71
+ euiListItemLayout__prepend: /*#__PURE__*/css(sharedFlexStyles, " gap:", spacing.horizontal, ";;label:euiListItemLayout__prepend;"),
72
+ euiListItemLayout__append: /*#__PURE__*/css(sharedFlexStyles, " gap:", spacing.horizontal, ";;label:euiListItemLayout__append;"),
73
+ euiListItemLayout__icon: /*#__PURE__*/css(sharedFlexStyles, ";;label:euiListItemLayout__icon;"),
74
+ isInteractive: /*#__PURE__*/css("cursor:pointer;&:hover{", highlightedStyles, ";};label:isInteractive;"),
75
+ isDisabled: /*#__PURE__*/css("color:", euiTheme.colors.textDisabled, ";cursor:not-allowed;background-color:transparent;;label:isDisabled;"),
76
+ buttonIsDisabled: _ref2,
77
+ isFocused: /*#__PURE__*/css(highlightedStyles, ";;label:isFocused;"),
78
+ isSelected: /*#__PURE__*/css("color:", euiTheme.colors.textPrimary, ";background-color:", euiTheme.colors.backgroundBaseInteractiveSelect, ";", notDisabledSelector, "{&:hover{background-color:", euiTheme.colors.backgroundBaseInteractiveSelectHover, ";}}.euiIcon,.euiButtonIcon{color:inherit;}.euiListItemLayout__prepend,.euiListItemLayout__append{.euiIcon{color:", euiTheme.colors.textPrimary, ";}};label:isSelected;"),
79
+ isSelectedFocused: /*#__PURE__*/css(notDisabledSelector, "{background-color:", euiTheme.colors.backgroundBaseInteractiveSelectHover, ";};label:isSelectedFocused;"),
80
+ tooltip: {
81
+ isDisabled: _ref
82
+ },
83
+ externalIcon: /*#__PURE__*/css("color:", euiTheme.colors.textDisabled, ";;label:externalIcon;")
84
+ };
85
+ };
86
+ export var euiListItemLayoutWrapperStyles = function euiListItemLayoutWrapperStyles(euiThemeContext) {
87
+ var _euiListItemVariables2 = euiListItemVariables(euiThemeContext),
88
+ spacing = _euiListItemVariables2.spacing;
89
+ return {
90
+ euiListItemLayout__wrapper: /*#__PURE__*/css(listItemCommonStyles(euiThemeContext), "flex-shrink:0;list-style:none;;label:euiListItemLayout__wrapper;"),
91
+ hasExtraAction: /*#__PURE__*/css(logicalCSS('padding-right', spacing.horizontal), ";;label:hasExtraAction;")
92
+ };
93
+ };
@@ -0,0 +1,9 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ export { EuiListItemLayout } from './_list_item_layout';
@@ -363,7 +363,8 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
363
363
  noMatchesMessage: config.noOptionsMessage,
364
364
  listProps: {
365
365
  isVirtualized: isOverSearchThreshold || false,
366
- autoFocus: true
366
+ autoFocus: true,
367
+ paddingSize: 's'
367
368
  },
368
369
  onChange: function onChange(options, event, changedOption) {
369
370
  if (changedOption.data) {
@@ -696,6 +696,7 @@ EuiSelectable.propTypes = {
696
696
  * `false`: allows multiple selection
697
697
  * `true`: only allows one selection
698
698
  * `always`: can and must have only one selection
699
+ * @default false
699
700
  */
700
701
  singleSelection: PropTypes.oneOfType([PropTypes.oneOf(["always"]), PropTypes.bool.isRequired]),
701
702
  /**
@@ -1,5 +1,5 @@
1
1
  var _excluded = ["data"],
2
- _excluded2 = ["label", "isGroupLabel", "checked", "disabled", "prepend", "append", "ref", "key", "searchableLabel", "data", "truncationProps"],
2
+ _excluded2 = ["label", "isGroupLabel", "checked", "disabled", "prepend", "append", "ref", "key", "searchableLabel", "data", "truncationProps", "css"],
3
3
  _excluded3 = ["className", "options", "searchValue", "onOptionClick", "renderOption", "height", "windowProps", "rowHeight", "activeOptionIndex", "makeOptionId", "showIcons", "singleSelection", "visibleOptions", "allowExclusions", "bordered", "paddingSize", "searchable", "onFocusBadge", "listId", "setActiveOptionIndex", "aria-label", "aria-labelledby", "aria-describedby", "role", "isPreFiltered", "isVirtualized", "textWrap", "truncationProps", "autoFocus"];
4
4
  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; }
5
5
  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; }
@@ -31,14 +31,15 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
31
31
  import React, { Component, memo } from 'react';
32
32
  import PropTypes from "prop-types";
33
33
  import classNames from 'classnames';
34
- import { FixedSizeList, areEqual } from 'react-window';
34
+ import { VariableSizeList, areEqual } from 'react-window';
35
35
  import { RenderWithEuiStylesMemoizer } from '../../../services';
36
36
  import { EuiAutoSizer } from '../../auto_sizer';
37
37
  import { EuiHighlight } from '../../highlight';
38
38
  import { EuiMark } from '../../mark';
39
39
  import { EuiTextTruncate } from '../../text_truncate';
40
40
  import { EuiSelectableListItem } from './selectable_list_item';
41
- import { euiSelectableListStyles } from './selectable_list.styles';
41
+ import { euiSelectableListGroupLabelStyles, euiSelectableListStyles } from './selectable_list.styles';
42
+ import { getListItemSize } from './utils/get_list_item_size';
42
43
 
43
44
  // Consumer Configurable Props via `EuiSelectable.listProps`
44
45
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -116,11 +117,17 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
116
117
  ariaSetSize: latestAriaPosIndex
117
118
  };
118
119
  });
119
- _defineProperty(_this, "ListRow", /*#__PURE__*/memo(function (_ref) {
120
+ _defineProperty(_this, "getItemSize", function (index) {
121
+ var _ref = _this.props,
122
+ rowHeight = _ref.rowHeight;
123
+ var option = _this.state.optionArray[index];
124
+ return getListItemSize(index, rowHeight, !!(option !== null && option !== void 0 && option.isGroupLabel));
125
+ });
126
+ _defineProperty(_this, "ListRow", /*#__PURE__*/memo(function (_ref2) {
120
127
  var _option$textWrap;
121
- var data = _ref.data,
122
- index = _ref.index,
123
- style = _ref.style;
128
+ var data = _ref2.data,
129
+ index = _ref2.index,
130
+ style = _ref2.style;
124
131
  var option = data[index];
125
132
  var optionData = option.data,
126
133
  _option = _objectWithoutProperties(option, _excluded);
@@ -135,12 +142,12 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
135
142
  searchableLabel = option.searchableLabel,
136
143
  _data = option.data,
137
144
  _truncationProps = option.truncationProps,
145
+ css = option.css,
138
146
  optionRest = _objectWithoutProperties(option, _excluded2);
139
147
  var _this$props2 = _this.props,
140
148
  activeOptionIndex = _this$props2.activeOptionIndex,
141
149
  allowExclusions = _this$props2.allowExclusions,
142
150
  onFocusBadge = _this$props2.onFocusBadge,
143
- paddingSize = _this$props2.paddingSize,
144
151
  showIcons = _this$props2.showIcons,
145
152
  makeOptionId = _this$props2.makeOptionId,
146
153
  renderOption = _this$props2.renderOption,
@@ -148,13 +155,14 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
148
155
  searchable = _this$props2.searchable,
149
156
  searchValue = _this$props2.searchValue,
150
157
  isPreFiltered = _this$props2.isPreFiltered,
151
- isVirtualized = _this$props2.isVirtualized;
158
+ isVirtualized = _this$props2.isVirtualized,
159
+ singleSelection = _this$props2.singleSelection;
152
160
  if (isGroupLabel) {
153
161
  return ___EmotionJSX(RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
154
- var styles = stylesMemoizer(euiSelectableListStyles);
162
+ var styles = stylesMemoizer(euiSelectableListGroupLabelStyles);
155
163
  return ___EmotionJSX("li", _extends({
156
164
  role: "presentation",
157
- css: styles.euiSelectableList__groupLabel,
165
+ css: [styles.groupLabel, css, ";label:EuiSelectableList;"],
158
166
  className: "euiSelectableList__groupLabel",
159
167
  style: style
160
168
  }, optionRest), prepend, label, append);
@@ -196,9 +204,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
196
204
  onFocusBadge: onFocusBadge,
197
205
  allowExclusions: allowExclusions,
198
206
  showIcons: showIcons,
199
- paddingSize: paddingSize,
200
207
  searchable: searchable,
201
- textWrap: textWrap
208
+ textWrap: textWrap,
209
+ singleSelection: singleSelection === false ? false : true
202
210
  // @ts-ignore complex
203
211
  }, optionRest), renderOption ? renderOption( // @ts-ignore complex
204
212
  _objectSpread(_objectSpread({}, _option), optionData), searchValue) : highlightSearch ? _this.renderSearchedText(label, truncationProps) : truncationProps ? _this.renderTruncatedText(label, truncationProps) : label);
@@ -221,7 +229,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
221
229
  innerElementType: 'ul',
222
230
  itemCount: optionArray.length,
223
231
  itemData: itemData,
224
- itemSize: rowHeight,
232
+ itemSize: _this.getItemSize,
233
+ // Prevents scrollbar jump before VariableSizeList populates the cached size
234
+ estimatedItemSize: rowHeight,
225
235
  'data-skip-axe': 'scrollable-region-focusable'
226
236
  }, windowProps);
227
237
 
@@ -242,19 +252,19 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
242
252
  }
243
253
  return heightIsFull ? ___EmotionJSX(EuiAutoSizer, {
244
254
  onResize: _this.calculateDefaultOptionWidth
245
- }, function (_ref2) {
246
- var width = _ref2.width,
247
- height = _ref2.height;
248
- return ___EmotionJSX(FixedSizeList, _extends({
255
+ }, function (_ref3) {
256
+ var width = _ref3.width,
257
+ height = _ref3.height;
258
+ return ___EmotionJSX(VariableSizeList, _extends({
249
259
  width: width,
250
260
  height: height
251
261
  }, virtualizationProps), _this.ListRow);
252
262
  }) : ___EmotionJSX(EuiAutoSizer, {
253
263
  disableHeight: true,
254
264
  onResize: _this.calculateDefaultOptionWidth
255
- }, function (_ref3) {
256
- var width = _ref3.width;
257
- return ___EmotionJSX(FixedSizeList, _extends({
265
+ }, function (_ref4) {
266
+ var width = _ref4.width;
267
+ return ___EmotionJSX(VariableSizeList, _extends({
258
268
  width: width,
259
269
  height: calculatedHeight
260
270
  }, virtualizationProps), _this.ListRow);
@@ -271,8 +281,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
271
281
  // each individual item. This logic tries to offset this performance hit by
272
282
  // guesstimating a default width for each option
273
283
  _defineProperty(_this, "focusBadgeOffset", 0);
274
- _defineProperty(_this, "calculateDefaultOptionWidth", function (_ref4) {
275
- var containerWidth = _ref4.width;
284
+ _defineProperty(_this, "calculateDefaultOptionWidth", function (_ref5) {
285
+ var containerWidth = _ref5.width;
276
286
  var _this$props4 = _this.props,
277
287
  truncationProps = _this$props4.truncationProps,
278
288
  searchable = _this$props4.searchable,
@@ -281,9 +291,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
281
291
  // If it's not likely we'll need to use EuiTextTruncate, don't set state/rerender on every panel resize
282
292
  var mayTruncate = searchable || truncationProps;
283
293
  if (!mayTruncate) return;
284
- var paddingOffset = _this.props.paddingSize === 'none' ? 0 : 24; // Defaults to 's'
285
- var checkedIconOffset = _this.props.showIcons === false ? 0 : 28; // Defaults to true
286
- _this.focusBadgeOffset = _this.props.onFocusBadge === false ? 0 : 46;
294
+ var paddingOffset = 24; // 2 * list item padding (8px) + 2 * text padding (4px)
295
+ var checkedIconOffset = _this.props.showIcons === false ? 0 : 24; // icon (16px) + gap (8px)
296
+ _this.focusBadgeOffset = !_this.props.onFocusBadge ? 0 : 28; // badge (20px) + gap (8px)
287
297
 
288
298
  // Wait a tick for the listbox ref to update before proceeding
289
299
  _this.animationFrameId = requestAnimationFrame(function () {
@@ -363,8 +373,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
363
373
  options = _this$props5.options,
364
374
  _this$props5$visibleO = _this$props5.visibleOptions,
365
375
  visibleOptions = _this$props5$visibleO === void 0 ? options : _this$props5$visibleO;
366
- _this.props.setActiveOptionIndex(visibleOptions.findIndex(function (_ref5) {
367
- var label = _ref5.label;
376
+ _this.props.setActiveOptionIndex(visibleOptions.findIndex(function (_ref6) {
377
+ var label = _ref6.label;
368
378
  return label === option.label;
369
379
  }), function () {
370
380
  if (option.checked === 'on' && allowExclusions) {
@@ -457,11 +467,12 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
457
467
  paddingSize = _this$props9.paddingSize,
458
468
  textWrap = _this$props9.textWrap,
459
469
  onFocusBadge = _this$props9.onFocusBadge,
460
- searchable = _this$props9.searchable;
470
+ searchable = _this$props9.searchable,
471
+ singleSelection = _this$props9.singleSelection;
461
472
 
462
473
  // using shouldComponentUpdate to determine needed rerender before actual rerender
463
474
  // without needing state updates or lagging behind on updates
464
- if (nextProps.allowExclusions !== allowExclusions || nextProps.showIcons !== showIcons || nextProps.paddingSize !== paddingSize || nextProps.textWrap !== textWrap || nextProps.onFocusBadge !== onFocusBadge || nextProps.searchable !== searchable) {
475
+ if (nextProps.allowExclusions !== allowExclusions || nextProps.showIcons !== showIcons || nextProps.paddingSize !== paddingSize || nextProps.textWrap !== textWrap || nextProps.onFocusBadge !== onFocusBadge || nextProps.searchable !== searchable || nextProps.singleSelection !== singleSelection) {
465
476
  this.listRowRerender += 1;
466
477
  }
467
478
  return true;
@@ -479,7 +490,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
479
490
  paddingSize = _this$props10.paddingSize,
480
491
  textWrap = _this$props10.textWrap,
481
492
  onFocusBadge = _this$props10.onFocusBadge,
482
- searchable = _this$props10.searchable;
493
+ searchable = _this$props10.searchable,
494
+ singleSelection = _this$props10.singleSelection;
483
495
  if (prevProps.activeOptionIndex !== activeOptionIndex) {
484
496
  var makeOptionId = this.props.makeOptionId;
485
497
  if (this.listBoxRef && this.props.searchable !== true) {
@@ -488,6 +500,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
488
500
  if (typeof activeOptionIndex !== 'undefined') {
489
501
  if (isVirtualized) {
490
502
  var _this$listRef;
503
+ // NOTE: Maybe we might want to consider changing scroll position to
504
+ // 'center' to not have items stick to the edges of the list
491
505
  (_this$listRef = this.listRef) === null || _this$listRef === void 0 || _this$listRef.scrollToItem(activeOptionIndex, 'auto');
492
506
  } else {
493
507
  var _this$listBoxRef;
@@ -512,7 +526,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
512
526
  }, this.calculateAriaSetAttrs(optionArray)));
513
527
  } else if (isVirtualized) {
514
528
  // ensure that ListRow updates based on item props
515
- if (prevProps.allowExclusions !== allowExclusions || prevProps.showIcons !== showIcons || prevProps.paddingSize !== paddingSize || prevProps.textWrap !== textWrap || prevProps.onFocusBadge !== onFocusBadge || prevProps.searchable !== searchable) {
529
+ if (prevProps.allowExclusions !== allowExclusions || prevProps.showIcons !== showIcons || prevProps.paddingSize !== paddingSize || prevProps.textWrap !== textWrap || prevProps.onFocusBadge !== onFocusBadge || prevProps.searchable !== searchable || prevProps.singleSelection !== singleSelection) {
516
530
  this.setState({
517
531
  itemData: _objectSpread({}, optionArray)
518
532
  });
@@ -558,7 +572,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
558
572
  var classes = classNames('euiSelectableList', className);
559
573
  return ___EmotionJSX(RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
560
574
  var styles = stylesMemoizer(euiSelectableListStyles);
561
- var cssStyles = [styles.euiSelectableList, heightIsFull && styles.fullHeight, bordered && styles.bordered];
575
+ var cssStyles = [styles.euiSelectableList, heightIsFull && styles.fullHeight, bordered && styles.bordered, paddingSize === 's' && styles.paddingSize.s];
562
576
  var listClasses = classNames('euiSelectableList__list', styles.euiSelectableList__list);
563
577
  return ___EmotionJSX("div", _extends({
564
578
  css: cssStyles,
@@ -584,6 +598,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
584
598
  }(Component);
585
599
  _defineProperty(EuiSelectableList, "defaultProps", {
586
600
  rowHeight: 32,
601
+ paddingSize: 'none',
587
602
  searchValue: '',
588
603
  isVirtualized: true
589
604
  });
@@ -599,7 +614,7 @@ EuiSelectableList.propTypes = {
599
614
  */
600
615
  activeOptionIndex: PropTypes.number,
601
616
  /**
602
- * Show the check/cross selection indicator icons
617
+ * Show the check/cross selection indicators
603
618
  */
604
619
  showIcons: PropTypes.bool,
605
620
  singleSelection: PropTypes.oneOfType([PropTypes.oneOf(["always"]), PropTypes.bool.isRequired]),
@@ -669,9 +684,10 @@ EuiSelectableList.propTypes = {
669
684
  rel: PropTypes.string
670
685
  }).isRequired]),
671
686
  /**
672
- * Padding for the list items.
687
+ * Optional list container padding.
688
+ * @default 'none'
673
689
  */
674
- paddingSize: PropTypes.any,
690
+ paddingSize: PropTypes.oneOf(["none", "s"]),
675
691
  /**
676
692
  * How to handle long text within the item.
677
693
  * Wrapping only works if virtualization is off.
@@ -11,9 +11,10 @@ import { css } from '@emotion/react';
11
11
  // .euiSelectableList__list requires a static vanilla className
12
12
  // as it's passed down to react-window's virtualization library
13
13
  import { css as classNameCss } from '@emotion/css';
14
+ import { mathWithUnits } from '@elastic/eui-theme-common';
14
15
  import { euiFocusRing, euiYScrollWithShadows, logicalCSS } from '../../../global_styling';
15
16
  import { euiTitle } from '../../title/title.styles';
16
- import { euiSelectableListItemVariables } from './selectable_list_item.styles';
17
+ import { euiListItemVariables } from '../../list_item_layout/_list_item_layout.styles';
17
18
  var _ref = process.env.NODE_ENV === "production" ? {
18
19
  name: "1giu8j5-fullHeight",
19
20
  styles: "flex-grow:1;label:fullHeight;"
@@ -24,12 +25,26 @@ var _ref = process.env.NODE_ENV === "production" ? {
24
25
  };
25
26
  export var euiSelectableListStyles = function euiSelectableListStyles(euiThemeContext) {
26
27
  var euiTheme = euiThemeContext.euiTheme;
27
- var itemVars = euiSelectableListItemVariables(euiThemeContext);
28
28
  return {
29
29
  euiSelectableList: /*#__PURE__*/css("&:has(:focus-visible){", euiFocusRing(euiThemeContext, 'outset'), ";};label:euiSelectableList;"),
30
30
  fullHeight: _ref,
31
31
  bordered: /*#__PURE__*/css("overflow:hidden;border:", euiTheme.border.thin, ";border-radius:", euiTheme.border.radius.medium, ";;label:bordered;"),
32
- euiSelectableList__list: /*#__PURE__*/classNameCss(euiYScrollWithShadows(euiThemeContext), " &:focus,&>ul:focus{outline:none;};label:euiSelectableList__list;"),
33
- euiSelectableList__groupLabel: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxxs'), " display:flex;align-items:center;", logicalCSS('border-bottom', itemVars.border), " ", logicalCSS('padding-vertical', itemVars.paddingVertical), " ", logicalCSS('padding-horizontal', itemVars.paddingHorizontal), ";;label:euiSelectableList__groupLabel;")
32
+ paddingSize: {
33
+ s: /*#__PURE__*/css("padding:", euiTheme.size.s, ";;label:s;")
34
+ },
35
+ euiSelectableList__list: /*#__PURE__*/classNameCss(euiYScrollWithShadows(euiThemeContext, {
36
+ hasAnimatedOverflowShadow: true
37
+ }), " &:focus,&>ul:focus{outline:none;};label:euiSelectableList__list;")
38
+ };
39
+ };
40
+ export var euiSelectableListGroupLabelStyles = function euiSelectableListGroupLabelStyles(euiThemeContext) {
41
+ var euiTheme = euiThemeContext.euiTheme;
42
+ var itemVars = euiListItemVariables(euiThemeContext);
43
+ var spacingVertical = euiTheme.size.s;
44
+ var borderColor = euiTheme.components.selectableListItemBorderColor;
45
+ return {
46
+ groupLabel: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxxs'), " position:relative;display:flex;align-items:center;gap:", itemVars.spacing.horizontal, ";", logicalCSS('padding-horizontal', itemVars.textPadding.horizontal), " ", logicalCSS('padding-vertical', spacingVertical), " &:not(:first-child){", logicalCSS('padding-top', mathWithUnits([spacingVertical], function (a) {
47
+ return a * 3;
48
+ })), " &::before{content:'';position:absolute;inset:0;inset-block-start:", spacingVertical, ";", logicalCSS('border-top', "".concat(euiTheme.border.width.thin, " solid ").concat(borderColor)), ";}};label:groupLabel;")
34
49
  };
35
50
  };