@elastic/eui 95.8.1-0 → 95.10.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 (334) hide show
  1. package/dist/eui_theme_dark.css +35 -6
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +35 -6
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/avatar/avatar.js +1 -1
  6. package/es/components/badge/badge.js +1 -1
  7. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  8. package/es/components/basic_table/basic_table.js +1 -1
  9. package/es/components/basic_table/in_memory_table.js +6 -3
  10. package/es/components/button/button.js +1 -1
  11. package/es/components/button/button_display/_button_display.js +1 -1
  12. package/es/components/button/button_display/_button_display_content.js +1 -1
  13. package/es/components/button/button_empty/button_empty.js +1 -1
  14. package/es/components/button/button_group/button_group.js +1 -1
  15. package/es/components/button/button_group/button_group_button.js +1 -1
  16. package/es/components/button/button_icon/button_icon.js +1 -1
  17. package/es/components/call_out/call_out.js +1 -1
  18. package/es/components/card/card.js +2 -2
  19. package/es/components/card/card_select/card_select.js +1 -1
  20. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  21. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  22. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +20 -4
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  26. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  27. package/es/components/comment_list/comment.js +2 -2
  28. package/es/components/comment_list/comment_event.js +1 -1
  29. package/es/components/comment_list/comment_list.js +2 -2
  30. package/es/components/comment_list/comment_timeline.js +1 -1
  31. package/es/components/context_menu/context_menu_item.js +1 -1
  32. package/es/components/datagrid/body/cell/data_grid_cell.js +14 -12
  33. package/es/components/datagrid/body/cell/focus_utils.js +57 -11
  34. package/es/components/datagrid/body/data_grid_body.js +8 -7
  35. package/es/components/datagrid/body/data_grid_body_custom.js +8 -7
  36. package/es/components/datagrid/body/data_grid_body_virtualized.js +8 -7
  37. package/es/components/datagrid/body/header/data_grid_header_cell.js +98 -89
  38. package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +37 -22
  39. package/es/components/datagrid/controls/column_sorting.js +8 -7
  40. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  41. package/es/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  42. package/es/components/datagrid/data_grid.a11y.js +2 -0
  43. package/es/components/datagrid/utils/in_memory.js +7 -6
  44. package/es/components/date_picker/date_picker.js +34 -12
  45. package/es/components/date_picker/date_picker.styles.js +3 -2
  46. package/es/components/date_picker/date_picker_range.js +1 -1
  47. package/es/components/date_picker/date_picker_range.styles.js +1 -1
  48. package/es/components/empty_prompt/empty_prompt.js +1 -1
  49. package/es/components/facet/facet_button.js +1 -1
  50. package/es/components/form/checkbox/checkbox.js +1 -1
  51. package/es/components/form/checkbox/checkbox.styles.js +2 -0
  52. package/es/components/form/field_number/field_number.js +2 -2
  53. package/es/components/form/field_text/field_text.js +2 -2
  54. package/es/components/form/form.styles.js +5 -1
  55. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  56. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  57. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  58. package/es/components/form/radio/radio.js +1 -1
  59. package/es/components/form/radio/radio.styles.js +2 -0
  60. package/es/components/form/super_select/super_select.styles.js +1 -1
  61. package/es/components/form/text_area/text_area.js +2 -2
  62. package/es/components/header/header_links/header_link.js +1 -1
  63. package/es/components/header/header_links/header_links.js +1 -1
  64. package/es/components/header/header_logo/header_logo.js +1 -1
  65. package/es/components/header/header_section/header_section_item_button.js +1 -1
  66. package/es/components/icon/assets/tokenSemanticText.js +33 -0
  67. package/es/components/icon/icon.js +1 -1
  68. package/es/components/icon/icon_map.js +1 -0
  69. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  70. package/es/components/list_group/list_group.js +2 -2
  71. package/es/components/list_group/list_group_item.js +2 -2
  72. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  73. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  74. package/es/components/loading/loading_logo.js +1 -1
  75. package/es/components/markdown_editor/markdown_editor.js +1 -1
  76. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  77. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  78. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  79. package/es/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +15 -8
  80. package/es/components/markdown_editor/plugins/markdown_default_plugins/plugins.js +21 -4
  81. package/es/components/markdown_editor/plugins/markdown_default_plugins/processing_plugins.js +5 -2
  82. package/es/components/markdown_editor/plugins/markdown_link_validator.js +8 -2
  83. package/es/components/page/page_header/page_header_content.js +1 -1
  84. package/es/components/pagination/pagination_button.js +1 -1
  85. package/es/components/search_bar/filters/field_value_selection_filter.js +171 -152
  86. package/es/components/search_bar/query/default_syntax.js +230 -195
  87. package/es/components/search_bar/search_bar.js +7 -3
  88. package/es/components/search_bar/search_filters.js +2 -1
  89. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  90. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  91. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  92. package/es/components/timeline/timeline_item_icon.js +1 -1
  93. package/es/components/toast/global_toast_list.js +1 -1
  94. package/es/components/toast/toast.js +1 -1
  95. package/es/components/token/token_map.js +4 -0
  96. package/es/components/tool_tip/icon_tip.js +1 -1
  97. package/eui.d.ts +170 -74
  98. package/i18ntokens.json +82 -46
  99. package/lib/components/avatar/avatar.js +1 -1
  100. package/lib/components/badge/badge.js +1 -1
  101. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  102. package/lib/components/basic_table/basic_table.js +1 -1
  103. package/lib/components/basic_table/in_memory_table.js +6 -3
  104. package/lib/components/button/button.js +1 -1
  105. package/lib/components/button/button_display/_button_display.js +1 -1
  106. package/lib/components/button/button_display/_button_display_content.js +1 -1
  107. package/lib/components/button/button_empty/button_empty.js +1 -1
  108. package/lib/components/button/button_group/button_group.js +1 -1
  109. package/lib/components/button/button_group/button_group_button.js +1 -1
  110. package/lib/components/button/button_icon/button_icon.js +1 -1
  111. package/lib/components/call_out/call_out.js +1 -1
  112. package/lib/components/card/card.js +2 -2
  113. package/lib/components/card/card_select/card_select.js +1 -1
  114. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  115. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  116. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +20 -4
  117. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  118. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  119. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  120. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  121. package/lib/components/comment_list/comment.js +2 -2
  122. package/lib/components/comment_list/comment_event.js +1 -1
  123. package/lib/components/comment_list/comment_list.js +2 -2
  124. package/lib/components/comment_list/comment_timeline.js +1 -1
  125. package/lib/components/context_menu/context_menu_item.js +1 -1
  126. package/lib/components/datagrid/body/cell/data_grid_cell.js +14 -12
  127. package/lib/components/datagrid/body/cell/focus_utils.js +58 -12
  128. package/lib/components/datagrid/body/data_grid_body.js +8 -7
  129. package/lib/components/datagrid/body/data_grid_body_custom.js +8 -7
  130. package/lib/components/datagrid/body/data_grid_body_virtualized.js +8 -7
  131. package/lib/components/datagrid/body/header/data_grid_header_cell.js +104 -94
  132. package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +38 -23
  133. package/lib/components/datagrid/controls/column_sorting.js +8 -7
  134. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  135. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  136. package/lib/components/datagrid/data_grid.a11y.js +2 -0
  137. package/lib/components/datagrid/utils/in_memory.js +7 -6
  138. package/lib/components/date_picker/date_picker.js +34 -12
  139. package/lib/components/date_picker/date_picker.styles.js +3 -2
  140. package/lib/components/date_picker/date_picker_range.js +1 -1
  141. package/lib/components/date_picker/date_picker_range.styles.js +1 -1
  142. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  143. package/lib/components/facet/facet_button.js +1 -1
  144. package/lib/components/form/checkbox/checkbox.js +1 -1
  145. package/lib/components/form/checkbox/checkbox.styles.js +2 -0
  146. package/lib/components/form/field_number/field_number.js +2 -2
  147. package/lib/components/form/field_text/field_text.js +2 -2
  148. package/lib/components/form/form.styles.js +5 -1
  149. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  150. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  151. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  152. package/lib/components/form/radio/radio.js +1 -1
  153. package/lib/components/form/radio/radio.styles.js +2 -0
  154. package/lib/components/form/super_select/super_select.styles.js +1 -1
  155. package/lib/components/form/text_area/text_area.js +2 -2
  156. package/lib/components/header/header_links/header_link.js +1 -1
  157. package/lib/components/header/header_links/header_links.js +1 -1
  158. package/lib/components/header/header_logo/header_logo.js +1 -1
  159. package/lib/components/header/header_section/header_section_item_button.js +1 -1
  160. package/lib/components/icon/assets/tokenSemanticText.js +40 -0
  161. package/lib/components/icon/icon.js +1 -1
  162. package/lib/components/icon/icon_map.js +1 -0
  163. package/lib/components/icon/svgs/tokens/tokenSemanticText.svg +5 -0
  164. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  165. package/lib/components/list_group/list_group.js +2 -2
  166. package/lib/components/list_group/list_group_item.js +2 -2
  167. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  168. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  169. package/lib/components/loading/loading_logo.js +1 -1
  170. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  171. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  172. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  173. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  174. package/lib/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +26 -17
  175. package/lib/components/markdown_editor/plugins/markdown_default_plugins/plugins.js +21 -6
  176. package/lib/components/markdown_editor/plugins/markdown_default_plugins/processing_plugins.js +5 -2
  177. package/lib/components/markdown_editor/plugins/markdown_link_validator.js +9 -2
  178. package/lib/components/page/page_header/page_header_content.js +1 -1
  179. package/lib/components/pagination/pagination_button.js +1 -1
  180. package/lib/components/search_bar/filters/field_value_selection_filter.js +170 -151
  181. package/lib/components/search_bar/query/default_syntax.js +230 -195
  182. package/lib/components/search_bar/search_bar.js +7 -3
  183. package/lib/components/search_bar/search_filters.js +2 -1
  184. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  185. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  186. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  187. package/lib/components/timeline/timeline_item_icon.js +1 -1
  188. package/lib/components/toast/global_toast_list.js +1 -1
  189. package/lib/components/toast/toast.js +1 -1
  190. package/lib/components/token/token_map.js +4 -0
  191. package/lib/components/tool_tip/icon_tip.js +1 -1
  192. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -3
  193. package/optimize/es/components/datagrid/body/cell/focus_utils.js +55 -10
  194. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +90 -83
  195. package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +33 -19
  196. package/optimize/es/components/datagrid/data_grid.a11y.js +2 -0
  197. package/optimize/es/components/date_picker/date_picker.js +15 -9
  198. package/optimize/es/components/date_picker/date_picker.styles.js +3 -2
  199. package/optimize/es/components/date_picker/date_picker_range.styles.js +1 -1
  200. package/optimize/es/components/form/checkbox/checkbox.js +1 -1
  201. package/optimize/es/components/form/checkbox/checkbox.styles.js +2 -0
  202. package/optimize/es/components/form/form.styles.js +5 -1
  203. package/optimize/es/components/form/radio/radio.js +1 -1
  204. package/optimize/es/components/form/radio/radio.styles.js +2 -0
  205. package/optimize/es/components/form/super_select/super_select.styles.js +1 -1
  206. package/optimize/es/components/icon/assets/tokenSemanticText.js +32 -0
  207. package/optimize/es/components/icon/icon_map.js +1 -0
  208. package/optimize/es/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +14 -8
  209. package/optimize/es/components/markdown_editor/plugins/markdown_default_plugins/plugins.js +18 -4
  210. package/optimize/es/components/markdown_editor/plugins/markdown_default_plugins/processing_plugins.js +5 -2
  211. package/optimize/es/components/markdown_editor/plugins/markdown_link_validator.js +8 -2
  212. package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +168 -151
  213. package/optimize/es/components/search_bar/query/default_syntax.js +229 -195
  214. package/optimize/es/components/search_bar/search_bar.js +2 -1
  215. package/optimize/es/components/token/token_map.js +4 -0
  216. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -3
  217. package/optimize/lib/components/datagrid/body/cell/focus_utils.js +56 -11
  218. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +92 -84
  219. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +33 -19
  220. package/optimize/lib/components/datagrid/data_grid.a11y.js +2 -0
  221. package/optimize/lib/components/date_picker/date_picker.js +15 -9
  222. package/optimize/lib/components/date_picker/date_picker.styles.js +3 -2
  223. package/optimize/lib/components/date_picker/date_picker_range.styles.js +1 -1
  224. package/optimize/lib/components/form/checkbox/checkbox.js +1 -1
  225. package/optimize/lib/components/form/checkbox/checkbox.styles.js +2 -0
  226. package/optimize/lib/components/form/form.styles.js +5 -1
  227. package/optimize/lib/components/form/radio/radio.js +1 -1
  228. package/optimize/lib/components/form/radio/radio.styles.js +2 -0
  229. package/optimize/lib/components/form/super_select/super_select.styles.js +1 -1
  230. package/optimize/lib/components/icon/assets/tokenSemanticText.js +40 -0
  231. package/optimize/lib/components/icon/icon_map.js +1 -0
  232. package/optimize/lib/components/icon/svgs/tokens/tokenSemanticText.svg +5 -0
  233. package/optimize/lib/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +15 -11
  234. package/optimize/lib/components/markdown_editor/plugins/markdown_default_plugins/plugins.js +19 -6
  235. package/optimize/lib/components/markdown_editor/plugins/markdown_default_plugins/processing_plugins.js +5 -2
  236. package/optimize/lib/components/markdown_editor/plugins/markdown_link_validator.js +9 -2
  237. package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +167 -150
  238. package/optimize/lib/components/search_bar/query/default_syntax.js +232 -197
  239. package/optimize/lib/components/search_bar/search_bar.js +2 -1
  240. package/optimize/lib/components/token/token_map.js +4 -0
  241. package/package.json +4 -4
  242. package/src/components/datagrid/_data_grid_data_row.scss +5 -0
  243. package/src/components/datagrid/body/header/_data_grid_header_row.scss +27 -5
  244. package/test-env/components/avatar/avatar.js +1 -1
  245. package/test-env/components/badge/badge.js +1 -1
  246. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  247. package/test-env/components/basic_table/basic_table.js +1 -1
  248. package/test-env/components/basic_table/in_memory_table.js +6 -3
  249. package/test-env/components/button/button.js +1 -1
  250. package/test-env/components/button/button_display/_button_display.js +1 -1
  251. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  252. package/test-env/components/button/button_empty/button_empty.js +1 -1
  253. package/test-env/components/button/button_group/button_group.js +1 -1
  254. package/test-env/components/button/button_group/button_group_button.js +1 -1
  255. package/test-env/components/button/button_icon/button_icon.js +1 -1
  256. package/test-env/components/call_out/call_out.js +1 -1
  257. package/test-env/components/card/card.js +2 -2
  258. package/test-env/components/card/card_select/card_select.js +1 -1
  259. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  260. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  261. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +20 -4
  262. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  263. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  264. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  265. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  266. package/test-env/components/comment_list/comment.js +2 -2
  267. package/test-env/components/comment_list/comment_event.js +1 -1
  268. package/test-env/components/comment_list/comment_list.js +2 -2
  269. package/test-env/components/comment_list/comment_timeline.js +1 -1
  270. package/test-env/components/context_menu/context_menu_item.js +1 -1
  271. package/test-env/components/datagrid/body/cell/data_grid_cell.js +14 -12
  272. package/test-env/components/datagrid/body/cell/focus_utils.js +58 -12
  273. package/test-env/components/datagrid/body/data_grid_body.js +8 -7
  274. package/test-env/components/datagrid/body/data_grid_body_custom.js +8 -7
  275. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +8 -7
  276. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +99 -90
  277. package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.js +37 -22
  278. package/test-env/components/datagrid/controls/column_sorting.js +8 -7
  279. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  280. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  281. package/test-env/components/datagrid/data_grid.a11y.js +2 -0
  282. package/test-env/components/datagrid/utils/in_memory.js +7 -6
  283. package/test-env/components/date_picker/date_picker.js +34 -12
  284. package/test-env/components/date_picker/date_picker.styles.js +3 -2
  285. package/test-env/components/date_picker/date_picker_range.js +1 -1
  286. package/test-env/components/date_picker/date_picker_range.styles.js +1 -1
  287. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  288. package/test-env/components/facet/facet_button.js +1 -1
  289. package/test-env/components/form/checkbox/checkbox.js +1 -1
  290. package/test-env/components/form/checkbox/checkbox.styles.js +2 -0
  291. package/test-env/components/form/field_number/field_number.js +2 -2
  292. package/test-env/components/form/field_text/field_text.js +2 -2
  293. package/test-env/components/form/form.styles.js +5 -1
  294. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  295. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  296. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  297. package/test-env/components/form/radio/radio.js +1 -1
  298. package/test-env/components/form/radio/radio.styles.js +2 -0
  299. package/test-env/components/form/super_select/super_select.styles.js +1 -1
  300. package/test-env/components/form/text_area/text_area.js +2 -2
  301. package/test-env/components/header/header_links/header_link.js +1 -1
  302. package/test-env/components/header/header_links/header_links.js +1 -1
  303. package/test-env/components/header/header_logo/header_logo.js +1 -1
  304. package/test-env/components/header/header_section/header_section_item_button.js +1 -1
  305. package/test-env/components/icon/assets/tokenSemanticText.js +40 -0
  306. package/test-env/components/icon/icon_map.js +1 -0
  307. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  308. package/test-env/components/list_group/list_group.js +2 -2
  309. package/test-env/components/list_group/list_group_item.js +2 -2
  310. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  311. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  312. package/test-env/components/loading/loading_logo.js +1 -1
  313. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  314. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  315. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  316. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  317. package/test-env/components/markdown_editor/plugins/markdown_default_plugins/parsing_plugins.js +15 -11
  318. package/test-env/components/markdown_editor/plugins/markdown_default_plugins/plugins.js +19 -6
  319. package/test-env/components/markdown_editor/plugins/markdown_default_plugins/processing_plugins.js +5 -2
  320. package/test-env/components/markdown_editor/plugins/markdown_link_validator.js +9 -2
  321. package/test-env/components/page/page_header/page_header_content.js +1 -1
  322. package/test-env/components/pagination/pagination_button.js +1 -1
  323. package/test-env/components/search_bar/filters/field_value_selection_filter.js +169 -151
  324. package/test-env/components/search_bar/query/default_syntax.js +232 -197
  325. package/test-env/components/search_bar/search_bar.js +7 -3
  326. package/test-env/components/search_bar/search_filters.js +2 -1
  327. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  328. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  329. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  330. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  331. package/test-env/components/toast/global_toast_list.js +1 -1
  332. package/test-env/components/toast/toast.js +1 -1
  333. package/test-env/components/token/token_map.js +4 -0
  334. package/test-env/components/tool_tip/icon_tip.js +1 -1
