@elastic/eui-theme-common 0.0.11 → 0.2.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 (56) hide show
  1. package/lib/cjs/global_styling/mixins/shadow.d.ts +16 -11
  2. package/lib/cjs/global_styling/mixins/shadow.d.ts.map +1 -1
  3. package/lib/cjs/global_styling/mixins/shadow.js +80 -61
  4. package/lib/cjs/global_styling/mixins/shadow.js.map +1 -1
  5. package/lib/cjs/global_styling/variables/borders.d.ts +3 -2
  6. package/lib/cjs/global_styling/variables/borders.d.ts.map +1 -1
  7. package/lib/cjs/global_styling/variables/borders.js.map +1 -1
  8. package/lib/cjs/global_styling/variables/colors.d.ts +1 -9
  9. package/lib/cjs/global_styling/variables/colors.d.ts.map +1 -1
  10. package/lib/cjs/global_styling/variables/colors.js.map +1 -1
  11. package/lib/cjs/global_styling/variables/components.d.ts +7 -3
  12. package/lib/cjs/global_styling/variables/components.d.ts.map +1 -1
  13. package/lib/cjs/global_styling/variables/components.js.map +1 -1
  14. package/lib/cjs/global_styling/variables/index.d.ts +1 -0
  15. package/lib/cjs/global_styling/variables/index.d.ts.map +1 -1
  16. package/lib/cjs/global_styling/variables/index.js +11 -0
  17. package/lib/cjs/global_styling/variables/index.js.map +1 -1
  18. package/lib/cjs/global_styling/variables/overrides.d.ts +9 -0
  19. package/lib/cjs/global_styling/variables/overrides.d.ts.map +1 -0
  20. package/lib/cjs/global_styling/variables/overrides.js +4 -0
  21. package/lib/cjs/global_styling/variables/overrides.js.map +1 -0
  22. package/lib/cjs/global_styling/variables/shadow.d.ts +1 -0
  23. package/lib/cjs/global_styling/variables/shadow.d.ts.map +1 -1
  24. package/lib/cjs/global_styling/variables/shadow.js.map +1 -1
  25. package/lib/cjs/services/theme/types.d.ts +20 -11
  26. package/lib/cjs/services/theme/types.d.ts.map +1 -1
  27. package/lib/cjs/services/theme/types.js +8 -1
  28. package/lib/cjs/services/theme/types.js.map +1 -1
  29. package/lib/cjs/utils.d.ts +7 -4
  30. package/lib/cjs/utils.d.ts.map +1 -1
  31. package/lib/cjs/utils.js +23 -5
  32. package/lib/cjs/utils.js.map +1 -1
  33. package/lib/cjs/utils.test.js +3 -0
  34. package/lib/cjs/utils.test.js.map +1 -1
  35. package/lib/esm/global_styling/mixins/shadow.d.ts +16 -11
  36. package/lib/esm/global_styling/mixins/shadow.js +56 -21
  37. package/lib/esm/global_styling/mixins/shadow.js.map +1 -1
  38. package/lib/esm/global_styling/variables/borders.d.ts +3 -2
  39. package/lib/esm/global_styling/variables/colors.d.ts +1 -9
  40. package/lib/esm/global_styling/variables/components.d.ts +7 -3
  41. package/lib/esm/global_styling/variables/index.d.ts +1 -0
  42. package/lib/esm/global_styling/variables/index.js +1 -0
  43. package/lib/esm/global_styling/variables/index.js.map +1 -1
  44. package/lib/esm/global_styling/variables/overrides.d.ts +8 -0
  45. package/lib/esm/global_styling/variables/overrides.js +9 -0
  46. package/lib/esm/global_styling/variables/overrides.js.map +1 -0
  47. package/lib/esm/global_styling/variables/shadow.d.ts +1 -0
  48. package/lib/esm/services/theme/types.d.ts +20 -11
  49. package/lib/esm/services/theme/types.js +2 -0
  50. package/lib/esm/services/theme/types.js.map +1 -1
  51. package/lib/esm/utils.d.ts +7 -4
  52. package/lib/esm/utils.js +37 -6
  53. package/lib/esm/utils.js.map +1 -1
  54. package/lib/esm/utils.test.js +3 -0
  55. package/lib/esm/utils.test.js.map +1 -1
  56. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_animations","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_borders","_breakpoint","_breakpoint2","_colors","_levels","_size","_shadow","_states","_typography","_buttons","_forms","_components","_flags"],"sources":["../../../../src/global_styling/variables/index.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nexport * from './animations';\nexport * from './borders';\nexport * from './breakpoint';\nexport * from './_breakpoint';\nexport * from './breakpoint';\nexport * from './colors';\nexport * from './levels';\nexport * from './size';\nexport * from './shadow';\nexport * from './states';\nexport * from './typography';\nexport * from './buttons';\nexport * from './forms';\nexport * from './components';\nexport * from './flags';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_animations","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_borders","_breakpoint","_breakpoint2","_colors","_levels","_size","_shadow","_states","_typography","_buttons","_forms","_components","_flags","_overrides"],"sources":["../../../../src/global_styling/variables/index.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nexport * from './animations';\nexport * from './borders';\nexport * from './breakpoint';\nexport * from './_breakpoint';\nexport * from './breakpoint';\nexport * from './colors';\nexport * from './levels';\nexport * from './size';\nexport * from './shadow';\nexport * from './states';\nexport * from './typography';\nexport * from './buttons';\nexport * from './forms';\nexport * from './components';\nexport * from './flags';\nexport * from './overrides';\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import { RecursivePartial } from '../../types';
2
+ import { EUI_THEME_HIGH_CONTRAST_MODE_KEY, type EuiThemeShapeBase } from '../../services/theme/types';
3
+ /**
4
+ * Theme specific conditional overrides, e.g. for high contrast mode
5
+ */
6
+ export declare type _EuiThemeOverrides = {
7
+ [EUI_THEME_HIGH_CONTRAST_MODE_KEY]: RecursivePartial<EuiThemeShapeBase>;
8
+ };
9
+ //# sourceMappingURL=overrides.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../../../src/global_styling/variables/overrides.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,gCAAgC,EAChC,KAAK,iBAAiB,EACvB,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,oBAAY,kBAAkB,GAAG;IAC/B,CAAC,gCAAgC,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;CACzE,CAAC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ var _types = require("../../services/theme/types");
4
+ //# sourceMappingURL=overrides.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overrides.js","names":["_types","require"],"sources":["../../../../src/global_styling/variables/overrides.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport { RecursivePartial } from '../../types';\nimport {\n EUI_THEME_HIGH_CONTRAST_MODE_KEY,\n type EuiThemeShapeBase,\n} from '../../services/theme/types';\n\n/**\n * Theme specific conditional overrides, e.g. for high contrast mode\n */\nexport type _EuiThemeOverrides = {\n [EUI_THEME_HIGH_CONTRAST_MODE_KEY]: RecursivePartial<EuiThemeShapeBase>;\n};\n"],"mappings":";;AASA,IAAAA,MAAA,GAAAC,OAAA","ignoreList":[]}
@@ -7,5 +7,6 @@ export declare const _EuiShadowSizesDescriptions: Record<_EuiThemeShadowSize, st
7
7
  export interface _EuiThemeShadowCustomColor {
8
8
  color?: string;
9
9
  property?: 'box-shadow' | 'filter';
10
+ borderAllInHighContrastMode?: boolean;
10
11
  }
11
12
  //# sourceMappingURL=shadow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../../../src/global_styling/variables/shadow.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,mBAAmB,sCAAuC,CAAC;AAExE,oBAAY,mBAAmB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAOzE,CAAC;AAEJ,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;CACpC"}
