@elastic/eui 97.3.0 → 97.3.1-borealis.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 (569) hide show
  1. package/dist/{eui_theme_dark.json.d.ts → eui_theme_amsterdam_dark.json.d.ts} +1 -1
  2. package/dist/{eui_theme_light.json.d.ts → eui_theme_amsterdam_light.json.d.ts} +1 -1
  3. package/dist/eui_theme_borealis_dark.json +314 -0
  4. package/dist/eui_theme_borealis_dark.json.d.ts +317 -0
  5. package/dist/eui_theme_borealis_light.json +314 -0
  6. package/dist/eui_theme_borealis_light.json.d.ts +317 -0
  7. package/es/components/avatar/avatar.js +10 -4
  8. package/es/components/badge/badge.js +1 -1
  9. package/es/components/badge/badge.styles.js +2 -2
  10. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  11. package/es/components/badge/beta_badge/beta_badge.styles.js +1 -0
  12. package/es/components/badge/color_utils.js +8 -7
  13. package/es/components/badge/notification_badge/badge_notification.js +1 -1
  14. package/es/components/badge/notification_badge/badge_notification.styles.js +1 -0
  15. package/es/components/bottom_bar/bottom_bar.styles.js +1 -2
  16. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +4 -6
  17. package/es/components/button/button.js +1 -1
  18. package/es/components/button/button_display/_button_display.styles.js +1 -1
  19. package/es/components/button/button_empty/button_empty.js +1 -1
  20. package/es/components/button/button_group/button_group_button.js +1 -1
  21. package/es/components/button/button_group/button_group_button.styles.js +6 -6
  22. package/es/components/button/button_icon/button_icon.js +1 -1
  23. package/es/components/card/card.styles.js +6 -3
  24. package/es/components/code/code_block_annotations.js +1 -1
  25. package/es/components/code/code_block_line.styles.js +1 -2
  26. package/es/components/code/code_syntax.styles.js +23 -27
  27. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +3 -5
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.styles.js +1 -1
  29. package/es/components/color_picker/color_palette_display/color_palette_display.styles.js +1 -2
  30. package/es/components/color_picker/color_picker.js +9 -3
  31. package/es/components/color_picker/color_picker.styles.js +1 -2
  32. package/es/components/color_picker/color_picker_swatch.styles.js +1 -1
  33. package/es/components/combo_box/combo_box.js +9 -6
  34. package/es/components/common.js +0 -28
  35. package/es/components/datagrid/data_grid.styles.js +3 -5
  36. package/es/components/date_picker/react_date_picker.styles.js +2 -1
  37. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +3 -1
  38. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +11 -1
  39. package/es/components/date_picker/super_date_picker/super_date_picker.styles.js +4 -5
  40. package/es/components/drag_and_drop/droppable.styles.js +2 -4
  41. package/es/components/empty_prompt/empty_prompt.styles.js +5 -2
  42. package/es/components/filter_group/filter_select_item.styles.js +1 -2
  43. package/es/components/flyout/_flyout_close_button.styles.js +1 -2
  44. package/es/components/flyout/flyout.js +1 -1
  45. package/es/components/flyout/flyout.styles.js +7 -2
  46. package/es/components/form/form.styles.js +27 -29
  47. package/es/components/form/range/range_tooltip.styles.js +3 -7
  48. package/es/components/form/switch/switch.js +3 -7
  49. package/es/components/form/switch/switch.styles.js +16 -19
  50. package/es/components/header/header.styles.js +6 -7
  51. package/es/components/icon/icon.styles.js +9 -8
  52. package/es/components/icon/named_colors.js +1 -1
  53. package/es/components/inline_edit/inline_edit_form.styles.js +1 -2
  54. package/es/components/key_pad_menu/key_pad_menu_item.styles.js +1 -2
  55. package/es/components/list_group/list_group_item.styles.js +9 -11
  56. package/es/components/loading/loading_chart.styles.js +18 -5
  57. package/es/components/mark/mark.styles.js +2 -9
  58. package/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +2 -3
  59. package/es/components/markdown_editor/markdown_format.styles.js +2 -2
  60. package/es/components/modal/modal.styles.js +1 -1
  61. package/es/components/overlay_mask/overlay_mask.styles.js +1 -2
  62. package/es/components/page/page_header/page_header_content.js +2 -1
  63. package/es/components/page/page_header/page_header_content.styles.js +2 -1
  64. package/es/components/page_template/inner/page_inner.styles.js +2 -2
  65. package/es/components/panel/panel.styles.js +1 -1
  66. package/es/components/popover/popover_arrow/_popover_arrow.styles.js +23 -9
  67. package/es/components/popover/popover_footer.styles.js +1 -1
  68. package/es/components/popover/popover_panel/_popover_panel.styles.js +3 -4
  69. package/es/components/progress/progress.js +1 -1
  70. package/es/components/progress/progress.styles.js +30 -28
  71. package/es/components/selectable/selectable_list/selectable_list_item.styles.js +1 -2
  72. package/es/components/side_nav/side_nav_item.styles.js +1 -2
  73. package/es/components/skeleton/utils.js +5 -7
  74. package/es/components/steps/step_number.styles.js +1 -1
  75. package/es/components/table/table_cells_shared.styles.js +2 -7
  76. package/es/components/table/table_row.styles.js +8 -10
  77. package/es/components/text/text.styles.js +2 -2
  78. package/es/components/text/text_color.js +1 -1
  79. package/es/components/text/text_color.styles.js +6 -5
  80. package/es/components/toast/toast.styles.js +1 -1
  81. package/es/components/token/token.js +10 -4
  82. package/es/components/token/token.styles.js +12 -3
  83. package/es/components/token/token_map.js +243 -1
  84. package/es/components/tool_tip/tool_tip.styles.js +12 -14
  85. package/es/components/tour/_tour_footer.styles.js +2 -4
  86. package/es/components/tree_view/tree_view_item.styles.js +1 -2
  87. package/es/global_styling/functions/size.js +1 -17
  88. package/es/global_styling/mixins/_button.js +159 -0
  89. package/es/global_styling/mixins/_color.js +40 -31
  90. package/es/global_styling/mixins/index.js +2 -1
  91. package/es/global_styling/reset/global_styles.js +2 -2
  92. package/es/global_styling/variables/_colors_vis.js +1 -53
  93. package/es/global_styling/variables/animations.js +1 -22
  94. package/es/global_styling/variables/breakpoint.js +1 -7
  95. package/es/global_styling/variables/levels.js +1 -17
  96. package/es/global_styling/variables/shadow.js +1 -11
  97. package/es/global_styling/variables/size.js +1 -1
  98. package/es/global_styling/variables/typography.js +1 -32
  99. package/es/services/color/eui_palettes.js +116 -47
  100. package/es/services/color/index.js +1 -0
  101. package/es/services/color/vis_color_store.js +13 -0
  102. package/es/services/index.js +1 -1
  103. package/es/services/theme/provider.js +26 -2
  104. package/es/services/theme/types.js +1 -6
  105. package/es/services/theme/utils.js +1 -303
  106. package/es/themes/amsterdam/global_styling/mixins/button.js +1 -203
  107. package/es/themes/amsterdam/global_styling/variables/_buttons.js +281 -0
  108. package/es/themes/amsterdam/global_styling/variables/_colors.js +590 -19
  109. package/es/themes/amsterdam/global_styling/variables/_colors_vis.js +94 -0
  110. package/es/themes/amsterdam/global_styling/variables/_components.js +579 -0
  111. package/es/themes/amsterdam/global_styling/variables/_forms.js +153 -0
  112. package/es/themes/amsterdam/theme.js +7 -1
  113. package/es/themes/index.js +1 -1
  114. package/es/themes/themes.js +9 -6
  115. package/eui.d.ts +2170 -2620
  116. package/i18ntokens.json +4 -4
  117. package/lib/components/avatar/avatar.js +8 -2
  118. package/lib/components/badge/badge.js +1 -1
  119. package/lib/components/badge/badge.styles.js +2 -2
  120. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  121. package/lib/components/badge/beta_badge/beta_badge.styles.js +1 -0
  122. package/lib/components/badge/color_utils.js +13 -12
  123. package/lib/components/badge/notification_badge/badge_notification.js +1 -1
  124. package/lib/components/badge/notification_badge/badge_notification.styles.js +1 -0
  125. package/lib/components/bottom_bar/bottom_bar.styles.js +1 -2
  126. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +4 -6
  127. package/lib/components/button/button.js +1 -1
  128. package/lib/components/button/button_display/_button_display.styles.js +1 -1
  129. package/lib/components/button/button_empty/button_empty.js +1 -1
  130. package/lib/components/button/button_group/button_group_button.js +1 -1
  131. package/lib/components/button/button_group/button_group_button.styles.js +5 -5
  132. package/lib/components/button/button_icon/button_icon.js +1 -1
  133. package/lib/components/card/card.styles.js +5 -2
  134. package/lib/components/code/code_block_annotations.js +1 -1
  135. package/lib/components/code/code_block_line.styles.js +1 -2
  136. package/lib/components/code/code_syntax.styles.js +23 -27
  137. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +3 -5
  138. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.styles.js +1 -1
  139. package/lib/components/color_picker/color_palette_display/color_palette_display.styles.js +1 -2
  140. package/lib/components/color_picker/color_picker.js +8 -2
  141. package/lib/components/color_picker/color_picker.styles.js +1 -2
  142. package/lib/components/color_picker/color_picker_swatch.styles.js +1 -1
  143. package/lib/components/combo_box/combo_box.js +9 -6
  144. package/lib/components/common.js +0 -28
  145. package/lib/components/datagrid/data_grid.styles.js +3 -5
  146. package/lib/components/date_picker/react_date_picker.styles.js +3 -2
  147. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +3 -1
  148. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +11 -3
  149. package/lib/components/date_picker/super_date_picker/super_date_picker.styles.js +3 -4
  150. package/lib/components/drag_and_drop/droppable.styles.js +2 -4
  151. package/lib/components/empty_prompt/empty_prompt.styles.js +4 -1
  152. package/lib/components/filter_group/filter_select_item.styles.js +1 -2
  153. package/lib/components/flyout/_flyout_close_button.styles.js +1 -2
  154. package/lib/components/flyout/flyout.js +1 -1
  155. package/lib/components/flyout/flyout.styles.js +7 -2
  156. package/lib/components/form/form.styles.js +26 -28
  157. package/lib/components/form/range/range_tooltip.styles.js +3 -7
  158. package/lib/components/form/switch/switch.js +3 -7
  159. package/lib/components/form/switch/switch.styles.js +16 -19
  160. package/lib/components/header/header.styles.js +5 -6
  161. package/lib/components/icon/icon.styles.js +9 -8
  162. package/lib/components/icon/named_colors.js +1 -1
  163. package/lib/components/inline_edit/inline_edit_form.styles.js +1 -2
  164. package/lib/components/key_pad_menu/key_pad_menu_item.styles.js +1 -2
  165. package/lib/components/list_group/list_group_item.styles.js +8 -10
  166. package/lib/components/loading/loading_chart.styles.js +18 -5
  167. package/lib/components/mark/mark.styles.js +2 -9
  168. package/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +2 -3
  169. package/lib/components/markdown_editor/markdown_format.styles.js +2 -2
  170. package/lib/components/modal/modal.styles.js +1 -1
  171. package/lib/components/overlay_mask/overlay_mask.styles.js +1 -2
  172. package/lib/components/page/page_header/page_header_content.js +2 -1
  173. package/lib/components/page/page_header/page_header_content.styles.js +2 -1
  174. package/lib/components/page_template/inner/page_inner.styles.js +1 -1
  175. package/lib/components/panel/panel.styles.js +1 -1
  176. package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +22 -8
  177. package/lib/components/popover/popover_footer.styles.js +1 -1
  178. package/lib/components/popover/popover_panel/_popover_panel.styles.js +3 -4
  179. package/lib/components/progress/progress.js +1 -1
  180. package/lib/components/progress/progress.styles.js +29 -27
  181. package/lib/components/selectable/selectable_list/selectable_list_item.styles.js +1 -2
  182. package/lib/components/side_nav/side_nav_item.styles.js +1 -2
  183. package/lib/components/skeleton/utils.js +4 -6
  184. package/lib/components/steps/step_number.styles.js +1 -1
  185. package/lib/components/table/table_cells_shared.styles.js +2 -7
  186. package/lib/components/table/table_row.styles.js +7 -9
  187. package/lib/components/text/text.styles.js +1 -1
  188. package/lib/components/text/text_color.js +1 -1
  189. package/lib/components/text/text_color.styles.js +6 -5
  190. package/lib/components/toast/toast.styles.js +1 -1
  191. package/lib/components/token/token.js +12 -4
  192. package/lib/components/token/token.styles.js +12 -3
  193. package/lib/components/token/token_map.js +244 -2
  194. package/lib/components/tool_tip/tool_tip.styles.js +12 -14
  195. package/lib/components/tour/_tour_footer.styles.js +2 -4
  196. package/lib/components/tree_view/tree_view_item.styles.js +1 -2
  197. package/lib/global_styling/functions/size.js +7 -26
  198. package/lib/global_styling/mixins/_button.js +164 -0
  199. package/lib/global_styling/mixins/_color.js +39 -30
  200. package/lib/global_styling/mixins/index.js +11 -0
  201. package/lib/global_styling/reset/global_styles.js +1 -1
  202. package/lib/global_styling/variables/_colors_vis.js +6 -61
  203. package/lib/global_styling/variables/animations.js +25 -31
  204. package/lib/global_styling/variables/breakpoint.js +7 -16
  205. package/lib/global_styling/variables/levels.js +7 -26
  206. package/lib/global_styling/variables/shadow.js +13 -20
  207. package/lib/global_styling/variables/size.js +7 -10
  208. package/lib/global_styling/variables/typography.js +19 -41
  209. package/lib/services/color/eui_palettes.js +116 -47
  210. package/lib/services/color/index.js +8 -0
  211. package/lib/services/color/vis_color_store.js +18 -0
  212. package/lib/services/index.js +7 -0
  213. package/lib/services/theme/provider.js +26 -2
  214. package/lib/services/theme/types.js +13 -14
  215. package/lib/services/theme/utils.js +54 -303
  216. package/lib/themes/amsterdam/global_styling/mixins/button.js +45 -206
  217. package/lib/themes/amsterdam/global_styling/variables/_buttons.js +285 -0
  218. package/lib/themes/amsterdam/global_styling/variables/_colors.js +589 -19
  219. package/lib/themes/amsterdam/global_styling/variables/_colors_vis.js +100 -0
  220. package/lib/themes/amsterdam/global_styling/variables/_components.js +583 -0
  221. package/lib/themes/amsterdam/global_styling/variables/_forms.js +157 -0
  222. package/lib/themes/amsterdam/theme.js +7 -1
  223. package/lib/themes/index.js +7 -0
  224. package/lib/themes/themes.js +10 -7
  225. package/optimize/es/components/avatar/avatar.js +10 -4
  226. package/optimize/es/components/badge/badge.js +1 -1
  227. package/optimize/es/components/badge/badge.styles.js +2 -2
  228. package/optimize/es/components/badge/beta_badge/beta_badge.js +1 -1
  229. package/optimize/es/components/badge/beta_badge/beta_badge.styles.js +1 -0
  230. package/optimize/es/components/badge/color_utils.js +8 -7
  231. package/optimize/es/components/badge/notification_badge/badge_notification.js +1 -1
  232. package/optimize/es/components/badge/notification_badge/badge_notification.styles.js +1 -0
  233. package/optimize/es/components/bottom_bar/bottom_bar.styles.js +1 -2
  234. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +4 -6
  235. package/optimize/es/components/button/button.js +1 -1
  236. package/optimize/es/components/button/button_display/_button_display.styles.js +1 -1
  237. package/optimize/es/components/button/button_empty/button_empty.js +1 -1
  238. package/optimize/es/components/button/button_group/button_group_button.js +1 -1
  239. package/optimize/es/components/button/button_group/button_group_button.styles.js +6 -6
  240. package/optimize/es/components/button/button_icon/button_icon.js +1 -1
  241. package/optimize/es/components/card/card.styles.js +6 -3
  242. package/optimize/es/components/code/code_block_annotations.js +1 -1
  243. package/optimize/es/components/code/code_block_line.styles.js +1 -2
  244. package/optimize/es/components/code/code_syntax.styles.js +23 -27
  245. package/optimize/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +3 -5
  246. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.styles.js +1 -1
  247. package/optimize/es/components/color_picker/color_palette_display/color_palette_display.styles.js +1 -2
  248. package/optimize/es/components/color_picker/color_picker.js +9 -3
  249. package/optimize/es/components/color_picker/color_picker.styles.js +1 -2
  250. package/optimize/es/components/color_picker/color_picker_swatch.styles.js +1 -1
  251. package/optimize/es/components/combo_box/combo_box.js +9 -6
  252. package/optimize/es/components/common.js +0 -28
  253. package/optimize/es/components/datagrid/data_grid.styles.js +3 -5
  254. package/optimize/es/components/date_picker/react_date_picker.styles.js +2 -1
  255. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +3 -1
  256. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +11 -1
  257. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.styles.js +4 -5
  258. package/optimize/es/components/drag_and_drop/droppable.styles.js +2 -4
  259. package/optimize/es/components/empty_prompt/empty_prompt.styles.js +5 -2
  260. package/optimize/es/components/filter_group/filter_select_item.styles.js +1 -2
  261. package/optimize/es/components/flyout/_flyout_close_button.styles.js +1 -2
  262. package/optimize/es/components/flyout/flyout.js +1 -1
  263. package/optimize/es/components/flyout/flyout.styles.js +7 -2
  264. package/optimize/es/components/form/form.styles.js +27 -29
  265. package/optimize/es/components/form/range/range_tooltip.styles.js +3 -7
  266. package/optimize/es/components/form/switch/switch.js +3 -2
  267. package/optimize/es/components/form/switch/switch.styles.js +16 -19
  268. package/optimize/es/components/header/header.styles.js +6 -7
  269. package/optimize/es/components/icon/icon.styles.js +9 -8
  270. package/optimize/es/components/icon/named_colors.js +1 -1
  271. package/optimize/es/components/inline_edit/inline_edit_form.styles.js +1 -2
  272. package/optimize/es/components/key_pad_menu/key_pad_menu_item.styles.js +1 -2
  273. package/optimize/es/components/list_group/list_group_item.styles.js +9 -11
  274. package/optimize/es/components/loading/loading_chart.styles.js +13 -5
  275. package/optimize/es/components/mark/mark.styles.js +2 -9
  276. package/optimize/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +2 -3
  277. package/optimize/es/components/markdown_editor/markdown_format.styles.js +2 -2
  278. package/optimize/es/components/modal/modal.styles.js +1 -1
  279. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +1 -2
  280. package/optimize/es/components/page/page_header/page_header_content.js +2 -1
  281. package/optimize/es/components/page/page_header/page_header_content.styles.js +2 -1
  282. package/optimize/es/components/page_template/inner/page_inner.styles.js +2 -2
  283. package/optimize/es/components/panel/panel.styles.js +1 -1
  284. package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +23 -9
  285. package/optimize/es/components/popover/popover_footer.styles.js +1 -1
  286. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +3 -4
  287. package/optimize/es/components/progress/progress.js +1 -1
  288. package/optimize/es/components/progress/progress.styles.js +30 -28
  289. package/optimize/es/components/selectable/selectable_list/selectable_list_item.styles.js +1 -2
  290. package/optimize/es/components/side_nav/side_nav_item.styles.js +1 -2
  291. package/optimize/es/components/skeleton/utils.js +5 -7
  292. package/optimize/es/components/steps/step_number.styles.js +1 -1
  293. package/optimize/es/components/table/table_cells_shared.styles.js +2 -7
  294. package/optimize/es/components/table/table_row.styles.js +8 -10
  295. package/optimize/es/components/text/text.styles.js +2 -2
  296. package/optimize/es/components/text/text_color.js +1 -1
  297. package/optimize/es/components/text/text_color.styles.js +6 -5
  298. package/optimize/es/components/toast/toast.styles.js +1 -1
  299. package/optimize/es/components/token/token.js +10 -4
  300. package/optimize/es/components/token/token.styles.js +12 -3
  301. package/optimize/es/components/token/token_map.js +243 -1
  302. package/optimize/es/components/tool_tip/tool_tip.styles.js +12 -14
  303. package/optimize/es/components/tour/_tour_footer.styles.js +2 -4
  304. package/optimize/es/components/tree_view/tree_view_item.styles.js +1 -2
  305. package/optimize/es/global_styling/functions/size.js +1 -17
  306. package/optimize/es/global_styling/mixins/_button.js +159 -0
  307. package/optimize/es/global_styling/mixins/_color.js +40 -31
  308. package/optimize/es/global_styling/mixins/index.js +2 -1
  309. package/optimize/es/global_styling/reset/global_styles.js +2 -2
  310. package/optimize/es/global_styling/variables/_colors_vis.js +1 -53
  311. package/optimize/es/global_styling/variables/animations.js +1 -22
  312. package/optimize/es/global_styling/variables/breakpoint.js +1 -7
  313. package/optimize/es/global_styling/variables/levels.js +1 -17
  314. package/optimize/es/global_styling/variables/shadow.js +1 -11
  315. package/optimize/es/global_styling/variables/size.js +1 -1
  316. package/optimize/es/global_styling/variables/typography.js +1 -32
  317. package/optimize/es/services/color/eui_palettes.js +116 -47
  318. package/optimize/es/services/color/index.js +1 -0
  319. package/optimize/es/services/color/vis_color_store.js +13 -0
  320. package/optimize/es/services/index.js +1 -1
  321. package/optimize/es/services/theme/provider.js +26 -2
  322. package/optimize/es/services/theme/types.js +1 -6
  323. package/optimize/es/services/theme/utils.js +1 -295
  324. package/optimize/es/themes/amsterdam/global_styling/mixins/button.js +1 -198
  325. package/optimize/es/themes/amsterdam/global_styling/variables/_buttons.js +270 -0
  326. package/optimize/es/themes/amsterdam/global_styling/variables/_colors.js +590 -19
  327. package/optimize/es/themes/amsterdam/global_styling/variables/_colors_vis.js +94 -0
  328. package/optimize/es/themes/amsterdam/global_styling/variables/_components.js +571 -0
  329. package/optimize/es/themes/amsterdam/global_styling/variables/_forms.js +145 -0
  330. package/optimize/es/themes/amsterdam/theme.js +7 -1
  331. package/optimize/es/themes/index.js +1 -1
  332. package/optimize/es/themes/themes.js +9 -6
  333. package/optimize/lib/components/avatar/avatar.js +8 -2
  334. package/optimize/lib/components/badge/badge.js +1 -1
  335. package/optimize/lib/components/badge/badge.styles.js +2 -2
  336. package/optimize/lib/components/badge/beta_badge/beta_badge.js +1 -1
  337. package/optimize/lib/components/badge/beta_badge/beta_badge.styles.js +1 -0
  338. package/optimize/lib/components/badge/color_utils.js +13 -12
  339. package/optimize/lib/components/badge/notification_badge/badge_notification.js +1 -1
  340. package/optimize/lib/components/badge/notification_badge/badge_notification.styles.js +1 -0
  341. package/optimize/lib/components/bottom_bar/bottom_bar.styles.js +1 -2
  342. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +4 -6
  343. package/optimize/lib/components/button/button.js +1 -1
  344. package/optimize/lib/components/button/button_display/_button_display.styles.js +1 -1
  345. package/optimize/lib/components/button/button_empty/button_empty.js +1 -1
  346. package/optimize/lib/components/button/button_group/button_group_button.js +1 -1
  347. package/optimize/lib/components/button/button_group/button_group_button.styles.js +5 -5
  348. package/optimize/lib/components/button/button_icon/button_icon.js +1 -1
  349. package/optimize/lib/components/card/card.styles.js +5 -2
  350. package/optimize/lib/components/code/code_block_annotations.js +1 -1
  351. package/optimize/lib/components/code/code_block_line.styles.js +1 -2
  352. package/optimize/lib/components/code/code_syntax.styles.js +23 -27
  353. package/optimize/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +3 -5
  354. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.styles.js +1 -1
  355. package/optimize/lib/components/color_picker/color_palette_display/color_palette_display.styles.js +1 -2
  356. package/optimize/lib/components/color_picker/color_picker.js +8 -2
  357. package/optimize/lib/components/color_picker/color_picker.styles.js +1 -2
  358. package/optimize/lib/components/color_picker/color_picker_swatch.styles.js +1 -1
  359. package/optimize/lib/components/combo_box/combo_box.js +9 -6
  360. package/optimize/lib/components/common.js +0 -28
  361. package/optimize/lib/components/datagrid/data_grid.styles.js +3 -5
  362. package/optimize/lib/components/date_picker/react_date_picker.styles.js +3 -2
  363. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +3 -1
  364. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +11 -3
  365. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.styles.js +3 -4
  366. package/optimize/lib/components/drag_and_drop/droppable.styles.js +2 -4
  367. package/optimize/lib/components/empty_prompt/empty_prompt.styles.js +4 -1
  368. package/optimize/lib/components/filter_group/filter_select_item.styles.js +1 -2
  369. package/optimize/lib/components/flyout/_flyout_close_button.styles.js +1 -2
  370. package/optimize/lib/components/flyout/flyout.js +1 -1
  371. package/optimize/lib/components/flyout/flyout.styles.js +7 -2
  372. package/optimize/lib/components/form/form.styles.js +26 -28
  373. package/optimize/lib/components/form/range/range_tooltip.styles.js +3 -7
  374. package/optimize/lib/components/form/switch/switch.js +3 -2
  375. package/optimize/lib/components/form/switch/switch.styles.js +16 -19
  376. package/optimize/lib/components/header/header.styles.js +5 -6
  377. package/optimize/lib/components/icon/icon.styles.js +9 -8
  378. package/optimize/lib/components/icon/named_colors.js +1 -1
  379. package/optimize/lib/components/inline_edit/inline_edit_form.styles.js +1 -2
  380. package/optimize/lib/components/key_pad_menu/key_pad_menu_item.styles.js +1 -2
  381. package/optimize/lib/components/list_group/list_group_item.styles.js +8 -10
  382. package/optimize/lib/components/loading/loading_chart.styles.js +13 -5
  383. package/optimize/lib/components/mark/mark.styles.js +2 -9
  384. package/optimize/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +2 -3
  385. package/optimize/lib/components/markdown_editor/markdown_format.styles.js +2 -2
  386. package/optimize/lib/components/modal/modal.styles.js +1 -1
  387. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +1 -2
  388. package/optimize/lib/components/page/page_header/page_header_content.js +2 -1
  389. package/optimize/lib/components/page/page_header/page_header_content.styles.js +2 -1
  390. package/optimize/lib/components/page_template/inner/page_inner.styles.js +1 -1
  391. package/optimize/lib/components/panel/panel.styles.js +1 -1
  392. package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +22 -8
  393. package/optimize/lib/components/popover/popover_footer.styles.js +1 -1
  394. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +3 -4
  395. package/optimize/lib/components/progress/progress.js +1 -1
  396. package/optimize/lib/components/progress/progress.styles.js +29 -27
  397. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.styles.js +1 -2
  398. package/optimize/lib/components/side_nav/side_nav_item.styles.js +1 -2
  399. package/optimize/lib/components/skeleton/utils.js +4 -6
  400. package/optimize/lib/components/steps/step_number.styles.js +1 -1
  401. package/optimize/lib/components/table/table_cells_shared.styles.js +2 -7
  402. package/optimize/lib/components/table/table_row.styles.js +7 -9
  403. package/optimize/lib/components/text/text.styles.js +1 -1
  404. package/optimize/lib/components/text/text_color.js +1 -1
  405. package/optimize/lib/components/text/text_color.styles.js +6 -5
  406. package/optimize/lib/components/toast/toast.styles.js +1 -1
  407. package/optimize/lib/components/token/token.js +13 -4
  408. package/optimize/lib/components/token/token.styles.js +12 -3
  409. package/optimize/lib/components/token/token_map.js +244 -2
  410. package/optimize/lib/components/tool_tip/tool_tip.styles.js +12 -14
  411. package/optimize/lib/components/tour/_tour_footer.styles.js +2 -4
  412. package/optimize/lib/components/tree_view/tree_view_item.styles.js +1 -2
  413. package/optimize/lib/global_styling/functions/size.js +7 -27
  414. package/optimize/lib/global_styling/mixins/_button.js +165 -0
  415. package/optimize/lib/global_styling/mixins/_color.js +39 -30
  416. package/optimize/lib/global_styling/mixins/index.js +11 -0
  417. package/optimize/lib/global_styling/reset/global_styles.js +1 -1
  418. package/optimize/lib/global_styling/variables/_colors_vis.js +6 -61
  419. package/optimize/lib/global_styling/variables/animations.js +25 -31
  420. package/optimize/lib/global_styling/variables/breakpoint.js +7 -16
  421. package/optimize/lib/global_styling/variables/levels.js +7 -26
  422. package/optimize/lib/global_styling/variables/shadow.js +13 -20
  423. package/optimize/lib/global_styling/variables/size.js +7 -10
  424. package/optimize/lib/global_styling/variables/typography.js +19 -41
  425. package/optimize/lib/services/color/eui_palettes.js +116 -47
  426. package/optimize/lib/services/color/index.js +8 -0
  427. package/optimize/lib/services/color/vis_color_store.js +18 -0
  428. package/optimize/lib/services/index.js +7 -0
  429. package/optimize/lib/services/theme/provider.js +26 -2
  430. package/optimize/lib/services/theme/types.js +13 -14
  431. package/optimize/lib/services/theme/utils.js +54 -296
  432. package/optimize/lib/themes/amsterdam/global_styling/mixins/button.js +45 -203
  433. package/optimize/lib/themes/amsterdam/global_styling/variables/_buttons.js +275 -0
  434. package/optimize/lib/themes/amsterdam/global_styling/variables/_colors.js +589 -19
  435. package/optimize/lib/themes/amsterdam/global_styling/variables/_colors_vis.js +100 -0
  436. package/optimize/lib/themes/amsterdam/global_styling/variables/_components.js +576 -0
  437. package/optimize/lib/themes/amsterdam/global_styling/variables/_forms.js +150 -0
  438. package/optimize/lib/themes/amsterdam/theme.js +7 -1
  439. package/optimize/lib/themes/index.js +7 -0
  440. package/optimize/lib/themes/themes.js +10 -7
  441. package/package.json +8 -3
  442. package/src/global_styling/functions/_index.scss +1 -5
  443. package/src/global_styling/index.scss +1 -16
  444. package/src/global_styling/variables/_animations.scss +1 -8
  445. package/src/global_styling/variables/_borders.scss +1 -9
  446. package/src/global_styling/variables/_buttons.scss +1 -18
  447. package/src/global_styling/variables/_colors_vis.scss +1 -70
  448. package/src/global_styling/variables/_font_weight.scss +1 -7
  449. package/src/global_styling/variables/_form.scss +2 -21
  450. package/src/global_styling/variables/_responsive.scss +1 -9
  451. package/src/global_styling/variables/_shadows.scss +1 -1
  452. package/src/global_styling/variables/_size.scss +1 -15
  453. package/src/global_styling/variables/_states.scss +1 -14
  454. package/src/global_styling/variables/_typography.scss +1 -75
  455. package/src/global_styling/variables/_z_index.scss +1 -33
  456. package/src/themes/amsterdam/_colors_dark.scss +80 -8
  457. package/src/themes/amsterdam/_colors_light.scss +80 -8
  458. package/src/themes/amsterdam/global_styling/variables/_colors_vis.scss +72 -0
  459. package/src/themes/amsterdam/global_styling/variables/_forms.scss +12 -0
  460. package/src/themes/amsterdam/global_styling/variables/_index.scss +2 -0
  461. package/test-env/components/avatar/avatar.js +8 -2
  462. package/test-env/components/badge/badge.js +1 -1
  463. package/test-env/components/badge/badge.styles.js +2 -2
  464. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  465. package/test-env/components/badge/beta_badge/beta_badge.styles.js +1 -0
  466. package/test-env/components/badge/color_utils.js +13 -12
  467. package/test-env/components/badge/notification_badge/badge_notification.js +1 -1
  468. package/test-env/components/badge/notification_badge/badge_notification.styles.js +1 -0
  469. package/test-env/components/bottom_bar/bottom_bar.styles.js +1 -2
  470. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +4 -6
  471. package/test-env/components/button/button.js +1 -1
  472. package/test-env/components/button/button_display/_button_display.styles.js +1 -1
  473. package/test-env/components/button/button_empty/button_empty.js +1 -1
  474. package/test-env/components/button/button_group/button_group_button.js +1 -1
  475. package/test-env/components/button/button_group/button_group_button.styles.js +5 -5
  476. package/test-env/components/button/button_icon/button_icon.js +1 -1
  477. package/test-env/components/card/card.styles.js +5 -2
  478. package/test-env/components/code/code_block_annotations.js +1 -1
  479. package/test-env/components/code/code_block_line.styles.js +1 -2
  480. package/test-env/components/code/code_syntax.styles.js +23 -27
  481. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.styles.js +3 -5
  482. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.styles.js +1 -1
  483. package/test-env/components/color_picker/color_palette_display/color_palette_display.styles.js +1 -2
  484. package/test-env/components/color_picker/color_picker.js +8 -2
  485. package/test-env/components/color_picker/color_picker.styles.js +1 -2
  486. package/test-env/components/color_picker/color_picker_swatch.styles.js +1 -1
  487. package/test-env/components/combo_box/combo_box.js +9 -6
  488. package/test-env/components/common.js +0 -28
  489. package/test-env/components/datagrid/data_grid.styles.js +3 -5
  490. package/test-env/components/date_picker/react_date_picker.styles.js +3 -2
  491. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +3 -1
  492. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +11 -3
  493. package/test-env/components/date_picker/super_date_picker/super_date_picker.styles.js +3 -4
  494. package/test-env/components/drag_and_drop/droppable.styles.js +2 -4
  495. package/test-env/components/empty_prompt/empty_prompt.styles.js +4 -1
  496. package/test-env/components/filter_group/filter_select_item.styles.js +1 -2
  497. package/test-env/components/flyout/_flyout_close_button.styles.js +1 -2
  498. package/test-env/components/flyout/flyout.styles.js +7 -2
  499. package/test-env/components/form/form.styles.js +26 -28
  500. package/test-env/components/form/range/range_tooltip.styles.js +3 -7
  501. package/test-env/components/form/switch/switch.js +3 -2
  502. package/test-env/components/form/switch/switch.styles.js +16 -19
  503. package/test-env/components/header/header.styles.js +5 -6
  504. package/test-env/components/icon/icon.styles.js +9 -8
  505. package/test-env/components/icon/named_colors.js +1 -1
  506. package/test-env/components/inline_edit/inline_edit_form.styles.js +1 -2
  507. package/test-env/components/key_pad_menu/key_pad_menu_item.styles.js +1 -2
  508. package/test-env/components/list_group/list_group_item.styles.js +8 -10
  509. package/test-env/components/loading/loading_chart.styles.js +13 -5
  510. package/test-env/components/mark/mark.styles.js +2 -9
  511. package/test-env/components/markdown_editor/markdown_editor_drop_zone.styles.js +2 -3
  512. package/test-env/components/markdown_editor/markdown_format.styles.js +2 -2
  513. package/test-env/components/modal/modal.styles.js +1 -1
  514. package/test-env/components/overlay_mask/overlay_mask.styles.js +1 -2
  515. package/test-env/components/page/page_header/page_header_content.js +2 -1
  516. package/test-env/components/page/page_header/page_header_content.styles.js +2 -1
  517. package/test-env/components/page_template/inner/page_inner.styles.js +1 -1
  518. package/test-env/components/panel/panel.styles.js +1 -1
  519. package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +22 -8
  520. package/test-env/components/popover/popover_footer.styles.js +1 -1
  521. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +3 -4
  522. package/test-env/components/progress/progress.js +1 -1
  523. package/test-env/components/progress/progress.styles.js +29 -27
  524. package/test-env/components/selectable/selectable_list/selectable_list_item.styles.js +1 -2
  525. package/test-env/components/side_nav/side_nav_item.styles.js +1 -2
  526. package/test-env/components/skeleton/utils.js +4 -6
  527. package/test-env/components/steps/step_number.styles.js +1 -1
  528. package/test-env/components/table/table_cells_shared.styles.js +2 -7
  529. package/test-env/components/table/table_row.styles.js +7 -9
  530. package/test-env/components/text/text.styles.js +1 -1
  531. package/test-env/components/text/text_color.js +1 -1
  532. package/test-env/components/text/text_color.styles.js +6 -5
  533. package/test-env/components/toast/toast.styles.js +1 -1
  534. package/test-env/components/token/token.js +13 -4
  535. package/test-env/components/token/token.styles.js +12 -3
  536. package/test-env/components/token/token_map.js +244 -2
  537. package/test-env/components/tool_tip/tool_tip.styles.js +12 -14
  538. package/test-env/components/tour/_tour_footer.styles.js +2 -4
  539. package/test-env/components/tree_view/tree_view_item.styles.js +1 -2
  540. package/test-env/global_styling/functions/size.js +7 -27
  541. package/test-env/global_styling/mixins/_button.js +165 -0
  542. package/test-env/global_styling/mixins/_color.js +39 -30
  543. package/test-env/global_styling/mixins/index.js +11 -0
  544. package/test-env/global_styling/reset/global_styles.js +1 -1
  545. package/test-env/global_styling/variables/_colors_vis.js +6 -61
  546. package/test-env/global_styling/variables/animations.js +25 -31
  547. package/test-env/global_styling/variables/breakpoint.js +7 -16
  548. package/test-env/global_styling/variables/levels.js +7 -26
  549. package/test-env/global_styling/variables/shadow.js +13 -20
  550. package/test-env/global_styling/variables/size.js +7 -10
  551. package/test-env/global_styling/variables/typography.js +19 -41
  552. package/test-env/services/color/eui_palettes.js +116 -47
  553. package/test-env/services/color/index.js +8 -0
  554. package/test-env/services/color/vis_color_store.js +18 -0
  555. package/test-env/services/index.js +7 -0
  556. package/test-env/services/theme/provider.js +26 -2
  557. package/test-env/services/theme/types.js +13 -14
  558. package/test-env/services/theme/utils.js +54 -296
  559. package/test-env/themes/amsterdam/global_styling/mixins/button.js +45 -203
  560. package/test-env/themes/amsterdam/global_styling/variables/_buttons.js +275 -0
  561. package/test-env/themes/amsterdam/global_styling/variables/_colors.js +589 -19
  562. package/test-env/themes/amsterdam/global_styling/variables/_colors_vis.js +100 -0
  563. package/test-env/themes/amsterdam/global_styling/variables/_components.js +576 -0
  564. package/test-env/themes/amsterdam/global_styling/variables/_forms.js +150 -0
  565. package/test-env/themes/amsterdam/theme.js +7 -1
  566. package/test-env/themes/index.js +7 -0
  567. package/test-env/themes/themes.js +10 -7
  568. /package/dist/{eui_theme_dark.json → eui_theme_amsterdam_dark.json} +0 -0
  569. /package/dist/{eui_theme_light.json → eui_theme_amsterdam_light.json} +0 -0