@@ -40,6 +40,6 @@ export var euiSuperSelectControlStyles = function euiSuperSelectControlStyles(eu
40
40
  // Layout modifiers
41
41
  inGroup: /*#__PURE__*/css(formStyles.inGroup, ";label:inGroup;"),
42
42
  // Children
43
- euiSuperSelect__placeholder: /*#__PURE__*/css("color:", formVariables.controlDisabledColor, ";;label:euiSuperSelect__placeholder;")
43
+ euiSuperSelect__placeholder: /*#__PURE__*/css("color:", formVariables.controlPlaceholderText, ";;label:euiSuperSelect__placeholder;")
44
44
  };
45
45
  };
@@ -0,0 +1,32 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["title", "titleId"];
4
+ /*
5
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
+ * or more contributor license agreements. Licensed under the Elastic License
7
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
8
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
9
+ * Side Public License, v 1.
10
+ */
11
+
12
+ // THIS IS A GENERATED FILE. DO NOT MODIFY MANUALLY. @see scripts/compile-icons.js
13
+
14
+ import * as React from 'react';
15
+ import { jsx as ___EmotionJSX } from "@emotion/react";
16
+ var EuiIconTokenSemanticText = function EuiIconTokenSemanticText(_ref) {
17
+ var title = _ref.title,
18
+ titleId = _ref.titleId,
19
+ props = _objectWithoutProperties(_ref, _excluded);
20
+ return ___EmotionJSX("svg", _extends({
21
+ xmlns: "http://www.w3.org/2000/svg",
22
+ width: 16,
23
+ height: 16,
24
+ viewBox: "0 0 16 16",
25
+ "aria-labelledby": titleId
26
+ }, props), title ? ___EmotionJSX("title", {
27
+ id: titleId
28
+ }, title) : null, ___EmotionJSX("path", {
29
+ d: "M2 2.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H3v10h1.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5v-11ZM13.5 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1H13V3h-1.5a.5.5 0 0 1 0-1h2ZM9.098 4.5l-.244 1.393h.896l-.212 1.211h-.896l-.435 2.574c-.024.176-.013.308.034.398.046.09.163.138.35.145.072.004.22-.005.445-.026L8.91 11.46a2.75 2.75 0 0 1-.916.129c-.528-.007-.923-.162-1.186-.466-.262-.304-.37-.716-.32-1.237l.455-2.78H6.25l.207-1.212h.694L7.394 4.5h1.704Z"
30
+ }));
31
+ };
32
+ export var icon = EuiIconTokenSemanticText;
@@ -505,6 +505,7 @@ export var typeToPathMap = {
505
505
  tokenRankFeatures: 'tokenRankFeatures',
506
506
  tokenRepo: 'tokenRepo',
507
507
  tokenSearchType: 'tokenSearchType',
508
+ tokenSemanticText: 'tokenSemanticText',
508
509
  tokenShape: 'tokenShape',
509
510
  tokenString: 'tokenString',
510
511
  tokenStruct: 'tokenStruct',
@@ -1,4 +1,6 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["exclude"];
2
4
  /*
3
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
4
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -18,29 +20,33 @@ import breaks from 'remark-breaks';
18
20
  import highlight from '../remark/remark_prismjs';
19
21
  import * as MarkdownTooltip from '../markdown_tooltip';
20
22
  import * as MarkdownCheckbox from '../markdown_checkbox';
21
- import { euiMarkdownLinkValidator } from '../markdown_link_validator';
23
+ import { euiMarkdownLinkValidator, DEFAULT_OPTIONS as LINK_VALIDATOR_DEFAULTS } from '../markdown_link_validator';
22
24
  var DEFAULT_PARSING_PLUGINS = {
23
25
  emoji: [emoji, {
24
26
  emoticon: false
25
27
  }],
26
28
  lineBreaks: [breaks, {}],
27
- linkValidator: [euiMarkdownLinkValidator, {
28
- allowRelative: true,
29
- allowProtocols: ['https:', 'http:', 'mailto:']
30
- }],
29
+ linkValidator: [euiMarkdownLinkValidator, LINK_VALIDATOR_DEFAULTS],
31
30
  checkbox: [MarkdownCheckbox.parser, {}],
32
31
  tooltip: [MarkdownTooltip.parser, {}]
33
32
  };
34
33
  export var getDefaultEuiMarkdownParsingPlugins = function getDefaultEuiMarkdownParsingPlugins() {
35
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
36
- exclude = _ref.exclude;
34
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
35
+ var exclude = _ref.exclude,
36
+ parsingConfig = _objectWithoutProperties(_ref, _excluded);
37
37
  var parsingPlugins = [[markdown, {}], [highlight, {}]];
38
38
  Object.entries(DEFAULT_PARSING_PLUGINS).forEach(function (_ref2) {
39
39
  var _ref3 = _slicedToArray(_ref2, 2),
40
40
  pluginName = _ref3[0],
41
41
  plugin = _ref3[1];
42
+ // Check for plugin exclusions
42
43
  if (!(exclude !== null && exclude !== void 0 && exclude.includes(pluginName))) {
43
- parsingPlugins.push(plugin);
44
+ // Check for plugin configuration overrides
45
+ if (pluginName in parsingConfig) {
46
+ parsingPlugins.push([plugin[0], parsingConfig[pluginName]]);
47
+ } else {
48
+ parsingPlugins.push(plugin);
49
+ }
44
50
  }
45
51
  });
46
52
  return parsingPlugins;
@@ -1,3 +1,6 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ 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; }
3
+ 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; }
1
4
  /*
2
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -9,10 +12,21 @@
9
12
  import { getDefaultEuiMarkdownUiPlugins } from './ui_plugins';
10
13
  import { getDefaultEuiMarkdownParsingPlugins } from './parsing_plugins';
11
14
  import { getDefaultEuiMarkdownProcessingPlugins } from './processing_plugins';
12
- export var getDefaultEuiMarkdownPlugins = function getDefaultEuiMarkdownPlugins(config) {
15
+ export var getDefaultEuiMarkdownPlugins = function getDefaultEuiMarkdownPlugins() {
16
+ var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
17
+ var exclude = config.exclude,
18
+ processingConfig = config.processingConfig,
19
+ parsingConfig = config.parsingConfig,
20
+ uiConfig = config.uiConfig;
13
21
  return {
14
- parsingPlugins: getDefaultEuiMarkdownParsingPlugins(config),
15
- processingPlugins: getDefaultEuiMarkdownProcessingPlugins(config),
16
- uiPlugins: getDefaultEuiMarkdownUiPlugins(config)
22
+ parsingPlugins: getDefaultEuiMarkdownParsingPlugins(_objectSpread({
23
+ exclude: exclude
24
+ }, parsingConfig)),
25
+ processingPlugins: getDefaultEuiMarkdownProcessingPlugins(_objectSpread({
26
+ exclude: exclude
27
+ }, processingConfig)),
28
+ uiPlugins: getDefaultEuiMarkdownUiPlugins(_objectSpread({
29
+ exclude: exclude
30
+ }, uiConfig))
17
31
  };
18
32
  };
@@ -36,7 +36,8 @@ var DEFAULT_COMPONENT_RENDERERS = {
36
36
  };
37
37
  export var getDefaultEuiMarkdownProcessingPlugins = function getDefaultEuiMarkdownProcessingPlugins() {
38
38
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
39
- exclude = _ref.exclude;
39
+ exclude = _ref.exclude,
40
+ linkProps = _ref.linkProps;
40
41
  var componentPluginsWithExclusions = {};
41
42
  Object.entries(DEFAULT_COMPONENT_RENDERERS).forEach(function (_ref2) {
42
43
  var _ref3 = _slicedToArray(_ref2, 2),
@@ -55,7 +56,9 @@ export var getDefaultEuiMarkdownProcessingPlugins = function getDefaultEuiMarkdo
55
56
  createElement: createElement,
56
57
  Fragment: Fragment,
57
58
  components: _objectSpread({
58
- a: EuiLink,
59
+ a: function a(props) {
60
+ return ___EmotionJSX(EuiLink, _extends({}, props, linkProps));
61
+ },
59
62
  code: function code(props) {
60
63
  return (
61
64
  // If there are linebreaks use codeblock, otherwise code
@@ -7,6 +7,10 @@
7
7
  */
8
8
 
9
9
  import visit from 'unist-util-visit';
10
+ export var DEFAULT_OPTIONS = {
11
+ allowRelative: true,
12
+ allowProtocols: ['https:', 'http:', 'mailto:']
13
+ };
10
14
  export function euiMarkdownLinkValidator(options) {
11
15
  return function (ast) {
12
16
  visit(ast, 'link', function (_node) {
@@ -37,8 +41,10 @@ export function mutateLinkToText(node) {
37
41
  return node;
38
42
  }
39
43
  export function validateUrl(url, _ref) {
40
- var allowRelative = _ref.allowRelative,
41
- allowProtocols = _ref.allowProtocols;
44
+ var _ref$allowRelative = _ref.allowRelative,
45
+ allowRelative = _ref$allowRelative === void 0 ? DEFAULT_OPTIONS.allowRelative : _ref$allowRelative,
46
+ _ref$allowProtocols = _ref.allowProtocols,
47
+ allowProtocols = _ref$allowProtocols === void 0 ? DEFAULT_OPTIONS.allowProtocols : _ref$allowProtocols;
42
48
  // relative captures both relative paths `/` and protocols `//`
43
49
  var isRelative = url.startsWith('/');
44
50
  if (isRelative) {
@@ -1,13 +1,13 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
4
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
5
  import _createClass from "@babel/runtime/helpers/createClass";
5
6
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
7
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
8
  import _inherits from "@babel/runtime/helpers/inherits";
8
9
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- 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; }
10
- 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; }
10
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
11
11
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
12
12
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
13
13
  /*
@@ -18,7 +18,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
18
18
  * Side Public License, v 1.
19
19
  */
20
20
 
21
- import React, { Component } from 'react';
21
+ import React, { Component, createRef } from 'react';
22
22
  import { RenderWithEuiTheme } from '../../../services';
23
23
  import { isArray, isNil } from '../../../services/predicate';
24
24
  import { EuiPopover, EuiPopoverTitle } from '../../popover';
@@ -32,7 +32,8 @@ var defaults = {
32
32
  config: {
33
33
  multiSelect: true,
34
34
  filterWith: 'prefix',
35
- searchThreshold: 10
35
+ searchThreshold: 10,
36
+ autoSortOptions: true
36
37
  }
37
38
  };
38
39
  export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
@@ -40,45 +41,132 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
40
41
  var _this;
41
42
  _classCallCheck(this, FieldValueSelectionFilter);
42
43
  _this = _callSuper(this, FieldValueSelectionFilter, [props]);
43
- _defineProperty(_this, "resolveOptionsLoader", function () {
44
- var options = _this.props.config.options;
45
- if (isArray(options)) {
46
- return function () {
47
- return Promise.resolve(options);
48
- };
49
- }
50
- return function () {
51
- var cachedOptions = _this.state.cachedOptions;
52
- if (cachedOptions) {
53
- return Promise.resolve(cachedOptions);
54
- }
55
- return options().then(function (opts) {
56
- // If a cache time is set, populate the cache and also schedule a
57
- // cache reset.
58
- if (_this.props.config.cache != null && _this.props.config.cache > 0) {
44
+ _defineProperty(_this, "selectableClassRef", /*#__PURE__*/createRef());
45
+ _defineProperty(_this, "cacheTimeout", void 0);
46
+ _defineProperty(_this, "loadOptions", /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
47
+ var loadedOptions, _this$props$config, options, cache, _this$state$cachedOpt, items, _this$props, query, config;
48
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
49
+ while (1) switch (_context.prev = _context.next) {
50
+ case 0:
59
51
  _this.setState({
60
- cachedOptions: opts
52
+ options: null,
53
+ error: null
61
54
  });
62
- setTimeout(function () {
55
+ _this$props$config = _this.props.config, options = _this$props$config.options, cache = _this$props$config.cache;
56
+ _context.prev = 2;
57
+ if (!isArray(options)) {
58
+ _context.next = 7;
59
+ break;
60
+ }
61
+ // Synchronous options, already loaded
62
+ loadedOptions = options;
63
+ _context.next = 16;
64
+ break;
65
+ case 7:
66
+ if (!((_this$state$cachedOpt = _this.state.cachedOptions) !== null && _this$state$cachedOpt !== void 0)) {
67
+ _context.next = 11;
68
+ break;
69
+ }
70
+ _context.t0 = _this$state$cachedOpt;
71
+ _context.next = 14;
72
+ break;
73
+ case 11:
74
+ _context.next = 13;
75
+ return options();
76
+ case 13:
77
+ _context.t0 = _context.sent;
78
+ case 14:
79
+ loadedOptions = _context.t0;
80
+ // If a cache time is set, populate the cache and schedule a cache reset
81
+ if (cache != null && cache > 0) {
63
82
  _this.setState({
64
- cachedOptions: null
83
+ cachedOptions: loadedOptions
65
84
  });
66
- }, _this.props.config.cache);
67
- }
68
- return opts;
85
+ _this.cacheTimeout = setTimeout(function () {
86
+ _this.setState({
87
+ cachedOptions: null
88
+ });
89
+ }, cache);
90
+ }
91
+ case 16:
92
+ _context.next = 21;
93
+ break;
94
+ case 18:
95
+ _context.prev = 18;
96
+ _context.t1 = _context["catch"](2);
97
+ return _context.abrupt("return", _this.setState({
98
+ options: null,
99
+ error: 'Could not load options'
100
+ }));
101
+ case 21:
102
+ items = {
103
+ on: [],
104
+ off: [],
105
+ rest: []
106
+ };
107
+ _this$props = _this.props, query = _this$props.query, config = _this$props.config;
108
+ if (loadedOptions) {
109
+ loadedOptions.forEach(function (op) {
110
+ var optionField = op.field || config.field;
111
+ if (optionField) {
112
+ var clause = _this.multiSelect === 'or' ? query.getOrFieldClause(optionField, op.value) : query.getSimpleFieldClause(optionField, op.value);
113
+ var checked = _this.resolveChecked(clause);
114
+ if (!checked) {
115
+ items.rest.push(op);
116
+ } else if (checked === 'on') {
117
+ items.on.push(op);
118
+ } else {
119
+ items.off.push(op);
120
+ }
121
+ }
122
+ return;
123
+ });
124
+ }
125
+ _this.setState({
126
+ error: null,
127
+ activeItemsCount: items.on.length,
128
+ options: {
129
+ unsorted: loadedOptions,
130
+ sorted: [].concat(_toConsumableArray(items.on), _toConsumableArray(items.off), _toConsumableArray(items.rest))
131
+ }
132
+ }, _this.scrollToAutoSortedOption);
133
+ case 25:
134
+ case "end":
135
+ return _context.stop();
136
+ }
137
+ }, _callee, null, [[2, 18]]);
138
+ })));
139
+ _defineProperty(_this, "scrollToAutoSortedOption", function () {
140
+ if (!_this.autoSortOptions) return;
141
+ var _this$state = _this.state,
142
+ lastCheckedValue = _this$state.lastCheckedValue,
143
+ options = _this$state.options;
144
+ if (lastCheckedValue) {
145
+ var sortedIndex = options.sorted.findIndex(function (option) {
146
+ return option.value === lastCheckedValue;
69
147
  });
70
- };
148
+ if (sortedIndex >= 0) {
149
+ var _this$selectableClass;
150
+ // EuiSelectable should automatically handle scrolling its list to the new index
151
+ (_this$selectableClass = _this.selectableClassRef.current) === null || _this$selectableClass === void 0 || _this$selectableClass.setState({
152
+ activeOptionIndex: sortedIndex
153
+ });
154
+ }
155
+ _this.setState({
156
+ lastCheckedValue: undefined
157
+ });
158
+ }
71
159
  });
72
160
  var _options = props.config.options;
73
161
  var preloadedOptions = isArray(_options) ? {
74
- all: _options,
75
- shown: _options
162
+ unsorted: _options,
163
+ sorted: _options
76
164
  } : null;
77
165
  _this.state = {
78
166
  popoverOpen: false,
79
167
  error: null,
80
168
  options: preloadedOptions,
81
- activeItems: []
169
+ activeItemsCount: 0
82
170
  };
83
171
  return _this;
84
172
  }
@@ -108,94 +196,6 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
108
196
  };
109
197
  });