1
+ {"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../../../src/global_styling/variables/shadow.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,mBAAmB,sCAAuC,CAAC;AAExE,oBAAY,mBAAmB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAOzE,CAAC;AAEJ,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IACnC,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","names":["EuiThemeShadowSizes","exports","_EuiShadowSizesDescriptions","xs","s","m","l","xl"],"sources":["../../../../src/global_styling/variables/shadow.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nexport const EuiThemeShadowSizes = ['xs', 's', 'm', 'l', 'xl'] as const;\n\nexport type _EuiThemeShadowSize = (typeof EuiThemeShadowSizes)[number];\n\n/**\n * Shadow t-shirt sizes descriptions\n */\nexport const _EuiShadowSizesDescriptions: Record<_EuiThemeShadowSize, string> =\n {\n xs: 'Very subtle shadow used on small components.',\n s: 'Adds subtle depth, usually used in conjunction with a border.',\n m: 'Used on small sized portalled content like popovers.',\n l: 'Primary shadow used in most cases to add visible depth.',\n xl: 'Very large shadows used for large portalled style containers like modals and flyouts.',\n };\n\nexport interface _EuiThemeShadowCustomColor {\n color?: string;\n property?: 'box-shadow' | 'filter';\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,IAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAU;AAIvE;AACA;AACA;AACO,IAAME,2BAAgE,GAAAD,OAAA,CAAAC,2BAAA,GAC3E;EACEC,EAAE,EAAE,8CAA8C;EAClDC,CAAC,EAAE,+DAA+D;EAClEC,CAAC,EAAE,sDAAsD;EACzDC,CAAC,EAAE,yDAAyD;EAC5DC,EAAE,EAAE;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"shadow.js","names":["EuiThemeShadowSizes","exports","_EuiShadowSizesDescriptions","xs","s","m","l","xl"],"sources":["../../../../src/global_styling/variables/shadow.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nexport const EuiThemeShadowSizes = ['xs', 's', 'm', 'l', 'xl'] as const;\n\nexport type _EuiThemeShadowSize = (typeof EuiThemeShadowSizes)[number];\n\n/**\n * Shadow t-shirt sizes descriptions\n */\nexport const _EuiShadowSizesDescriptions: Record<_EuiThemeShadowSize, string> =\n {\n xs: 'Very subtle shadow used on small components.',\n s: 'Adds subtle depth, usually used in conjunction with a border.',\n m: 'Used on small sized portalled content like popovers.',\n l: 'Primary shadow used in most cases to add visible depth.',\n xl: 'Very large shadows used for large portalled style containers like modals and flyouts.',\n };\n\nexport interface _EuiThemeShadowCustomColor {\n color?: string;\n property?: 'box-shadow' | 'filter';\n borderAllInHighContrastMode?: boolean;\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,IAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAU;AAIvE;AACA;AACA;AACO,IAAME,2BAAgE,GAAAD,OAAA,CAAAC,2BAAA,GAC3E;EACEC,EAAE,EAAE,8CAA8C;EAClDC,CAAC,EAAE,+DAA+D;EAClEC,CAAC,EAAE,sDAAsD;EACzDC,CAAC,EAAE,yDAAyD;EAC5DC,EAAE,EAAE;AACN,CAAC","ignoreList":[]}
@@ -1,15 +1,16 @@
1
1
  import type { CSSObject } from '@emotion/react';
2
2
  import type { RecursivePartial, ValueOf } from '../../types';
3
- import { _EuiThemeAnimation } from '../../global_styling/variables/animations';
4
- import { _EuiThemeBreakpoints } from '../../global_styling/variables/breakpoint';
5
- import { _EuiThemeBorder } from '../../global_styling/variables/borders';
6
- import { _EuiThemeColors } from '../../global_styling/variables/colors';
7
- import { _EuiThemeBase, _EuiThemeSizes } from '../../global_styling/variables/size';
8
- import { _EuiThemeFont } from '../../global_styling/variables/typography';
9
- import { _EuiThemeFocus } from '../../global_styling/variables/states';
10
- import { _EuiThemeLevels } from '../../global_styling/variables/levels';
11
- import { _EuiThemeComponents } from '../../global_styling/variables/components';
12
- import { _EuiThemeFlags } from '../../global_styling/variables';
3
+ import type { _EuiThemeAnimation } from '../../global_styling/variables/animations';
4
+ import type { _EuiThemeBreakpoints } from '../../global_styling/variables/breakpoint';
5
+ import type { _EuiThemeBorder } from '../../global_styling/variables/borders';
6
+ import type { _EuiThemeColors } from '../../global_styling/variables/colors';
7
+ import type { _EuiThemeBase, _EuiThemeSizes } from '../../global_styling/variables/size';
8
+ import type { _EuiThemeFont } from '../../global_styling/variables/typography';
9
+ import type { _EuiThemeFocus } from '../../global_styling/variables/states';
10
+ import type { _EuiThemeLevels } from '../../global_styling/variables/levels';
11
+ import type { _EuiThemeComponents } from '../../global_styling/variables/components';
12
+ import type { _EuiThemeFlags } from '../../global_styling/variables';
13
+ import type { _EuiThemeOverrides } from '../../global_styling/variables/overrides';
13
14
  export declare const COLOR_MODES_STANDARD: {
14
15
  readonly light: "LIGHT";
15
16
  readonly dark: "DARK";
@@ -24,7 +25,11 @@ export declare type ColorModeSwitch<T = string> = {
24
25
  export declare type StrictColorModeSwitch<T = string> = {
25
26
  [key in EuiThemeColorModeStandard]: T;
26
27
  };
27
- export declare type EuiThemeShape = {
28
+ export declare type EuiThemeHighContrastModeProp = boolean;
29
+ export declare type EuiThemeHighContrastMode = 'forced' | 'preferred' | false;
30
+ export declare const EUI_THEME_HIGH_CONTRAST_MODE_KEY: "HCM";
31
+ export declare const EUI_THEME_OVERRIDES_KEY: "overrides";
32
+ export declare type EuiThemeShapeBase = {
28
33
  colors: _EuiThemeColors;
29
34
  /** - Default value: 16 */
30
35
  base: _EuiThemeBase;
@@ -41,6 +46,9 @@ export declare type EuiThemeShape = {
41
46
  components: _EuiThemeComponents;
42
47
  flags: _EuiThemeFlags;
43
48
  };
49
+ export declare type EuiThemeShape = EuiThemeShapeBase & {
50
+ overrides?: _EuiThemeOverrides;
51
+ };
44
52
  export declare type EuiThemeSystem<T = {}> = {
45
53
  root: EuiThemeShape & T;
46
54
  model: EuiThemeShape & T;
@@ -68,6 +76,7 @@ export declare type EuiThemeNested = {
68
76
  export interface UseEuiTheme<T extends {} = {}> {
69
77
  euiTheme: EuiThemeComputed<T>;
70
78
  colorMode: EuiThemeColorModeStandard;
79
+ highContrastMode: EuiThemeHighContrastMode;
71
80
  modifications: EuiThemeModifications<T>;
72
81
  }
73
82
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/theme/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/theme/types.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.COLOR_MODES_STANDARD = exports.COLOR_MODES_INVERSE = void 0;
6
+ exports.EUI_THEME_OVERRIDES_KEY = exports.EUI_THEME_HIGH_CONTRAST_MODE_KEY = exports.COLOR_MODES_STANDARD = exports.COLOR_MODES_INVERSE = void 0;
7
7
  /*
8
8
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
9
9
  * or more contributor license agreements. Licensed under the Elastic License
@@ -17,4 +17,11 @@ var COLOR_MODES_STANDARD = exports.COLOR_MODES_STANDARD = {
17
17
  dark: 'DARK'
18
18
  };
19
19
  var COLOR_MODES_INVERSE = exports.COLOR_MODES_INVERSE = 'INVERSE';
20
+
21
+ // Consumers can pass a boolean to manually toggle the preferred high contrast mode,
22
+ // but our internal high contrast mode enum is slightly more granular to account for
23
+ // Windows's high contrast themes, which force colors/backgrounds/shadows
24
+
25
+ var EUI_THEME_HIGH_CONTRAST_MODE_KEY = exports.EUI_THEME_HIGH_CONTRAST_MODE_KEY = 'HCM';
26
+ var EUI_THEME_OVERRIDES_KEY = exports.EUI_THEME_OVERRIDES_KEY = 'overrides';
20
27
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["COLOR_MODES_STANDARD","exports","light","dark","COLOR_MODES_INVERSE"],"sources":["../../../../src/services/theme/types.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport type { CSSObject } from '@emotion/react';\n\nimport type { RecursivePartial, ValueOf } from '../../types';\n\nimport { _EuiThemeAnimation } from '../../global_styling/variables/animations';\nimport { _EuiThemeBreakpoints } from '../../global_styling/variables/breakpoint';\nimport { _EuiThemeBorder } from '../../global_styling/variables/borders';\nimport { _EuiThemeColors } from '../../global_styling/variables/colors';\nimport {\n _EuiThemeBase,\n _EuiThemeSizes,\n} from '../../global_styling/variables/size';\nimport { _EuiThemeFont } from '../../global_styling/variables/typography';\nimport { _EuiThemeFocus } from '../../global_styling/variables/states';\nimport { _EuiThemeLevels } from '../../global_styling/variables/levels';\nimport { _EuiThemeComponents } from '../../global_styling/variables/components';\nimport { _EuiThemeFlags } from '../../global_styling/variables';\n\nexport const COLOR_MODES_STANDARD = {\n light: 'LIGHT',\n dark: 'DARK',\n} as const;\nexport const COLOR_MODES_INVERSE = 'INVERSE' as const;\n\nexport type EuiThemeColorModeInverse = typeof COLOR_MODES_INVERSE;\nexport type EuiThemeColorModeStandard = ValueOf<typeof COLOR_MODES_STANDARD>;\nexport type EuiThemeColorMode =\n | 'light'\n | 'dark'\n | EuiThemeColorModeStandard\n | 'inverse'\n | EuiThemeColorModeInverse;\n\nexport type ColorModeSwitch<T = string> =\n | {\n [key in EuiThemeColorModeStandard]: T;\n }\n | T;\n\nexport type StrictColorModeSwitch<T = string> = {\n [key in EuiThemeColorModeStandard]: T;\n};\n\nexport type EuiThemeShape = {\n colors: _EuiThemeColors;\n /** - Default value: 16 */\n base: _EuiThemeBase;\n /**\n * @see {@link https://eui.elastic.co/#/theming/sizing | Reference} for more information\n */\n size: _EuiThemeSizes;\n font: _EuiThemeFont;\n border: _EuiThemeBorder;\n focus: _EuiThemeFocus;\n animation: _EuiThemeAnimation;\n breakpoint: _EuiThemeBreakpoints;\n levels: _EuiThemeLevels;\n components: _EuiThemeComponents;\n flags: _EuiThemeFlags;\n};\n\nexport type EuiThemeSystem<T = {}> = {\n root: EuiThemeShape & T;\n model: EuiThemeShape & T;\n key: string;\n};\n\nexport type EuiThemeModifications<T = {}> = RecursivePartial<EuiThemeShape & T>;\n\nexport type ComputedThemeShape<\n T,\n P = string | number | bigint | boolean | null | undefined\n> = T extends P | ColorModeSwitch<infer X>\n ? T extends ColorModeSwitch<X>\n ? X extends P\n ? X\n : {\n [K in keyof (X &\n Exclude<\n T,\n keyof X | keyof StrictColorModeSwitch\n >)]: ComputedThemeShape<\n (X & Exclude<T, keyof X | keyof StrictColorModeSwitch>)[K],\n P\n >;\n }\n : T\n : {\n [K in keyof T]: ComputedThemeShape<T[K], P>;\n };\n\nexport type EuiThemeComputed<T = {}> = ComputedThemeShape<EuiThemeShape & T> & {\n themeName: string;\n};\n\nexport type EuiThemeNested = {\n isGlobalTheme: boolean;\n hasDifferentColorFromGlobalTheme: boolean;\n bodyColor: string;\n colorClassName: string;\n setGlobalCSSVariables: Function;\n globalCSSVariables?: CSSObject;\n setNearestThemeCSSVariables: Function;\n themeCSSVariables?: CSSObject;\n};\n\nexport interface UseEuiTheme<T extends {} = {}> {\n euiTheme: EuiThemeComputed<T>;\n colorMode: EuiThemeColorModeStandard;\n modifications: EuiThemeModifications<T>;\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAoBO,IAAMA,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClCE,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE;AACR,CAAU;AACH,IAAMC,mBAAmB,GAAAH,OAAA,CAAAG,mBAAA,GAAG,SAAkB","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":["COLOR_MODES_STANDARD","exports","light","dark","COLOR_MODES_INVERSE","EUI_THEME_HIGH_CONTRAST_MODE_KEY","EUI_THEME_OVERRIDES_KEY"],"sources":["../../../../src/services/theme/types.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport type { CSSObject } from '@emotion/react';\n\nimport type { RecursivePartial, ValueOf } from '../../types';\n\nimport type { _EuiThemeAnimation } from '../../global_styling/variables/animations';\nimport type { _EuiThemeBreakpoints } from '../../global_styling/variables/breakpoint';\nimport type { _EuiThemeBorder } from '../../global_styling/variables/borders';\nimport type { _EuiThemeColors } from '../../global_styling/variables/colors';\nimport type {\n _EuiThemeBase,\n _EuiThemeSizes,\n} from '../../global_styling/variables/size';\nimport type { _EuiThemeFont } from '../../global_styling/variables/typography';\nimport type { _EuiThemeFocus } from '../../global_styling/variables/states';\nimport type { _EuiThemeLevels } from '../../global_styling/variables/levels';\nimport type { _EuiThemeComponents } from '../../global_styling/variables/components';\nimport type { _EuiThemeFlags } from '../../global_styling/variables';\nimport type { _EuiThemeOverrides } from '../../global_styling/variables/overrides';\n\nexport const COLOR_MODES_STANDARD = {\n light: 'LIGHT',\n dark: 'DARK',\n} as const;\nexport const COLOR_MODES_INVERSE = 'INVERSE' as const;\n\nexport type EuiThemeColorModeInverse = typeof COLOR_MODES_INVERSE;\nexport type EuiThemeColorModeStandard = ValueOf<typeof COLOR_MODES_STANDARD>;\nexport type EuiThemeColorMode =\n | 'light'\n | 'dark'\n | EuiThemeColorModeStandard\n | 'inverse'\n | EuiThemeColorModeInverse;\n\nexport type ColorModeSwitch<T = string> =\n | {\n [key in EuiThemeColorModeStandard]: T;\n }\n | T;\n\nexport type StrictColorModeSwitch<T = string> = {\n [key in EuiThemeColorModeStandard]: T;\n};\n\n// Consumers can pass a boolean to manually toggle the preferred high contrast mode,\n// but our internal high contrast mode enum is slightly more granular to account for\n// Windows's high contrast themes, which force colors/backgrounds/shadows\nexport type EuiThemeHighContrastModeProp = boolean;\nexport type EuiThemeHighContrastMode = 'forced' | 'preferred' | false;\n\nexport const EUI_THEME_HIGH_CONTRAST_MODE_KEY = 'HCM' as const;\nexport const EUI_THEME_OVERRIDES_KEY = 'overrides' as const;\n\nexport type EuiThemeShapeBase = {\n colors: _EuiThemeColors;\n /** - Default value: 16 */\n base: _EuiThemeBase;\n /**\n * @see {@link https://eui.elastic.co/#/theming/sizing | Reference} for more information\n */\n size: _EuiThemeSizes;\n font: _EuiThemeFont;\n border: _EuiThemeBorder;\n focus: _EuiThemeFocus;\n animation: _EuiThemeAnimation;\n breakpoint: _EuiThemeBreakpoints;\n levels: _EuiThemeLevels;\n components: _EuiThemeComponents;\n flags: _EuiThemeFlags;\n};\n\nexport type EuiThemeShape = EuiThemeShapeBase & {\n overrides?: _EuiThemeOverrides;\n};\n\nexport type EuiThemeSystem<T = {}> = {\n root: EuiThemeShape & T;\n model: EuiThemeShape & T;\n key: string;\n};\n\nexport type EuiThemeModifications<T = {}> = RecursivePartial<EuiThemeShape & T>;\n\nexport type ComputedThemeShape<\n T,\n P = string | number | bigint | boolean | null | undefined\n> = T extends P | ColorModeSwitch<infer X>\n ? T extends ColorModeSwitch<X>\n ? X extends P\n ? X\n : {\n [K in keyof (X &\n Exclude<\n T,\n keyof X | keyof StrictColorModeSwitch\n >)]: ComputedThemeShape<\n (X & Exclude<T, keyof X | keyof StrictColorModeSwitch>)[K],\n P\n >;\n }\n : T\n : {\n [K in keyof T]: ComputedThemeShape<T[K], P>;\n };\n\nexport type EuiThemeComputed<T = {}> = ComputedThemeShape<EuiThemeShape & T> & {\n themeName: string;\n};\n\nexport type EuiThemeNested = {\n isGlobalTheme: boolean;\n hasDifferentColorFromGlobalTheme: boolean;\n bodyColor: string;\n colorClassName: string;\n setGlobalCSSVariables: Function;\n globalCSSVariables?: CSSObject;\n setNearestThemeCSSVariables: Function;\n themeCSSVariables?: CSSObject;\n};\n\nexport interface UseEuiTheme<T extends {} = {}> {\n euiTheme: EuiThemeComputed<T>;\n colorMode: EuiThemeColorModeStandard;\n highContrastMode: EuiThemeHighContrastMode;\n modifications: EuiThemeModifications<T>;\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAqBO,IAAMA,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClCE,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE;AACR,CAAU;AACH,IAAMC,mBAAmB,GAAAH,OAAA,CAAAG,mBAAA,GAAG,SAAkB;;AAqBrD;AACA;AACA;;AAIO,IAAMC,gCAAgC,GAAAJ,OAAA,CAAAI,gCAAA,GAAG,KAAc;AACvD,IAAMC,uBAAuB,GAAAL,OAAA,CAAAK,uBAAA,GAAG,WAAoB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { EuiThemeColorMode, EuiThemeColorModeStandard, EuiThemeSystem, EuiThemeShape, EuiThemeComputed } from './global_styling';
1
+ import { EuiThemeColorMode, EuiThemeColorModeStandard, EuiThemeSystem, EuiThemeShape, EuiThemeComputed, EuiThemeHighContrastMode } from './global_styling';
2
2
  export declare const DEFAULT_COLOR_MODE: "LIGHT";
3
3
  /**
4
4
  * Returns whether the provided color mode is `inverse`
@@ -10,8 +10,9 @@ export declare const isInverseColorMode: (colorMode?: string | undefined) => col
10
10
  * Returns the parent color mode if none is explicity set.
11
11
  * @param {string} colorMode - `light`, `dark`, or `inverse`
12
12
  * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback
13
+ * @param {boolean} isForced
13
14
  */
14
- export declare const getColorMode: (colorMode?: EuiThemeColorMode | undefined, parentColorMode?: EuiThemeColorModeStandard | undefined) => EuiThemeColorModeStandard;
15
+ export declare const getColorMode: (colorMode?: EuiThemeColorMode | undefined, parentColorMode?: EuiThemeColorModeStandard | undefined, isForced?: boolean | undefined) => EuiThemeColorModeStandard;
15
16
  /**
16
17
  * Returns a value at a given path on an object.
17
18
  * If `colorMode` is provided, will scope the value to the appropriate color mode key (LIGHT\DARK)
@@ -52,7 +53,9 @@ export declare class Computed<T> {
52
53
  * @param {object} working - Partially computed theme
53
54
  * @param {string} colorMode - `light` or `dark`
54
55
  */
55
- getValue(base: EuiThemeSystem | EuiThemeShape | null, modifications: import("./types").RecursivePartial<EuiThemeShape> | undefined, working: Partial<EuiThemeComputed>, colorMode?: EuiThemeColorModeStandard): T;
56
+ getValue(base: EuiThemeSystem | EuiThemeShape | null, modifications: import("./types").RecursivePartial<import("./global_styling").EuiThemeShapeBase & {
57
+ overrides?: import("./global_styling")._EuiThemeOverrides | undefined;
58
+ }> | undefined, working: Partial<EuiThemeComputed>, colorMode?: EuiThemeColorModeStandard): T;
56
59
  }
57
60
  /**
58
61
  * Returns a Class (`Computed`) that stores the arbitrary computer method
@@ -72,7 +75,7 @@ export declare function computed<T>(computer: (value: any) => T, dependencies: s
72
75
  * @param {Proxy | object} over - Unique identifier or name
73
76
  * @param {string} colorMode - `light` or `dark`
74
77
  */
75
- export declare const getComputed: <T = EuiThemeShape>(base: EuiThemeSystem<T>, over: Partial<EuiThemeSystem<T>>, colorMode: EuiThemeColorModeStandard) => EuiThemeComputed<T>;
78
+ export declare const getComputed: <T = EuiThemeShape>(base: EuiThemeSystem<T>, over: Partial<EuiThemeSystem<T>>, colorMode: EuiThemeColorModeStandard, highContrastMode?: EuiThemeHighContrastMode | undefined) => EuiThemeComputed<T>;
76
79
  /**
77
80
  * Builds a Proxy with a custom `handler` designed to self-reference values
78
81
  * and prevent arbitrary value overrides.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAEzB,cAAc,EACd,aAAa,EACb,gBAAgB,EAGjB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,kBAAkB,SAA6B,CAAC;AAQ7D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,4DAI9B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,0GAGtB,yBAeF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK;;UAET,MAAM;;aAgCd,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK;;UAET,MAAM,SACN,GAAG,YAgBX,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,QAAQ,CAAC,CAAC;IAEZ,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;gBAD/B,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,EACjC,YAAY,GAAE,MAAM,GAAG,MAAM,EAAO;IAG7C;;;;;;;OAOG;IACH,QAAQ,CACN,IAAI,EAAE,cAAc,GAAG,aAAa,GAAG,IAAI,EAC3C,aAAa,+DAA4B,EACzC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAClC,SAAS,CAAC,EAAE,yBAAyB;CAsBxC;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,CAAC,GAAG,CAAC,CAAC;AACzE,wBAAgB,QAAQ,CAAC,CAAC,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,EAC7B,YAAY,EAAE,MAAM,EAAE,GACrB,CAAC,CAAC;AACL,wBAAgB,QAAQ,CAAC,CAAC,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,EAC3B,YAAY,EAAE,MAAM,GACnB,CAAC,CAAC;AAkBL;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,4FAGX,yBAAyB,wBAgDrC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,gCAAiC,MAAM;;;;CA+E7D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;;CAsBrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,WACf,MAAM,WACL,MAAM,wCAShB,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAEzB,cAAc,EACd,aAAa,EACb,gBAAgB,EAGhB,wBAAwB,EAGzB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,kBAAkB,SAA6B,CAAC;AAQ7D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,4DAI9B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,0IAItB,yBAeF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK;;UAET,MAAM;;aAgCd,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK;;UAET,MAAM,SACN,GAAG,YAgBX,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,QAAQ,CAAC,CAAC;IAEZ,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;gBAD/B,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,EACjC,YAAY,GAAE,MAAM,GAAG,MAAM,EAAO;IAG7C;;;;;;;OAOG;IACH,QAAQ,CACN,IAAI,EAAE,cAAc,GAAG,aAAa,GAAG,IAAI,EAC3C,aAAa;;kBAA4B,EACzC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAClC,SAAS,CAAC,EAAE,yBAAyB;CAsBxC;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,CAAC,GAAG,CAAC,CAAC;AACzE,wBAAgB,QAAQ,CAAC,CAAC,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,EAC7B,YAAY,EAAE,MAAM,EAAE,GACrB,CAAC,CAAC;AACL,wBAAgB,QAAQ,CAAC,CAAC,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,EAC3B,YAAY,EAAE,MAAM,GACnB,CAAC,CAAC;AAkBL;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,4FAGX,yBAAyB,iFAgGrC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,gCAAiC,MAAM;;;;CA+E7D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;;CAsBrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,WACf,MAAM,WACL,MAAM,wCAShB,CAAC"}
package/lib/cjs/utils.js CHANGED
@@ -51,9 +51,10 @@ var isInverseColorMode = exports.isInverseColorMode = function isInverseColorMod
51
51
  * Returns the parent color mode if none is explicity set.
52
52
  * @param {string} colorMode - `light`, `dark`, or `inverse`
53
53
  * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback
54
+ * @param {boolean} isForced
54
55
  */
55
- var getColorMode = exports.getColorMode = function getColorMode(colorMode, parentColorMode) {
56
- if (colorMode == null) {
56
+ var getColorMode = exports.getColorMode = function getColorMode(colorMode, parentColorMode, isForced) {
57
+ if (isForced || colorMode == null) {
57
58
  return parentColorMode || DEFAULT_COLOR_MODE;
58
59
  }
59
60
  var mode = colorMode.toUpperCase();
@@ -189,15 +190,25 @@ var isComputedLike = function isComputedLike(key) {
189
190
  * @param {Proxy | object} over - Unique identifier or name
190
191
  * @param {string} colorMode - `light` or `dark`
191
192
  */
192
- var getComputed = exports.getComputed = function getComputed(base, over, colorMode) {
193
+ var getComputed = exports.getComputed = function getComputed(base, over, colorMode, highContrastMode) {
193
194
  var output = {
194
195
  themeName: base.key
195
196
  };
197
+ var _hcmOverridesKey = "".concat(_global_styling.EUI_THEME_OVERRIDES_KEY, ".").concat(_global_styling.EUI_THEME_HIGH_CONTRAST_MODE_KEY);
198
+ var _hcmBaseOverrides = highContrastMode ? getOn(base, _hcmOverridesKey) : undefined;
199
+ var _hcmOverOverrides = highContrastMode ? getOn(over, _hcmOverridesKey) : undefined;
196
200
  function loop(base, over) {
197
201
  var checkExisting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
198
202
  var path = arguments.length > 3 ? arguments[3] : undefined;
199
203
  Object.keys(base).forEach(function (key) {
200
204
  var newPath = path ? "".concat(path, ".").concat(key) : "".concat(key);
205
+
206
+ // remove the internal overrides key from the computed theme object
207
+ // the override values are only used internally in getComputed()
208
+ if (key === _global_styling.EUI_THEME_OVERRIDES_KEY) {
209
+ return;
210
+ }
211
+
201
212
  // @ts-expect-error `key` is not necessarily a colorMode key
202
213
  if ([].concat(_toConsumableArray(Object.values(_global_styling.COLOR_MODES_STANDARD)), [colorMode]).includes(key)) {
203
214
  if (key !== colorMode) {
@@ -213,10 +224,17 @@ var getComputed = exports.getComputed = function getComputed(base, over, colorMo
213
224
  // we additionally check on the object shape to confirm a Computed value
214
225
  var baseValue = base[key] instanceof Computed || isComputedLike(base[key]) ? base[key].getValue(base.root, over.root, output, colorMode) : base[key];
215
226
  var overValue = over[key] instanceof Computed || isComputedLike(over[key]) ? over[key].getValue(base.root, over.root, output, colorMode) : over[key];
227
+ var hcmBaseValue = _hcmBaseOverrides ? _hcmBaseOverrides[key] instanceof Computed || isComputedLike(_hcmBaseOverrides[key]) ? _hcmBaseOverrides[key].getValue(base.root, _hcmBaseOverrides.root, output, colorMode) : _hcmBaseOverrides[key] : undefined;
228
+ var hcmOverValue = _hcmOverOverrides ? _hcmOverOverrides[key] instanceof Computed || isComputedLike(_hcmOverOverrides[key]) ? _hcmOverOverrides[key].getValue(base.root, _hcmOverOverrides.root, output, colorMode) : _hcmOverOverrides[key] : undefined;
229
+ var hcmCombinedOverValue = hcmOverValue !== null && hcmOverValue !== void 0 ? hcmOverValue : hcmBaseValue;
230
+
231
+ // combine internal overrides with manual overrides
232
+ var combinedOverValue = isObject(overValue) && isObject(hcmOverValue) ? mergeDeep(overValue, hcmCombinedOverValue) : // optional overrides e.g. on provider level should still override theme level
233
+ overValue !== null && overValue !== void 0 ? overValue : hcmCombinedOverValue;
216
234
  if (isObject(baseValue) && !Array.isArray(baseValue)) {
217
- loop(baseValue, overValue !== null && overValue !== void 0 ? overValue : {}, checkExisting, newPath);
235
+ loop(baseValue, combinedOverValue !== null && combinedOverValue !== void 0 ? combinedOverValue : {}, checkExisting, newPath);
218
236
  } else {
219
- setOn(output, newPath, overValue !== null && overValue !== void 0 ? overValue : baseValue);
237
+ setOn(output, newPath, combinedOverValue !== null && combinedOverValue !== void 0 ? combinedOverValue : baseValue);
220
238
  }
221
239
  }
222
240
  });
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["_global_styling","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","a","_arrayLikeToArray","toString","call","slice","constructor","name","Array","from","test","Symbol","iterator","isArray","n","_classCallCheck","_defineProperties","key","_createClass","prototype","i","_toPrimitive","_typeof","toPrimitive","String","Number","DEFAULT_COLOR_MODE","exports","COLOR_MODES_STANDARD","light","isObject","obj","isInverseColorMode","colorMode","COLOR_MODES_INVERSE","getColorMode","parentColorMode","mode","toUpperCase","dark","undefined","getOn","model","_path","path","split","node","segment","shift","hasOwnProperty","Computed","getValue","setOn","propertyName","pop","computer","dependencies","base","modifications","working","_ref","_getOn","map","dependency","_ref2","_getOn2","computed","comp","dep","isComputedLike","getComputed","over","output","themeName","loop","checkExisting","newPath","concat","values","includes","colorModeSegment","RegExp","replace","existing","baseValue","root","overValue","buildTheme","handler","getPrototypeOf","target","Reflect","setPrototypeOf","isExtensible","preventExtensions","property","attributes","has","get","_target","Proxy","set","deleteProperty","construct","themeProxy","mergeDeep","source","targetValue","sourceValue","getTokenName","prefix","variant","suffix","getCapitalized","str","charAt","colorName","_suffix"],"sources":["../../src/utils.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport {\n EuiThemeColorMode,\n EuiThemeColorModeInverse,\n EuiThemeColorModeStandard,\n EuiThemeModifications,\n EuiThemeSystem,\n EuiThemeShape,\n EuiThemeComputed,\n COLOR_MODES_STANDARD,\n COLOR_MODES_INVERSE,\n} from './global_styling';\n\nexport const DEFAULT_COLOR_MODE = COLOR_MODES_STANDARD.light;\n\n/**\n * Returns whether the parameter is an object\n * @param {any} obj - Anything\n */\nconst isObject = (obj: any) => obj && typeof obj === 'object';\n\n/**\n * Returns whether the provided color mode is `inverse`\n * @param {string} colorMode - `light`, `dark`, or `inverse`\n */\nexport const isInverseColorMode = (\n colorMode?: string\n): colorMode is EuiThemeColorModeInverse => {\n return colorMode === COLOR_MODES_INVERSE;\n};\n\n/**\n * Returns the color mode configured in the current EuiThemeProvider.\n * Returns the parent color mode if none is explicity set.\n * @param {string} colorMode - `light`, `dark`, or `inverse`\n * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback\n */\nexport const getColorMode = (\n colorMode?: EuiThemeColorMode,\n parentColorMode?: EuiThemeColorModeStandard\n): EuiThemeColorModeStandard => {\n if (colorMode == null) {\n return parentColorMode || DEFAULT_COLOR_MODE;\n }\n const mode = colorMode.toUpperCase() as\n | EuiThemeColorModeInverse\n | EuiThemeColorModeStandard;\n if (isInverseColorMode(mode)) {\n return parentColorMode === COLOR_MODES_STANDARD.dark ||\n parentColorMode === undefined\n ? COLOR_MODES_STANDARD.light\n : COLOR_MODES_STANDARD.dark;\n } else {\n return mode;\n }\n};\n\n/**\n * Returns a value at a given path on an object.\n * If `colorMode` is provided, will scope the value to the appropriate color mode key (LIGHT\\DARK)\n * @param {object} model - Object\n * @param {string} _path - Dot-notated string to a path on the object\n * @param {string} colorMode - `light` or `dark`\n */\nexport const getOn = (\n model: { [key: string]: any },\n _path: string,\n colorMode?: EuiThemeColorModeStandard\n) => {\n const path = _path.split('.');\n let node = model;\n while (path.length) {\n const segment = path.shift()!;\n\n if (node.hasOwnProperty(segment) === false) {\n if (\n colorMode &&\n node.hasOwnProperty(colorMode) === true &&\n node[colorMode].hasOwnProperty(segment) === true\n ) {\n if (node[colorMode][segment] instanceof Computed) {\n node = node[colorMode][segment].getValue(null, {}, node, colorMode);\n } else {\n node = node[colorMode][segment];\n }\n } else {\n return undefined;\n }\n } else {\n if (node[segment] instanceof Computed) {\n node = node[segment].getValue(null, {}, node, colorMode);\n } else {\n node = node[segment];\n }\n }\n }\n\n return node;\n};\n\n/**\n * Sets a value at a given path on an object.\n * @param {object} model - Object\n * @param {string} _path - Dot-notated string to a path on the object\n * @param {any} string - The value to set\n */\nexport const setOn = (\n model: { [key: string]: any },\n _path: string,\n value: any\n) => {\n const path = _path.split('.');\n const propertyName = path.pop()!;\n let node = model;\n\n while (path.length) {\n const segment = path.shift()!;\n if (node.hasOwnProperty(segment) === false) {\n node[segment] = {};\n }\n node = node[segment];\n }\n\n node[propertyName] = value;\n return true;\n};\n\n/**\n * Creates a class to store the `computer` method and its eventual parameters.\n * Allows for on-demand computation with up-to-date parameters via `getValue` method.\n * @constructor\n * @param {function} computer - Function to be computed\n * @param {string | array} dependencies - Dependencies passed to the `computer` as parameters\n */\nexport class Computed<T> {\n constructor(\n public computer: (...values: any[]) => T,\n public dependencies: string | string[] = []\n ) {}\n\n /**\n * Executes the `computer` method with the current state of the theme\n * by taking into account previously computed values and modifications.\n * @param {Proxy | object} base - Computed or uncomputed theme\n * @param {Proxy | object} modifications - Theme value overrides\n * @param {object} working - Partially computed theme\n * @param {string} colorMode - `light` or `dark`\n */\n getValue(\n base: EuiThemeSystem | EuiThemeShape | null,\n modifications: EuiThemeModifications = {},\n working: Partial<EuiThemeComputed>,\n colorMode?: EuiThemeColorModeStandard\n ) {\n if (!this.dependencies.length) {\n return this.computer(working);\n }\n if (!Array.isArray(this.dependencies)) {\n return this.computer(\n getOn(working, this.dependencies) ??\n getOn(modifications, this.dependencies, colorMode) ??\n (base ? getOn(base, this.dependencies, colorMode) : working)\n );\n }\n return this.computer(\n this.dependencies.map((dependency) => {\n return (\n getOn(working, dependency) ??\n getOn(modifications, dependency, colorMode) ??\n (base ? getOn(base, dependency, colorMode) : working)\n );\n })\n );\n }\n}\n\n/**\n * Returns a Class (`Computed`) that stores the arbitrary computer method\n * and references to its optional dependecies.\n * @param {function} computer - Arbitrary method to be called at compute time.\n * @param {string | array} dependencies - Values that will be provided to `computer` at compute time.\n */\nexport function computed<T>(computer: (value: EuiThemeComputed) => T): T;\nexport function computed<T>(\n computer: (value: any[]) => T,\n dependencies: string[]\n): T;\nexport function computed<T>(\n computer: (value: any) => T,\n dependencies: string\n): T;\nexport function computed<T>(\n comp: ((value: T) => T) | ((value: any) => T) | ((value: any[]) => T),\n dep?: string | string[]\n) {\n return new Computed<T>(comp, dep);\n}\n\n/**\n * Type guard to check for a Computed object based on object shape\n * without relying on the Computed class directly\n */\nconst isComputedLike = <T>(key: object): key is Computed<T> => {\n if (typeof key !== 'object' || Array.isArray(key)) return false;\n\n return key.hasOwnProperty('dependencies') && key.hasOwnProperty('computer');\n};\n\n/**\n * Takes an uncomputed theme, and computes and returns all values taking\n * into consideration value overrides and configured color mode.\n * Overrides take precedence, and only values in the current color mode\n * are computed and returned.\n * @param {Proxy} base - Object to transform into Proxy\n * @param {Proxy | object} over - Unique identifier or name\n * @param {string} colorMode - `light` or `dark`\n */\nexport const getComputed = <T = EuiThemeShape>(\n base: EuiThemeSystem<T>,\n over: Partial<EuiThemeSystem<T>>,\n colorMode: EuiThemeColorModeStandard\n): EuiThemeComputed<T> => {\n const output: Partial<EuiThemeComputed> = { themeName: base.key };\n\n function loop(\n base: { [key: string]: any },\n over: { [key: string]: any },\n checkExisting: boolean = false,\n path?: string\n ) {\n Object.keys(base).forEach((key) => {\n let newPath = path ? `${path}.${key}` : `${key}`;\n // @ts-expect-error `key` is not necessarily a colorMode key\n if ([...Object.values(COLOR_MODES_STANDARD), colorMode].includes(key)) {\n if (key !== colorMode) {\n return;\n } else {\n const colorModeSegment = new RegExp(\n `(\\\\.${colorMode}\\\\b)|(\\\\b${colorMode}\\\\.)`\n );\n newPath = newPath.replace(colorModeSegment, '');\n }\n }\n const existing = checkExisting && getOn(output, newPath);\n if (!existing || isObject(existing)) {\n // NOTE: the class type check for Computed is not true for themes created externally;\n // we additionally check on the object shape to confirm a Computed value\n const baseValue =\n base[key] instanceof Computed || isComputedLike<T>(base[key])\n ? base[key].getValue(base.root, over.root, output, colorMode)\n : base[key];\n const overValue =\n over[key] instanceof Computed || isComputedLike<T>(over[key])\n ? over[key].getValue(base.root, over.root, output, colorMode)\n : over[key];\n if (isObject(baseValue) && !Array.isArray(baseValue)) {\n loop(baseValue, overValue ?? {}, checkExisting, newPath);\n } else {\n setOn(output, newPath, overValue ?? baseValue);\n }\n }\n });\n }\n // Compute standard theme values and apply overrides\n loop(base, over);\n // Compute and apply extension values only\n loop(over, {}, true);\n return output as EuiThemeComputed<T>;\n};\n\n/**\n * Builds a Proxy with a custom `handler` designed to self-reference values\n * and prevent arbitrary value overrides.\n * @param {object} model - Object to transform into Proxy\n * @param {string} key - Unique identifier or name\n */\nexport const buildTheme = <T extends {}>(model: T, key: string) => {\n const handler: ProxyHandler<EuiThemeSystem<T>> = {\n getPrototypeOf(target) {\n return Reflect.getPrototypeOf(target.model);\n },\n\n setPrototypeOf(target, prototype) {\n return Reflect.setPrototypeOf(target.model, prototype);\n },\n\n isExtensible(target) {\n return Reflect.isExtensible(target);\n },\n\n preventExtensions(target) {\n return Reflect.preventExtensions(target.model);\n },\n\n getOwnPropertyDescriptor(target, key) {\n return Reflect.getOwnPropertyDescriptor(target.model, key);\n },\n\n defineProperty(target, property, attributes) {\n return Reflect.defineProperty(target.model, property, attributes);\n },\n\n has(target, property) {\n return Reflect.has(target.model, property);\n },\n\n get(_target, property) {\n if (property === 'key') {\n return _target[property];\n }\n\n // prevent Safari from locking up when the proxy is used in dev tools\n // as it doesn't support getPrototypeOf\n if (property === '__proto__') return {};\n\n const target = property === 'root' ? _target : _target.model || _target;\n // @ts-ignore `string` index signature\n const value = target[property];\n if (isObject(value) && !Array.isArray(value)) {\n return new Proxy(\n {\n model: value,\n root: _target.root,\n key: `_${_target.key}`,\n },\n handler\n );\n } else {\n return value;\n }\n },\n\n set(target: any) {\n return target;\n },\n\n deleteProperty(target: any) {\n return target;\n },\n\n ownKeys(target) {\n return Reflect.ownKeys(target.model);\n },\n\n apply(target: any) {\n return target;\n },\n\n construct(target: any) {\n return target;\n },\n };\n const themeProxy = new Proxy({ model, root: model, key }, handler);\n\n return themeProxy;\n};\n\n/**\n * Deeply merges two objects, using `source` values whenever possible.\n * @param {object} _target - Object with fallback values\n * @param {object} source - Object with desired values\n */\nexport const mergeDeep = (\n _target: { [key: string]: any },\n source: { [key: string]: any } = {}\n) => {\n const target = { ..._target };\n\n if (!isObject(target) || !isObject(source)) {\n return source;\n }\n\n Object.keys(source).forEach((key) => {\n const targetValue = target[key];\n const sourceValue = source[key];\n\n if (isObject(targetValue) && isObject(sourceValue)) {\n target[key] = mergeDeep({ ...targetValue }, { ...sourceValue });\n } else {\n target[key] = sourceValue;\n }\n });\n\n return target;\n};\n\n/**\n * Returns token name string based on passed dynamic variants\n * and additional prefix/suffix\n */\nexport const getTokenName = (\n prefix: string,\n variant: string,\n suffix?: string\n) => {\n const getCapitalized = (str: string) =>\n str.charAt(0).toUpperCase() + str.slice(1);\n const colorName = variant.charAt(0).toUpperCase() + variant.slice(1);\n const _suffix = suffix ? getCapitalized(suffix) : '';\n\n return `${prefix}${getCapitalized(colorName)}${_suffix}`;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["_global_styling","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","a","_arrayLikeToArray","toString","call","slice","constructor","name","Array","from","test","Symbol","iterator","isArray","n","_classCallCheck","_defineProperties","key","_createClass","prototype","i","_toPrimitive","_typeof","toPrimitive","String","Number","DEFAULT_COLOR_MODE","exports","COLOR_MODES_STANDARD","light","isObject","obj","isInverseColorMode","colorMode","COLOR_MODES_INVERSE","getColorMode","parentColorMode","isForced","mode","toUpperCase","dark","undefined","getOn","model","_path","path","split","node","segment","shift","hasOwnProperty","Computed","getValue","setOn","propertyName","pop","computer","dependencies","base","modifications","working","_ref","_getOn","map","dependency","_ref2","_getOn2","computed","comp","dep","isComputedLike","getComputed","over","highContrastMode","output","themeName","_hcmOverridesKey","concat","EUI_THEME_OVERRIDES_KEY","EUI_THEME_HIGH_CONTRAST_MODE_KEY","_hcmBaseOverrides","_hcmOverOverrides","loop","checkExisting","newPath","values","includes","colorModeSegment","RegExp","replace","existing","baseValue","root","overValue","hcmBaseValue","hcmOverValue","hcmCombinedOverValue","combinedOverValue","mergeDeep","buildTheme","handler","getPrototypeOf","target","Reflect","setPrototypeOf","isExtensible","preventExtensions","property","attributes","has","get","_target","Proxy","set","deleteProperty","construct","themeProxy","source","targetValue","sourceValue","getTokenName","prefix","variant","suffix","getCapitalized","str","charAt","colorName","_suffix"],"sources":["../../src/utils.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport {\n EuiThemeColorMode,\n EuiThemeColorModeInverse,\n EuiThemeColorModeStandard,\n EuiThemeModifications,\n EuiThemeSystem,\n EuiThemeShape,\n EuiThemeComputed,\n COLOR_MODES_STANDARD,\n COLOR_MODES_INVERSE,\n EuiThemeHighContrastMode,\n EUI_THEME_OVERRIDES_KEY,\n EUI_THEME_HIGH_CONTRAST_MODE_KEY,\n} from './global_styling';\n\nexport const DEFAULT_COLOR_MODE = COLOR_MODES_STANDARD.light;\n\n/**\n * Returns whether the parameter is an object\n * @param {any} obj - Anything\n */\nconst isObject = (obj: any) => obj && typeof obj === 'object';\n\n/**\n * Returns whether the provided color mode is `inverse`\n * @param {string} colorMode - `light`, `dark`, or `inverse`\n */\nexport const isInverseColorMode = (\n colorMode?: string\n): colorMode is EuiThemeColorModeInverse => {\n return colorMode === COLOR_MODES_INVERSE;\n};\n\n/**\n * Returns the color mode configured in the current EuiThemeProvider.\n * Returns the parent color mode if none is explicity set.\n * @param {string} colorMode - `light`, `dark`, or `inverse`\n * @param {string} parentColorMode - `LIGHT` or `DARK`; used as the fallback\n * @param {boolean} isForced\n */\nexport const getColorMode = (\n colorMode?: EuiThemeColorMode,\n parentColorMode?: EuiThemeColorModeStandard,\n isForced?: boolean\n): EuiThemeColorModeStandard => {\n if (isForced || colorMode == null) {\n return parentColorMode || DEFAULT_COLOR_MODE;\n }\n const mode = colorMode.toUpperCase() as\n | EuiThemeColorModeInverse\n | EuiThemeColorModeStandard;\n if (isInverseColorMode(mode)) {\n return parentColorMode === COLOR_MODES_STANDARD.dark ||\n parentColorMode === undefined\n ? COLOR_MODES_STANDARD.light\n : COLOR_MODES_STANDARD.dark;\n } else {\n return mode;\n }\n};\n\n/**\n * Returns a value at a given path on an object.\n * If `colorMode` is provided, will scope the value to the appropriate color mode key (LIGHT\\DARK)\n * @param {object} model - Object\n * @param {string} _path - Dot-notated string to a path on the object\n * @param {string} colorMode - `light` or `dark`\n */\nexport const getOn = (\n model: { [key: string]: any },\n _path: string,\n colorMode?: EuiThemeColorModeStandard\n) => {\n const path = _path.split('.');\n let node = model;\n while (path.length) {\n const segment = path.shift()!;\n\n if (node.hasOwnProperty(segment) === false) {\n if (\n colorMode &&\n node.hasOwnProperty(colorMode) === true &&\n node[colorMode].hasOwnProperty(segment) === true\n ) {\n if (node[colorMode][segment] instanceof Computed) {\n node = node[colorMode][segment].getValue(null, {}, node, colorMode);\n } else {\n node = node[colorMode][segment];\n }\n } else {\n return undefined;\n }\n } else {\n if (node[segment] instanceof Computed) {\n node = node[segment].getValue(null, {}, node, colorMode);\n } else {\n node = node[segment];\n }\n }\n }\n\n return node;\n};\n\n/**\n * Sets a value at a given path on an object.\n * @param {object} model - Object\n * @param {string} _path - Dot-notated string to a path on the object\n * @param {any} string - The value to set\n */\nexport const setOn = (\n model: { [key: string]: any },\n _path: string,\n value: any\n) => {\n const path = _path.split('.');\n const propertyName = path.pop()!;\n let node = model;\n\n while (path.length) {\n const segment = path.shift()!;\n if (node.hasOwnProperty(segment) === false) {\n node[segment] = {};\n }\n node = node[segment];\n }\n\n node[propertyName] = value;\n return true;\n};\n\n/**\n * Creates a class to store the `computer` method and its eventual parameters.\n * Allows for on-demand computation with up-to-date parameters via `getValue` method.\n * @constructor\n * @param {function} computer - Function to be computed\n * @param {string | array} dependencies - Dependencies passed to the `computer` as parameters\n */\nexport class Computed<T> {\n constructor(\n public computer: (...values: any[]) => T,\n public dependencies: string | string[] = []\n ) {}\n\n /**\n * Executes the `computer` method with the current state of the theme\n * by taking into account previously computed values and modifications.\n * @param {Proxy | object} base - Computed or uncomputed theme\n * @param {Proxy | object} modifications - Theme value overrides\n * @param {object} working - Partially computed theme\n * @param {string} colorMode - `light` or `dark`\n */\n getValue(\n base: EuiThemeSystem | EuiThemeShape | null,\n modifications: EuiThemeModifications = {},\n working: Partial<EuiThemeComputed>,\n colorMode?: EuiThemeColorModeStandard\n ) {\n if (!this.dependencies.length) {\n return this.computer(working);\n }\n if (!Array.isArray(this.dependencies)) {\n return this.computer(\n getOn(working, this.dependencies) ??\n getOn(modifications, this.dependencies, colorMode) ??\n (base ? getOn(base, this.dependencies, colorMode) : working)\n );\n }\n return this.computer(\n this.dependencies.map((dependency) => {\n return (\n getOn(working, dependency) ??\n getOn(modifications, dependency, colorMode) ??\n (base ? getOn(base, dependency, colorMode) : working)\n );\n })\n );\n }\n}\n\n/**\n * Returns a Class (`Computed`) that stores the arbitrary computer method\n * and references to its optional dependecies.\n * @param {function} computer - Arbitrary method to be called at compute time.\n * @param {string | array} dependencies - Values that will be provided to `computer` at compute time.\n */\nexport function computed<T>(computer: (value: EuiThemeComputed) => T): T;\nexport function computed<T>(\n computer: (value: any[]) => T,\n dependencies: string[]\n): T;\nexport function computed<T>(\n computer: (value: any) => T,\n dependencies: string\n): T;\nexport function computed<T>(\n comp: ((value: T) => T) | ((value: any) => T) | ((value: any[]) => T),\n dep?: string | string[]\n) {\n return new Computed<T>(comp, dep);\n}\n\n/**\n * Type guard to check for a Computed object based on object shape\n * without relying on the Computed class directly\n */\nconst isComputedLike = <T>(key: object): key is Computed<T> => {\n if (typeof key !== 'object' || Array.isArray(key)) return false;\n\n return key.hasOwnProperty('dependencies') && key.hasOwnProperty('computer');\n};\n\n/**\n * Takes an uncomputed theme, and computes and returns all values taking\n * into consideration value overrides and configured color mode.\n * Overrides take precedence, and only values in the current color mode\n * are computed and returned.\n * @param {Proxy} base - Object to transform into Proxy\n * @param {Proxy | object} over - Unique identifier or name\n * @param {string} colorMode - `light` or `dark`\n */\nexport const getComputed = <T = EuiThemeShape>(\n base: EuiThemeSystem<T>,\n over: Partial<EuiThemeSystem<T>>,\n colorMode: EuiThemeColorModeStandard,\n highContrastMode?: EuiThemeHighContrastMode\n): EuiThemeComputed<T> => {\n const output: Partial<EuiThemeComputed> = { themeName: base.key };\n const _hcmOverridesKey = `${EUI_THEME_OVERRIDES_KEY}.${EUI_THEME_HIGH_CONTRAST_MODE_KEY}`;\n const _hcmBaseOverrides = highContrastMode\n ? getOn(base, _hcmOverridesKey)\n : undefined;\n const _hcmOverOverrides = highContrastMode\n ? getOn(over, _hcmOverridesKey)\n : undefined;\n\n function loop(\n base: { [key: string]: any },\n over: { [key: string]: any },\n checkExisting: boolean = false,\n path?: string\n ) {\n Object.keys(base).forEach((key) => {\n let newPath = path ? `${path}.${key}` : `${key}`;\n\n // remove the internal overrides key from the computed theme object\n // the override values are only used internally in getComputed()\n if (key === EUI_THEME_OVERRIDES_KEY) {\n return;\n }\n\n // @ts-expect-error `key` is not necessarily a colorMode key\n if ([...Object.values(COLOR_MODES_STANDARD), colorMode].includes(key)) {\n if (key !== colorMode) {\n return;\n } else {\n const colorModeSegment = new RegExp(\n `(\\\\.${colorMode}\\\\b)|(\\\\b${colorMode}\\\\.)`\n );\n newPath = newPath.replace(colorModeSegment, '');\n }\n }\n const existing = checkExisting && getOn(output, newPath);\n if (!existing || isObject(existing)) {\n // NOTE: the class type check for Computed is not true for themes created externally;\n // we additionally check on the object shape to confirm a Computed value\n const baseValue =\n base[key] instanceof Computed || isComputedLike<T>(base[key])\n ? base[key].getValue(base.root, over.root, output, colorMode)\n : base[key];\n const overValue =\n over[key] instanceof Computed || isComputedLike<T>(over[key])\n ? over[key].getValue(base.root, over.root, output, colorMode)\n : over[key];\n\n const hcmBaseValue = _hcmBaseOverrides\n ? _hcmBaseOverrides[key] instanceof Computed ||\n isComputedLike<T>(_hcmBaseOverrides[key])\n ? _hcmBaseOverrides[key].getValue(\n base.root,\n _hcmBaseOverrides.root,\n output,\n colorMode\n )\n : _hcmBaseOverrides[key]\n : undefined;\n const hcmOverValue = _hcmOverOverrides\n ? _hcmOverOverrides[key] instanceof Computed ||\n isComputedLike<T>(_hcmOverOverrides[key])\n ? _hcmOverOverrides[key].getValue(\n base.root,\n _hcmOverOverrides.root,\n output,\n colorMode\n )\n : _hcmOverOverrides[key]\n : undefined;\n\n const hcmCombinedOverValue = hcmOverValue ?? hcmBaseValue;\n\n // combine internal overrides with manual overrides\n const combinedOverValue =\n isObject(overValue) && isObject(hcmOverValue)\n ? mergeDeep(overValue, hcmCombinedOverValue)\n : // optional overrides e.g. on provider level should still override theme level\n overValue ?? hcmCombinedOverValue;\n\n if (isObject(baseValue) && !Array.isArray(baseValue)) {\n loop(baseValue, combinedOverValue ?? {}, checkExisting, newPath);\n } else {\n setOn(output, newPath, combinedOverValue ?? baseValue);\n }\n }\n });\n }\n // Compute standard theme values and apply overrides\n loop(base, over);\n // Compute and apply extension values only\n loop(over, {}, true);\n return output as EuiThemeComputed<T>;\n};\n\n/**\n * Builds a Proxy with a custom `handler` designed to self-reference values\n * and prevent arbitrary value overrides.\n * @param {object} model - Object to transform into Proxy\n * @param {string} key - Unique identifier or name\n */\nexport const buildTheme = <T extends {}>(model: T, key: string) => {\n const handler: ProxyHandler<EuiThemeSystem<T>> = {\n getPrototypeOf(target) {\n return Reflect.getPrototypeOf(target.model);\n },\n\n setPrototypeOf(target, prototype) {\n return Reflect.setPrototypeOf(target.model, prototype);\n },\n\n isExtensible(target) {\n return Reflect.isExtensible(target);\n },\n\n preventExtensions(target) {\n return Reflect.preventExtensions(target.model);\n },\n\n getOwnPropertyDescriptor(target, key) {\n return Reflect.getOwnPropertyDescriptor(target.model, key);\n },\n\n defineProperty(target, property, attributes) {\n return Reflect.defineProperty(target.model, property, attributes);\n },\n\n has(target, property) {\n return Reflect.has(target.model, property);\n },\n\n get(_target, property) {\n if (property === 'key') {\n return _target[property];\n }\n\n // prevent Safari from locking up when the proxy is used in dev tools\n // as it doesn't support getPrototypeOf\n if (property === '__proto__') return {};\n\n const target = property === 'root' ? _target : _target.model || _target;\n // @ts-ignore `string` index signature\n const value = target[property];\n if (isObject(value) && !Array.isArray(value)) {\n return new Proxy(\n {\n model: value,\n root: _target.root,\n key: `_${_target.key}`,\n },\n handler\n );\n } else {\n return value;\n }\n },\n\n set(target: any) {\n return target;\n },\n\n deleteProperty(target: any) {\n return target;\n },\n\n ownKeys(target) {\n return Reflect.ownKeys(target.model);\n },\n\n apply(target: any) {\n return target;\n },\n\n construct(target: any) {\n return target;\n },\n };\n const themeProxy = new Proxy({ model, root: model, key }, handler);\n\n return themeProxy;\n};\n\n/**\n * Deeply merges two objects, using `source` values whenever possible.\n * @param {object} _target - Object with fallback values\n * @param {object} source - Object with desired values\n */\nexport const mergeDeep = (\n _target: { [key: string]: any },\n source: { [key: string]: any } = {}\n) => {\n const target = { ..._target };\n\n if (!isObject(target) || !isObject(source)) {\n return source;\n }\n\n Object.keys(source).forEach((key) => {\n const targetValue = target[key];\n const sourceValue = source[key];\n\n if (isObject(targetValue) && isObject(sourceValue)) {\n target[key] = mergeDeep({ ...targetValue }, { ...sourceValue });\n } else {\n target[key] = sourceValue;\n }\n });\n\n return target;\n};\n\n/**\n * Returns token name string based on passed dynamic variants\n * and additional prefix/suffix\n */\nexport const getTokenName = (\n prefix: string,\n variant: string,\n suffix?: string\n) => {\n const getCapitalized = (str: string) =>\n str.charAt(0).toUpperCase() + str.slice(1);\n const colorName = variant.charAt(0).toUpperCase() + variant.slice(1);\n const _suffix = suffix ? getCapitalized(suffix) : '';\n\n return `${prefix}${getCapitalized(colorName)}${_suffix}`;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -29,6 +29,9 @@ describe('getColorMode', function () {
29
29
  it('uses `parentMode` as fallback', function () {
30
30
  expect((0, _utils.getColorMode)(undefined, 'DARK')).toEqual('DARK');
31
31
  });
32
+ it('uses `parentMode` (the system OS setting) if isForced is true', function () {
33
+ expect((0, _utils.getColorMode)('LIGHT', 'DARK', true)).toEqual('DARK');
34
+ });
32
35
  it("understands 'INVERSE'", function () {
33
36
  expect((0, _utils.getColorMode)('INVERSE', 'DARK')).toEqual('LIGHT');
34
37
  expect((0, _utils.getColorMode)('INVERSE', 'LIGHT')).toEqual('DARK');
@@ -1 +1 @@
1
- {"version":3,"file":"utils.test.js","names":["_utils","require","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","describe","it","expect","isInverseColorMode","toBe","getColorMode","toEqual","undefined","obj","parent","child","other","thing","string","nested","number","func","colors","LIGHT","primary","DARK","getOn","toBeInstanceOf","Function","beforeEach","existing","val","setOn","trail","blazing","happening","now","output","computed","_ref","_ref2","path","Computed","computer","dependencies","theme","buildTheme","secondary","_ref3","_ref4","concat","sizes","small","getComputed","themeName","tertiary","custom","myProp","_ref5","_ref6","key","mergeDeep","b","c","d","getTokenName"],"sources":["../../src/utils.test.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport {\n isInverseColorMode,\n getColorMode,\n getOn,\n setOn,\n computed,\n Computed,\n getComputed,\n buildTheme,\n mergeDeep,\n getTokenName,\n} from './utils';\n\ndescribe('isInverseColorMode', () => {\n it(\"true only if 'inverse'\", () => {\n expect(isInverseColorMode('LIGHT')).toBe(false);\n expect(isInverseColorMode('DARK')).toBe(false);\n expect(isInverseColorMode('custom')).toBe(false);\n expect(isInverseColorMode()).toBe(false);\n expect(isInverseColorMode('INVERSE')).toBe(true);\n });\n});\n\ndescribe('getColorMode', () => {\n it(\"defaults to 'LIGHT'\", () => {\n expect(getColorMode()).toEqual('LIGHT');\n });\n it('uses `parentMode` as fallback', () => {\n expect(getColorMode(undefined, 'DARK')).toEqual('DARK');\n });\n it(\"understands 'INVERSE'\", () => {\n expect(getColorMode('INVERSE', 'DARK')).toEqual('LIGHT');\n expect(getColorMode('INVERSE', 'LIGHT')).toEqual('DARK');\n expect(getColorMode('INVERSE')).toEqual('LIGHT');\n });\n});\n\ndescribe('getOn', () => {\n const obj = {\n parent: {\n child: 'childVal',\n },\n other: {\n thing: {\n string: 'stringVal',\n nested: ['array'],\n number: 0,\n func: () => {},\n },\n },\n colors: {\n LIGHT: { primary: '#000' },\n DARK: { primary: '#FFF' },\n },\n };\n it('gets values at the given path', () => {\n expect(getOn(obj, 'parent')).toEqual({\n child: 'childVal',\n });\n expect(getOn(obj, 'parent.child')).toEqual('childVal');\n expect(getOn(obj, 'other.thing.string')).toEqual('stringVal');\n });\n it('gets values of various kinds', () => {\n expect(getOn(obj, 'other.thing.nested')).toEqual(['array']);\n expect(getOn(obj, 'other.thing.number')).toEqual(0);\n expect(getOn(obj, 'other.thing.func')).toBeInstanceOf(Function);\n });\n it('can shortcut color modes', () => {\n expect(getOn(obj, 'colors.primary', 'LIGHT')).toEqual('#000');\n expect(getOn(obj, 'colors.primary', 'DARK')).toEqual('#FFF');\n });\n it('will not error', () => {\n expect(getOn(obj, 'nope')).toBe(undefined);\n expect(getOn(obj, 'other.nope')).toBe(undefined);\n expect(getOn(obj, 'other.thing.nope')).toBe(undefined);\n });\n});\n\ndescribe('setOn', () => {\n let obj: {};\n beforeEach(() => {\n obj = {\n existing: {\n nested: {\n val: 'value',\n },\n },\n };\n });\n it('sets values at the given path', () => {\n setOn(obj, 'existing.new', 'value');\n expect(obj).toEqual({\n existing: { nested: { val: 'value' }, new: 'value' },\n });\n setOn(obj, 'existing.nested.new', 'value');\n expect(obj).toEqual({\n existing: { nested: { val: 'value', new: 'value' }, new: 'value' },\n });\n });\n it('deep arbitrary creation', () => {\n setOn(obj, 'trail.blazing.happening.now', 'wow');\n expect(obj).toEqual({\n existing: { nested: { val: 'value' } },\n trail: { blazing: { happening: { now: 'wow' } } },\n });\n });\n it('overrides existing path value', () => {\n setOn(obj, 'existing.nested', 'diff');\n expect(obj).toEqual({\n existing: {\n nested: 'diff',\n },\n });\n });\n});\n\ndescribe('computed', () => {\n it('should transform to Computed with dependencies array', () => {\n const output = computed(([path]) => path, ['path.to']);\n expect(output).toBeInstanceOf(Computed);\n expect(output.computer).toBeInstanceOf(Function);\n expect(output.dependencies).toEqual(['path.to']);\n });\n it('should transform to Computed with single dependency', () => {\n const output = computed((path) => path, 'path.to');\n expect(output).toBeInstanceOf(Computed);\n expect(output.computer).toBeInstanceOf(Function);\n expect(output.dependencies).toEqual('path.to');\n });\n it('should transform to Computed without dependencies array', () => {\n const output = computed((path) => path);\n expect(output).toBeInstanceOf(Computed);\n });\n});\n\nconst theme = buildTheme(\n {\n colors: {\n LIGHT: {\n primary: '#000',\n secondary: computed(([primary]) => `${primary}000`, ['colors.primary']),\n },\n DARK: {\n primary: '#FFF',\n secondary: computed((theme) => `${theme.colors.primary}FFF`),\n },\n },\n sizes: {\n small: 8,\n },\n },\n 'minimal'\n);\ndescribe('getComputed', () => {\n it('computes all values and returns only the current color mode', () => {\n // @ts-expect-error intentionally not using a full EUI theme definition\n expect(getComputed(theme, {}, 'LIGHT')).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n // @ts-expect-error intentionally not using a full EUI theme definition\n expect(getComputed(theme, {}, 'DARK')).toEqual({\n colors: { primary: '#FFF', secondary: '#FFFFFF' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects simple overrides', () => {\n expect(\n // @ts-expect-error intentionally not using a full EUI theme definition\n getComputed(theme, buildTheme({ sizes: { small: 4 } }, ''), 'LIGHT')\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 4 },\n themeName: 'minimal',\n });\n });\n it('respects overrides in computation', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ colors: { LIGHT: { primary: '#CCC' } } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#CCC', secondary: '#CCC000' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects property extensions', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ colors: { LIGHT: { tertiary: '#333' } } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000', tertiary: '#333' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects section extensions', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ custom: { myProp: '#333' } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 8 },\n custom: { myProp: '#333' },\n themeName: 'minimal',\n });\n });\n it('respects extensions in computation', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme(\n {\n colors: {\n LIGHT: {\n tertiary: computed(\n ([primary]) => `${primary}333`,\n ['colors.primary']\n ),\n },\n },\n },\n ''\n ),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000', tertiary: '#000333' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n});\n\ndescribe('buildTheme', () => {\n it('builds an EUI theme system', () => {\n // TypeError: 'getOwnPropertyDescriptor' on proxy: trap reported non-configurability for property 'length' which is either non-existant or configurable in the proxy target\n // expect(theme).toEqual(Proxy); // get() trap returns theme.model\n // expect(theme.root).toEqual(Proxy);\n expect(theme.key).toEqual('minimal');\n });\n});\n\ndescribe('mergeDeep', () => {\n it('merge simple objects, second into first', () => {\n expect(mergeDeep({ a: 1 }, { b: 2 })).toEqual({ a: 1, b: 2 });\n expect(mergeDeep({ a: 1 }, { a: 2 })).toEqual({ a: 2 });\n });\n it('merge complex objects, second into first', () => {\n expect(\n mergeDeep({ a: 1, b: { c: { d: 3 } } }, { b: { c: { d: 4 } } })\n ).toEqual({ a: 1, b: { c: { d: 4 } } });\n expect(\n mergeDeep({ a: 1, b: { c: { d: 3 } } }, { b: { c: { e: 5 } } })\n ).toEqual({ a: 1, b: { c: { d: 3, e: 5 } } });\n });\n});\n\ndescribe('getTokenName', () => {\n it('returns the correct token name', () => {\n expect(getTokenName('backgroundBase', 'primary')).toEqual(\n 'backgroundBasePrimary'\n );\n expect(getTokenName('backgroundBase', 'primary', 'hovered')).toEqual(\n 'backgroundBasePrimaryHovered'\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils.test.js","names":["_utils","require","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","describe","it","expect","isInverseColorMode","toBe","getColorMode","toEqual","undefined","obj","parent","child","other","thing","string","nested","number","func","colors","LIGHT","primary","DARK","getOn","toBeInstanceOf","Function","beforeEach","existing","val","setOn","trail","blazing","happening","now","output","computed","_ref","_ref2","path","Computed","computer","dependencies","theme","buildTheme","secondary","_ref3","_ref4","concat","sizes","small","getComputed","themeName","tertiary","custom","myProp","_ref5","_ref6","key","mergeDeep","b","c","d","getTokenName"],"sources":["../../src/utils.test.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport {\n isInverseColorMode,\n getColorMode,\n getOn,\n setOn,\n computed,\n Computed,\n getComputed,\n buildTheme,\n mergeDeep,\n getTokenName,\n} from './utils';\n\ndescribe('isInverseColorMode', () => {\n it(\"true only if 'inverse'\", () => {\n expect(isInverseColorMode('LIGHT')).toBe(false);\n expect(isInverseColorMode('DARK')).toBe(false);\n expect(isInverseColorMode('custom')).toBe(false);\n expect(isInverseColorMode()).toBe(false);\n expect(isInverseColorMode('INVERSE')).toBe(true);\n });\n});\n\ndescribe('getColorMode', () => {\n it(\"defaults to 'LIGHT'\", () => {\n expect(getColorMode()).toEqual('LIGHT');\n });\n it('uses `parentMode` as fallback', () => {\n expect(getColorMode(undefined, 'DARK')).toEqual('DARK');\n });\n it('uses `parentMode` (the system OS setting) if isForced is true', () => {\n expect(getColorMode('LIGHT', 'DARK', true)).toEqual('DARK');\n });\n it(\"understands 'INVERSE'\", () => {\n expect(getColorMode('INVERSE', 'DARK')).toEqual('LIGHT');\n expect(getColorMode('INVERSE', 'LIGHT')).toEqual('DARK');\n expect(getColorMode('INVERSE')).toEqual('LIGHT');\n });\n});\n\ndescribe('getOn', () => {\n const obj = {\n parent: {\n child: 'childVal',\n },\n other: {\n thing: {\n string: 'stringVal',\n nested: ['array'],\n number: 0,\n func: () => {},\n },\n },\n colors: {\n LIGHT: { primary: '#000' },\n DARK: { primary: '#FFF' },\n },\n };\n it('gets values at the given path', () => {\n expect(getOn(obj, 'parent')).toEqual({\n child: 'childVal',\n });\n expect(getOn(obj, 'parent.child')).toEqual('childVal');\n expect(getOn(obj, 'other.thing.string')).toEqual('stringVal');\n });\n it('gets values of various kinds', () => {\n expect(getOn(obj, 'other.thing.nested')).toEqual(['array']);\n expect(getOn(obj, 'other.thing.number')).toEqual(0);\n expect(getOn(obj, 'other.thing.func')).toBeInstanceOf(Function);\n });\n it('can shortcut color modes', () => {\n expect(getOn(obj, 'colors.primary', 'LIGHT')).toEqual('#000');\n expect(getOn(obj, 'colors.primary', 'DARK')).toEqual('#FFF');\n });\n it('will not error', () => {\n expect(getOn(obj, 'nope')).toBe(undefined);\n expect(getOn(obj, 'other.nope')).toBe(undefined);\n expect(getOn(obj, 'other.thing.nope')).toBe(undefined);\n });\n});\n\ndescribe('setOn', () => {\n let obj: {};\n beforeEach(() => {\n obj = {\n existing: {\n nested: {\n val: 'value',\n },\n },\n };\n });\n it('sets values at the given path', () => {\n setOn(obj, 'existing.new', 'value');\n expect(obj).toEqual({\n existing: { nested: { val: 'value' }, new: 'value' },\n });\n setOn(obj, 'existing.nested.new', 'value');\n expect(obj).toEqual({\n existing: { nested: { val: 'value', new: 'value' }, new: 'value' },\n });\n });\n it('deep arbitrary creation', () => {\n setOn(obj, 'trail.blazing.happening.now', 'wow');\n expect(obj).toEqual({\n existing: { nested: { val: 'value' } },\n trail: { blazing: { happening: { now: 'wow' } } },\n });\n });\n it('overrides existing path value', () => {\n setOn(obj, 'existing.nested', 'diff');\n expect(obj).toEqual({\n existing: {\n nested: 'diff',\n },\n });\n });\n});\n\ndescribe('computed', () => {\n it('should transform to Computed with dependencies array', () => {\n const output = computed(([path]) => path, ['path.to']);\n expect(output).toBeInstanceOf(Computed);\n expect(output.computer).toBeInstanceOf(Function);\n expect(output.dependencies).toEqual(['path.to']);\n });\n it('should transform to Computed with single dependency', () => {\n const output = computed((path) => path, 'path.to');\n expect(output).toBeInstanceOf(Computed);\n expect(output.computer).toBeInstanceOf(Function);\n expect(output.dependencies).toEqual('path.to');\n });\n it('should transform to Computed without dependencies array', () => {\n const output = computed((path) => path);\n expect(output).toBeInstanceOf(Computed);\n });\n});\n\nconst theme = buildTheme(\n {\n colors: {\n LIGHT: {\n primary: '#000',\n secondary: computed(([primary]) => `${primary}000`, ['colors.primary']),\n },\n DARK: {\n primary: '#FFF',\n secondary: computed((theme) => `${theme.colors.primary}FFF`),\n },\n },\n sizes: {\n small: 8,\n },\n },\n 'minimal'\n);\ndescribe('getComputed', () => {\n it('computes all values and returns only the current color mode', () => {\n // @ts-expect-error intentionally not using a full EUI theme definition\n expect(getComputed(theme, {}, 'LIGHT')).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n // @ts-expect-error intentionally not using a full EUI theme definition\n expect(getComputed(theme, {}, 'DARK')).toEqual({\n colors: { primary: '#FFF', secondary: '#FFFFFF' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects simple overrides', () => {\n expect(\n // @ts-expect-error intentionally not using a full EUI theme definition\n getComputed(theme, buildTheme({ sizes: { small: 4 } }, ''), 'LIGHT')\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 4 },\n themeName: 'minimal',\n });\n });\n it('respects overrides in computation', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ colors: { LIGHT: { primary: '#CCC' } } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#CCC', secondary: '#CCC000' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects property extensions', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ colors: { LIGHT: { tertiary: '#333' } } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000', tertiary: '#333' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n it('respects section extensions', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme({ custom: { myProp: '#333' } }, ''),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000' },\n sizes: { small: 8 },\n custom: { myProp: '#333' },\n themeName: 'minimal',\n });\n });\n it('respects extensions in computation', () => {\n expect(\n getComputed(\n // @ts-expect-error intentionally not using a full EUI theme definition\n theme,\n buildTheme(\n {\n colors: {\n LIGHT: {\n tertiary: computed(\n ([primary]) => `${primary}333`,\n ['colors.primary']\n ),\n },\n },\n },\n ''\n ),\n 'LIGHT'\n )\n ).toEqual({\n colors: { primary: '#000', secondary: '#000000', tertiary: '#000333' },\n sizes: { small: 8 },\n themeName: 'minimal',\n });\n });\n});\n\ndescribe('buildTheme', () => {\n it('builds an EUI theme system', () => {\n // TypeError: 'getOwnPropertyDescriptor' on proxy: trap reported non-configurability for property 'length' which is either non-existant or configurable in the proxy target\n // expect(theme).toEqual(Proxy); // get() trap returns theme.model\n // expect(theme.root).toEqual(Proxy);\n expect(theme.key).toEqual('minimal');\n });\n});\n\ndescribe('mergeDeep', () => {\n it('merge simple objects, second into first', () => {\n expect(mergeDeep({ a: 1 }, { b: 2 })).toEqual({ a: 1, b: 2 });\n expect(mergeDeep({ a: 1 }, { a: 2 })).toEqual({ a: 2 });\n });\n it('merge complex objects, second into first', () => {\n expect(\n mergeDeep({ a: 1, b: { c: { d: 3 } } }, { b: { c: { d: 4 } } })\n ).toEqual({ a: 1, b: { c: { d: 4 } } });\n expect(\n mergeDeep({ a: 1, b: { c: { d: 3 } } }, { b: { c: { e: 5 } } })\n ).toEqual({ a: 1, b: { c: { d: 3, e: 5 } } });\n });\n});\n\ndescribe('getTokenName', () => {\n it('returns the correct token name', () => {\n expect(getTokenName('backgroundBase', 'primary')).toEqual(\n 'backgroundBasePrimary'\n );\n expect(getTokenName('backgroundBase', 'primary', 'hovered')).toEqual(\n 'backgroundBasePrimaryHovered'\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}