@@ -9,6 +9,7 @@ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
9
9
 
10
10
  import chroma from 'chroma-js';
11
11
  import { colorPalette } from './color_palette';
12
+ import { EUI_VIS_COLOR_STORE } from './vis_color_store';
12
13
  var flatten = function flatten(arr) {
13
14
  var _ref;
14
15
  return (_ref = []).concat.apply(_ref, _toConsumableArray(arr));
@@ -24,6 +25,14 @@ var euiPalette = function euiPalette(colors, steps) {
24
25
  }
25
26
  return colorPalette(colors, steps, diverge, categorical);
26
27
  };
28
+ /**
29
+ * NOTE: These functions rely on base vis colors of the theme which are provided via a global
30
+ * singleton instance `EUI_VIS_COLOR_STORE` that's updated by the EuiProvider on theme change.
31
+ * Make sure the function is recalled on theme change to retrieve theme-related colors.
32
+ *
33
+ * Outside of a react component you can use the `subscibe()` method on the `EUI_VIS_COLOR_STORE`
34
+ * to subscribe to updates and update your usages to ensure latest colors are loaded.
35
+ */
27
36
  export var euiPaletteColorBlind = function euiPaletteColorBlind() {
28
37
  var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
29
38
  _ref2$rotations = _ref2.rotations,
@@ -37,26 +46,8 @@ export var euiPaletteColorBlind = function euiPaletteColorBlind() {
37
46
  _ref2$sortShift = _ref2.sortShift,
38
47
  sortShift = _ref2$sortShift === void 0 ? '-100' : _ref2$sortShift;
39
48
  var colors = [];
40
- var base = ['#54B399',
41
- // 0 green
42
- '#6092C0',
43
- // 1 blue
44
- '#D36086',
45
- // 2 dark pink
46
- '#9170B8',
47
- // 3 purple
48
- '#CA8EAE',
49
- // 4 light pink
50
- '#D6BF57',
51
- // 5 yellow
52
- '#B9A888',
53
- // 6 tan
54
- '#DA8B45',
55
- // 7 orange
56
- '#AA6556',
57
- // 8 brown
58
- '#E7664C' // 9 red
59
- ];
49
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
50
+ var base = [visColors.euiColorVis0, visColors.euiColorVis1, visColors.euiColorVis2, visColors.euiColorVis3, visColors.euiColorVis4, visColors.euiColorVis5, visColors.euiColorVis6, visColors.euiColorVis7, visColors.euiColorVis8, visColors.euiColorVis9];
60
51
  if (sortBy === 'natural') {
61
52
  // Sort the colors based on the color wheel, but shifting the values based on sortShift
62
53
  base = _toConsumableArray(base).sort(function (a, b) {
@@ -102,78 +93,156 @@ export var euiPaletteColorBlind = function euiPaletteColorBlind() {
102
93
  /**
103
94
  * Color blind palette with text is meant for use when text is applied on top of the color.
104
95
  * It increases the brightness of the color to give the text more contrast.
96
+ *
97
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
98
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
105
99
  */
106
100
  export var euiPaletteColorBlindBehindText = function euiPaletteColorBlindBehindText() {
107
101
  var paletteProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
102
+ var hasVisColorAdjustment = EUI_VIS_COLOR_STORE.hasVisColorAdjustment;
108
103
  var originalPalette = euiPaletteColorBlind(paletteProps);
104
+
105
+ // new theme palette has required contrast, we don't need to adjust them
106
+ if (!hasVisColorAdjustment) return originalPalette;
109
107
  var newPalette = originalPalette.map(function (color) {
110
108
  return chroma(color).brighten(0.5).hex();
111
109
  });
112
110
  return newPalette;
113
111
  };
112
+ var _getVisColorsAsText = function _getVisColorsAsText(visColors, keys) {
113
+ return keys.reduce(function (colors, curr) {
114
+ return [].concat(_toConsumableArray(colors), [visColors[curr]]);
115
+ }, []);
116
+ };
117
+
118
+ /**
119
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
120
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
121
+ */
114
122
  export var euiPaletteForLightBackground = function euiPaletteForLightBackground() {
115
- return ['#006BB4', '#017D73', '#F5A700', '#BD271E', '#DD0A73'];
123
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
124
+ var visColorsAsTextKeys = Object.keys(visColors).filter(function (color) {
125
+ return color.includes('AsTextLight');
126
+ });
127
+ return _getVisColorsAsText(visColors, visColorsAsTextKeys);
116
128
  };
129
+
130
+ /**
131
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
132
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
133
+ */
117
134
  export var euiPaletteForDarkBackground = function euiPaletteForDarkBackground() {
118
- return ['#1BA9F5', '#7DE2D1', '#F990C0', '#F66', '#FFCE7A'];
135
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
136
+ var visColorsAsTextKeys = Object.keys(visColors).filter(function (color) {
137
+ return color.includes('AsTextDark');
138
+ });
139
+ return _getVisColorsAsText(visColors, visColorsAsTextKeys);
119
140
  };
120
- var greenColor = '#209280';
121
- var redColor = '#CC5642';
122
- var lightRedColor = euiPaletteColorBlind()[9];
123
- var coolArray = [euiPaletteColorBlind()[1], '#6092C0'];
124
- var warmArray = [euiPaletteColorBlind()[7], euiPaletteColorBlind()[9]];
141
+
142
+ /**
143
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
144
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
145
+ */
125
146
  export var euiPaletteForStatus = function euiPaletteForStatus(steps) {
147
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
126
148
  if (steps === 1) {
127
- return [greenColor];
149
+ return [visColors.euiColorVisSuccess0];
128
150
  }
129
151
  if (steps <= 3) {
130
- return euiPalette([greenColor, euiPaletteColorBlind()[5], redColor], steps, true);
152
+ return euiPalette([visColors.euiColorVisSuccess0, visColors.euiColorVisWarning0, visColors.euiColorVisDanger0], steps, true);
131
153
  }
132
- return euiPalette([greenColor, euiPaletteColorBlind()[0], euiPaletteColorBlind()[5], lightRedColor, redColor], steps, true);
154
+ return euiPalette([visColors.euiColorVisSuccess0, visColors.euiColorVisSuccess1, visColors.euiColorVisWarning0, visColors.euiColorVisDanger1, visColors.euiColorVisDanger0], steps, true);
133
155
  };
156
+
157
+ /**
158
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
159
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
160
+ */
134
161
  export var euiPaletteForTemperature = function euiPaletteForTemperature(steps) {
135
- var cools = colorPalette([].concat(_toConsumableArray(coolArray.slice().reverse()), ['#EBEFF5']), 3);
136
- var warms = colorPalette(['#F4F3DB'].concat(warmArray), 3);
162
+ var hasVisColorAdjustment = EUI_VIS_COLOR_STORE.hasVisColorAdjustment,
163
+ visColors = EUI_VIS_COLOR_STORE.visColors;
137
164
  if (steps === 1) {
138
- return [cools[0]];
165
+ return [visColors.euiColorVisCool2];
139
166
  } else if (steps <= 3) {
140
- return euiPalette([cools[0], lightRedColor], steps, true);
167
+ return euiPalette([visColors.euiColorVisCool2, visColors.euiColorVisWarm2], steps, true);
141
168
  }
142
- return euiPalette([].concat(_toConsumableArray(cools), _toConsumableArray(warms)), steps, true);
169
+ var cools = colorPalette([visColors.euiColorVisCool2, visColors.euiColorVisCool1, visColors.euiColorVisCool0], 3);
170
+ var warms = colorPalette([visColors.euiColorVisWarm0, visColors.euiColorVisWarm1, visColors.euiColorVisWarm2], 3);
171
+ var paletteColors = hasVisColorAdjustment ? [].concat(_toConsumableArray(cools), _toConsumableArray(warms)) : [].concat(_toConsumableArray(cools), [visColors.euiColorVisNeutral0], _toConsumableArray(warms));
172
+ return euiPalette(paletteColors, steps, true);
143
173
  };
174
+
175
+ /**
176
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
177
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
178
+ */
144
179
  export var euiPaletteComplementary = function euiPaletteComplementary(steps) {
180
+ var hasVisColorAdjustment = EUI_VIS_COLOR_STORE.hasVisColorAdjustment,
181
+ visColors = EUI_VIS_COLOR_STORE.visColors;
145
182
  if (steps === 1) {
146
- return [euiPaletteColorBlind()[1]];
183
+ return [visColors.euiColorVisComplementary0];
147
184
  }
148
- return euiPalette([euiPaletteColorBlind()[1], euiPaletteColorBlind()[7]], steps, true);
185
+ var paletteColors = hasVisColorAdjustment ? [visColors.euiColorVisComplementary0, visColors.euiColorVisComplementary1] : [visColors.euiColorVisComplementary0, visColors.euiColorVisNeutral0, visColors.euiColorVisComplementary1];
186
+ return euiPalette(paletteColors, steps, true);
149
187
  };
188
+
189
+ /**
190
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
191
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
192
+ */
150
193
  export var euiPaletteRed = function euiPaletteRed(steps) {
194
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
151
195
  if (steps === 1) {
152
- return [lightRedColor];
196
+ return [visColors.euiColorVisDanger1];
153
197
  }
154
- return euiPalette(['white', redColor], steps);
198
+ return euiPalette([visColors.euiColorVisNeutral0, visColors.euiColorVisDanger0], steps);
155
199
  };
200
+
201
+ /**
202
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
203
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
204
+ */
156
205
  export var euiPaletteGreen = function euiPaletteGreen(steps) {
206
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
157
207
  if (steps === 1) {
158
- return [euiPaletteColorBlind()[0]];
208
+ return [visColors.euiColorVisSuccess1];
159
209
  }
160
- return euiPalette(['white', greenColor], steps);
210
+ return euiPalette([visColors.euiColorVisNeutral0, visColors.euiColorVisSuccess0], steps);
161
211
  };
212
+
213
+ /**
214
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
215
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
216
+ */
162
217
  export var euiPaletteCool = function euiPaletteCool(steps) {
218
+ var hasVisColorAdjustment = EUI_VIS_COLOR_STORE.hasVisColorAdjustment,
219
+ visColors = EUI_VIS_COLOR_STORE.visColors;
163
220
  if (steps === 1) {
164
- return [coolArray[1]];
221
+ return [visColors.euiColorVisCool1];
165
222
  }
166
- return euiPalette(['white'].concat(coolArray), steps);
223
+ return euiPalette([hasVisColorAdjustment ? visColors.euiColorVisNeutral0 : visColors.euiColorVisCool0, visColors.euiColorVisCool1, visColors.euiColorVisCool2], steps);
167
224
  };
225
+
226
+ /**
227
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
228
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
229
+ */
168
230
  export var euiPaletteWarm = function euiPaletteWarm(steps) {
231
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
169
232
  if (steps === 1) {
170
- return [lightRedColor];
233
+ return [visColors.euiColorVisWarm2];
171
234
  }
172
- return euiPalette(['#FBFBDC'].concat(warmArray), steps);
235
+ return euiPalette([visColors.euiColorVisWarm0, visColors.euiColorVisWarm1, visColors.euiColorVisWarm2], steps);
173
236
  };
237
+
238
+ /**
239
+ * NOTE: This function is not pure. It relies on `EUI_VIS_COLOR_STORE` which is updated by the
240
+ * EuiProvider on theme change. Ensure to recall the function on theme change or subscribe to the store.
241
+ */
174
242
  export var euiPaletteGray = function euiPaletteGray(steps) {
243
+ var visColors = EUI_VIS_COLOR_STORE.visColors;
175
244
  if (steps === 1) {
176
- return ['#98a2b3'];
245
+ return [visColors.euiColorVisGrey1];
177
246
  }
178
- return euiPalette(['white', '#d3dae6', '#98a2b3', '#69707d', '#343741'], steps, false);
247
+ return euiPalette([visColors.euiColorVisNeutral0, visColors.euiColorVisGrey0, visColors.euiColorVisGrey1, visColors.euiColorVisGrey2, visColors.euiColorVisGrey3], steps, false);
179
248
  };
@@ -16,6 +16,7 @@ export { rgbToHex } from './rgb_to_hex';
16
16
  export { rgbToHsv } from './rgb_to_hsv';
17
17
  export { calculateContrast, calculateLuminance } from './luminance_and_contrast';
18
18
  export { VISUALIZATION_COLORS, DEFAULT_VISUALIZATION_COLOR } from './visualization_colors';
19
+ export { EUI_VIS_COLOR_STORE } from './vis_color_store';
19
20
  export { colorPalette } from './color_palette';
20
21
  export { euiPaletteForLightBackground, euiPaletteForDarkBackground, euiPaletteColorBlind, euiPaletteColorBlindBehindText, euiPaletteForStatus, euiPaletteForTemperature, euiPaletteComplementary, euiPaletteRed, euiPaletteGreen, euiPaletteCool, euiPaletteWarm, euiPaletteGray } from './eui_palettes';
21
22
  export { getSteppedGradient } from './stepped_gradient';
@@ -0,0 +1,13 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import { EuiVisColorStore } from '@elastic/eui-theme-common';
10
+ import { colorVis } from '../../global_styling/variables/_colors_vis';
11
+
12
+ // initialsetup of Vis color storage with default colors
13
+ export var EUI_VIS_COLOR_STORE = EuiVisColorStore.getInstance(colorVis, true);
@@ -12,7 +12,7 @@ export { htmlIdGenerator, useGeneratedHtmlId } from './accessibility';
12
12
  export { CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT } from './alignment';
13
13
  export { CurrentEuiBreakpointContext, CurrentEuiBreakpointProvider, useCurrentEuiBreakpoint, useIsWithinBreakpoints, useIsWithinMaxBreakpoint, useIsWithinMinBreakpoint } from './breakpoint';
14
14
  export { CanvasTextUtils } from './canvas';
15
- export { brighten, calculateContrast, calculateLuminance, colorPalette, darken, DEFAULT_VISUALIZATION_COLOR, desaturate, euiPaletteColorBlind, euiPaletteColorBlindBehindText, euiPaletteComplementary, euiPaletteCool, euiPaletteForDarkBackground, euiPaletteForLightBackground, euiPaletteForStatus, euiPaletteForTemperature, euiPaletteGray, euiPaletteRed, euiPaletteGreen, euiPaletteWarm, getSteppedGradient, hexToHsv, hexToRgb, hsvToHex, hsvToRgb, isColorDark, isValidHex, lightness, makeDisabledContrastColor, makeHighContrastColor, rgbToHex, rgbToHsv, saturate, shade, shadeOrTint, tint, tintOrShade, transparentize, VISUALIZATION_COLORS, wcagContrastMin } from './color';
15
+ export { brighten, calculateContrast, calculateLuminance, colorPalette, darken, DEFAULT_VISUALIZATION_COLOR, desaturate, euiPaletteColorBlind, euiPaletteColorBlindBehindText, euiPaletteComplementary, euiPaletteCool, euiPaletteForDarkBackground, euiPaletteForLightBackground, euiPaletteForStatus, euiPaletteForTemperature, euiPaletteGray, euiPaletteRed, euiPaletteGreen, euiPaletteWarm, getSteppedGradient, hexToHsv, hexToRgb, hsvToHex, hsvToRgb, isColorDark, isValidHex, lightness, makeDisabledContrastColor, makeHighContrastColor, rgbToHex, rgbToHsv, saturate, shade, shadeOrTint, tint, tintOrShade, transparentize, VISUALIZATION_COLORS, EUI_VIS_COLOR_STORE, wcagContrastMin } from './color';
16
16
  export { useColorPickerState, useColorStopsState } from './color_picker';
17
17
  export * from './console';
18
18
  export * from './copy';
@@ -19,6 +19,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
19
  import React, { useContext, useEffect, useRef, useMemo, useState, useCallback, Fragment } from 'react';
20
20
  import { Global } from '@emotion/react';
21
21
  import isEqual from 'lodash/isEqual';
22
+ import { EUI_EXPERIMENTAL_THEME_ENABLED_KEY } from '../../themes/themes';
22
23
  import { cloneElementWithCss } from '../emotion';
23
24
  import { css, cx } from '../emotion/css';
24
25
  import { CurrentEuiBreakpointProvider } from '../breakpoint/current_breakpoint';
@@ -26,6 +27,7 @@ import { EuiSystemContext, EuiThemeContext, EuiNestedThemeContext, EuiModificati
26
27
  import { EuiEmotionThemeProvider } from './emotion';
27
28
  import { EuiThemeMemoizedStylesProvider } from './style_memoization';
28
29
  import { buildTheme, getColorMode, getComputed, mergeDeep } from './utils';
30
+ import { EUI_VIS_COLOR_STORE } from '../color';
29
31
  import { jsx as ___EmotionJSX } from "@emotion/react";
30
32
  export var EuiThemeProvider = function EuiThemeProvider(_ref) {
31
33
  var _system = _ref.theme,
@@ -65,19 +67,41 @@ export var EuiThemeProvider = function EuiThemeProvider(_ref) {
65
67
  setColorMode = _useState6[1];
66
68
  var prevColorMode = useRef(colorMode);
67
69
  var isParentTheme = useRef(prevSystemKey.current === parentSystem.key && colorMode === parentColorMode && isEqual(parentModifications, modifications));
70
+ var updateVisColorStore = useCallback(function (theme) {
71
+ var _theme$flags$hasVisCo, _theme$flags;
72
+ EUI_VIS_COLOR_STORE.setVisColors(theme.colors.vis, (_theme$flags$hasVisCo = (_theme$flags = theme.flags) === null || _theme$flags === void 0 ? void 0 : _theme$flags.hasVisColorAdjustment) !== null && _theme$flags$hasVisCo !== void 0 ? _theme$flags$hasVisCo : true);
73
+ }, []);
74
+ var getInitialTheme = function getInitialTheme() {
75
+ var theme = getComputed(system, buildTheme(modifications, "_".concat(system.key)), colorMode);
76
+ setTimeout(function () {
77
+ updateVisColorStore(theme);
78
+ });
79
+ return theme;
80
+ };
68
81
  var _useState7 = useState(isParentTheme.current && Object.keys(parentTheme).length ? _objectSpread({}, parentTheme) // Intentionally create a new object to break referential equality
69
- : getComputed(system, buildTheme(modifications, "_".concat(system.key)), colorMode)),
82
+ : getInitialTheme()),
70
83
  _useState8 = _slicedToArray(_useState7, 2),
71
84
  theme = _useState8[0],
72
85
  setTheme = _useState8[1];
86
+
87
+ // TODO: temp. testing code only, remove once obsolete
88
+ useEffect(function () {
89
+ if (process.env.NODE_ENV === 'development') {
90
+ var isEnabled = localStorage.getItem(EUI_EXPERIMENTAL_THEME_ENABLED_KEY) != null;
91
+ if (!isEnabled) {
92
+ localStorage.setItem(EUI_EXPERIMENTAL_THEME_ENABLED_KEY, 'true');
93
+ }
94
+ }
95
+ }, []);
73
96
  useEffect(function () {
74
97
  var newSystem = _system || parentSystem;
75
98
  if (prevSystemKey.current !== newSystem.key) {
76
99
  setSystem(newSystem);
77
100
  prevSystemKey.current = newSystem.key;
78
101
  isParentTheme.current = false;
102
+ updateVisColorStore(theme);
79
103
  }
80
- }, [_system, parentSystem]);
104
+ }, [_system, parentSystem, theme, updateVisColorStore]);
81
105
  useEffect(function () {
82
106
  var newModifications = mergeDeep(parentModifications, _modifications);
83
107
  if (!isEqual(prevModifications.current, newModifications)) {
@@ -5,9 +5,4 @@
5
5
  * in compliance with, at your election, the Elastic License 2.0 or the Server
6
6
  * Side Public License, v 1.
7
7
  */
8
-
9
- export var COLOR_MODES_STANDARD = {
10
- light: 'LIGHT',
11
- dark: 'DARK'
12
- };
13
- export var COLOR_MODES_INVERSE = 'INVERSE';
8
+ export { COLOR_MODES_STANDARD, COLOR_MODES_INVERSE } from '@elastic/eui-theme-common';
@@ -1,10 +1,3 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
- import _createClass from "@babel/runtime/helpers/createClass";
5
- import _typeof from "@babel/runtime/helpers/typeof";
6
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
1
  /*
9
2
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
10
3
  * or more contributor license agreements. Licensed under the Elastic License
@@ -13,291 +6,4 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
13
6
  * Side Public License, v 1.
14
7
  */
15
8
 
16
- import { COLOR_MODES_STANDARD, COLOR_MODES_INVERSE } from './types';
17
- export var DEFAULT_COLOR_MODE = COLOR_MODES_STANDARD.light;
18
-
19
- /**
20
- * Returns whether the parameter is an object
21
- * @param {any} obj - Anything
22
- */
23
- var isObject = function isObject(obj) {
24
- return obj && _typeof(obj) === 'object';
25
- };
26
-
27
- /**
28
- * Returns whether the provided color mode is `inverse`
29
- * @param {string} colorMode - `light`, `dark`, or `inverse`
30
- */
31
- export var isInverseColorMode = function isInverseColorMode(colorMode) {
32
- return colorMode === COLOR_MODES_INVERSE;
33
- };
34
-
35
- /**
36
- * Returns the color mode configured in the current EuiThemeProvider.
37
- * Returns the parent color mode if none is explicity set.
38
- * @param {string} colorMode - `light`, `dark`, or `inverse`
39
- * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback
40
- */
41
- export var getColorMode = function getColorMode(colorMode, parentColorMode) {
42
- if (colorMode == null) {
43
- return parentColorMode || DEFAULT_COLOR_MODE;
44
- }
45
- var mode = colorMode.toUpperCase();
46
- if (isInverseColorMode(mode)) {
47
- return parentColorMode === COLOR_MODES_STANDARD.dark || parentColorMode === undefined ? COLOR_MODES_STANDARD.light : COLOR_MODES_STANDARD.dark;
48
- } else {
49
- return mode;
50
- }
51
- };
52
-
53
- /**
54
- * Returns a value at a given path on an object.
55
- * If `colorMode` is provided, will scope the value to the appropriate color mode key (LIGHT\DARK)
56
- * @param {object} model - Object
57
- * @param {string} _path - Dot-notated string to a path on the object
58
- * @param {string} colorMode - `light` or `dark`
59
- */
60
- export var getOn = function getOn(model, _path, colorMode) {
61
- var path = _path.split('.');
62
- var node = model;
63
- while (path.length) {
64
- var segment = path.shift();
65
- if (node.hasOwnProperty(segment) === false) {
66
- if (colorMode && node.hasOwnProperty(colorMode) === true && node[colorMode].hasOwnProperty(segment) === true) {
67
- if (node[colorMode][segment] instanceof Computed) {
68
- node = node[colorMode][segment].getValue(null, null, node, colorMode);
69
- } else {
70
- node = node[colorMode][segment];
71
- }
72
- } else {
73
- return undefined;
74
- }
75
- } else {
76
- if (node[segment] instanceof Computed) {
77
- node = node[segment].getValue(null, null, node, colorMode);
78
- } else {
79
- node = node[segment];
80
- }
81
- }
82
- }
83
- return node;
84
- };
85
-
86
- /**
87
- * Sets a value at a given path on an object.
88
- * @param {object} model - Object
89
- * @param {string} _path - Dot-notated string to a path on the object
90
- * @param {any} string - The value to set
91
- */
92
- export var setOn = function setOn(model, _path, value) {
93
- var path = _path.split('.');
94
- var propertyName = path.pop();
95
- var node = model;
96
- while (path.length) {
97
- var segment = path.shift();
98
- if (node.hasOwnProperty(segment) === false) {
99
- node[segment] = {};
100
- }
101
- node = node[segment];
102
- }
103
- node[propertyName] = value;
104
- return true;
105
- };
106
-
107
- /**
108
- * Creates a class to store the `computer` method and its eventual parameters.
109
- * Allows for on-demand computation with up-to-date parameters via `getValue` method.
110
- * @constructor
111
- * @param {function} computer - Function to be computed
112
- * @param {string | array} dependencies - Dependencies passed to the `computer` as parameters
113
- */
114
- export var Computed = /*#__PURE__*/function () {
115
- function Computed(computer) {
116
- var dependencies = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
117
- _classCallCheck(this, Computed);
118
- this.computer = computer;
119
- this.dependencies = dependencies;
120
- }
121
-
122
- /**
123
- * Executes the `computer` method with the current state of the theme
124
- * by taking into account previously computed values and modifications.
125
- * @param {Proxy | object} base - Computed or uncomputed theme
126
- * @param {Proxy | object} modifications - Theme value overrides
127
- * @param {object} working - Partially computed theme
128
- * @param {string} colorMode - `light` or `dark`
129
- */
130
- return _createClass(Computed, [{
131
- key: "getValue",
132
- value: function getValue(base) {
133
- var modifications = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
134
- var working = arguments.length > 2 ? arguments[2] : undefined;
135
- var colorMode = arguments.length > 3 ? arguments[3] : undefined;
136
- if (!this.dependencies.length) {
137
- return this.computer(working);
138
- }
139
- if (!Array.isArray(this.dependencies)) {
140
- var _ref, _getOn;
141
- return this.computer((_ref = (_getOn = getOn(working, this.dependencies)) !== null && _getOn !== void 0 ? _getOn : getOn(modifications, this.dependencies, colorMode)) !== null && _ref !== void 0 ? _ref : getOn(base, this.dependencies, colorMode));
142
- }
143
- return this.computer(this.dependencies.map(function (dependency) {
144
- var _ref2, _getOn2;
145
- return (_ref2 = (_getOn2 = getOn(working, dependency)) !== null && _getOn2 !== void 0 ? _getOn2 : getOn(modifications, dependency, colorMode)) !== null && _ref2 !== void 0 ? _ref2 : getOn(base, dependency, colorMode);
146
- }));
147
- }
148
- }]);
149
- }();
150
-
151
- /**
152
- * Returns a Class (`Computed`) that stores the arbitrary computer method
153
- * and references to its optional dependecies.
154
- * @param {function} computer - Arbitrary method to be called at compute time.
155
- * @param {string | array} dependencies - Values that will be provided to `computer` at compute time.
156
- */
157
-
158
- export function computed(comp, dep) {
159
- return new Computed(comp, dep);
160
- }
161
-
162
- /**
163
- * Takes an uncomputed theme, and computes and returns all values taking
164
- * into consideration value overrides and configured color mode.
165
- * Overrides take precedence, and only values in the current color mode
166
- * are computed and returned.
167
- * @param {Proxy} base - Object to transform into Proxy
168
- * @param {Proxy | object} over - Unique identifier or name
169
- * @param {string} colorMode - `light` or `dark`
170
- */
171
- export var getComputed = function getComputed(base, over, colorMode) {
172
- var output = {
173
- themeName: base.key
174
- };
175
- function loop(base, over) {
176
- var checkExisting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
177
- var path = arguments.length > 3 ? arguments[3] : undefined;
178
- Object.keys(base).forEach(function (key) {
179
- var newPath = path ? "".concat(path, ".").concat(key) : "".concat(key);
180
- // @ts-expect-error `key` is not necessarily a colorMode key
181
- if ([].concat(_toConsumableArray(Object.values(COLOR_MODES_STANDARD)), [colorMode]).includes(key)) {
182
- if (key !== colorMode) {
183
- return;
184
- } else {
185
- var colorModeSegment = new RegExp("(\\.".concat(colorMode, "\\b)|(\\b").concat(colorMode, "\\.)"));
186
- newPath = newPath.replace(colorModeSegment, '');
187
- }
188
- }
189
- var existing = checkExisting && getOn(output, newPath);
190
- if (!existing || isObject(existing)) {
191
- var baseValue = base[key] instanceof Computed ? base[key].getValue(base.root, over.root, output, colorMode) : base[key];
192
- var overValue = over[key] instanceof Computed ? over[key].getValue(base.root, over.root, output, colorMode) : over[key];
193
- if (isObject(baseValue) && !Array.isArray(baseValue)) {
194
- loop(baseValue, overValue !== null && overValue !== void 0 ? overValue : {}, checkExisting, newPath);
195
- } else {
196
- setOn(output, newPath, overValue !== null && overValue !== void 0 ? overValue : baseValue);
197
- }
198
- }
199
- });
200
- }
201
- // Compute standard theme values and apply overrides
202
- loop(base, over);
203
- // Compute and apply extension values only
204
- loop(over, {}, true);
205
- return output;
206
- };
207
-
208
- /**
209
- * Builds a Proxy with a custom `handler` designed to self-reference values
210
- * and prevent arbitrary value overrides.
211
- * @param {object} model - Object to transform into Proxy
212
- * @param {string} key - Unique identifier or name
213
- */
214
- export var buildTheme = function buildTheme(model, key) {
215
- var handler = {
216
- getPrototypeOf: function getPrototypeOf(target) {
217
- return Reflect.getPrototypeOf(target.model);
218
- },
219
- setPrototypeOf: function setPrototypeOf(target, prototype) {
220
- return Reflect.setPrototypeOf(target.model, prototype);
221
- },
222
- isExtensible: function isExtensible(target) {
223
- return Reflect.isExtensible(target);
224
- },
225
- preventExtensions: function preventExtensions(target) {
226
- return Reflect.preventExtensions(target.model);
227
- },
228
- getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, key) {
229
- return Reflect.getOwnPropertyDescriptor(target.model, key);
230
- },
231
- defineProperty: function defineProperty(target, property, attributes) {
232
- return Reflect.defineProperty(target.model, property, attributes);
233
- },
234
- has: function has(target, property) {
235
- return Reflect.has(target.model, property);
236
- },
237
- get: function get(_target, property) {
238
- if (property === 'key') {
239
- return _target[property];
240
- }
241
-
242
- // prevent Safari from locking up when the proxy is used in dev tools
243
- // as it doesn't support getPrototypeOf
244
- if (property === '__proto__') return {};
245
- var target = property === 'root' ? _target : _target.model || _target;
246
- // @ts-ignore `string` index signature
247
- var value = target[property];
248
- if (isObject(value) && !Array.isArray(value)) {
249
- return new Proxy({
250
- model: value,
251
- root: _target.root,
252
- key: "_".concat(_target.key)
253
- }, handler);
254
- } else {
255
- return value;
256
- }
257
- },
258
- set: function set(target) {
259
- return target;
260
- },
261
- deleteProperty: function deleteProperty(target) {
262
- return target;
263
- },
264
- ownKeys: function ownKeys(target) {
265
- return Reflect.ownKeys(target.model);
266
- },
267
- apply: function apply(target) {
268
- return target;
269
- },
270
- construct: function construct(target) {
271
- return target;
272
- }
273
- };
274
- var themeProxy = new Proxy({
275
- model: model,
276
- root: model,
277
- key: key
278
- }, handler);
279
- return themeProxy;
280
- };
281
-
282
- /**
283
- * Deeply merges two objects, using `source` values whenever possible.
284
- * @param {object} _target - Object with fallback values
285
- * @param {object} source - Object with desired values
286
- */
287
- export var mergeDeep = function mergeDeep(_target) {
288
- var source = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
289
- var target = _objectSpread({}, _target);
290
- if (!isObject(target) || !isObject(source)) {
291
- return source;
292
- }
293
- Object.keys(source).forEach(function (key) {
294
- var targetValue = target[key];
295
- var sourceValue = source[key];
296
- if (isObject(targetValue) && isObject(sourceValue)) {
297
- target[key] = mergeDeep(_objectSpread({}, targetValue), _objectSpread({}, sourceValue));
298
- } else {
299
- target[key] = sourceValue;
300
- }
301
- });
302
- return target;
303
- };
9
+ export { DEFAULT_COLOR_MODE, isInverseColorMode, getColorMode, getOn, setOn, Computed, computed, getComputed, buildTheme, mergeDeep } from '@elastic/eui-theme-common';