110
198
  }
111
- }, {
112
- key: "loadOptions",
113
- value: function loadOptions() {
114
- var _this3 = this;
115
- var loader = this.resolveOptionsLoader();
116
- this.setState({
117
- options: null,
118
- error: null
119
- });
120
- loader().then(function (options) {
121
- var items = {
122
- on: [],
123
- off: [],
124
- rest: []
125
- };
126
- var _this3$props = _this3.props,
127
- query = _this3$props.query,
128
- config = _this3$props.config;
129
- var multiSelect = _this3.resolveMultiSelect();
130
- if (options) {
131
- options.forEach(function (op) {
132
- var optionField = op.field || config.field;
133
- if (optionField) {
134
- var clause = multiSelect === 'or' ? query.getOrFieldClause(optionField, op.value) : query.getSimpleFieldClause(optionField, op.value);
135
- var checked = _this3.resolveChecked(clause);
136
- if (!checked) {
137
- items.rest.push(op);
138
- } else if (checked === 'on') {
139
- items.on.push(op);
140
- } else {
141
- items.off.push(op);
142
- }
143
- }
144
- return;
145
- });
146
- }
147
- _this3.setState({
148
- error: null,
149
- activeItems: items.on,
150
- options: {
151
- all: options,
152
- shown: [].concat(_toConsumableArray(items.on), _toConsumableArray(items.off), _toConsumableArray(items.rest))
153
- }
154
- });
155
- }).catch(function () {
156
- _this3.setState({
157
- options: null,
158
- error: 'Could not load options'
159
- });
160
- });
161
- }
162
- }, {
163
- key: "filterOptions",
164
- value: function filterOptions() {
165
- var _this4 = this;
166
- var q = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
167
- this.setState(function (prevState) {
168
- if (isNil(prevState.options)) {
169
- return {};
170
- }
171
- var predicate = _this4.getOptionFilter();
172
- return _objectSpread(_objectSpread({}, prevState), {}, {
173
- options: _objectSpread(_objectSpread({}, prevState.options), {}, {
174
- shown: prevState.options.all.filter(function (option, i, options) {
175
- var name = _this4.resolveOptionName(option).toLowerCase();
176
- var query = q.toLowerCase();
177
- return predicate(name, query, options);
178
- })
179
- })
180
- });
181
- });
182
- }
183
- }, {
184
- key: "getOptionFilter",
185
- value: function getOptionFilter() {
186
- var filterWith = this.props.config.filterWith || defaults.config.filterWith;
187
- if (typeof filterWith === 'function') {
188
- return filterWith;
189
- }
190
- if (filterWith === 'includes') {
191
- return function (name, query) {
192
- return name.includes(query);
193
- };
194
- }
195
- return function (name, query) {
196
- return name.startsWith(query);
197
- };
198
- }
199
199
  }, {
200
200
  key: "resolveOptionName",
201
201
  value: function resolveOptionName(option) {
@@ -204,23 +204,27 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
204
204
  }, {
205
205
  key: "onOptionClick",
206
206
  value: function onOptionClick(field, value, checked) {
207
- var multiSelect = this.resolveMultiSelect();
208
- var _this$props$config = this.props.config,
209
- autoClose = _this$props$config.autoClose,
210
- _this$props$config$op = _this$props$config.operator,
211
- operator = _this$props$config$op === void 0 ? Operator.EQ : _this$props$config$op;
207
+ var _this$props$config2 = this.props.config,
208
+ autoClose = _this$props$config2.autoClose,
209
+ _this$props$config2$o = _this$props$config2.operator,
210
+ operator = _this$props$config2$o === void 0 ? Operator.EQ : _this$props$config2$o;
211
+ if (checked && this.autoSortOptions) {
212
+ this.setState({
213
+ lastCheckedValue: value
214
+ });
215
+ }
212
216
 
213
217
  // If the consumer explicitly sets `autoClose`, always defer to that.
214
218
  // Otherwise, default to auto-closing for single selections and leaving the
215
219
  // popover open for multi-select (so users can continue selecting options)
216
- var shouldClosePopover = autoClose !== null && autoClose !== void 0 ? autoClose : !multiSelect;
220
+ var shouldClosePopover = autoClose !== null && autoClose !== void 0 ? autoClose : !this.multiSelect;
217
221
  if (shouldClosePopover) {
218
222
  this.closePopover();
219
223
  }
220
- if (!multiSelect) {
224
+ if (!this.multiSelect) {
221
225
  var _query = checked ? this.props.query.removeSimpleFieldClauses(field).addSimpleFieldValue(field, value, true, operator) : this.props.query.removeSimpleFieldClauses(field);
222
226
  this.props.onChange(_query);
223
- } else if (multiSelect === 'or') {
227
+ } else if (this.multiSelect === 'or') {
224
228
  var _query2 = checked ? this.props.query.addOrFieldValue(field, value, true, operator) : this.props.query.removeOrFieldValue(field, value);
225
229
  this.props.onChange(_query2);
226
230
  } else {
@@ -229,10 +233,16 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
229
233
  }
230
234
  }
231
235
  }, {
232
- key: "resolveMultiSelect",
233
- value: function resolveMultiSelect() {
234
- var config = this.props.config;
235
- return !isNil(config.multiSelect) ? config.multiSelect : defaults.config.multiSelect;
236
+ key: "autoSortOptions",
237
+ get: function get() {
238
+ var _this$props$config$au;
239
+ return (_this$props$config$au = this.props.config.autoSortOptions) !== null && _this$props$config$au !== void 0 ? _this$props$config$au : defaults.config.autoSortOptions;
240
+ }
241
+ }, {
242
+ key: "multiSelect",
243
+ get: function get() {
244
+ var _this$props$config$mu;
245
+ return (_this$props$config$mu = this.props.config.multiSelect) !== null && _this$props$config$mu !== void 0 ? _this$props$config$mu : defaults.config.multiSelect;
236
246
  }
237
247
  }, {
238
248
  key: "componentDidMount",
@@ -244,19 +254,26 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
244
254
  value: function componentDidUpdate(prevProps) {
245
255
  if (this.props.query !== prevProps.query) this.loadOptions();
246
256
  }
257
+ }, {
258
+ key: "componentWillUnmount",
259
+ value: function componentWillUnmount() {
260
+ clearTimeout(this.cacheTimeout);
261
+ }
247
262
  }, {
248
263
  key: "render",
249
264
  value: function render() {
250
- var _this5 = this;
251
- var _this$props = this.props,
252
- query = _this$props.query,
253
- config = _this$props.config;
254
- var multiSelect = this.resolveMultiSelect();
265
+ var _this$state$options,
266
+ _this$state$options2,
267
+ _this3 = this;
268
+ var _this$props2 = this.props,
269
+ query = _this$props2.query,
270
+ config = _this$props2.config;
271
+ var options = this.autoSortOptions ? (_this$state$options = this.state.options) === null || _this$state$options === void 0 ? void 0 : _this$state$options.sorted : (_this$state$options2 = this.state.options) === null || _this$state$options2 === void 0 ? void 0 : _this$state$options2.unsorted;
255
272
  var activeTop = this.isActiveField(config.field);
256
- var activeItem = this.state.options ? this.state.options.all.some(function (item) {
257
- return _this5.isActiveField(item.field);
273
+ var activeItem = options ? options.some(function (item) {
274
+ return _this3.isActiveField(item.field);
258
275
  }) : false;
259
- var activeItemsCount = this.state.activeItems.length;
276
+ var activeItemsCount = this.state.activeItemsCount;
260
277
  var active = (activeTop || activeItem) && activeItemsCount > 0;
261
278
  var button = ___EmotionJSX(EuiFilterButton, {
262
279
  iconType: "arrowDown",
@@ -266,15 +283,15 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
266
283
  numActiveFilters: active ? activeItemsCount : undefined,
267
284
  grow: true
268
285
  }, config.name);
269
- var items = this.state.options ? this.state.options.shown.map(function (option) {
286
+ var items = options ? options.map(function (option) {
270
287
  var _option$view;
271
288
  var optionField = option.field || config.field;
272
289
  if (optionField == null) {
273
290
  throw new Error('option.field or field should be provided in <FieldValueSelectionFilter/>');
274
291
  }
275
- var clause = multiSelect === 'or' ? query.getOrFieldClause(optionField, option.value) : query.getSimpleFieldClause(optionField, option.value);
276
- var label = _this5.resolveOptionName(option);
277
- var checked = _this5.resolveChecked(clause);
292
+ var clause = _this3.multiSelect === 'or' ? query.getOrFieldClause(optionField, option.value) : query.getSimpleFieldClause(optionField, option.value);
293
+ var label = _this3.resolveOptionName(option);
294
+ var checked = _this3.resolveChecked(clause);
278
295
  return {
279
296
  label: label,
280
297
  checked: checked,
@@ -286,7 +303,7 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
286
303
  };
287
304
  }) : [];
288
305
  var threshold = config.searchThreshold || defaults.config.searchThreshold;
289
- var isOverSearchThreshold = this.state.options && this.state.options.all.length >= threshold;
306
+ var isOverSearchThreshold = options && options.length >= threshold;
290
307
  var searchProps = {
291
308
  searchable: false
292
309
  };
@@ -302,31 +319,32 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
302
319
  return ___EmotionJSX(RenderWithEuiTheme, null, function (euiThemeContext) {
303
320
  return ___EmotionJSX(EuiPopover, {
304
321
  button: button,
305
- isOpen: _this5.state.popoverOpen,
306
- closePopover: _this5.closePopover.bind(_this5),
322
+ isOpen: _this3.state.popoverOpen,
323
+ closePopover: _this3.closePopover.bind(_this3),
307
324
  panelPaddingSize: "none",
308
325
  anchorPosition: "downCenter",
309
326
  panelProps: {
310
327
  css: euiFilterGroupStyles(euiThemeContext).euiFilterGroup__popoverPanel
311
328
  }
312
329
  }, ___EmotionJSX(EuiSelectable, _extends({
313
- singleSelection: !multiSelect,
330
+ ref: _this3.selectableClassRef,
331
+ singleSelection: !_this3.multiSelect,
314
332
  "aria-label": config.name,
315
333
  options: items,
316
334
  renderOption: function renderOption(option) {
317
335
  return option.view;
318
336
  },
319
- isLoading: isNil(_this5.state.options),
337
+ isLoading: isNil(options),
320
338
  loadingMessage: config.loadingMessage,
321
339
  emptyMessage: config.noOptionsMessage,
322
- errorMessage: _this5.state.error,
340
+ errorMessage: _this3.state.error,
323
341
  noMatchesMessage: config.noOptionsMessage,
324
342
  listProps: {
325
343
  isVirtualized: isOverSearchThreshold || false
326
344
  },
327
345
  onChange: function onChange(options, event, changedOption) {
328
346
  if (changedOption.data) {
329
- _this5.onOptionClick(changedOption.data.optionField, changedOption.data.value, changedOption.checked);
347
+ _this3.onOptionClick(changedOption.data.optionField, changedOption.data.value, changedOption.checked);
330
348
  }
331
349
  }
332
350
  }, searchProps), function (list, search) {
@@ -350,8 +368,7 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
350
368
  return false;
351
369
  }
352
370
  var query = this.props.query;
353
- var multiSelect = this.resolveMultiSelect();
354
- if (multiSelect === 'or') {
371
+ if (this.multiSelect === 'or') {
355
372
  return query.hasOrFieldClause(field);
356
373
  }
357
374
  return query.hasSimpleFieldClause(field);