@elastic/eui 77.0.0 → 77.1.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 (312) hide show
  1. package/dist/eui_theme_dark.css +22 -51
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +22 -51
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accordion/accordion.a11y.js +3 -1
  6. package/es/components/accordion/accordion.js +4 -2
  7. package/es/components/basic_table/table.a11y.js +3 -1
  8. package/es/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  9. package/es/components/card/card.a11y.js +3 -1
  10. package/es/components/color_picker/color_picker.a11y.js +3 -1
  11. package/es/components/combo_box/combo_box.a11y.js +3 -1
  12. package/es/components/combo_box/combo_box.js +2 -21
  13. package/es/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  14. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  15. package/es/components/context_menu/context_menu_panel.a11y.js +3 -1
  16. package/es/components/control_bar/control_bar.a11y.js +3 -1
  17. package/es/components/copy/copy.a11y.js +6 -5
  18. package/es/components/datagrid/data_grid.a11y.js +3 -1
  19. package/es/components/date_picker/date_picker.a11y.js +3 -1
  20. package/es/components/date_picker/date_picker.js +148 -155
  21. package/es/components/date_picker/date_picker_range.js +2 -2
  22. package/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  23. package/es/components/delay_hide/delay_hide.a11y.js +9 -9
  24. package/es/components/delay_render/delay_render.a11y.js +9 -9
  25. package/es/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  26. package/es/components/empty_prompt/empty_prompt.a11y.js +8 -14
  27. package/es/components/error_boundary/error_boundary.a11y.js +3 -1
  28. package/es/components/expression/expression.a11y.js +3 -1
  29. package/es/components/filter_group/filter_group.a11y.js +4 -3
  30. package/es/components/flyout/flyout.a11y.js +3 -1
  31. package/es/components/focus_trap/focus_trap.a11y.js +3 -1
  32. package/es/components/form/checkbox/checkbox_group.a11y.js +3 -1
  33. package/es/components/form/file_picker/file_picker.js +4 -2
  34. package/es/components/form/radio/radio_group.a11y.js +4 -5
  35. package/es/components/form/range/range.a11y.js +3 -1
  36. package/es/components/form/switch/switch.a11y.js +4 -5
  37. package/es/components/form/text_area/text_area.js +11 -3
  38. package/es/components/form/validatable_control/index.js +1 -1
  39. package/es/components/form/validatable_control/validatable_control.js +49 -13
  40. package/es/components/header/header.a11y.js +3 -1
  41. package/es/components/icon/icon_ML.a11y.js +3 -1
  42. package/es/components/icon/icon_apps.a11y.js +3 -1
  43. package/es/components/icon/icon_editor.a11y.js +3 -1
  44. package/es/components/icon/icon_elastic.a11y.js +3 -1
  45. package/es/components/icon/icon_glyphs.a11y.js +3 -1
  46. package/es/components/icon/icon_tokens.a11y.js +3 -1
  47. package/es/components/image/image.a11y.js +3 -1
  48. package/es/components/index.js +1 -0
  49. package/es/components/inline_edit/index.js +10 -0
  50. package/es/components/inline_edit/inline_edit.styles.js +15 -0
  51. package/es/components/inline_edit/inline_edit_form.js +190 -0
  52. package/es/components/inline_edit/inline_edit_text.js +97 -0
  53. package/es/components/inline_edit/inline_edit_title.js +105 -0
  54. package/es/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  55. package/es/components/modal/modal.a11y.js +3 -1
  56. package/es/components/notification/notification_event.a11y.js +3 -1
  57. package/es/components/page/page_header/page_header.a11y.js +3 -1
  58. package/es/components/pagination/pagination.a11y.js +3 -1
  59. package/es/components/popover/popover.a11y.js +3 -1
  60. package/es/components/popover/popover_footer.js +4 -4
  61. package/es/components/popover/popover_footer.styles.js +16 -5
  62. package/es/components/popover/popover_panel/_popover_panel.js +8 -5
  63. package/es/components/portal/portal.a11y.js +3 -1
  64. package/es/components/progress/progress.a11y.js +3 -1
  65. package/es/components/resizable_container/resizable_container.a11y.js +3 -1
  66. package/es/components/search_bar/search_bar.a11y.js +8 -7
  67. package/es/components/selectable/selectable.a11y.js +3 -1
  68. package/es/components/side_nav/side_nav.a11y.js +3 -1
  69. package/es/components/tabs/tabs.a11y.js +3 -1
  70. package/es/components/tree_view/tree_view.a11y.js +3 -1
  71. package/eui.d.ts +161 -37
  72. package/i18ntokens.json +40 -4
  73. package/lib/components/accordion/accordion.a11y.js +3 -1
  74. package/lib/components/accordion/accordion.js +4 -2
  75. package/lib/components/basic_table/table.a11y.js +3 -1
  76. package/lib/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  77. package/lib/components/combo_box/combo_box.js +2 -21
  78. package/lib/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  79. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  80. package/lib/components/context_menu/context_menu_panel.a11y.js +3 -1
  81. package/lib/components/copy/copy.a11y.js +3 -4
  82. package/lib/components/date_picker/date_picker.js +147 -153
  83. package/lib/components/date_picker/date_picker_range.js +2 -2
  84. package/lib/components/delay_hide/delay_hide.a11y.js +6 -8
  85. package/lib/components/delay_render/delay_render.a11y.js +6 -8
  86. package/lib/components/drag_and_drop/drag_and_drop.a11y.js +0 -1
  87. package/lib/components/empty_prompt/empty_prompt.a11y.js +8 -14
  88. package/lib/components/error_boundary/error_boundary.a11y.js +3 -1
  89. package/lib/components/filter_group/filter_group.a11y.js +7 -8
  90. package/lib/components/form/file_picker/file_picker.js +4 -2
  91. package/lib/components/form/radio/radio_group.a11y.js +1 -4
  92. package/lib/components/form/switch/switch.a11y.js +1 -4
  93. package/lib/components/form/text_area/text_area.js +11 -3
  94. package/lib/components/form/validatable_control/index.js +6 -0
  95. package/lib/components/form/validatable_control/validatable_control.js +51 -14
  96. package/lib/components/icon/icon_ML.a11y.js +3 -1
  97. package/lib/components/icon/icon_apps.a11y.js +3 -1
  98. package/lib/components/icon/icon_editor.a11y.js +3 -1
  99. package/lib/components/icon/icon_elastic.a11y.js +3 -1
  100. package/lib/components/icon/icon_glyphs.a11y.js +3 -1
  101. package/lib/components/icon/icon_tokens.a11y.js +3 -1
  102. package/lib/components/image/image.a11y.js +3 -1
  103. package/lib/components/index.js +11 -0
  104. package/lib/components/inline_edit/index.js +19 -0
  105. package/lib/components/inline_edit/inline_edit.styles.js +22 -0
  106. package/lib/components/inline_edit/inline_edit_form.js +193 -0
  107. package/lib/components/inline_edit/inline_edit_text.js +97 -0
  108. package/lib/components/inline_edit/inline_edit_title.js +106 -0
  109. package/lib/components/page/page_header/page_header.a11y.js +3 -1
  110. package/lib/components/popover/popover_footer.js +4 -4
  111. package/lib/components/popover/popover_footer.styles.js +19 -7
  112. package/lib/components/popover/popover_panel/_popover_panel.js +7 -4
  113. package/lib/components/resizable_container/resizable_container.a11y.js +3 -1
  114. package/lib/components/search_bar/search_bar.a11y.js +5 -6
  115. package/lib/components/tree_view/tree_view.a11y.js +3 -1
  116. package/optimize/es/components/accordion/accordion.a11y.js +3 -1
  117. package/optimize/es/components/accordion/accordion.js +4 -2
  118. package/optimize/es/components/basic_table/table.a11y.js +3 -1
  119. package/optimize/es/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  120. package/optimize/es/components/card/card.a11y.js +3 -1
  121. package/optimize/es/components/color_picker/color_picker.a11y.js +3 -1
  122. package/optimize/es/components/combo_box/combo_box.a11y.js +3 -1
  123. package/optimize/es/components/combo_box/combo_box.js +2 -21
  124. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +63 -34
  125. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  126. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +3 -1
  127. package/optimize/es/components/control_bar/control_bar.a11y.js +3 -1
  128. package/optimize/es/components/copy/copy.a11y.js +6 -5
  129. package/optimize/es/components/datagrid/data_grid.a11y.js +3 -1
  130. package/optimize/es/components/date_picker/date_picker.a11y.js +3 -1
  131. package/optimize/es/components/date_picker/date_picker.js +142 -148
  132. package/optimize/es/components/date_picker/date_picker_range.js +1 -1
  133. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  134. package/optimize/es/components/delay_hide/delay_hide.a11y.js +9 -9
  135. package/optimize/es/components/delay_render/delay_render.a11y.js +9 -9
  136. package/optimize/es/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  137. package/optimize/es/components/empty_prompt/empty_prompt.a11y.js +8 -14
  138. package/optimize/es/components/error_boundary/error_boundary.a11y.js +3 -1
  139. package/optimize/es/components/expression/expression.a11y.js +3 -1
  140. package/optimize/es/components/filter_group/filter_group.a11y.js +4 -3
  141. package/optimize/es/components/flyout/flyout.a11y.js +3 -1
  142. package/optimize/es/components/focus_trap/focus_trap.a11y.js +3 -1
  143. package/optimize/es/components/form/checkbox/checkbox_group.a11y.js +3 -1
  144. package/optimize/es/components/form/file_picker/file_picker.js +4 -2
  145. package/optimize/es/components/form/radio/radio_group.a11y.js +4 -5
  146. package/optimize/es/components/form/range/range.a11y.js +3 -1
  147. package/optimize/es/components/form/switch/switch.a11y.js +4 -5
  148. package/optimize/es/components/form/text_area/text_area.js +10 -3
  149. package/optimize/es/components/form/validatable_control/index.js +1 -1
  150. package/optimize/es/components/form/validatable_control/validatable_control.js +49 -9
  151. package/optimize/es/components/header/header.a11y.js +3 -1
  152. package/optimize/es/components/icon/icon_ML.a11y.js +3 -1
  153. package/optimize/es/components/icon/icon_apps.a11y.js +3 -1
  154. package/optimize/es/components/icon/icon_editor.a11y.js +3 -1
  155. package/optimize/es/components/icon/icon_elastic.a11y.js +3 -1
  156. package/optimize/es/components/icon/icon_glyphs.a11y.js +3 -1
  157. package/optimize/es/components/icon/icon_tokens.a11y.js +3 -1
  158. package/optimize/es/components/image/image.a11y.js +3 -1
  159. package/optimize/es/components/index.js +1 -0
  160. package/optimize/es/components/inline_edit/index.js +10 -0
  161. package/optimize/es/components/inline_edit/inline_edit.styles.js +15 -0
  162. package/optimize/es/components/inline_edit/inline_edit_form.js +133 -0
  163. package/optimize/es/components/inline_edit/inline_edit_text.js +52 -0
  164. package/optimize/es/components/inline_edit/inline_edit_title.js +56 -0
  165. package/optimize/es/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  166. package/optimize/es/components/modal/modal.a11y.js +3 -1
  167. package/optimize/es/components/notification/notification_event.a11y.js +3 -1
  168. package/optimize/es/components/page/page_header/page_header.a11y.js +3 -1
  169. package/optimize/es/components/pagination/pagination.a11y.js +3 -1
  170. package/optimize/es/components/popover/popover.a11y.js +3 -1
  171. package/optimize/es/components/popover/popover_footer.js +4 -4
  172. package/optimize/es/components/popover/popover_footer.styles.js +16 -5
  173. package/optimize/es/components/popover/popover_panel/_popover_panel.js +8 -5
  174. package/optimize/es/components/portal/portal.a11y.js +3 -1
  175. package/optimize/es/components/progress/progress.a11y.js +3 -1
  176. package/optimize/es/components/resizable_container/resizable_container.a11y.js +3 -1
  177. package/optimize/es/components/search_bar/search_bar.a11y.js +8 -7
  178. package/optimize/es/components/selectable/selectable.a11y.js +3 -1
  179. package/optimize/es/components/side_nav/side_nav.a11y.js +3 -1
  180. package/optimize/es/components/tabs/tabs.a11y.js +3 -1
  181. package/optimize/es/components/tree_view/tree_view.a11y.js +3 -1
  182. package/optimize/lib/components/accordion/accordion.a11y.js +3 -1
  183. package/optimize/lib/components/accordion/accordion.js +4 -2
  184. package/optimize/lib/components/basic_table/table.a11y.js +3 -1
  185. package/optimize/lib/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  186. package/optimize/lib/components/card/card.a11y.js +3 -1
  187. package/optimize/lib/components/color_picker/color_picker.a11y.js +3 -1
  188. package/optimize/lib/components/combo_box/combo_box.a11y.js +3 -1
  189. package/optimize/lib/components/combo_box/combo_box.js +2 -21
  190. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +63 -34
  191. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  192. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +3 -1
  193. package/optimize/lib/components/control_bar/control_bar.a11y.js +3 -1
  194. package/optimize/lib/components/copy/copy.a11y.js +6 -5
  195. package/optimize/lib/components/datagrid/data_grid.a11y.js +3 -1
  196. package/optimize/lib/components/date_picker/date_picker.a11y.js +3 -1
  197. package/optimize/lib/components/date_picker/date_picker.js +141 -147
  198. package/optimize/lib/components/date_picker/date_picker_range.js +1 -1
  199. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  200. package/optimize/lib/components/delay_hide/delay_hide.a11y.js +9 -9
  201. package/optimize/lib/components/delay_render/delay_render.a11y.js +9 -9
  202. package/optimize/lib/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  203. package/optimize/lib/components/empty_prompt/empty_prompt.a11y.js +8 -14
  204. package/optimize/lib/components/error_boundary/error_boundary.a11y.js +3 -1
  205. package/optimize/lib/components/filter_group/filter_group.a11y.js +10 -9
  206. package/optimize/lib/components/focus_trap/focus_trap.a11y.js +3 -1
  207. package/optimize/lib/components/form/file_picker/file_picker.js +4 -2
  208. package/optimize/lib/components/form/radio/radio_group.a11y.js +4 -5
  209. package/optimize/lib/components/form/range/range.a11y.js +3 -1
  210. package/optimize/lib/components/form/switch/switch.a11y.js +4 -5
  211. package/optimize/lib/components/form/text_area/text_area.js +10 -3
  212. package/optimize/lib/components/form/validatable_control/index.js +6 -0
  213. package/optimize/lib/components/form/validatable_control/validatable_control.js +52 -12
  214. package/optimize/lib/components/header/header.a11y.js +3 -1
  215. package/optimize/lib/components/icon/icon_ML.a11y.js +3 -1
  216. package/optimize/lib/components/icon/icon_apps.a11y.js +3 -1
  217. package/optimize/lib/components/icon/icon_editor.a11y.js +3 -1
  218. package/optimize/lib/components/icon/icon_elastic.a11y.js +3 -1
  219. package/optimize/lib/components/icon/icon_glyphs.a11y.js +3 -1
  220. package/optimize/lib/components/icon/icon_tokens.a11y.js +3 -1
  221. package/optimize/lib/components/image/image.a11y.js +3 -1
  222. package/optimize/lib/components/index.js +11 -0
  223. package/optimize/lib/components/inline_edit/index.js +19 -0
  224. package/optimize/lib/components/inline_edit/inline_edit.styles.js +22 -0
  225. package/optimize/lib/components/inline_edit/inline_edit_form.js +144 -0
  226. package/optimize/lib/components/inline_edit/inline_edit_text.js +52 -0
  227. package/optimize/lib/components/inline_edit/inline_edit_title.js +57 -0
  228. package/optimize/lib/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  229. package/optimize/lib/components/modal/modal.a11y.js +3 -1
  230. package/optimize/lib/components/notification/notification_event.a11y.js +3 -1
  231. package/optimize/lib/components/page/page_header/page_header.a11y.js +3 -1
  232. package/optimize/lib/components/pagination/pagination.a11y.js +3 -1
  233. package/optimize/lib/components/popover/popover.a11y.js +3 -1
  234. package/optimize/lib/components/popover/popover_footer.js +4 -4
  235. package/optimize/lib/components/popover/popover_footer.styles.js +19 -7
  236. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +7 -4
  237. package/optimize/lib/components/portal/portal.a11y.js +3 -1
  238. package/optimize/lib/components/progress/progress.a11y.js +3 -1
  239. package/optimize/lib/components/resizable_container/resizable_container.a11y.js +3 -1
  240. package/optimize/lib/components/search_bar/search_bar.a11y.js +8 -7
  241. package/optimize/lib/components/selectable/selectable.a11y.js +3 -1
  242. package/optimize/lib/components/side_nav/side_nav.a11y.js +3 -1
  243. package/optimize/lib/components/tree_view/tree_view.a11y.js +3 -1
  244. package/package.json +1 -1
  245. package/src/components/combo_box/_combo_box.scss +2 -38
  246. package/src/components/date_picker/_date_picker_range.scss +1 -1
  247. package/src/components/form/field_text/_field_text.scss +0 -7
  248. package/src/components/form/file_picker/_file_picker.scss +3 -2
  249. package/src/components/form/form_control_layout/_form_control_layout.scss +7 -2
  250. package/src/components/form/text_area/_text_area.scss +9 -0
  251. package/test-env/components/accordion/accordion.a11y.js +3 -1
  252. package/test-env/components/accordion/accordion.js +4 -2
  253. package/test-env/components/basic_table/table.a11y.js +3 -1
  254. package/test-env/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  255. package/test-env/components/card/card.a11y.js +3 -1
  256. package/test-env/components/color_picker/color_picker.a11y.js +3 -1
  257. package/test-env/components/combo_box/combo_box.a11y.js +3 -1
  258. package/test-env/components/combo_box/combo_box.js +2 -21
  259. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  260. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  261. package/test-env/components/context_menu/context_menu_panel.a11y.js +3 -1
  262. package/test-env/components/control_bar/control_bar.a11y.js +3 -1
  263. package/test-env/components/copy/copy.a11y.js +6 -5
  264. package/test-env/components/datagrid/data_grid.a11y.js +3 -1
  265. package/test-env/components/date_picker/date_picker.a11y.js +3 -1
  266. package/test-env/components/date_picker/date_picker.js +141 -147
  267. package/test-env/components/date_picker/date_picker_range.js +2 -2
  268. package/test-env/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  269. package/test-env/components/delay_hide/delay_hide.a11y.js +9 -9
  270. package/test-env/components/delay_render/delay_render.a11y.js +9 -9
  271. package/test-env/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  272. package/test-env/components/empty_prompt/empty_prompt.a11y.js +8 -14
  273. package/test-env/components/error_boundary/error_boundary.a11y.js +3 -1
  274. package/test-env/components/filter_group/filter_group.a11y.js +10 -9
  275. package/test-env/components/focus_trap/focus_trap.a11y.js +3 -1
  276. package/test-env/components/form/file_picker/file_picker.js +4 -2
  277. package/test-env/components/form/radio/radio_group.a11y.js +4 -5
  278. package/test-env/components/form/range/range.a11y.js +3 -1
  279. package/test-env/components/form/switch/switch.a11y.js +4 -5
  280. package/test-env/components/form/text_area/text_area.js +11 -3
  281. package/test-env/components/form/validatable_control/index.js +6 -0
  282. package/test-env/components/form/validatable_control/validatable_control.js +51 -14
  283. package/test-env/components/header/header.a11y.js +3 -1
  284. package/test-env/components/icon/icon_ML.a11y.js +3 -1
  285. package/test-env/components/icon/icon_apps.a11y.js +3 -1
  286. package/test-env/components/icon/icon_editor.a11y.js +3 -1
  287. package/test-env/components/icon/icon_elastic.a11y.js +3 -1
  288. package/test-env/components/icon/icon_glyphs.a11y.js +3 -1
  289. package/test-env/components/icon/icon_tokens.a11y.js +3 -1
  290. package/test-env/components/image/image.a11y.js +3 -1
  291. package/test-env/components/index.js +11 -0
  292. package/test-env/components/inline_edit/index.js +19 -0
  293. package/test-env/components/inline_edit/inline_edit.styles.js +22 -0
  294. package/test-env/components/inline_edit/inline_edit_form.js +196 -0
  295. package/test-env/components/inline_edit/inline_edit_text.js +96 -0
  296. package/test-env/components/inline_edit/inline_edit_title.js +105 -0
  297. package/test-env/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  298. package/test-env/components/modal/modal.a11y.js +3 -1
  299. package/test-env/components/notification/notification_event.a11y.js +3 -1
  300. package/test-env/components/page/page_header/page_header.a11y.js +3 -1
  301. package/test-env/components/pagination/pagination.a11y.js +3 -1
  302. package/test-env/components/popover/popover.a11y.js +3 -1
  303. package/test-env/components/popover/popover_footer.js +4 -4
  304. package/test-env/components/popover/popover_footer.styles.js +19 -7
  305. package/test-env/components/popover/popover_panel/_popover_panel.js +7 -4
  306. package/test-env/components/portal/portal.a11y.js +3 -1
  307. package/test-env/components/progress/progress.a11y.js +3 -1
  308. package/test-env/components/resizable_container/resizable_container.a11y.js +3 -1
  309. package/test-env/components/search_bar/search_bar.a11y.js +8 -7
  310. package/test-env/components/selectable/selectable.a11y.js +3 -1
  311. package/test-env/components/side_nav/side_nav.a11y.js +3 -1
  312. package/test-env/components/tree_view/tree_view.a11y.js +3 -1
