@elastic/eui 105.0.0 → 106.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/dist/eui_theme_amsterdam_dark.json +2 -0
  2. package/dist/eui_theme_amsterdam_dark.json.d.ts +2 -0
  3. package/dist/eui_theme_amsterdam_light.json +2 -0
  4. package/dist/eui_theme_amsterdam_light.json.d.ts +2 -0
  5. package/dist/eui_theme_borealis_dark.json +2 -0
  6. package/dist/eui_theme_borealis_dark.json.d.ts +2 -0
  7. package/dist/eui_theme_borealis_light.json +10 -8
  8. package/dist/eui_theme_borealis_light.json.d.ts +2 -0
  9. package/es/components/combo_box/combo_box_input/combo_box_input.js +65 -61
  10. package/es/components/combo_box/combo_box_input/combo_box_input.styles.js +6 -4
  11. package/es/components/date_picker/date_picker.styles.js +4 -1
  12. package/es/components/date_picker/date_picker_range.js +3 -2
  13. package/es/components/date_picker/date_picker_range.styles.js +11 -4
  14. package/es/components/date_picker/super_date_picker/super_date_picker.styles.js +23 -14
  15. package/es/components/flyout/_flyout_close_button.styles.js +10 -1
  16. package/es/components/flyout/flyout_child.js +8 -3
  17. package/es/components/flyout/flyout_child.styles.js +3 -2
  18. package/es/components/flyout/sessions/flyout_provider.js +7 -21
  19. package/es/components/flyout/sessions/flyout_reducer.js +5 -26
  20. package/es/components/flyout/sessions/use_eui_flyout.js +21 -10
  21. package/es/components/form/field_number/field_number.styles.js +4 -1
  22. package/es/components/form/field_text/field_text.styles.js +4 -1
  23. package/es/components/form/file_picker/file_picker.js +107 -101
  24. package/es/components/form/file_picker/file_picker.styles.js +18 -17
  25. package/es/components/form/form.styles.js +72 -22
  26. package/es/components/form/form_control_layout/form_control_layout.styles.js +28 -17
  27. package/es/components/form/form_control_layout/form_control_layout_clear_button.styles.js +7 -7
  28. package/es/components/form/form_control_layout/form_control_layout_delimited.js +10 -7
  29. package/es/components/form/form_control_layout/form_control_layout_delimited.styles.js +34 -29
  30. package/es/components/form/form_control_layout/form_control_layout_icons.js +35 -20
  31. package/es/components/form/form_control_layout/form_control_layout_icons.styles.js +6 -6
  32. package/es/components/form/form_error_text/form_error_text.styles.js +3 -1
  33. package/es/components/form/form_label/form_label.styles.js +4 -2
  34. package/es/components/header/header.styles.js +5 -3
  35. package/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +6 -3
  36. package/es/components/progress/progress.a11y.js +7 -7
  37. package/es/components/progress/progress.js +18 -27
  38. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +59 -23
  39. package/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +8 -2
  40. package/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +63 -0
  41. package/es/global_styling/mixins/_button.js +1 -1
  42. package/es/services/color/eui_palettes.js +26 -0
  43. package/es/services/color/vis_color_store.js +1 -1
  44. package/es/services/color/visualization_colors.js +4 -0
  45. package/es/services/theme/provider.js +13 -6
  46. package/es/themes/amsterdam/global_styling/variables/_colors.js +8 -3
  47. package/es/themes/amsterdam/global_styling/variables/_forms.js +96 -53
  48. package/es/themes/amsterdam/theme.js +2 -1
  49. package/es/themes/json/eui_theme_amsterdam_dark.json +2 -0
  50. package/es/themes/json/eui_theme_amsterdam_light.json +2 -0
  51. package/es/themes/json/eui_theme_borealis_dark.json +2 -0
  52. package/es/themes/json/eui_theme_borealis_light.json +10 -8
  53. package/eui.d.ts +461 -376
  54. package/i18ntokens.json +3595 -3523
  55. package/lib/components/combo_box/combo_box_input/combo_box_input.js +64 -60
  56. package/lib/components/combo_box/combo_box_input/combo_box_input.styles.js +6 -4
  57. package/lib/components/date_picker/date_picker.styles.js +4 -1
  58. package/lib/components/date_picker/date_picker_range.js +3 -2
  59. package/lib/components/date_picker/date_picker_range.styles.js +11 -4
  60. package/lib/components/date_picker/super_date_picker/super_date_picker.styles.js +21 -12
  61. package/lib/components/flyout/_flyout_close_button.styles.js +10 -3
  62. package/lib/components/flyout/flyout_child.js +8 -3
  63. package/lib/components/flyout/flyout_child.styles.js +3 -2
  64. package/lib/components/flyout/sessions/flyout_provider.js +7 -21
  65. package/lib/components/flyout/sessions/flyout_reducer.js +5 -26
  66. package/lib/components/flyout/sessions/use_eui_flyout.js +21 -10
  67. package/lib/components/form/field_number/field_number.styles.js +4 -1
  68. package/lib/components/form/field_text/field_text.styles.js +4 -1
  69. package/lib/components/form/file_picker/file_picker.js +106 -100
  70. package/lib/components/form/file_picker/file_picker.styles.js +16 -15
  71. package/lib/components/form/form.styles.js +72 -22
  72. package/lib/components/form/form_control_layout/form_control_layout.styles.js +28 -17
  73. package/lib/components/form/form_control_layout/form_control_layout_clear_button.styles.js +7 -7
  74. package/lib/components/form/form_control_layout/form_control_layout_delimited.js +9 -6
  75. package/lib/components/form/form_control_layout/form_control_layout_delimited.styles.js +34 -27
  76. package/lib/components/form/form_control_layout/form_control_layout_icons.js +34 -19
  77. package/lib/components/form/form_control_layout/form_control_layout_icons.styles.js +6 -6
  78. package/lib/components/form/form_error_text/form_error_text.styles.js +3 -1
  79. package/lib/components/form/form_label/form_label.styles.js +4 -2
  80. package/lib/components/header/header.styles.js +4 -2
  81. package/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +6 -3
  82. package/lib/components/progress/progress.a11y.js +7 -7
  83. package/lib/components/progress/progress.js +18 -27
  84. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +57 -21
  85. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +9 -3
  86. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +69 -0
  87. package/lib/global_styling/mixins/_button.js +1 -1
  88. package/lib/services/color/eui_palettes.js +26 -0
  89. package/lib/services/color/vis_color_store.js +1 -1
  90. package/lib/services/color/visualization_colors.js +3 -0
  91. package/lib/services/theme/provider.js +13 -6
  92. package/lib/themes/amsterdam/global_styling/variables/_colors.js +8 -3
  93. package/lib/themes/amsterdam/global_styling/variables/_forms.js +96 -53
  94. package/lib/themes/amsterdam/theme.js +2 -1
  95. package/lib/themes/json/eui_theme_amsterdam_dark.json +2 -0
  96. package/lib/themes/json/eui_theme_amsterdam_light.json +2 -0
  97. package/lib/themes/json/eui_theme_borealis_dark.json +2 -0
  98. package/lib/themes/json/eui_theme_borealis_light.json +10 -8
  99. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +65 -61
  100. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.styles.js +6 -4
  101. package/optimize/es/components/date_picker/date_picker.styles.js +4 -1
  102. package/optimize/es/components/date_picker/date_picker_range.js +3 -2
  103. package/optimize/es/components/date_picker/date_picker_range.styles.js +11 -4
  104. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.styles.js +23 -14
  105. package/optimize/es/components/flyout/_flyout_close_button.styles.js +10 -1
  106. package/optimize/es/components/flyout/flyout_child.js +4 -3
  107. package/optimize/es/components/flyout/flyout_child.styles.js +3 -2
  108. package/optimize/es/components/flyout/sessions/flyout_provider.js +7 -21
  109. package/optimize/es/components/flyout/sessions/flyout_reducer.js +5 -26
  110. package/optimize/es/components/flyout/sessions/use_eui_flyout.js +21 -10
  111. package/optimize/es/components/form/field_number/field_number.styles.js +4 -1
  112. package/optimize/es/components/form/field_text/field_text.styles.js +4 -1
  113. package/optimize/es/components/form/file_picker/file_picker.js +107 -101
  114. package/optimize/es/components/form/file_picker/file_picker.styles.js +18 -17
  115. package/optimize/es/components/form/form.styles.js +72 -22
  116. package/optimize/es/components/form/form_control_layout/form_control_layout.styles.js +28 -17
  117. package/optimize/es/components/form/form_control_layout/form_control_layout_clear_button.styles.js +7 -7
  118. package/optimize/es/components/form/form_control_layout/form_control_layout_delimited.js +10 -7
  119. package/optimize/es/components/form/form_control_layout/form_control_layout_delimited.styles.js +34 -29
  120. package/optimize/es/components/form/form_control_layout/form_control_layout_icons.js +35 -20
  121. package/optimize/es/components/form/form_control_layout/form_control_layout_icons.styles.js +6 -6
  122. package/optimize/es/components/form/form_error_text/form_error_text.styles.js +3 -1
  123. package/optimize/es/components/form/form_label/form_label.styles.js +4 -2
  124. package/optimize/es/components/header/header.styles.js +5 -3
  125. package/optimize/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +6 -3
  126. package/optimize/es/components/progress/progress.a11y.js +7 -7
  127. package/optimize/es/components/progress/progress.js +18 -27
  128. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +47 -22
  129. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +8 -2
  130. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +52 -0
  131. package/optimize/es/global_styling/mixins/_button.js +1 -1
  132. package/optimize/es/services/color/eui_palettes.js +26 -0
  133. package/optimize/es/services/color/vis_color_store.js +1 -1
  134. package/optimize/es/services/color/visualization_colors.js +4 -0
  135. package/optimize/es/services/theme/provider.js +13 -6
  136. package/optimize/es/themes/amsterdam/global_styling/variables/_colors.js +8 -3
  137. package/optimize/es/themes/amsterdam/global_styling/variables/_forms.js +96 -53
  138. package/optimize/es/themes/amsterdam/theme.js +2 -1
  139. package/optimize/es/themes/json/eui_theme_amsterdam_dark.json +2 -0
  140. package/optimize/es/themes/json/eui_theme_amsterdam_light.json +2 -0
  141. package/optimize/es/themes/json/eui_theme_borealis_dark.json +2 -0
  142. package/optimize/es/themes/json/eui_theme_borealis_light.json +10 -8
  143. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +64 -60
  144. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.styles.js +6 -4
  145. package/optimize/lib/components/date_picker/date_picker.styles.js +4 -1
  146. package/optimize/lib/components/date_picker/date_picker_range.js +3 -2
  147. package/optimize/lib/components/date_picker/date_picker_range.styles.js +11 -4
  148. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.styles.js +21 -12
  149. package/optimize/lib/components/flyout/_flyout_close_button.styles.js +10 -3
  150. package/optimize/lib/components/flyout/flyout_child.js +4 -3
  151. package/optimize/lib/components/flyout/flyout_child.styles.js +3 -2
  152. package/optimize/lib/components/flyout/sessions/flyout_provider.js +7 -21
  153. package/optimize/lib/components/flyout/sessions/flyout_reducer.js +5 -26
  154. package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +21 -10
  155. package/optimize/lib/components/form/field_number/field_number.styles.js +4 -1
  156. package/optimize/lib/components/form/field_text/field_text.styles.js +4 -1
  157. package/optimize/lib/components/form/file_picker/file_picker.js +106 -100
  158. package/optimize/lib/components/form/file_picker/file_picker.styles.js +16 -15
  159. package/optimize/lib/components/form/form.styles.js +72 -22
  160. package/optimize/lib/components/form/form_control_layout/form_control_layout.styles.js +28 -17
  161. package/optimize/lib/components/form/form_control_layout/form_control_layout_clear_button.styles.js +7 -7
  162. package/optimize/lib/components/form/form_control_layout/form_control_layout_delimited.js +9 -6
  163. package/optimize/lib/components/form/form_control_layout/form_control_layout_delimited.styles.js +34 -27
  164. package/optimize/lib/components/form/form_control_layout/form_control_layout_icons.js +34 -19
  165. package/optimize/lib/components/form/form_control_layout/form_control_layout_icons.styles.js +6 -6
  166. package/optimize/lib/components/form/form_error_text/form_error_text.styles.js +3 -1
  167. package/optimize/lib/components/form/form_label/form_label.styles.js +4 -2
  168. package/optimize/lib/components/header/header.styles.js +4 -2
  169. package/optimize/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +6 -3
  170. package/optimize/lib/components/progress/progress.a11y.js +7 -7
  171. package/optimize/lib/components/progress/progress.js +18 -27
  172. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +45 -20
  173. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +9 -3
  174. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +58 -0
  175. package/optimize/lib/global_styling/mixins/_button.js +1 -1
  176. package/optimize/lib/services/color/eui_palettes.js +26 -0
  177. package/optimize/lib/services/color/vis_color_store.js +1 -1
  178. package/optimize/lib/services/color/visualization_colors.js +3 -0
  179. package/optimize/lib/services/theme/provider.js +13 -6
  180. package/optimize/lib/themes/amsterdam/global_styling/variables/_colors.js +8 -3
  181. package/optimize/lib/themes/amsterdam/global_styling/variables/_forms.js +96 -53
  182. package/optimize/lib/themes/amsterdam/theme.js +2 -1
  183. package/optimize/lib/themes/json/eui_theme_amsterdam_dark.json +2 -0
  184. package/optimize/lib/themes/json/eui_theme_amsterdam_light.json +2 -0
  185. package/optimize/lib/themes/json/eui_theme_borealis_dark.json +2 -0
  186. package/optimize/lib/themes/json/eui_theme_borealis_light.json +10 -8
  187. package/package.json +12 -10
  188. package/src/themes/amsterdam/_colors_dark.scss +3 -0
  189. package/src/themes/amsterdam/_colors_light.scss +3 -0
  190. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +64 -60
  191. package/test-env/components/combo_box/combo_box_input/combo_box_input.styles.js +6 -4
  192. package/test-env/components/date_picker/date_picker.styles.js +4 -1
  193. package/test-env/components/date_picker/date_picker_range.js +3 -2
  194. package/test-env/components/date_picker/date_picker_range.styles.js +11 -4
  195. package/test-env/components/date_picker/super_date_picker/super_date_picker.styles.js +21 -12
  196. package/test-env/components/flyout/_flyout_close_button.styles.js +10 -3
  197. package/test-env/components/flyout/flyout_child.js +8 -3
  198. package/test-env/components/flyout/flyout_child.styles.js +3 -2
  199. package/test-env/components/flyout/sessions/flyout_provider.js +7 -21
  200. package/test-env/components/flyout/sessions/flyout_reducer.js +5 -26
  201. package/test-env/components/flyout/sessions/use_eui_flyout.js +21 -10
  202. package/test-env/components/form/field_number/field_number.styles.js +4 -1
  203. package/test-env/components/form/field_text/field_text.styles.js +4 -1
  204. package/test-env/components/form/file_picker/file_picker.js +106 -100
  205. package/test-env/components/form/file_picker/file_picker.styles.js +16 -15
  206. package/test-env/components/form/form.styles.js +72 -22
  207. package/test-env/components/form/form_control_layout/form_control_layout.styles.js +28 -17
  208. package/test-env/components/form/form_control_layout/form_control_layout_clear_button.styles.js +7 -7
  209. package/test-env/components/form/form_control_layout/form_control_layout_delimited.js +9 -6
  210. package/test-env/components/form/form_control_layout/form_control_layout_delimited.styles.js +34 -27
  211. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +34 -19
  212. package/test-env/components/form/form_control_layout/form_control_layout_icons.styles.js +6 -6
  213. package/test-env/components/form/form_error_text/form_error_text.styles.js +3 -1
  214. package/test-env/components/form/form_label/form_label.styles.js +4 -2
  215. package/test-env/components/header/header.styles.js +4 -2
  216. package/test-env/components/markdown_editor/markdown_editor_drop_zone.styles.js +6 -3
  217. package/test-env/components/progress/progress.a11y.js +7 -7
  218. package/test-env/components/progress/progress.js +18 -27
  219. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +57 -21
  220. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +9 -3
  221. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +68 -0
  222. package/test-env/global_styling/mixins/_button.js +1 -1
  223. package/test-env/services/color/eui_palettes.js +26 -0
  224. package/test-env/services/color/vis_color_store.js +1 -1
  225. package/test-env/services/color/visualization_colors.js +3 -0
  226. package/test-env/services/theme/provider.js +13 -6
  227. package/test-env/themes/amsterdam/global_styling/variables/_colors.js +8 -3
  228. package/test-env/themes/amsterdam/global_styling/variables/_forms.js +96 -53
  229. package/test-env/themes/amsterdam/theme.js +2 -1
  230. package/test-env/themes/json/eui_theme_amsterdam_dark.json +2 -0
  231. package/test-env/themes/json/eui_theme_amsterdam_light.json +2 -0
  232. package/test-env/themes/json/eui_theme_borealis_dark.json +2 -0
  233. package/test-env/themes/json/eui_theme_borealis_light.json +10 -8
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useEuiFlyoutSession = useEuiFlyoutSession;
7
+ var _react = require("react");
7
8
  var _flyout_provider = require("./flyout_provider");