@@ -218,22 +218,6 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
218
218
  _defineProperty(_assertThisInitialized(_this), "clearSearchValue", function () {
219
219
  _this.onSearchChange('');
220
220
  });
221
- _defineProperty(_assertThisInitialized(_this), "removeLastOption", function () {
222
- if (!_this.props.selectedOptions.length) {
223
- return;
224
- }
225
-
226
- // Backspace will be used to delete the input, not a pill.
227
- if (_this.state.searchValue.length) {
228
- return;
229
- }
230
-
231
- // Delete last pill.
232
- _this.onRemoveOption(_this.props.selectedOptions[_this.props.selectedOptions.length - 1]);
233
- if (Boolean(_this.props.singleSelection) && !_this.state.isListOpen) {
234
- _this.openList();
235
- }
236
- });
237
221
  _defineProperty(_assertThisInitialized(_this), "addCustomOption", function (isContainerBlur, searchValue) {
238
222
  var _this$props = _this.props,
239
223
  isCaseSensitive = _this$props.isCaseSensitive,
@@ -383,10 +367,6 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
383
367
  _this.openList();
384
368
  }
385
369
  break;
386
- case keys.BACKSPACE:
387
- event.stopPropagation();
388
- _this.removeLastOption();
389
- break;
390
370
  case keys.ESCAPE:
391
371
  if (_this.state.isListOpen) {
392
372
  event.preventDefault();
@@ -663,7 +643,7 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
663
643
  // Visually indicate the combobox is in an invalid state if it has lost focus but there is text entered in the input.
664
644
  // When custom options are disabled and the user leaves the combo box after entering text that does not match any
665
645
  // options, this tells the user that they've entered invalid input.
666
- var markAsInvalid = isInvalid || (hasFocus === false || isListOpen === false) && searchValue;
646
+ var markAsInvalid = !!(isInvalid || (hasFocus === false || isListOpen === false) && searchValue);
667
647
  var classes = classNames('euiComboBox', className, {
668
648
  'euiComboBox--compressed': compressed,
669
649
  'euiComboBox--fullWidth': fullWidth,
@@ -760,6 +740,7 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
760
740
  append: singleSelection ? append : undefined,
761
741
  prepend: singleSelection ? prepend : undefined,
762
742
  isLoading: isLoading,
743
+ isInvalid: markAsInvalid,
763
744
  autoFocus: autoFocus,
764
745
  "aria-label": ariaLabel,
765
746
  "aria-labelledby": ariaLabelledby
@@ -22,8 +22,10 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
22
22
  import React, { Component } from 'react';
23
23
  import classNames from 'classnames';
24
24
  import AutosizeInput from 'react-input-autosize';
25
+ import { keys } from '../../../services';
25
26
  import { EuiScreenReaderOnly } from '../../accessibility';
26
27
  import { EuiFormControlLayout } from '../../form/form_control_layout';
28
+ import { getFormControlClassNameForIconCount } from '../../form/form_control_layout/_num_icons';
27
29
  import { EuiComboBoxPill } from './combo_box_pill';
28
30
  import { jsx as ___EmotionJSX } from "@emotion/react";
29
31
  export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
@@ -59,10 +61,29 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
59
61
  hasFocus: false
60
62
  });
61
63
  });
62
- _defineProperty(_assertThisInitialized(_this), "inputOnChange", function (event) {
64
+ _defineProperty(_assertThisInitialized(_this), "onKeyDown", function (event) {
63
65
  var _this$props = _this.props,
64
- onChange = _this$props.onChange,
65
- searchValue = _this$props.searchValue;
66
+ searchValue = _this$props.searchValue,
67
+ selectedOptions = _this$props.selectedOptions,
68
+ onRemoveOption = _this$props.onRemoveOption,
69
+ singleSelection = _this$props.singleSelection,
70
+ isListOpen = _this$props.isListOpen,
71
+ onOpenListClick = _this$props.onOpenListClick;
72
+
73
+ // When backspacing from an empty input, delete the last pill option in the list
74
+ var searchIsEmpty = !searchValue.length;
75
+ var hasPills = selectedOptions.length;
76
+ if (event.key === keys.BACKSPACE && searchIsEmpty && hasPills) {
77
+ onRemoveOption(selectedOptions[selectedOptions.length - 1]);
78
+ if (!!singleSelection && !isListOpen) {
79
+ onOpenListClick();
80
+ }
81
+ }
82
+ });
83
+ _defineProperty(_assertThisInitialized(_this), "inputOnChange", function (event) {
84
+ var _this$props2 = _this.props,
85
+ onChange = _this$props2.onChange,
86
+ searchValue = _this$props2.searchValue;
66
87
  if (onChange) {
67
88
  onChange(event.target.value);
68
89
  }
@@ -89,34 +110,35 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
89
110
  }, {
90
111
  key: "render",
91
112
  value: function render() {
92
- var _this$props2 = this.props,
93
- compressed = _this$props2.compressed,
94
- focusedOptionId = _this$props2.focusedOptionId,
95
- fullWidth = _this$props2.fullWidth,
96
- hasSelectedOptions = _this$props2.hasSelectedOptions,
97
- id = _this$props2.id,
98
- inputRef = _this$props2.inputRef,
99
- isDisabled = _this$props2.isDisabled,
100
- isListOpen = _this$props2.isListOpen,
101
- noIcon = _this$props2.noIcon,
102
- onClear = _this$props2.onClear,
103
- onClick = _this$props2.onClick,
104
- onCloseListClick = _this$props2.onCloseListClick,
105
- onOpenListClick = _this$props2.onOpenListClick,
106
- onRemoveOption = _this$props2.onRemoveOption,
107
- placeholder = _this$props2.placeholder,
108
- rootId = _this$props2.rootId,
109
- searchValue = _this$props2.searchValue,
110
- selectedOptions = _this$props2.selectedOptions,
111
- singleSelectionProp = _this$props2.singleSelection,
112
- toggleButtonRef = _this$props2.toggleButtonRef,
113
- value = _this$props2.value,
114
- prepend = _this$props2.prepend,
115
- append = _this$props2.append,
116
- isLoading = _this$props2.isLoading,
117
- autoFocus = _this$props2.autoFocus,
118
- ariaLabel = _this$props2['aria-label'],
119
- ariaLabelledby = _this$props2['aria-labelledby'];
113
+ var _this$props3 = this.props,
114
+ compressed = _this$props3.compressed,
115
+ focusedOptionId = _this$props3.focusedOptionId,
116
+ fullWidth = _this$props3.fullWidth,
117
+ hasSelectedOptions = _this$props3.hasSelectedOptions,
118
+ id = _this$props3.id,
119
+ inputRef = _this$props3.inputRef,
120
+ isDisabled = _this$props3.isDisabled,
121
+ isListOpen = _this$props3.isListOpen,
122
+ noIcon = _this$props3.noIcon,
123
+ onClear = _this$props3.onClear,
124
+ onClick = _this$props3.onClick,
125
+ onCloseListClick = _this$props3.onCloseListClick,
126
+ onOpenListClick = _this$props3.onOpenListClick,
127
+ onRemoveOption = _this$props3.onRemoveOption,
128
+ placeholder = _this$props3.placeholder,
129
+ rootId = _this$props3.rootId,
130
+ searchValue = _this$props3.searchValue,
131
+ selectedOptions = _this$props3.selectedOptions,
132
+ singleSelectionProp = _this$props3.singleSelection,
133
+ toggleButtonRef = _this$props3.toggleButtonRef,
134
+ value = _this$props3.value,
135
+ prepend = _this$props3.prepend,
136
+ append = _this$props3.append,
137
+ isLoading = _this$props3.isLoading,
138
+ isInvalid = _this$props3.isInvalid,
139
+ autoFocus = _this$props3.autoFocus,
140
+ ariaLabel = _this$props3['aria-label'],
141
+ ariaLabelledby = _this$props3['aria-labelledby'];
120
142
  var singleSelection = Boolean(singleSelectionProp);
121
143
  var asPlainText = singleSelectionProp && _typeof(singleSelectionProp) === 'object' && singleSelectionProp.asPlainText || false;
122
144
  var pills = selectedOptions ? selectedOptions.map(function (option) {
@@ -178,12 +200,16 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
178
200
  type: 'arrowDown'
179
201
  };
180
202
  }
181
- var wrapClasses = classNames('euiComboBox__inputWrap', {
203
+ var numIconsClass = getFormControlClassNameForIconCount({
204
+ isDropdown: !noIcon,
205
+ clear: !!clickProps.clear,
206
+ isInvalid: isInvalid,
207
+ isLoading: isLoading
208
+ });
209
+ var wrapClasses = classNames('euiComboBox__inputWrap', numIconsClass, {
182
210
  'euiComboBox__inputWrap--compressed': compressed,
183
211
  'euiComboBox__inputWrap--fullWidth': fullWidth,
184
212
  'euiComboBox__inputWrap--noWrap': singleSelection,
185
- 'euiComboBox__inputWrap-isLoading': isLoading,
186
- 'euiComboBox__inputWrap-isClearable': onClear,
187
213
  'euiComboBox__inputWrap--inGroup': prepend || append
188
214
  });
189
215
  return ___EmotionJSX(EuiFormControlLayout, _extends({
@@ -191,6 +217,7 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
191
217
  }, clickProps, {
192
218
  inputId: id,
193
219
  isLoading: isLoading,
220
+ isInvalid: isInvalid,
194
221
  compressed: compressed,
195
222
  fullWidth: fullWidth,
196
223
  prepend: prepend,
@@ -207,6 +234,7 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
207
234
  "aria-expanded": isListOpen,
208
235
  "aria-label": ariaLabel,
209
236
  "aria-labelledby": ariaLabelledby,
237
+ "aria-invalid": isInvalid,
210
238
  className: "euiComboBox__input",
211
239
  "data-test-subj": "comboBoxSearchInput",
212
240
  disabled: isDisabled,
@@ -215,6 +243,7 @@ export var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
215
243
  onBlur: this.onBlur,
216
244
  onChange: this.inputOnChange,
217
245
  onFocus: this.onFocus,
246
+ onKeyDown: this.onKeyDown,
218
247
  ref: this.inputRefCallback,
219
248
  role: "combobox",
220
249
  style: {
@@ -343,7 +343,7 @@ export var EuiComboBoxOptionsList = /*#__PURE__*/function (_Component) {
343
343
  hasShadow: false,
344
344
  className: classes,
345
345
  panelRef: this.listRefCallback,
346
- "data-test-subj": "comboBoxOptionsList ".concat(dataTestSubj),
346
+ "data-test-subj": classNames('comboBoxOptionsList', dataTestSubj),
347
347
  style: _objectSpread(_objectSpread({}, style), {}, {
348
348
  zIndex: zIndex
349
349
  }),
@@ -6,7 +6,9 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
 
9
- /// <reference types="../../../cypress/support"/>
9
+ /// <reference types="cypress" />
10
+ /// <reference types="cypress-real-events" />
11
+ /// <reference types="../../../cypress/support" />
10
12
 
11
13
  import React from 'react';
12
14
  import { EuiContextMenuItem } from './context_menu_item';
@@ -7,7 +7,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
7
  * Side Public License, v 1.
8
8
  */
9
9
 
10
- /// <reference types="../../../cypress/support"/>
10
+ /// <reference types="cypress" />
11
+ /// <reference types="cypress-real-events" />
12
+ /// <reference types="../../../cypress/support" />
11
13
 
12
14
  import React, { useState } from 'react';
13
15
  import { EuiButton } from '../button';
@@ -7,7 +7,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
7
  * Side Public License, v 1.
8
8
  */
9
9
 
10
- /// <reference types="../../../cypress/support"/>
10
+ /// <reference types="cypress" />
11
+ /// <reference types="cypress-real-events" />
12
+ /// <reference types="../../../cypress/support" />
11
13
 
12
14
  import React, { useState } from 'react';
13
15
  import { EuiButton } from '../button';
@@ -20,14 +22,13 @@ var Copy = function Copy() {
20
22
  _useState2 = _slicedToArray(_useState, 2),
21
23
  copyText = _useState2[0],
22
24
  setCopyText = _useState2[1];
23
- var onChange = function onChange(e) {
24
- setCopyText(e.target.value);
25
- };
26
25
  return ___EmotionJSX("div", null, ___EmotionJSX(EuiFormRow, {
27
26
  label: "Enter text that will be copied to clipboard"
28
27
  }, ___EmotionJSX(EuiFieldText, {
29
28
  value: copyText,
30
- onChange: onChange
29
+ onChange: function onChange(e) {
30
+ return setCopyText(e.target.value);
31
+ }
31
32
  })), ___EmotionJSX(EuiSpacer, {
32
33
  size: "m"
33
34
  }), ___EmotionJSX(EuiCopy, {
@@ -8,7 +8,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
8
8
  * Side Public License, v 1.
9
9
  */
10
10
 
11
- /// <reference types="../../../cypress/support"/>
11
+ /// <reference types="cypress" />
12
+ /// <reference types="cypress-real-events" />
13
+ /// <reference types="../../../cypress/support" />
12
14
 
13
15
  import React, { useState } from 'react';
14
16
  import { EuiDataGrid } from './index';
@@ -7,7 +7,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
7
  * Side Public License, v 1.
8
8
  */
9
9
 
10
- /// <reference types="../../../cypress/support"/>
10
+ /// <reference types="cypress" />
11
+ /// <reference types="cypress-real-events" />
12
+ /// <reference types="../../../cypress/support" />
11
13
 
12
14
  import React, { useState } from 'react';
13
15
  import moment from 'moment';
@@ -1,14 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
- import _createClass from "@babel/runtime/helpers/createClass";
5
- import _inherits from "@babel/runtime/helpers/inherits";
6
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
7
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
8
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
4
  var _excluded = ["adjustDateOnChange", "calendarClassName", "className", "customInput", "dateFormat", "dayClassName", "disabled", "excludeDates", "filterDate", "fullWidth", "iconType", "injectTimes", "inline", "inputRef", "isInvalid", "isLoading", "locale", "maxDate", "maxTime", "minDate", "minTime", "onChange", "onClear", "openToDate", "placeholder", "popperClassName", "popoverPlacement", "selected", "shadow", "shouldCloseOnSelect", "showIcon", "showTimeSelect", "showTimeSelectOnly", "timeFormat", "utcOffset"];
10
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
11
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
12
5
  /*
13
6
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
14
7
  * or more contributor license agreements. Licensed under the Elastic License
@@ -17,11 +10,13 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
17
10
  * Side Public License, v 1.
18
11
  */
19
12
 
20
- import React, { Component } from 'react';
13
+ import React, { useState, useCallback } from 'react';
21
14
  import classNames from 'classnames';
22
15
  // eslint-disable-line import/named
23
16
 
24
- import { EuiFormControlLayout, EuiValidatableControl } from '../form';
17
+ import { EuiFormControlLayout, useEuiValidatableControl } from '../form';
18
+ import { getFormControlClassNameForIconCount } from '../form/form_control_layout/_num_icons';
19
+ import { useCombinedRefs } from '../../services';
25
20
  import { EuiI18nConsumer } from '../context';
26
21
  import { ReactDatePicker } from './react-datepicker';
27
22
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -54,143 +49,142 @@ var unsupportedProps = [
54
49
  'showMonthYearDropdown',
55
50
  // We overridde this with `popoverPlacement`
56
51
  'popperPlacement'];
57
- export var EuiDatePicker = /*#__PURE__*/function (_Component) {
58
- _inherits(EuiDatePicker, _Component);
59
- var _super = _createSuper(EuiDatePicker);
60
- function EuiDatePicker() {
61
- _classCallCheck(this, EuiDatePicker);
62
- return _super.apply(this, arguments);
52
+ export var EuiDatePicker = function EuiDatePicker(_ref) {
53
+ var _ref$adjustDateOnChan = _ref.adjustDateOnChange,
54
+ adjustDateOnChange = _ref$adjustDateOnChan === void 0 ? true : _ref$adjustDateOnChan,
55
+ calendarClassName = _ref.calendarClassName,
56
+ className = _ref.className,
57
+ customInput = _ref.customInput,
58
+ _ref$dateFormat = _ref.dateFormat,
59
+ dateFormat = _ref$dateFormat === void 0 ? euiDatePickerDefaultDateFormat : _ref$dateFormat,
60
+ dayClassName = _ref.dayClassName,
61
+ disabled = _ref.disabled,
62
+ excludeDates = _ref.excludeDates,
63
+ filterDate = _ref.filterDate,
64
+ _ref$fullWidth = _ref.fullWidth,
65
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
66
+ iconType = _ref.iconType,
67
+ injectTimes = _ref.injectTimes,
68
+ inline = _ref.inline,
69
+ inputRef = _ref.inputRef,
70
+ isInvalid = _ref.isInvalid,
71
+ isLoading = _ref.isLoading,
72
+ locale = _ref.locale,
73
+ maxDate = _ref.maxDate,
74
+ maxTime = _ref.maxTime,
75
+ minDate = _ref.minDate,
76
+ minTime = _ref.minTime,
77
+ onChange = _ref.onChange,
78
+ onClear = _ref.onClear,
79
+ openToDate = _ref.openToDate,
80
+ placeholder = _ref.placeholder,
81
+ popperClassName = _ref.popperClassName,
82
+ _ref$popoverPlacement = _ref.popoverPlacement,
83
+ popoverPlacement = _ref$popoverPlacement === void 0 ? 'downLeft' : _ref$popoverPlacement,
84
+ selected = _ref.selected,
85
+ _ref$shadow = _ref.shadow,
86
+ shadow = _ref$shadow === void 0 ? true : _ref$shadow,
87
+ _ref$shouldCloseOnSel = _ref.shouldCloseOnSelect,
88
+ shouldCloseOnSelect = _ref$shouldCloseOnSel === void 0 ? true : _ref$shouldCloseOnSel,
89
+ _ref$showIcon = _ref.showIcon,
90
+ showIcon = _ref$showIcon === void 0 ? true : _ref$showIcon,
91
+ _ref$showTimeSelect = _ref.showTimeSelect,
92
+ showTimeSelect = _ref$showTimeSelect === void 0 ? false : _ref$showTimeSelect,
93
+ showTimeSelectOnly = _ref.showTimeSelectOnly,
94
+ _ref$timeFormat = _ref.timeFormat,
95
+ timeFormat = _ref$timeFormat === void 0 ? euiDatePickerDefaultTimeFormat : _ref$timeFormat,
96
+ utcOffset = _ref.utcOffset,
97
+ rest = _objectWithoutProperties(_ref, _excluded);
98
+ var classes = classNames('euiDatePicker', {
99
+ 'euiDatePicker--shadow': shadow,
100
+ 'euiDatePicker--inline': inline
101
+ });
102
+ var numIconsClass = getFormControlClassNameForIconCount({
103
+ isInvalid: isInvalid,
104
+ isLoading: isLoading
105
+ });
106
+ var datePickerClasses = classNames('euiDatePicker', 'euiFieldText', numIconsClass, {
107
+ 'euiFieldText--fullWidth': fullWidth,
108
+ 'euiFieldText-isLoading': isLoading,
109
+ 'euiFieldText--withIcon': !inline && showIcon,
110
+ 'euiFieldText--isClearable': !inline && selected && onClear
111
+ }, className);
112
+ var optionalIcon;
113
+ if (inline || customInput || !showIcon) {
114
+ optionalIcon = undefined;
115
+ } else if (iconType) {
116
+ optionalIcon = iconType;
117
+ } else if (showTimeSelectOnly) {
118
+ optionalIcon = 'clock';
119
+ } else {
120
+ optionalIcon = 'calendar';
63
121
  }
64
- _createClass(EuiDatePicker, [{
65
- key: "render",
66
- value: function render() {
67
- var _this$props = this.props,
68
- adjustDateOnChange = _this$props.adjustDateOnChange,
69
- calendarClassName = _this$props.calendarClassName,
70
- className = _this$props.className,
71
- customInput = _this$props.customInput,
72
- dateFormat = _this$props.dateFormat,
73
- dayClassName = _this$props.dayClassName,
74
- disabled = _this$props.disabled,
75
- excludeDates = _this$props.excludeDates,
76
- filterDate = _this$props.filterDate,
77
- fullWidth = _this$props.fullWidth,
78
- iconType = _this$props.iconType,
79
- injectTimes = _this$props.injectTimes,
80
- inline = _this$props.inline,
81
- inputRef = _this$props.inputRef,
82
- isInvalid = _this$props.isInvalid,
83
- isLoading = _this$props.isLoading,
84
- locale = _this$props.locale,
85
- maxDate = _this$props.maxDate,
86
- maxTime = _this$props.maxTime,
87
- minDate = _this$props.minDate,
88
- minTime = _this$props.minTime,
89
- onChange = _this$props.onChange,
90
- onClear = _this$props.onClear,
91
- openToDate = _this$props.openToDate,
92
- placeholder = _this$props.placeholder,
93
- popperClassName = _this$props.popperClassName,
94
- popoverPlacement = _this$props.popoverPlacement,
95
- selected = _this$props.selected,
96
- shadow = _this$props.shadow,
97
- shouldCloseOnSelect = _this$props.shouldCloseOnSelect,
98
- showIcon = _this$props.showIcon,
99
- showTimeSelect = _this$props.showTimeSelect,
100
- showTimeSelectOnly = _this$props.showTimeSelectOnly,
101
- timeFormat = _this$props.timeFormat,
102
- utcOffset = _this$props.utcOffset,
103
- rest = _objectWithoutProperties(_this$props, _excluded);
104
- var classes = classNames('euiDatePicker', {
105
- 'euiDatePicker--shadow': shadow,
106
- 'euiDatePicker--inline': inline
107
- });
108
- var datePickerClasses = classNames('euiDatePicker', 'euiFieldText', {
109
- 'euiFieldText--fullWidth': fullWidth,
110
- 'euiFieldText-isLoading': isLoading,
111
- 'euiFieldText--withIcon': !inline && showIcon,
112
- 'euiFieldText--isClearable': !inline && selected && onClear,
113
- 'euiFieldText-isInvalid': isInvalid
114
- }, className);
115
- var optionalIcon;
116
- if (inline || customInput || !showIcon) {
117
- optionalIcon = undefined;
118
- } else if (iconType) {
119
- optionalIcon = iconType;
120
- } else if (showTimeSelectOnly) {
121
- optionalIcon = 'clock';
122
- } else {
123
- optionalIcon = 'calendar';
124
- }
125
122
 
126
- // In case the consumer did not alter the default date format but wants
127
- // to add the time select, we append the default time format
128
- var fullDateFormat = dateFormat;
129
- if (showTimeSelect && dateFormat === euiDatePickerDefaultDateFormat) {
130
- fullDateFormat = "".concat(dateFormat, " ").concat(timeFormat);
131
- }
132
- return ___EmotionJSX("span", {
133
- className: classes
134
- }, ___EmotionJSX(EuiFormControlLayout, {
135
- icon: optionalIcon,
136
- fullWidth: fullWidth,
137
- clear: selected && onClear ? {
138
- onClick: onClear
139
- } : undefined,
140
- isLoading: isLoading
141
- }, ___EmotionJSX(EuiValidatableControl, {
142
- isInvalid: isInvalid
143
- }, ___EmotionJSX(EuiI18nConsumer, null, function (_ref) {
144
- var contextLocale = _ref.locale;
145
- return ___EmotionJSX(ReactDatePicker, _extends({
146
- adjustDateOnChange: adjustDateOnChange,
147
- calendarClassName: calendarClassName,
148
- className: datePickerClasses,
149
- customInput: customInput,
150
- dateFormat: fullDateFormat,
151
- dayClassName: dayClassName,
152
- disabled: disabled,
153
- excludeDates: excludeDates,
154
- filterDate: filterDate,
155
- injectTimes: injectTimes,
156
- inline: inline,
157
- locale: locale || contextLocale,
158
- maxDate: maxDate,
159
- maxTime: maxTime,
160
- minDate: minDate,
161
- minTime: minTime,
162
- onChange: onChange,
163
- openToDate: openToDate,
164
- placeholderText: placeholder,
165
- popperClassName: popperClassName,
166
- ref: inputRef,
167
- selected: selected,
168
- shouldCloseOnSelect: shouldCloseOnSelect,
169
- showMonthDropdown: true,
170
- showTimeSelect: showTimeSelectOnly ? true : showTimeSelect,
171
- showTimeSelectOnly: showTimeSelectOnly,
172
- showYearDropdown: true,
173
- timeFormat: timeFormat,
174
- utcOffset: utcOffset,
175
- yearDropdownItemNumber: 7,
176
- accessibleMode: true,
177
- popperPlacement: popoverPlacement
178
- }, rest));
179
- }))));
180
- }
181
- }]);
182
- return EuiDatePicker;
183
- }(Component);
184
- _defineProperty(EuiDatePicker, "defaultProps", {
185
- adjustDateOnChange: true,
186
- dateFormat: euiDatePickerDefaultDateFormat,
187
- fullWidth: false,
188
- inputRef: function inputRef() {},
189
- isLoading: false,
190
- shadow: true,
191
- shouldCloseOnSelect: true,
192
- showIcon: true,
193
- showTimeSelect: false,
194
- timeFormat: euiDatePickerDefaultTimeFormat,
195
- popoverPlacement: 'downLeft'
196
- });
123
+ // In case the consumer did not alter the default date format but wants
124
+ // to add the time select, we append the default time format
125
+ var fullDateFormat = dateFormat;
126
+ if (showTimeSelect && dateFormat === euiDatePickerDefaultDateFormat) {
127
+ fullDateFormat = "".concat(dateFormat, " ").concat(timeFormat);
128
+ }
129
+
130
+ // Set an internal ref on ReactDatePicker's `input` so we can set its :invalid state via useEuiValidatableControl
131
+ var _useState = useState(null),
132
+ _useState2 = _slicedToArray(_useState, 2),
133
+ inputValidityRef = _useState2[0],
134
+ _setInputValidityRef = _useState2[1];
135
+ var setInputValidityRef = useCallback(function (ref) {
136
+ _setInputValidityRef(ref === null || ref === void 0 ? void 0 : ref.input);
137
+ }, []);
138
+ useEuiValidatableControl({
139
+ isInvalid: isInvalid,
140
+ controlEl: inputValidityRef
141
+ });
142
+ var inputRefs = useCombinedRefs([inputRef, setInputValidityRef]);
143
+ return ___EmotionJSX("span", {
144
+ className: classes
145
+ }, ___EmotionJSX(EuiFormControlLayout, {
146
+ icon: optionalIcon,
147
+ fullWidth: fullWidth,
148
+ clear: selected && onClear ? {
149
+ onClick: onClear
150
+ } : undefined,
151
+ isLoading: isLoading,
152
+ isInvalid: isInvalid
153
+ }, ___EmotionJSX(EuiI18nConsumer, null, function (_ref2) {
154
+ var contextLocale = _ref2.locale;
155
+ return ___EmotionJSX(ReactDatePicker, _extends({
156
+ adjustDateOnChange: adjustDateOnChange,
157
+ calendarClassName: calendarClassName,
158
+ className: datePickerClasses,
159
+ customInput: customInput,
160
+ dateFormat: fullDateFormat,
161
+ dayClassName: dayClassName,
162
+ disabled: disabled,
163
+ excludeDates: excludeDates,
164
+ filterDate: filterDate,
165
+ injectTimes: injectTimes,
166
+ inline: inline,
167
+ locale: locale || contextLocale,
168
+ maxDate: maxDate,
169
+ maxTime: maxTime,
170
+ minDate: minDate,
171
+ minTime: minTime,
172
+ onChange: onChange,
173
+ openToDate: openToDate,
174
+ placeholderText: placeholder,
175
+ popperClassName: popperClassName,
176
+ ref: inputRefs,
177
+ selected: selected,
178
+ shouldCloseOnSelect: shouldCloseOnSelect,
179
+ showMonthDropdown: true,
180
+ showTimeSelect: showTimeSelectOnly ? true : showTimeSelect,
181
+ showTimeSelectOnly: showTimeSelectOnly,
182
+ showYearDropdown: true,
183
+ timeFormat: timeFormat,
184
+ utcOffset: utcOffset,
185
+ yearDropdownItemNumber: 7,
186
+ accessibleMode: true,
187
+ popperPlacement: popoverPlacement
188
+ }, rest));
189
+ })));
190
+ };
@@ -80,7 +80,7 @@ export var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
80
80
  className: "euiDatePickerRange__delimeter"
81
81
  }, ___EmotionJSX(EuiIcon, {
82
82
  color: isInvalid ? 'danger' : 'subdued',
83
- type: isInvalid ? 'warning' : 'sortRight'
83
+ type: "sortRight"
84
84
  }));
85
85
  return ___EmotionJSX("div", _extends({
86
86
  className: classes
@@ -8,7 +8,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
8
8
  * Side Public License, v 1.
9
9
  */
10
10
 
11
- /// <reference types="../../../../cypress/support"/>
11
+ /// <reference types="cypress" />
12
+ /// <reference types="cypress-real-events" />
13
+ /// <reference types="../../../../cypress/support" />
12
14
 
13
15
  import React, { useState } from 'react';
14
16
  import { EuiSuperDatePicker } from './super_date_picker';