8
9
  /*
9
10
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -27,12 +28,24 @@ var _flyout_provider = require("./flyout_provider");
27
28
 
28
29
  /**
29
30
  * Hook for accessing the flyout API
31
+ * @public
30
32
  */
31
33
  function useEuiFlyoutSession() {
32
34
  var _state$activeFlyoutGr, _state$activeFlyoutGr2;
33
35
  var _useEuiFlyoutSessionC = (0, _flyout_provider.useEuiFlyoutSessionContext)(),
34
36
  state = _useEuiFlyoutSessionC.state,
35
- dispatch = _useEuiFlyoutSessionC.dispatch;
37
+ dispatch = _useEuiFlyoutSessionC.dispatch,
38
+ onUnmount = _useEuiFlyoutSessionC.onUnmount;
39
+ var isInitialMount = (0, _react.useRef)(true);
40
+ (0, _react.useEffect)(function () {
41
+ // When there is no active flyout, we should call the onUnmount callback.
42
+ // Ensure this is not called on the initial render, only on subsequent state changes.
43
+ if (isInitialMount.current) {
44
+ isInitialMount.current = false;
45
+ } else if (state.activeFlyoutGroup === null) {
46
+ onUnmount === null || onUnmount === void 0 || onUnmount();
47
+ }
48
+ }, [state.activeFlyoutGroup, onUnmount]);
36
49
  var openFlyout = function openFlyout(options) {
37
50
  dispatch({
38
51
  type: 'OPEN_MAIN_FLYOUT',
@@ -55,13 +68,11 @@ function useEuiFlyoutSession() {
55
68
  payload: {
56
69
  main: {
57
70
  size: options.main.size,
58
- flyoutProps: options.main.flyoutProps,
59
- onUnmount: options.main.onUnmount
71
+ flyoutProps: options.main.flyoutProps
60
72
  },
61
73
  child: {
62
74
  size: options.child.size,
63
- flyoutProps: options.child.flyoutProps,
64
- onUnmount: options.child.onUnmount
75
+ flyoutProps: options.child.flyoutProps
65
76
  },
66
77
  meta: options.meta
67
78
  }
@@ -77,23 +88,23 @@ function useEuiFlyoutSession() {
77
88
  type: 'GO_BACK'
78
89
  });
79
90
  };
80
- var canGoBack = !!state.activeFlyoutGroup;
81
- var isFlyoutOpen = !!((_state$activeFlyoutGr = state.activeFlyoutGroup) !== null && _state$activeFlyoutGr !== void 0 && _state$activeFlyoutGr.isMainOpen);
82
- var isChildFlyoutOpen = !!((_state$activeFlyoutGr2 = state.activeFlyoutGroup) !== null && _state$activeFlyoutGr2 !== void 0 && _state$activeFlyoutGr2.isChildOpen);
83
91
  var clearHistory = function clearHistory() {
84
92
  dispatch({
85
93
  type: 'CLEAR_HISTORY'
86
94
  });
87
95
  };
96
+ var isFlyoutOpen = !!((_state$activeFlyoutGr = state.activeFlyoutGroup) !== null && _state$activeFlyoutGr !== void 0 && _state$activeFlyoutGr.isMainOpen);
97
+ var isChildFlyoutOpen = !!((_state$activeFlyoutGr2 = state.activeFlyoutGroup) !== null && _state$activeFlyoutGr2 !== void 0 && _state$activeFlyoutGr2.isChildOpen);
98
+ var canGoBack = !!state.history.length;
88
99
  return {
89
100
  openFlyout: openFlyout,
90
101
  openChildFlyout: openChildFlyout,
91
102
  openFlyoutGroup: openFlyoutGroup,
92
103
  closeChildFlyout: closeChildFlyout,
93
104
  goBack: goBack,
94
- canGoBack: canGoBack,
105
+ clearHistory: clearHistory,
95
106
  isFlyoutOpen: isFlyoutOpen,
96
107
  isChildFlyoutOpen: isChildFlyoutOpen,
97
- clearHistory: clearHistory
108
+ canGoBack: canGoBack
98
109
  };
99
110
  }
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.euiFieldNumberStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../../services");
8
9
  var _form = require("../form.styles");
9
10
  /*
10
11
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -16,9 +17,11 @@ var _form = require("../form.styles");
16
17
 
17
18
  var euiFieldNumberStyles = exports.euiFieldNumberStyles = function euiFieldNumberStyles(euiThemeContext) {
18
19
  var colorMode = euiThemeContext.colorMode;
20
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'formVariant');
19
21
  var formStyles = (0, _form.euiFormControlStyles)(euiThemeContext);
22
+ var invalidStyles = isRefreshVariant ? "\n &:is(:invalid, [aria-invalid='true']):not(\n .euiFormControlLayoutDelimited__input, :focus\n ) {\n ".concat(formStyles.invalid, "\n }\n ") : "\n /* Account for native validity detection as well via [aria-invalid=\"true\"] */\n &:is(:invalid, [aria-invalid='true']) {\n ".concat(formStyles.invalid, "\n }\n ");
20
23
  return {
21
- euiFieldNumber: /*#__PURE__*/(0, _react.css)(formStyles.shared, "color-scheme:", colorMode === 'DARK' ? 'dark' : 'light', ";&:is(:invalid, [aria-invalid='true']){", formStyles.invalid, ";}&:focus{", formStyles.focus, ";}&:disabled{", formStyles.disabled, ";}&[readOnly]{", formStyles.readOnly, ";}&:autofill{", formStyles.autoFill, ";};label:euiFieldNumber;"),
24
+ euiFieldNumber: /*#__PURE__*/(0, _react.css)(formStyles.shared, "color-scheme:", colorMode === 'DARK' ? 'dark' : 'light', ";", invalidStyles, " &:focus{", formStyles.focus, ";}&:disabled{", formStyles.disabled, ";}&[readOnly]{", formStyles.readOnly, ";}&:autofill{", formStyles.autoFill, ";};label:euiFieldNumber;"),
22
25
  // Skip the css() on the default height to avoid generating a className
23
26
  uncompressed: formStyles.uncompressed,
24
27
  compressed: /*#__PURE__*/(0, _react.css)(formStyles.compressed, ";label:compressed;"),
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.euiFieldTextStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../../services");
8
9
  var _form = require("../form.styles");
9
10
  /*
10
11
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -15,9 +16,11 @@ var _form = require("../form.styles");
15
16
  */
16
17
 
17
18
  var euiFieldTextStyles = exports.euiFieldTextStyles = function euiFieldTextStyles(euiThemeContext) {
19
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'formVariant');
18
20
  var formStyles = (0, _form.euiFormControlStyles)(euiThemeContext);
21
+ var invalidStyles = isRefreshVariant ? "\n &:is(:invalid, [aria-invalid='true']):not(\n .euiFormControlLayoutDelimited__input, :focus\n ) {\n ".concat(formStyles.invalid, "\n }\n ") : "\n &:is(:invalid){\n ".concat(formStyles.invalid, "\n }\n ");
19
22
  return {
20
- euiFieldText: /*#__PURE__*/(0, _react.css)(formStyles.shared, " &:invalid{", formStyles.invalid, ";}&:focus{", formStyles.focus, ";}&[readOnly]{", formStyles.readOnly, ";}&:disabled{", formStyles.disabled, ";}&:autofill{", formStyles.autoFill, ";};label:euiFieldText;"),
23
+ euiFieldText: /*#__PURE__*/(0, _react.css)(formStyles.shared, " ", invalidStyles, " &:focus{", formStyles.focus, ";}&[readOnly]{", formStyles.readOnly, ";}&:disabled{", formStyles.disabled, ";}&:autofill{", formStyles.autoFill, ";};label:euiFieldText;"),
21
24
  // Skip the css() on the default height to avoid generating a className
22
25
  uncompressed: formStyles.uncompressed,
23
26
  compressed: /*#__PURE__*/(0, _react.css)(formStyles.compressed, ";label:compressed;"),
@@ -121,111 +121,117 @@ var EuiFilePickerClass = exports.EuiFilePickerClass = /*#__PURE__*/function (_Co
121
121
  var _this2 = this;
122
122
  var _ref = this.context,
123
123
  defaultFullWidth = _ref.defaultFullWidth;
124
- return (0, _react2.jsx)(_i18n.EuiI18n, {
125
- token: "euiFilePicker.removeSelectedAriaLabel",
126
- default: "Remove selected files"
127
- }, function (removeSelectedAriaLabel) {
128
- var _this2$props = _this2.props,
129
- stylesMemoizer = _this2$props.stylesMemoizer,
130
- id = _this2$props.id,
131
- name = _this2$props.name,
132
- initialPromptText = _this2$props.initialPromptText,
133
- className = _this2$props.className,
134
- disabled = _this2$props.disabled,
135
- compressed = _this2$props.compressed,
136
- onChange = _this2$props.onChange,
137
- isInvalid = _this2$props.isInvalid,
138
- _this2$props$fullWidt = _this2$props.fullWidth,
139
- fullWidth = _this2$props$fullWidt === void 0 ? defaultFullWidth : _this2$props$fullWidt,
140
- isLoading = _this2$props.isLoading,
141
- display = _this2$props.display,
142
- rest = _objectWithoutProperties(_this2$props, _excluded);
143
- var promptId = "".concat(id || _this2.generatedId, "-filePicker__prompt");
144
- var isOverridingInitialPrompt = _this2.state.promptText != null;
145
- var normalFormControl = display === 'default';
146
- var classes = (0, _classnames.default)('euiFilePicker', {
147
- 'euiFilePicker-isDroppingFile': _this2.state.isHoveringDrop,
148
- 'euiFilePicker-isInvalid': isInvalid,
149
- 'euiFilePicker-isLoading': isLoading,
150
- 'euiFilePicker-hasFiles': isOverridingInitialPrompt
151
- }, className);
152
- var styles = stylesMemoizer(_file_picker.euiFilePickerStyles);
153
- var cssStyles = [styles.euiFilePicker, fullWidth ? styles.fullWidth : styles.formWidth, _this2.state.isHoveringDrop && styles.isDroppingFile, isInvalid && !disabled && styles.invalid, isOverridingInitialPrompt && !disabled && styles.hasFiles, isLoading && styles.loading];
154
- var inputStyles = [styles.input.euiFilePicker__input, !normalFormControl && !disabled && styles.input.largeInteractive];
155
- var promptStyles = [styles.euiFilePicker__prompt, disabled && styles.disabled].concat(_toConsumableArray(normalFormControl ? [compressed ? styles.compressed : styles.uncompressed] : [styles.large.large, compressed ? styles.large.compressed : styles.large.uncompressed]));
156
- var iconStyles = [styles.icon.euiFilePicker__icon].concat(_toConsumableArray(normalFormControl ? [styles.icon.normal, compressed ? styles.icon.compresssed : styles.icon.uncompressed] : [styles.icon.large]));
157
- var rightIconStyles = normalFormControl ? [styles.rightIcon.euiFilePicker__rightIcon, compressed ? styles.rightIcon.compressed : styles.rightIcon.uncompressed] : undefined;
158
- var clearButton;
159
- if (isLoading && normalFormControl) {
160
- // Override clear button with loading spinner if it is in loading state
161
- clearButton = (0, _react2.jsx)(_loading.EuiLoadingSpinner, {
162
- css: rightIconStyles,
163
- className: "euiFilePicker__loadingSpinner",
164
- size: compressed ? 's' : 'm'
165
- });
166
- } else if (isOverridingInitialPrompt && !disabled) {
167
- if (normalFormControl) {
168
- clearButton = (0, _react2.jsx)(_form_control_layout_clear_button.EuiFormControlLayoutClearButton, {
169
- "aria-label": removeSelectedAriaLabel,
170
- css: [styles.euiFilePicker__clearButton, rightIconStyles, ";label:clearButton;"],
171
- className: "euiFilePicker__clearButton",
172
- onClick: _this2.removeFiles,
124
+ return (0, _react2.jsx)(_services.RenderWithEuiTheme, null, function (euiThemeContext) {
125
+ return (0, _react2.jsx)(_i18n.EuiI18n, {
126
+ token: "euiFilePicker.removeSelectedAriaLabel",
127
+ default: "Remove selected files"
128
+ }, function (removeSelectedAriaLabel) {
129
+ var _this2$props = _this2.props,
130
+ stylesMemoizer = _this2$props.stylesMemoizer,
131
+ id = _this2$props.id,
132
+ name = _this2$props.name,
133
+ initialPromptText = _this2$props.initialPromptText,
134
+ className = _this2$props.className,
135
+ disabled = _this2$props.disabled,
136
+ compressed = _this2$props.compressed,
137
+ onChange = _this2$props.onChange,
138
+ isInvalid = _this2$props.isInvalid,
139
+ _this2$props$fullWidt = _this2$props.fullWidth,
140
+ fullWidth = _this2$props$fullWidt === void 0 ? defaultFullWidth : _this2$props$fullWidt,
141
+ isLoading = _this2$props.isLoading,
142
+ display = _this2$props.display,
143
+ rest = _objectWithoutProperties(_this2$props, _excluded);
144
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'formVariant');
145
+ var promptId = "".concat(id || _this2.generatedId, "-filePicker__prompt");
146
+ var isOverridingInitialPrompt = _this2.state.promptText != null;
147
+ var normalFormControl = display === 'default';
148
+ var classes = (0, _classnames.default)('euiFilePicker', {
149
+ 'euiFilePicker-isDroppingFile': _this2.state.isHoveringDrop,
150
+ 'euiFilePicker-isInvalid': isInvalid,
151
+ 'euiFilePicker-isLoading': isLoading,
152
+ 'euiFilePicker-hasFiles': isOverridingInitialPrompt
153
+ }, className);
154
+ var styles = stylesMemoizer(_file_picker.euiFilePickerStyles);
155
+ var cssStyles = [styles.euiFilePicker, fullWidth ? styles.fullWidth : styles.formWidth, _this2.state.isHoveringDrop && styles.isDroppingFile, isInvalid && !disabled && styles.invalid, isOverridingInitialPrompt && !disabled && styles.hasFiles, isLoading && styles.loading];
156
+ var inputStyles = [styles.input.euiFilePicker__input, !normalFormControl && !disabled && styles.input.largeInteractive];
157
+ var promptStyles = [styles.euiFilePicker__prompt, disabled && styles.disabled].concat(_toConsumableArray(normalFormControl ? [compressed ? styles.compressed : styles.uncompressed] : [styles.large.large, compressed ? styles.large.compressed : styles.large.uncompressed]));
158
+ var iconStyles = [styles.icon.euiFilePicker__icon].concat(_toConsumableArray(normalFormControl ? [styles.icon.normal, compressed ? styles.icon.compresssed : styles.icon.uncompressed] : [styles.icon.large]));
159
+ var rightIconStyles = normalFormControl ? [styles.rightIcon.euiFilePicker__rightIcon, compressed ? styles.rightIcon.compressed : styles.rightIcon.uncompressed] : undefined;
160
+ var clearButton;
161
+ if (isLoading && normalFormControl) {
162
+ // Override clear button with loading spinner if it is in loading state
163
+ clearButton = (0, _react2.jsx)(_loading.EuiLoadingSpinner, {
164
+ css: rightIconStyles,
165
+ className: "euiFilePicker__loadingSpinner",
173
166
  size: compressed ? 's' : 'm'
174
167
  });
168
+ } else if (isOverridingInitialPrompt && !disabled) {
169
+ if (normalFormControl) {
170
+ clearButton = (0, _react2.jsx)(_form_control_layout_clear_button.EuiFormControlLayoutClearButton, {
171
+ "aria-label": removeSelectedAriaLabel,
172
+ css: [styles.euiFilePicker__clearButton, rightIconStyles, ";label:clearButton;"],
173
+ className: "euiFilePicker__clearButton",
174
+ onClick: _this2.removeFiles,
175
+ size: compressed ? 's' : 'm'
176
+ });
177
+ } else {
178
+ clearButton = (0, _react2.jsx)(_button.EuiButtonEmpty, {
179
+ "aria-label": removeSelectedAriaLabel,
180
+ css: styles.euiFilePicker__clearButton,
181
+ className: "euiFilePicker__clearButton",
182
+ size: "xs",
183
+ onClick: _this2.removeFiles
184
+ }, (0, _react2.jsx)(_i18n.EuiI18n, {
185
+ token: "euiFilePicker.removeSelected",
186
+ default: "Remove"
187
+ }));
188
+ }
175
189
  } else {
176
- clearButton = (0, _react2.jsx)(_button.EuiButtonEmpty, {
177
- "aria-label": removeSelectedAriaLabel,
178
- css: styles.euiFilePicker__clearButton,
179
- className: "euiFilePicker__clearButton",
180
- size: "xs",
181
- onClick: _this2.removeFiles
182
- }, (0, _react2.jsx)(_i18n.EuiI18n, {
183
- token: "euiFilePicker.removeSelected",
184
- default: "Remove"
185
- }));
190
+ clearButton = null;
186
191
  }
187
- } else {
188
- clearButton = null;
189
- }
190
- var loader = !normalFormControl && isLoading && (0, _react2.jsx)(_progress.EuiProgress, {
191
- size: "xs",
192
- color: "accent",
193
- position: "absolute"
192
+ var loader = !normalFormControl && isLoading && (0, _react2.jsx)(_progress.EuiProgress, {
193
+ size: "xs",
194
+ color: "accent",
195
+ position: "absolute"
196
+ });
197
+
198
+ // Currently this tenary is a little complex, it'll be simplified once we remove Amsterdam
199
+ var iconColor = isInvalid ? 'danger' : disabled ? isRefreshVariant ? 'disabled' : 'subdued' : isRefreshVariant ? 'text' : 'primary';
200
+ return (0, _react2.jsx)("div", {
201
+ css: cssStyles,
202
+ className: classes
203
+ }, (0, _react2.jsx)(_validatable_control.EuiValidatableControl, {
204
+ isInvalid: isInvalid
205
+ }, (0, _react2.jsx)("input", _extends({
206
+ type: "file",
207
+ id: id,
208
+ name: name,
209
+ css: inputStyles,
210
+ className: "euiFilePicker__input",
211
+ onChange: _this2.handleChange,
212
+ ref: function ref(input) {
213
+ _this2.fileInput = input;
214
+ },
215
+ onDragOver: _this2.showDrop,
216
+ onDragLeave: _this2.hideDrop,
217
+ onDrop: _this2.hideDrop,
218
+ disabled: disabled,
219
+ "aria-describedby": promptId
220
+ }, rest))), (0, _react2.jsx)("div", {
221
+ css: promptStyles,
222
+ className: "euiFilePicker__prompt",
223
+ id: promptId
224
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
225
+ css: iconStyles,
226
+ className: "euiFilePicker__icon",
227
+ color: iconColor,
228
+ type: isInvalid ? 'alert' : isRefreshVariant && disabled ? 'minusInCircle' : 'importAction',
229
+ size: normalFormControl ? 'm' : 'l',
230
+ "aria-hidden": "true"
231
+ }), (0, _react2.jsx)("span", {
232
+ className: "euiFilePicker__promptText"
233
+ }, _this2.state.promptText || initialPromptText), clearButton, loader));
194
234
  });
195
- return (0, _react2.jsx)("div", {
196
- css: cssStyles,
197
- className: classes
198
- }, (0, _react2.jsx)(_validatable_control.EuiValidatableControl, {
199
- isInvalid: isInvalid
200
- }, (0, _react2.jsx)("input", _extends({
201
- type: "file",
202
- id: id,
203
- name: name,
204
- css: inputStyles,
205
- className: "euiFilePicker__input",
206
- onChange: _this2.handleChange,
207
- ref: function ref(input) {
208
- _this2.fileInput = input;
209
- },
210
- onDragOver: _this2.showDrop,
211
- onDragLeave: _this2.hideDrop,
212
- onDrop: _this2.hideDrop,
213
- disabled: disabled,
214
- "aria-describedby": promptId
215
- }, rest))), (0, _react2.jsx)("div", {
216
- css: promptStyles,
217
- className: "euiFilePicker__prompt",
218
- id: promptId
219
- }, (0, _react2.jsx)(_icon.EuiIcon, {
220
- css: iconStyles,
221
- className: "euiFilePicker__icon",
222
- color: isInvalid ? 'danger' : disabled ? 'subdued' : 'primary',
223
- type: isInvalid ? 'alert' : 'importAction',
224
- size: normalFormControl ? 'm' : 'l',
225
- "aria-hidden": "true"
226
- }), (0, _react2.jsx)("span", {
227
- className: "euiFilePicker__promptText"
228
- }, _this2.state.promptText || initialPromptText), clearButton, loader));
229
235
  });
230
236
  }
231
237
  }]);
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.euiFilePickerStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../../services");
8
9
  var _global_styling = require("../../../global_styling");
9
10
  var _form = require("../form.styles");
10
11
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; } /*
@@ -31,14 +32,6 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
31
32
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
32
33
  };
33
34
  var _ref3 = process.env.NODE_ENV === "production" ? {
34
- name: "19x04ih-largeInteractive",
35
- styles: "&:hover,&:focus,.euiFilePicker-isDroppingFile &{&+.euiFilePicker__prompt{.euiFilePicker__promptText{text-decoration:underline;}.euiFilePicker__icon{transform:scale(1.1);}}};label:largeInteractive;"
36
- } : {
37
- name: "19x04ih-largeInteractive",
38
- styles: "&:hover,&:focus,.euiFilePicker-isDroppingFile &{&+.euiFilePicker__prompt{.euiFilePicker__promptText{text-decoration:underline;}.euiFilePicker__icon{transform:scale(1.1);}}};label:largeInteractive;",
39
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
40
- };
41
- var _ref4 = process.env.NODE_ENV === "production" ? {
42
35
  name: "1j9s7hu-euiFilePicker__input",
43
36
  styles: "position:absolute;inset:0;opacity:0;&:hover{cursor:pointer;}&:hover:disabled{cursor:not-allowed;}&:disabled{opacity:0;};label:euiFilePicker__input;"
44
37
  } : {
@@ -47,16 +40,22 @@ var _ref4 = process.env.NODE_ENV === "production" ? {
47
40
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
48
41
  };
49
42
  var euiFilePickerStyles = exports.euiFilePickerStyles = function euiFilePickerStyles(euiThemeContext) {
50
- var euiTheme = euiThemeContext.euiTheme;
43
+ var euiTheme = euiThemeContext.euiTheme,
44
+ highContrastMode = euiThemeContext.highContrastMode;
45
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'formVariant');
51
46
  var formStyles = (0, _form.euiFormControlStyles)(euiThemeContext);
52
47
  var formVariables = (0, _form.euiFormVariables)(euiThemeContext);
53
48
  var _euiFontSize = (0, _global_styling.euiFontSize)(euiThemeContext, 's'),
54
49
  fontSize = _euiFontSize.fontSize,
55
50
  lineHeight = _euiFontSize.lineHeight;
56
51
  return {
57
- euiFilePicker: /*#__PURE__*/(0, _react.css)("--euiFormControlLeftIconsCount:1;position:relative;&:has(input:focus){--euiFormControlStateColor:", euiTheme.colors.primary, ";};label:euiFilePicker;"),
58
- isDroppingFile: /*#__PURE__*/(0, _react.css)("--euiFormControlStateColor:", euiTheme.colors.primary, ";;label:isDroppingFile;"),
59
- invalid: /*#__PURE__*/(0, _react.css)("--euiFormControlStateColor:", euiTheme.colors.danger, ";;label:invalid;"),
52
+ euiFilePicker: /*#__PURE__*/(0, _react.css)("--euiFormControlLeftIconsCount:1;position:relative;border-radius:", formVariables.controlBorderRadius, ";&:has(input:focus){--euiFormControlStateColor:", formVariables.borderFocused, ";}&:hover{--euiFormControlStateColor:", highContrastMode ? euiTheme.border.color : formVariables.borderHovered, ";--euiFormControlStateStyle:", highContrastMode && isRefreshVariant ? 'solid' : 'dashed', ";}&:focus-within{", (0, _global_styling.highContrastModeStyles)(euiThemeContext, {
53
+ forced: "\n ".concat((0, _form.euiFormControlShowBackgroundLine)(euiThemeContext, formVariables.borderFocused), "\n ")
54
+ }), ";};label:euiFilePicker;"),
55
+ isDroppingFile: /*#__PURE__*/(0, _react.css)("--euiFormControlStateColor:", isRefreshVariant ? euiTheme.colors.borderStrongSuccess : euiTheme.colors.primary, ";", isRefreshVariant && " \n --euiFormControlStateStyle: ".concat(highContrastMode === 'forced' ? 'solid' : 'dashed', ";\n background-color: ").concat(euiTheme.components.forms.backgroundDropping, "\n "), ";;label:isDroppingFile;"),
56
+ invalid: /*#__PURE__*/(0, _react.css)("--euiFormControlStateColor:", formVariables.borderInvalid, ";&:hover{--euiFormControlStateColor:", formVariables.borderInvalidHovered, ";}", (0, _global_styling.highContrastModeStyles)(euiThemeContext, {
57
+ forced: "\n ".concat((0, _form.euiFormControlShowBackgroundLine)(euiThemeContext, formVariables.borderInvalid), "\n ")
58
+ }), ";;label:invalid;"),
60
59
  hasFiles: /*#__PURE__*/(0, _react.css)("--euiFormControlRightIconsCount:1;font-weight:", euiTheme.font.weight.bold, ";;label:hasFiles;"),
61
60
  loading: /*#__PURE__*/(0, _react.css)("--euiFormControlRightIconsCount:1;border-radius:", formVariables.controlCompressedBorderRadius, ";overflow:hidden;;label:loading;"),
62
61
  // Skip the css() on the default width to avoid generating a className
@@ -64,10 +63,12 @@ var euiFilePickerStyles = exports.euiFilePickerStyles = function euiFilePickerSt
64
63
  fullWidth: /*#__PURE__*/(0, _react.css)(formStyles.fullWidth, ";label:fullWidth;"),
65
64
  // The input is an invisible dropzone / button
66
65
  input: {
67
- euiFilePicker__input: _ref4,
68
- largeInteractive: _ref3
66
+ euiFilePicker__input: _ref3,
67
+ largeInteractive: /*#__PURE__*/(0, _react.css)("&:hover,&:focus,.euiFilePicker-isDroppingFile &{&+.euiFilePicker__prompt{.euiFilePicker__promptText{text-decoration:", isRefreshVariant ? '' : 'underline', ";", (0, _global_styling.highContrastModeStyles)(euiThemeContext, {
68
+ forced: "\n text-decoration: underline;\n "
69
+ }), ";}.euiFilePicker__icon{transform:scale(", isRefreshVariant ? 1.05 : 1.1, ");}}};label:largeInteractive;")
69
70
  },
70
- euiFilePicker__prompt: /*#__PURE__*/(0, _react.css)("pointer-events:none;font-size:", fontSize, ";line-height:1;", (0, _global_styling.euiTextTruncate)(), " color:", euiTheme.colors.textParagraph, ";border:", euiTheme.border.width.thick, " dashed var(--euiFormControlStateColor, ", euiTheme.border.color, ");", _global_styling.euiCanAnimate, "{transition:border-color ", euiTheme.animation.fast, " ease-in,background-color ", euiTheme.animation.fast, " ease-in;};label:euiFilePicker__prompt;"),
71
+ euiFilePicker__prompt: /*#__PURE__*/(0, _react.css)("pointer-events:none;font-size:", fontSize, ";line-height:1;", (0, _global_styling.euiTextTruncate)(), " color:", euiTheme.colors.textParagraph, ";border:", isRefreshVariant ? euiTheme.border.width.thin : euiTheme.border.width.thick, " var(--euiFormControlStateStyle, dashed) var(\n --euiFormControlStateColor,\n ", isRefreshVariant ? formVariables.borderColor : euiTheme.border.color, "\n );", _global_styling.euiCanAnimate, "{transition:border-color ", euiTheme.animation.fast, " ease-in,background-color ", euiTheme.animation.fast, " ease-in;};label:euiFilePicker__prompt;"),
71
72
  disabled: /*#__PURE__*/(0, _react.css)(formStyles.disabled, ";label:disabled;"),
72
73
  // Skip the css() on the default height to avoid generating a className
73
74
  uncompressed: formStyles.uncompressed,