@wordpress/theme 0.1.0 → 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 (168) hide show
  1. package/README.md +69 -9
  2. package/bin/generate-default-ramps/index.ts +49 -0
  3. package/bin/generate-primitive-tokens/index.ts +14 -9
  4. package/bin/terrazzo-plugin-ds-tokens-docs/index.ts +5 -24
  5. package/bin/terrazzo-plugin-figma-ds-token-manager/index.ts +11 -4
  6. package/bin/terrazzo-plugin-inline-alias-values/index.ts +84 -0
  7. package/bin/terrazzo-plugin-known-wpds-css-variables/index.ts +19 -39
  8. package/build/color-ramps/index.js +21 -39
  9. package/build/color-ramps/index.js.map +3 -3
  10. package/build/color-ramps/lib/color-utils.js +39 -0
  11. package/build/color-ramps/lib/color-utils.js.map +7 -0
  12. package/build/color-ramps/lib/constants.js +20 -27
  13. package/build/color-ramps/lib/constants.js.map +3 -3
  14. package/build/color-ramps/lib/default-ramps.js +220 -0
  15. package/build/color-ramps/lib/default-ramps.js.map +7 -0
  16. package/build/color-ramps/lib/find-color-with-constraints.js +60 -91
  17. package/build/color-ramps/lib/find-color-with-constraints.js.map +3 -3
  18. package/build/color-ramps/lib/index.js +77 -119
  19. package/build/color-ramps/lib/index.js.map +3 -3
  20. package/build/color-ramps/lib/ramp-configs.js +15 -14
  21. package/build/color-ramps/lib/ramp-configs.js.map +2 -2
  22. package/build/color-ramps/lib/register-color-spaces.js +7 -0
  23. package/build/color-ramps/lib/register-color-spaces.js.map +7 -0
  24. package/build/color-ramps/lib/taper-chroma.js +35 -27
  25. package/build/color-ramps/lib/taper-chroma.js.map +3 -3
  26. package/build/color-ramps/lib/types.js +2 -1
  27. package/build/color-ramps/lib/types.js.map +1 -1
  28. package/build/color-ramps/lib/utils.js +75 -11
  29. package/build/color-ramps/lib/utils.js.map +2 -2
  30. package/build/context.js +3 -2
  31. package/build/context.js.map +1 -1
  32. package/build/index.js +2 -1
  33. package/build/index.js.map +1 -1
  34. package/build/lock-unlock.js +3 -2
  35. package/build/lock-unlock.js.map +1 -1
  36. package/build/prebuilt/js/design-tokens.js +19 -11
  37. package/build/prebuilt/js/design-tokens.js.map +2 -2
  38. package/build/prebuilt/json/figma.json +165 -783
  39. package/build/prebuilt/ts/color-tokens.js +137 -0
  40. package/build/prebuilt/ts/color-tokens.js.map +7 -0
  41. package/build/private-apis.js +3 -2
  42. package/build/private-apis.js.map +1 -1
  43. package/build/theme-provider.js +19 -17
  44. package/build/theme-provider.js.map +4 -4
  45. package/build/token-id.js +30 -0
  46. package/build/token-id.js.map +7 -0
  47. package/build/types/css-modules.d.js +0 -1
  48. package/build/types.js +2 -1
  49. package/build/types.js.map +1 -1
  50. package/build/use-theme-provider-styles.js +67 -62
  51. package/build/use-theme-provider-styles.js.map +3 -3
  52. package/build-module/color-ramps/index.js +20 -28
  53. package/build-module/color-ramps/index.js.map +2 -2
  54. package/build-module/color-ramps/lib/color-utils.js +19 -0
  55. package/build-module/color-ramps/lib/color-utils.js.map +7 -0
  56. package/build-module/color-ramps/lib/constants.js +14 -11
  57. package/build-module/color-ramps/lib/constants.js.map +2 -2
  58. package/build-module/color-ramps/lib/default-ramps.js +196 -0
  59. package/build-module/color-ramps/lib/default-ramps.js.map +7 -0
  60. package/build-module/color-ramps/lib/find-color-with-constraints.js +61 -87
  61. package/build-module/color-ramps/lib/find-color-with-constraints.js.map +2 -2
  62. package/build-module/color-ramps/lib/index.js +85 -109
  63. package/build-module/color-ramps/lib/index.js.map +3 -3
  64. package/build-module/color-ramps/lib/ramp-configs.js +14 -13
  65. package/build-module/color-ramps/lib/ramp-configs.js.map +2 -2
  66. package/build-module/color-ramps/lib/register-color-spaces.js +7 -0
  67. package/build-module/color-ramps/lib/register-color-spaces.js.map +7 -0
  68. package/build-module/color-ramps/lib/taper-chroma.js +40 -16
  69. package/build-module/color-ramps/lib/taper-chroma.js.map +2 -2
  70. package/build-module/color-ramps/lib/utils.js +70 -6
  71. package/build-module/color-ramps/lib/utils.js.map +2 -2
  72. package/build-module/context.js +2 -1
  73. package/build-module/context.js.map +1 -1
  74. package/build-module/index.js +1 -0
  75. package/build-module/index.js.map +1 -1
  76. package/build-module/lock-unlock.js +2 -1
  77. package/build-module/lock-unlock.js.map +1 -1
  78. package/build-module/prebuilt/js/design-tokens.js +18 -10
  79. package/build-module/prebuilt/js/design-tokens.js.map +2 -2
  80. package/build-module/prebuilt/json/figma.json +165 -783
  81. package/build-module/prebuilt/ts/color-tokens.js +117 -0
  82. package/build-module/prebuilt/ts/color-tokens.js.map +7 -0
  83. package/build-module/private-apis.js +2 -1
  84. package/build-module/private-apis.js.map +1 -1
  85. package/build-module/theme-provider.js +18 -6
  86. package/build-module/theme-provider.js.map +3 -3
  87. package/build-module/token-id.js +6 -0
  88. package/build-module/token-id.js.map +7 -0
  89. package/build-module/use-theme-provider-styles.js +69 -57
  90. package/build-module/use-theme-provider-styles.js.map +2 -2
  91. package/build-types/color-ramps/index.d.ts +9 -16
  92. package/build-types/color-ramps/index.d.ts.map +1 -1
  93. package/build-types/color-ramps/lib/color-utils.d.ts +22 -0
  94. package/build-types/color-ramps/lib/color-utils.d.ts.map +1 -0
  95. package/build-types/color-ramps/lib/constants.d.ts +7 -9
  96. package/build-types/color-ramps/lib/constants.d.ts.map +1 -1
  97. package/build-types/color-ramps/lib/default-ramps.d.ts +7 -0
  98. package/build-types/color-ramps/lib/default-ramps.d.ts.map +1 -0
  99. package/build-types/color-ramps/lib/find-color-with-constraints.d.ts +8 -7
  100. package/build-types/color-ramps/lib/find-color-with-constraints.d.ts.map +1 -1
  101. package/build-types/color-ramps/lib/index.d.ts +5 -2
  102. package/build-types/color-ramps/lib/index.d.ts.map +1 -1
  103. package/build-types/color-ramps/lib/register-color-spaces.d.ts +2 -0
  104. package/build-types/color-ramps/lib/register-color-spaces.d.ts.map +1 -0
  105. package/build-types/color-ramps/lib/taper-chroma.d.ts +7 -3
  106. package/build-types/color-ramps/lib/taper-chroma.d.ts.map +1 -1
  107. package/build-types/color-ramps/lib/utils.d.ts +28 -5
  108. package/build-types/color-ramps/lib/utils.d.ts.map +1 -1
  109. package/build-types/color-ramps/stories/index.story.d.ts.map +1 -1
  110. package/build-types/prebuilt/ts/color-tokens.d.ts +7 -0
  111. package/build-types/prebuilt/ts/color-tokens.d.ts.map +1 -0
  112. package/build-types/stories/index.story.d.ts.map +1 -1
  113. package/build-types/theme-provider.d.ts.map +1 -1
  114. package/build-types/token-id.d.ts +9 -0
  115. package/build-types/token-id.d.ts.map +1 -0
  116. package/build-types/use-theme-provider-styles.d.ts +4 -0
  117. package/build-types/use-theme-provider-styles.d.ts.map +1 -1
  118. package/docs/ds-tokens.md +22 -156
  119. package/package.json +19 -9
  120. package/src/color-ramps/index.ts +24 -41
  121. package/src/color-ramps/lib/color-utils.ts +34 -0
  122. package/src/color-ramps/lib/constants.ts +13 -9
  123. package/src/color-ramps/lib/default-ramps.ts +200 -0
  124. package/src/color-ramps/lib/find-color-with-constraints.ts +83 -116
  125. package/src/color-ramps/lib/index.ts +107 -145
  126. package/src/color-ramps/lib/ramp-configs.ts +3 -3
  127. package/src/color-ramps/lib/register-color-spaces.ts +13 -0
  128. package/src/color-ramps/lib/taper-chroma.ts +47 -19
  129. package/src/color-ramps/lib/utils.ts +117 -14
  130. package/src/color-ramps/stories/index.story.tsx +16 -22
  131. package/src/color-ramps/test/__snapshots__/index.test.ts.snap +45722 -376
  132. package/src/color-ramps/test/index.test.ts +68 -29
  133. package/src/prebuilt/css/design-tokens.css +88 -355
  134. package/src/prebuilt/js/design-tokens.js +17 -10
  135. package/src/prebuilt/json/figma.json +165 -783
  136. package/src/prebuilt/ts/color-tokens.ts +117 -0
  137. package/src/stories/index.story.tsx +4 -18
  138. package/src/test/token-id.test.ts +12 -0
  139. package/src/token-id.ts +9 -0
  140. package/src/use-theme-provider-styles.ts +67 -60
  141. package/terrazzo.config.ts +15 -12
  142. package/tokens/color.json +221 -69
  143. package/tokens/dimension.json +75 -0
  144. package/tsconfig.bin.json +13 -0
  145. package/tsconfig.bin.tsbuildinfo +1 -0
  146. package/tsconfig.json +6 -4
  147. package/tsconfig.src.json +9 -0
  148. package/tsconfig.src.tsbuildinfo +1 -0
  149. package/bin/build-tokens.js +0 -83
  150. package/build/color-ramps/lib/cache-utils.js +0 -57
  151. package/build/color-ramps/lib/cache-utils.js.map +0 -7
  152. package/build/prebuilt/ts/design-tokens.js +0 -354
  153. package/build/prebuilt/ts/design-tokens.js.map +0 -7
  154. package/build/style.module.css.js +0 -2
  155. package/build-module/color-ramps/lib/cache-utils.js +0 -31
  156. package/build-module/color-ramps/lib/cache-utils.js.map +0 -7
  157. package/build-module/prebuilt/ts/design-tokens.js +0 -334
  158. package/build-module/prebuilt/ts/design-tokens.js.map +0 -7
  159. package/build-module/style.module.css.js +0 -1
  160. package/build-style/style.css +0 -3
  161. package/build-types/color-ramps/lib/cache-utils.d.ts +0 -22
  162. package/build-types/color-ramps/lib/cache-utils.d.ts.map +0 -1
  163. package/build-types/prebuilt/ts/design-tokens.d.ts +0 -7
  164. package/build-types/prebuilt/ts/design-tokens.d.ts.map +0 -1
  165. package/src/color-ramps/lib/cache-utils.ts +0 -56
  166. package/src/prebuilt/ts/design-tokens.ts +0 -335
  167. package/tokens/spacing.json +0 -45
  168. package/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,137 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // packages/theme/src/prebuilt/ts/color-tokens.ts
20
+ var color_tokens_exports = {};
21
+ __export(color_tokens_exports, {
22
+ default: () => color_tokens_default
23
+ });
24
+ module.exports = __toCommonJS(color_tokens_exports);
25
+ var color_tokens_default = {
26
+ "primary-bgFill1": ["bg-interactive-brand-strong"],
27
+ "primary-fgFill": [
28
+ "fg-interactive-brand-strong-active",
29
+ "fg-interactive-brand-strong"
30
+ ],
31
+ "primary-bgFill2": ["bg-interactive-brand-strong-active"],
32
+ "primary-surface2": ["bg-interactive-brand-active"],
33
+ "primary-surface4": ["bg-interactive-brand-weak-active"],
34
+ "primary-fgSurface3": [
35
+ "fg-interactive-brand-active",
36
+ "fg-interactive-brand"
37
+ ],
38
+ "primary-stroke3": [
39
+ "bg-thumb-brand-active",
40
+ "bg-thumb-brand",
41
+ "stroke-focus-brand",
42
+ "stroke-interactive-brand",
43
+ "stroke-surface-brand-strong"
44
+ ],
45
+ "primary-stroke4": ["stroke-interactive-brand-active"],
46
+ "primary-stroke1": ["stroke-surface-brand"],
47
+ "primary-surface1": ["bg-surface-brand"],
48
+ "info-surface2": ["bg-surface-info-weak"],
49
+ "info-surface4": ["bg-surface-info"],
50
+ "info-fgSurface4": ["fg-content-info"],
51
+ "info-fgSurface3": ["fg-content-info-weak"],
52
+ "info-stroke3": ["stroke-surface-info-strong"],
53
+ "info-stroke1": ["stroke-surface-info"],
54
+ "success-surface2": ["bg-surface-success-weak"],
55
+ "success-surface4": ["bg-surface-success"],
56
+ "success-fgSurface4": ["fg-content-success"],
57
+ "success-fgSurface3": ["fg-content-success-weak"],
58
+ "success-stroke3": ["stroke-surface-success-strong"],
59
+ "success-stroke1": ["stroke-surface-success"],
60
+ "warning-surface2": ["bg-surface-warning-weak"],
61
+ "warning-surface4": ["bg-surface-warning"],
62
+ "warning-fgSurface4": ["fg-content-warning"],
63
+ "warning-fgSurface3": ["fg-content-warning-weak"],
64
+ "warning-stroke3": ["stroke-surface-warning-strong"],
65
+ "warning-stroke1": ["stroke-surface-warning"],
66
+ "error-surface2": ["bg-surface-error-weak"],
67
+ "error-surface4": ["bg-surface-error"],
68
+ "error-fgSurface4": ["fg-content-error"],
69
+ "error-fgSurface3": ["fg-content-error-weak"],
70
+ "error-stroke3": [
71
+ "stroke-interactive-error-strong",
72
+ "stroke-surface-error-strong"
73
+ ],
74
+ "error-stroke1": ["stroke-surface-error"],
75
+ "bg-surface2": ["bg-surface-neutral"],
76
+ "bg-surface6": [
77
+ "bg-interactive-brand-strong-disabled",
78
+ "bg-interactive-neutral-strong-disabled"
79
+ ],
80
+ "bg-surface5": [
81
+ "bg-interactive-brand-disabled",
82
+ "bg-interactive-brand-weak-disabled",
83
+ "bg-interactive-neutral-disabled",
84
+ "bg-interactive-neutral-weak-disabled"
85
+ ],
86
+ "bg-surface4": [
87
+ "bg-interactive-neutral-active",
88
+ "bg-interactive-neutral-weak-active"
89
+ ],
90
+ "bg-surface3": ["bg-surface-neutral-strong"],
91
+ "bg-fgSurface4": [
92
+ "fg-content-neutral",
93
+ "fg-interactive-neutral-active",
94
+ "fg-interactive-neutral"
95
+ ],
96
+ "bg-fgSurface3": [
97
+ "fg-content-neutral-weak",
98
+ "fg-interactive-brand-strong-disabled",
99
+ "fg-interactive-neutral-strong-disabled",
100
+ "fg-interactive-neutral-weak"
101
+ ],
102
+ "bg-fgSurface2": [
103
+ "fg-interactive-brand-disabled",
104
+ "fg-interactive-neutral-disabled",
105
+ "fg-interactive-neutral-weak-disabled"
106
+ ],
107
+ "bg-stroke3": [
108
+ "bg-thumb-neutral-weak",
109
+ "stroke-interactive-neutral",
110
+ "stroke-surface-neutral-strong"
111
+ ],
112
+ "bg-stroke4": [
113
+ "bg-thumb-neutral-weak-active",
114
+ "stroke-interactive-neutral-active",
115
+ "stroke-interactive-neutral-strong"
116
+ ],
117
+ "bg-stroke2": [
118
+ "bg-thumb-brand-disabled",
119
+ "bg-track-neutral",
120
+ "stroke-interactive-brand-disabled",
121
+ "stroke-interactive-neutral-disabled",
122
+ "stroke-surface-neutral"
123
+ ],
124
+ "bg-stroke1": ["bg-track-neutral-weak", "stroke-surface-neutral-weak"],
125
+ "bg-bgFillInverted2": ["bg-interactive-neutral-strong-active"],
126
+ "bg-bgFillInverted1": ["bg-interactive-neutral-strong"],
127
+ "bg-fgFillInverted": [
128
+ "fg-interactive-neutral-strong-active",
129
+ "fg-interactive-neutral-strong"
130
+ ],
131
+ "bg-surface1": ["bg-surface-neutral-weak"],
132
+ "caution-surface2": ["bg-surface-caution-weak"],
133
+ "caution-surface4": ["bg-surface-caution"],
134
+ "caution-fgSurface4": ["fg-content-caution"],
135
+ "caution-fgSurface3": ["fg-content-caution-weak"]
136
+ };
137
+ //# sourceMappingURL=color-tokens.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/prebuilt/ts/color-tokens.ts"],
4
+ "sourcesContent": ["/**\n * This file is generated by the @wordpress/terrazzo-plugin-inline-alias-values plugin.\n * Do not edit this file directly.\n */\n\nexport default {\n\t'primary-bgFill1': [ 'bg-interactive-brand-strong' ],\n\t'primary-fgFill': [\n\t\t'fg-interactive-brand-strong-active',\n\t\t'fg-interactive-brand-strong',\n\t],\n\t'primary-bgFill2': [ 'bg-interactive-brand-strong-active' ],\n\t'primary-surface2': [ 'bg-interactive-brand-active' ],\n\t'primary-surface4': [ 'bg-interactive-brand-weak-active' ],\n\t'primary-fgSurface3': [\n\t\t'fg-interactive-brand-active',\n\t\t'fg-interactive-brand',\n\t],\n\t'primary-stroke3': [\n\t\t'bg-thumb-brand-active',\n\t\t'bg-thumb-brand',\n\t\t'stroke-focus-brand',\n\t\t'stroke-interactive-brand',\n\t\t'stroke-surface-brand-strong',\n\t],\n\t'primary-stroke4': [ 'stroke-interactive-brand-active' ],\n\t'primary-stroke1': [ 'stroke-surface-brand' ],\n\t'primary-surface1': [ 'bg-surface-brand' ],\n\t'info-surface2': [ 'bg-surface-info-weak' ],\n\t'info-surface4': [ 'bg-surface-info' ],\n\t'info-fgSurface4': [ 'fg-content-info' ],\n\t'info-fgSurface3': [ 'fg-content-info-weak' ],\n\t'info-stroke3': [ 'stroke-surface-info-strong' ],\n\t'info-stroke1': [ 'stroke-surface-info' ],\n\t'success-surface2': [ 'bg-surface-success-weak' ],\n\t'success-surface4': [ 'bg-surface-success' ],\n\t'success-fgSurface4': [ 'fg-content-success' ],\n\t'success-fgSurface3': [ 'fg-content-success-weak' ],\n\t'success-stroke3': [ 'stroke-surface-success-strong' ],\n\t'success-stroke1': [ 'stroke-surface-success' ],\n\t'warning-surface2': [ 'bg-surface-warning-weak' ],\n\t'warning-surface4': [ 'bg-surface-warning' ],\n\t'warning-fgSurface4': [ 'fg-content-warning' ],\n\t'warning-fgSurface3': [ 'fg-content-warning-weak' ],\n\t'warning-stroke3': [ 'stroke-surface-warning-strong' ],\n\t'warning-stroke1': [ 'stroke-surface-warning' ],\n\t'error-surface2': [ 'bg-surface-error-weak' ],\n\t'error-surface4': [ 'bg-surface-error' ],\n\t'error-fgSurface4': [ 'fg-content-error' ],\n\t'error-fgSurface3': [ 'fg-content-error-weak' ],\n\t'error-stroke3': [\n\t\t'stroke-interactive-error-strong',\n\t\t'stroke-surface-error-strong',\n\t],\n\t'error-stroke1': [ 'stroke-surface-error' ],\n\t'bg-surface2': [ 'bg-surface-neutral' ],\n\t'bg-surface6': [\n\t\t'bg-interactive-brand-strong-disabled',\n\t\t'bg-interactive-neutral-strong-disabled',\n\t],\n\t'bg-surface5': [\n\t\t'bg-interactive-brand-disabled',\n\t\t'bg-interactive-brand-weak-disabled',\n\t\t'bg-interactive-neutral-disabled',\n\t\t'bg-interactive-neutral-weak-disabled',\n\t],\n\t'bg-surface4': [\n\t\t'bg-interactive-neutral-active',\n\t\t'bg-interactive-neutral-weak-active',\n\t],\n\t'bg-surface3': [ 'bg-surface-neutral-strong' ],\n\t'bg-fgSurface4': [\n\t\t'fg-content-neutral',\n\t\t'fg-interactive-neutral-active',\n\t\t'fg-interactive-neutral',\n\t],\n\t'bg-fgSurface3': [\n\t\t'fg-content-neutral-weak',\n\t\t'fg-interactive-brand-strong-disabled',\n\t\t'fg-interactive-neutral-strong-disabled',\n\t\t'fg-interactive-neutral-weak',\n\t],\n\t'bg-fgSurface2': [\n\t\t'fg-interactive-brand-disabled',\n\t\t'fg-interactive-neutral-disabled',\n\t\t'fg-interactive-neutral-weak-disabled',\n\t],\n\t'bg-stroke3': [\n\t\t'bg-thumb-neutral-weak',\n\t\t'stroke-interactive-neutral',\n\t\t'stroke-surface-neutral-strong',\n\t],\n\t'bg-stroke4': [\n\t\t'bg-thumb-neutral-weak-active',\n\t\t'stroke-interactive-neutral-active',\n\t\t'stroke-interactive-neutral-strong',\n\t],\n\t'bg-stroke2': [\n\t\t'bg-thumb-brand-disabled',\n\t\t'bg-track-neutral',\n\t\t'stroke-interactive-brand-disabled',\n\t\t'stroke-interactive-neutral-disabled',\n\t\t'stroke-surface-neutral',\n\t],\n\t'bg-stroke1': [ 'bg-track-neutral-weak', 'stroke-surface-neutral-weak' ],\n\t'bg-bgFillInverted2': [ 'bg-interactive-neutral-strong-active' ],\n\t'bg-bgFillInverted1': [ 'bg-interactive-neutral-strong' ],\n\t'bg-fgFillInverted': [\n\t\t'fg-interactive-neutral-strong-active',\n\t\t'fg-interactive-neutral-strong',\n\t],\n\t'bg-surface1': [ 'bg-surface-neutral-weak' ],\n\t'caution-surface2': [ 'bg-surface-caution-weak' ],\n\t'caution-surface4': [ 'bg-surface-caution' ],\n\t'caution-fgSurface4': [ 'fg-content-caution' ],\n\t'caution-fgSurface3': [ 'fg-content-caution-weak' ],\n} as Record< string, string[] >;\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -16,6 +15,8 @@ var __copyProps = (to, from, except, desc) => {
16
15
  return to;
17
16
  };
18
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // packages/theme/src/private-apis.ts
19
20
  var private_apis_exports = {};
20
21
  __export(private_apis_exports, {
21
22
  privateApis: () => privateApis
@@ -24,7 +25,7 @@ module.exports = __toCommonJS(private_apis_exports);
24
25
  var import_lock_unlock = require("./lock-unlock");
25
26
  var import_theme_provider = require("./theme-provider");
26
27
  var import_use_theme_provider_styles = require("./use-theme-provider-styles");
27
- const privateApis = {};
28
+ var privateApis = {};
28
29
  (0, import_lock_unlock.lock)(privateApis, {
29
30
  ThemeProvider: import_theme_provider.ThemeProvider,
30
31
  useThemeProviderStyles: import_use_theme_provider_styles.useThemeProviderStyles
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/private-apis.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport { lock } from './lock-unlock';\nimport { ThemeProvider } from './theme-provider';\nimport { useThemeProviderStyles } from './use-theme-provider-styles';\n\nexport const privateApis = {};\nlock( privateApis, {\n\tThemeProvider,\n\tuseThemeProviderStyles,\n} );\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,yBAAqB;AACrB,4BAA8B;AAC9B,uCAAuC;AAEhC,MAAM,cAAc,CAAC;AAAA,IAC5B,yBAAM,aAAa;AAAA,EAClB;AAAA,EACA;AACD,CAAE;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,yBAAqB;AACrB,4BAA8B;AAC9B,uCAAuC;AAEhC,IAAM,cAAc,CAAC;AAAA,IAC5B,yBAAM,aAAa;AAAA,EAClB;AAAA,EACA;AACD,CAAE;",
6
6
  "names": []
7
7
  }
@@ -1,9 +1,6 @@
1
- "use strict";
2
- var __create = Object.create;
3
1
  var __defProp = Object.defineProperty;
4
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
5
  var __export = (target, all) => {
9
6
  for (var name in all)
@@ -17,25 +14,30 @@ var __copyProps = (to, from, except, desc) => {
17
14
  }
18
15
  return to;
19
16
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // packages/theme/src/theme-provider.tsx
29
20
  var theme_provider_exports = {};
30
21
  __export(theme_provider_exports, {
31
22
  ThemeProvider: () => ThemeProvider
32
23
  });
33
24
  module.exports = __toCommonJS(theme_provider_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
25
  var import_element = require("@wordpress/element");
36
26
  var import_context = require("./context");
37
27
  var import_use_theme_provider_styles = require("./use-theme-provider-styles");
38
- var import_style = __toESM(require("./style.module.css"));
28
+
29
+ // packages/theme/src/style.module.css
30
+ var css = `.style-module__root__26kw6 {
31
+ display: contents;
32
+ }
33
+ `;
34
+ document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css));
35
+ var style_default = {
36
+ "root": "style-module__root__26kw6"
37
+ };
38
+
39
+ // packages/theme/src/theme-provider.tsx
40
+ var import_jsx_runtime = require("react/jsx-runtime");
39
41
  function cssObjectToText(values) {
40
42
  return Object.entries(values).map(([key, value]) => `${key}: ${value};`).join("");
41
43
  }
@@ -48,13 +50,13 @@ function generateCSSSelector({
48
50
  const selectors = [];
49
51
  if (isRoot) {
50
52
  selectors.push(
51
- `:root:has(.${import_style.default.root}${rootSel}${instanceIdSel})`
53
+ `:root:has(.${style_default.root}${rootSel}${instanceIdSel})`
52
54
  );
53
55
  }
54
- selectors.push(`.${import_style.default.root}.${import_style.default.root}${instanceIdSel}`);
56
+ selectors.push(`.${style_default.root}.${style_default.root}${instanceIdSel}`);
55
57
  return selectors.join(",");
56
58
  }
57
- const ThemeProvider = ({
59
+ var ThemeProvider = ({
58
60
  children,
59
61
  color = {},
60
62
  isRoot = false
@@ -79,7 +81,7 @@ const ThemeProvider = ({
79
81
  {
80
82
  "data-wpds-theme-provider-id": instanceId,
81
83
  "data-wpds-root-provider": isRoot,
82
- className: import_style.default.root,
84
+ className: style_default.root,
83
85
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_context.ThemeContext.Provider, { value: contextValue, children })
84
86
  }
85
87
  )
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/theme-provider.tsx"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useId } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ThemeContext } from './context';\nimport { useThemeProviderStyles } from './use-theme-provider-styles';\nimport { type ThemeProviderProps } from './types';\nimport styles from './style.module.css';\n\nfunction cssObjectToText( values: CSSProperties ) {\n\treturn Object.entries( values )\n\t\t.map( ( [ key, value ] ) => `${ key }: ${ value };` )\n\t\t.join( '' );\n}\n\nfunction generateCSSSelector( {\n\tinstanceId,\n\tisRoot,\n}: {\n\tinstanceId: string;\n\tisRoot: boolean;\n} ) {\n\tconst rootSel = `[data-wpds-root-provider=\"true\"]`;\n\tconst instanceIdSel = `[data-wpds-theme-provider-id=\"${ instanceId }\"]`;\n\n\tconst selectors = [];\n\n\tif ( isRoot ) {\n\t\tselectors.push(\n\t\t\t`:root:has(.${ styles.root }${ rootSel }${ instanceIdSel })`\n\t\t);\n\t}\n\n\tselectors.push( `.${ styles.root }.${ styles.root }${ instanceIdSel }` );\n\n\treturn selectors.join( ',' );\n}\n\nexport const ThemeProvider = ( {\n\tchildren,\n\tcolor = {},\n\tisRoot = false,\n}: ThemeProviderProps ) => {\n\tconst instanceId = useId();\n\n\tconst { themeProviderStyles, resolvedSettings } = useThemeProviderStyles( {\n\t\tcolor,\n\t} );\n\n\tconst contextValue = useMemo(\n\t\t() => ( {\n\t\t\tresolvedSettings,\n\t\t} ),\n\t\t[ resolvedSettings ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ themeProviderStyles ? (\n\t\t\t\t<style>\n\t\t\t\t\t{ `${ generateCSSSelector( {\n\t\t\t\t\t\tinstanceId,\n\t\t\t\t\t\tisRoot,\n\t\t\t\t\t} ) } {${ cssObjectToText( themeProviderStyles ) }}` }\n\t\t\t\t</style>\n\t\t\t) : null }\n\t\t\t<div\n\t\t\t\tdata-wpds-theme-provider-id={ instanceId }\n\t\t\t\tdata-wpds-root-provider={ isRoot }\n\t\t\t\tclassName={ styles.root }\n\t\t\t>\n\t\t\t\t<ThemeContext.Provider value={ contextValue }>\n\t\t\t\t\t{ children }\n\t\t\t\t</ThemeContext.Provider>\n\t\t\t</div>\n\t\t</>\n\t);\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAkEE;AA1DF,qBAA+B;AAK/B,qBAA6B;AAC7B,uCAAuC;AAEvC,mBAAmB;AAEnB,SAAS,gBAAiB,QAAwB;AACjD,SAAO,OAAO,QAAS,MAAO,EAC5B,IAAK,CAAE,CAAE,KAAK,KAAM,MAAO,GAAI,GAAI,KAAM,KAAM,GAAI,EACnD,KAAM,EAAG;AACZ;AAEA,SAAS,oBAAqB;AAAA,EAC7B;AAAA,EACA;AACD,GAGI;AACH,QAAM,UAAU;AAChB,QAAM,gBAAgB,iCAAkC,UAAW;AAEnE,QAAM,YAAY,CAAC;AAEnB,MAAK,QAAS;AACb,cAAU;AAAA,MACT,cAAe,aAAAA,QAAO,IAAK,GAAI,OAAQ,GAAI,aAAc;AAAA,IAC1D;AAAA,EACD;AAEA,YAAU,KAAM,IAAK,aAAAA,QAAO,IAAK,IAAK,aAAAA,QAAO,IAAK,GAAI,aAAc,EAAG;AAEvE,SAAO,UAAU,KAAM,GAAI;AAC5B;AAEO,MAAM,gBAAgB,CAAE;AAAA,EAC9B;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,SAAS;AACV,MAA2B;AAC1B,QAAM,iBAAa,sBAAM;AAEzB,QAAM,EAAE,qBAAqB,iBAAiB,QAAI,yDAAwB;AAAA,IACzE;AAAA,EACD,CAAE;AAEF,QAAM,mBAAe;AAAA,IACpB,OAAQ;AAAA,MACP;AAAA,IACD;AAAA,IACA,CAAE,gBAAiB;AAAA,EACpB;AAEA,SACC,4EACG;AAAA,0BACD,4CAAC,WACE,aAAI,oBAAqB;AAAA,MAC1B;AAAA,MACA;AAAA,IACD,CAAE,CAAE,KAAM,gBAAiB,mBAAoB,CAAE,KAClD,IACG;AAAA,IACJ;AAAA,MAAC;AAAA;AAAA,QACA,+BAA8B;AAAA,QAC9B,2BAA0B;AAAA,QAC1B,WAAY,aAAAA,QAAO;AAAA,QAEnB,sDAAC,4BAAa,UAAb,EAAsB,OAAQ,cAC5B,UACH;AAAA;AAAA,IACD;AAAA,KACD;AAEF;",
6
- "names": ["styles"]
3
+ "sources": ["../src/theme-provider.tsx", "../src/style.module.css"],
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useId } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ThemeContext } from './context';\nimport { useThemeProviderStyles } from './use-theme-provider-styles';\nimport { type ThemeProviderProps } from './types';\nimport styles from './style.module.css';\n\nfunction cssObjectToText( values: CSSProperties ) {\n\treturn Object.entries( values )\n\t\t.map( ( [ key, value ] ) => `${ key }: ${ value };` )\n\t\t.join( '' );\n}\n\nfunction generateCSSSelector( {\n\tinstanceId,\n\tisRoot,\n}: {\n\tinstanceId: string;\n\tisRoot: boolean;\n} ) {\n\tconst rootSel = `[data-wpds-root-provider=\"true\"]`;\n\tconst instanceIdSel = `[data-wpds-theme-provider-id=\"${ instanceId }\"]`;\n\n\tconst selectors = [];\n\n\tif ( isRoot ) {\n\t\tselectors.push(\n\t\t\t`:root:has(.${ styles.root }${ rootSel }${ instanceIdSel })`\n\t\t);\n\t}\n\n\tselectors.push( `.${ styles.root }.${ styles.root }${ instanceIdSel }` );\n\n\treturn selectors.join( ',' );\n}\n\nexport const ThemeProvider = ( {\n\tchildren,\n\tcolor = {},\n\tisRoot = false,\n}: ThemeProviderProps ) => {\n\tconst instanceId = useId();\n\n\tconst { themeProviderStyles, resolvedSettings } = useThemeProviderStyles( {\n\t\tcolor,\n\t} );\n\n\tconst contextValue = useMemo(\n\t\t() => ( {\n\t\t\tresolvedSettings,\n\t\t} ),\n\t\t[ resolvedSettings ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ themeProviderStyles ? (\n\t\t\t\t<style>\n\t\t\t\t\t{ `${ generateCSSSelector( {\n\t\t\t\t\t\tinstanceId,\n\t\t\t\t\t\tisRoot,\n\t\t\t\t\t} ) } {${ cssObjectToText( themeProviderStyles ) }}` }\n\t\t\t\t</style>\n\t\t\t) : null }\n\t\t\t<div\n\t\t\t\tdata-wpds-theme-provider-id={ instanceId }\n\t\t\t\tdata-wpds-root-provider={ isRoot }\n\t\t\t\tclassName={ styles.root }\n\t\t\t>\n\t\t\t\t<ThemeContext.Provider value={ contextValue }>\n\t\t\t\t\t{ children }\n\t\t\t\t</ThemeContext.Provider>\n\t\t\t</div>\n\t\t</>\n\t);\n};\n", "const css = `.style-module__root__26kw6 {\n\tdisplay: contents;\n}\n`;\ndocument.head\n .appendChild(document.createElement(\"style\"))\n .appendChild(document.createTextNode(css));\nexport {css};\nexport default {\n \"root\": \"style-module__root__26kw6\"\n};"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,qBAA+B;AAK/B,qBAA6B;AAC7B,uCAAuC;;;ACdvC,IAAM,MAAM;AAAA;AAAA;AAAA;AAIZ,SAAS,KACJ,YAAY,SAAS,cAAc,OAAO,CAAC,EAC3C,YAAY,SAAS,eAAe,GAAG,CAAC;AAE7C,IAAO,gBAAQ;AAAA,EACb,QAAQ;AACV;;;ADwDE;AAhDF,SAAS,gBAAiB,QAAwB;AACjD,SAAO,OAAO,QAAS,MAAO,EAC5B,IAAK,CAAE,CAAE,KAAK,KAAM,MAAO,GAAI,GAAI,KAAM,KAAM,GAAI,EACnD,KAAM,EAAG;AACZ;AAEA,SAAS,oBAAqB;AAAA,EAC7B;AAAA,EACA;AACD,GAGI;AACH,QAAM,UAAU;AAChB,QAAM,gBAAgB,iCAAkC,UAAW;AAEnE,QAAM,YAAY,CAAC;AAEnB,MAAK,QAAS;AACb,cAAU;AAAA,MACT,cAAe,cAAO,IAAK,GAAI,OAAQ,GAAI,aAAc;AAAA,IAC1D;AAAA,EACD;AAEA,YAAU,KAAM,IAAK,cAAO,IAAK,IAAK,cAAO,IAAK,GAAI,aAAc,EAAG;AAEvE,SAAO,UAAU,KAAM,GAAI;AAC5B;AAEO,IAAM,gBAAgB,CAAE;AAAA,EAC9B;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,SAAS;AACV,MAA2B;AAC1B,QAAM,iBAAa,sBAAM;AAEzB,QAAM,EAAE,qBAAqB,iBAAiB,QAAI,yDAAwB;AAAA,IACzE;AAAA,EACD,CAAE;AAEF,QAAM,mBAAe;AAAA,IACpB,OAAQ;AAAA,MACP;AAAA,IACD;AAAA,IACA,CAAE,gBAAiB;AAAA,EACpB;AAEA,SACC,4EACG;AAAA,0BACD,4CAAC,WACE,aAAI,oBAAqB;AAAA,MAC1B;AAAA,MACA;AAAA,IACD,CAAE,CAAE,KAAM,gBAAiB,mBAAoB,CAAE,KAClD,IACG;AAAA,IACJ;AAAA,MAAC;AAAA;AAAA,QACA,+BAA8B;AAAA,QAC9B,2BAA0B;AAAA,QAC1B,WAAY,cAAO;AAAA,QAEnB,sDAAC,4BAAa,UAAb,EAAsB,OAAQ,cAC5B,UACH;AAAA;AAAA,IACD;AAAA,KACD;AAEF;",
6
+ "names": []
7
7
  }
@@ -0,0 +1,30 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // packages/theme/src/token-id.ts
20
+ var token_id_exports = {};
21
+ __export(token_id_exports, {
22
+ publicTokenId: () => publicTokenId
23
+ });
24
+ module.exports = __toCommonJS(token_id_exports);
25
+ var publicTokenId = (id) => id.replace(/\.(normal|resting|semantic|primitive)/g, "");
26
+ // Annotate the CommonJS export names for ESM import in node:
27
+ 0 && (module.exports = {
28
+ publicTokenId
29
+ });
30
+ //# sourceMappingURL=token-id.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/token-id.ts"],
4
+ "sourcesContent": ["/**\n * Normalizes a token ID by removing default states and visibility identifiers,\n * making it human-readable as a publicly-accessible variable name.\n *\n * @param id The token ID to normalize.\n * @return The normalized token ID.\n */\nexport const publicTokenId = ( id: string ) =>\n\tid.replace( /\\.(normal|resting|semantic|primitive)/g, '' );\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOO,IAAM,gBAAgB,CAAE,OAC9B,GAAG,QAAS,0CAA0C,EAAG;",
6
+ "names": []
7
+ }
@@ -1,2 +1 @@
1
- "use strict";
2
1
  //# sourceMappingURL=css-modules.d.js.map
package/build/types.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -12,6 +11,8 @@ var __copyProps = (to, from, except, desc) => {
12
11
  return to;
13
12
  };
14
13
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
+
15
+ // packages/theme/src/types.ts
15
16
  var types_exports = {};
16
17
  module.exports = __toCommonJS(types_exports);
17
18
  //# sourceMappingURL=types.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/types.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport { type ReactNode } from 'react';\n\nexport interface ThemeProviderSettings {\n\t/**\n\t * The set of color options to apply to the theme.\n\t */\n\tcolor?: {\n\t\t/**\n\t\t * The primary seed color to use for the theme.\n\t\t *\n\t\t * By default, it inherits from parent `ThemeProvider`,\n\t\t * and fallbacks to statically built CSS.\n\t\t */\n\t\tprimary?: string;\n\t\t/**\n\t\t * The background seed color to use for the theme.\n\t\t *\n\t\t * By default, it inherits from parent `ThemeProvider`,\n\t\t * and fallbacks to statically built CSS.\n\t\t */\n\t\tbg?: string;\n\t};\n}\n\nexport interface ThemeProviderProps extends ThemeProviderSettings {\n\t/**\n\t * The children to render.\n\t */\n\tchildren?: ReactNode;\n\n\t/**\n\t * When a ThemeProvider is the root provider, it will apply its theming\n\t * settings also to the root document element (e.g. the html element).\n\t * This is useful, for example, to make sure that the `html` element can\n\t * consume the right background color, or that overlays rendered inside a\n\t * portal can inherit the correct color scheme.\n\t *\n\t * @default false\n\t */\n\tisRoot?: boolean;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
5
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -9,13 +8,13 @@ var __export = (target, all) => {
9
8
  for (var name in all)
10
9
  __defProp(target, name, { get: all[name], enumerable: true });
11
10
  };
12
- var __copyProps = (to, from, except, desc) => {
11
+ var __copyProps = (to2, from, except, desc) => {
13
12
  if (from && typeof from === "object" || typeof from === "function") {
14
13
  for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ if (!__hasOwnProp.call(to2, key) && key !== except)
15
+ __defProp(to2, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
16
  }
18
- return to;
17
+ return to2;
19
18
  };
20
19
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
20
  // If the importer is in node compatibility mode or this is not an ESM
@@ -26,17 +25,23 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
25
  mod
27
26
  ));
28
27
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // packages/theme/src/use-theme-provider-styles.ts
29
30
  var use_theme_provider_styles_exports = {};
30
31
  __export(use_theme_provider_styles_exports, {
31
32
  useThemeProviderStyles: () => useThemeProviderStyles
32
33
  });
33
34
  module.exports = __toCommonJS(use_theme_provider_styles_exports);
34
- var import_colorjs = __toESM(require("colorjs.io"));
35
+ var import_fn = require("colorjs.io/fn");
36
+ var import_memize = __toESM(require("memize"));
35
37
  var import_element = require("@wordpress/element");
38
+ var import_register_color_spaces = require("./color-ramps/lib/register-color-spaces");
36
39
  var import_context = require("./context");
37
- var import_design_tokens = __toESM(require("./prebuilt/ts/design-tokens"));
40
+ var import_color_tokens = __toESM(require("./prebuilt/ts/color-tokens"));
38
41
  var import_color_ramps = require("./color-ramps");
39
- const legacyWpComponentsOverridesCSS = [
42
+ var getCachedBgRamp = (0, import_memize.default)(import_color_ramps.buildBgRamp, { maxSize: 10 });
43
+ var getCachedAccentRamp = (0, import_memize.default)(import_color_ramps.buildAccentRamp, { maxSize: 10 });
44
+ var legacyWpComponentsOverridesCSS = [
40
45
  ["--wp-components-color-accent", "var(--wp-admin-theme-color)"],
41
46
  [
42
47
  "--wp-components-color-accent-darker-10",
@@ -92,37 +97,49 @@ const legacyWpComponentsOverridesCSS = [
92
97
  ]
93
98
  ];
94
99
  function customRgbFormat(color) {
95
- const rgb = color.to("srgb");
96
- return [rgb.r, rgb.g, rgb.b].map((n) => Math.round(n * 255)).join(", ");
100
+ const rgb = (0, import_fn.to)(color, import_fn.sRGB);
101
+ return [(0, import_fn.get)(rgb, "srgb.r"), (0, import_fn.get)(rgb, "srgb.g"), (0, import_fn.get)(rgb, "srgb.b")].map((n) => Math.round(n * 255)).join(", ");
97
102
  }
98
103
  function legacyWpAdminThemeOverridesCSS(accent) {
99
- const parsedAccent = new import_colorjs.default(accent).to("hsl");
100
- const hsl = parsedAccent.coords;
101
- const darker10 = new import_colorjs.default("hsl", [
102
- hsl[0],
103
- // h
104
- hsl[1],
105
- // s
106
- Math.max(0, Math.min(100, hsl[2] - 5))
107
- // l (reduced by 5%)
108
- ]).to("srgb");
109
- const darker20 = new import_colorjs.default("hsl", [
110
- hsl[0],
111
- // h
112
- hsl[1],
113
- // s
114
- Math.max(0, Math.min(100, hsl[2] - 10))
115
- // l (reduced by 10%)
116
- ]).to("srgb");
104
+ const parsedAccent = (0, import_fn.to)((0, import_fn.parse)(accent), import_fn.HSL);
105
+ const coords = parsedAccent.coords;
106
+ const darker10 = (0, import_fn.to)(
107
+ {
108
+ space: import_fn.HSL,
109
+ coords: [
110
+ coords[0],
111
+ // h
112
+ coords[1],
113
+ // s
114
+ Math.max(0, Math.min(100, coords[2] - 5))
115
+ // l (reduced by 5%)
116
+ ]
117
+ },
118
+ import_fn.sRGB
119
+ );
120
+ const darker20 = (0, import_fn.to)(
121
+ {
122
+ space: import_fn.HSL,
123
+ coords: [
124
+ coords[0],
125
+ // h
126
+ coords[1],
127
+ // s
128
+ Math.max(0, Math.min(100, coords[2] - 10))
129
+ // l (reduced by 10%)
130
+ ]
131
+ },
132
+ import_fn.sRGB
133
+ );
117
134
  return [
118
135
  [
119
136
  "--wp-admin-theme-color",
120
- parsedAccent.to("srgb").toString({ format: "hex" })
137
+ (0, import_fn.serialize)((0, import_fn.to)(parsedAccent, import_fn.sRGB), { format: "hex" })
121
138
  ],
122
139
  ["--wp-admin-theme-color--rgb", customRgbFormat(parsedAccent)],
123
140
  [
124
141
  "--wp-admin-theme-color-darker-10",
125
- darker10.toString({ format: "hex" })
142
+ (0, import_fn.serialize)(darker10, { format: "hex" })
126
143
  ],
127
144
  [
128
145
  "--wp-admin-theme-color-darker-10--rgb",
@@ -130,7 +147,7 @@ function legacyWpAdminThemeOverridesCSS(accent) {
130
147
  ],
131
148
  [
132
149
  "--wp-admin-theme-color-darker-20",
133
- darker20.toString({ format: "hex" })
150
+ (0, import_fn.serialize)(darker20, { format: "hex" })
134
151
  ],
135
152
  [
136
153
  "--wp-admin-theme-color-darker-20--rgb",
@@ -138,23 +155,21 @@ function legacyWpAdminThemeOverridesCSS(accent) {
138
155
  ]
139
156
  ];
140
157
  }
141
- function semanticTokensCSS(filterFn = () => true) {
142
- return Object.entries(import_design_tokens.default).filter(filterFn).map(([variableName, modesAndValues]) => [
143
- variableName,
144
- modesAndValues["."]
145
- ]);
146
- }
147
- const toKebabCase = (str) => str.replace(
148
- /[A-Z]+(?![a-z])|[A-Z]/g,
149
- ($, ofs) => (ofs ? "-" : "") + $.toLowerCase()
150
- );
151
- function colorRampCSS(ramp, prefix) {
152
- return [...Object.entries(ramp.ramp)].map(
153
- ([tokenName, tokenValue]) => [
154
- `${prefix}${toKebabCase(tokenName)}`,
155
- tokenValue.color
156
- ]
157
- );
158
+ function colorTokensCSS(computedColorRamps) {
159
+ const entries = [];
160
+ for (const [rampName, { ramp }] of computedColorRamps) {
161
+ for (const [tokenName, tokenValue] of Object.entries(ramp)) {
162
+ const key = `${rampName}-${tokenName}`;
163
+ const aliasedBy = import_color_tokens.default[key] ?? [];
164
+ for (const aliasedId of aliasedBy) {
165
+ entries.push([
166
+ `--wpds-color-${aliasedId}`,
167
+ tokenValue.color
168
+ ]);
169
+ }
170
+ }
171
+ }
172
+ return entries;
158
173
  }
159
174
  function generateStyles({
160
175
  primary,
@@ -162,15 +177,8 @@ function generateStyles({
162
177
  }) {
163
178
  return Object.fromEntries(
164
179
  [
165
- // Primitive tokens
166
- Array.from(computedColorRamps).map(([rampName, computedColorRamp]) => [
167
- colorRampCSS(
168
- computedColorRamp,
169
- `--wpds-color-private-${rampName}-`
170
- )
171
- ]).flat(2),
172
- // Semantic color tokens (other semantic tokens for now are static)
173
- semanticTokensCSS(([key]) => /color/.test(key)),
180
+ // Semantic color tokens
181
+ colorTokensCSS(computedColorRamps),
174
182
  // Legacy overrides
175
183
  legacyWpAdminThemeOverridesCSS(primary),
176
184
  legacyWpComponentsOverridesCSS
@@ -199,17 +207,14 @@ function useThemeProviderStyles({
199
207
  primary
200
208
  };
201
209
  const computedColorRamps = /* @__PURE__ */ new Map();
202
- const bgRamp = (0, import_color_ramps.buildBgRamp)({ seed: seeds.bg });
210
+ const bgRamp = getCachedBgRamp(seeds.bg);
203
211
  Object.entries(seeds).forEach(([rampName, seed]) => {
204
212
  if (rampName === "bg") {
205
213
  computedColorRamps.set(rampName, bgRamp);
206
214
  } else {
207
215
  computedColorRamps.set(
208
216
  rampName,
209
- (0, import_color_ramps.buildAccentRamp)({
210
- seed,
211
- bgRamp
212
- })
217
+ getCachedAccentRamp(seed, bgRamp)
213
218
  );
214
219
  }
215
220
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/use-theme-provider-styles.ts"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\nimport Color from 'colorjs.io';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ThemeContext } from './context';\nimport semanticVariables from './prebuilt/ts/design-tokens';\nimport {\n\tbuildBgRamp,\n\tbuildAccentRamp,\n\tDEFAULT_SEED_COLORS,\n\ttype RampResult,\n} from './color-ramps';\nimport type { ThemeProviderProps } from './types';\n\ntype Entry = [ string, string ];\n\nconst legacyWpComponentsOverridesCSS: Entry[] = [\n\t[ '--wp-components-color-accent', 'var(--wp-admin-theme-color)' ],\n\t[\n\t\t'--wp-components-color-accent-darker-10',\n\t\t'var(--wp-admin-theme-color-darker-10)',\n\t],\n\t[\n\t\t'--wp-components-color-accent-darker-20',\n\t\t'var(--wp-admin-theme-color-darker-20)',\n\t],\n\t[\n\t\t'--wp-components-color-accent-inverted',\n\t\t'var(--wpds-color-fg-interactive-brand-strong)',\n\t],\n\t[\n\t\t'--wp-components-color-background',\n\t\t'var(--wpds-color-bg-surface-neutral-strong)',\n\t],\n\t[\n\t\t'--wp-components-color-foreground',\n\t\t'var(--wpds-color-fg-content-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-foreground-inverted',\n\t\t'var(--wpds-color-bg-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-100',\n\t\t'var(--wpds-color-bg-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-200',\n\t\t'var(--wpds-color-stroke-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-300',\n\t\t'var(--wpds-color-stroke-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-400',\n\t\t'var(--wpds-color-stroke-interactive-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-600',\n\t\t'var(--wpds-color-stroke-interactive-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-700',\n\t\t'var(--wpds-color-fg-content-neutral-weak)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-800',\n\t\t'var(--wpds-color-fg-content-neutral)',\n\t],\n];\n\nfunction customRgbFormat( color: Color ) {\n\tconst rgb = color.to( 'srgb' );\n\treturn [ rgb.r, rgb.g, rgb.b ]\n\t\t.map( ( n ) => Math.round( n * 255 ) )\n\t\t.join( ', ' );\n}\n\nfunction legacyWpAdminThemeOverridesCSS( accent: string ): Entry[] {\n\tconst parsedAccent = new Color( accent ).to( 'hsl' );\n\n\tconst hsl = parsedAccent.coords;\n\tconst darker10 = new Color( 'hsl', [\n\t\thsl[ 0 ], // h\n\t\thsl[ 1 ], // s\n\t\tMath.max( 0, Math.min( 100, hsl[ 2 ] - 5 ) ), // l (reduced by 5%)\n\t] ).to( 'srgb' );\n\tconst darker20 = new Color( 'hsl', [\n\t\thsl[ 0 ], // h\n\t\thsl[ 1 ], // s\n\t\tMath.max( 0, Math.min( 100, hsl[ 2 ] - 10 ) ), // l (reduced by 10%)\n\t] ).to( 'srgb' );\n\n\treturn [\n\t\t[\n\t\t\t'--wp-admin-theme-color',\n\t\t\tparsedAccent.to( 'srgb' ).toString( { format: 'hex' } ),\n\t\t],\n\t\t[ '--wp-admin-theme-color--rgb', customRgbFormat( parsedAccent ) ],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-10',\n\t\t\tdarker10.toString( { format: 'hex' } ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-10--rgb',\n\t\t\tcustomRgbFormat( darker10 ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-20',\n\t\t\tdarker20.toString( { format: 'hex' } ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-20--rgb',\n\t\t\tcustomRgbFormat( darker20 ),\n\t\t],\n\t];\n}\n\nfunction semanticTokensCSS(\n\tfilterFn: ( entry: [ string, Record< string, string > ] ) => boolean = () =>\n\t\ttrue\n): Entry[] {\n\treturn Object.entries( semanticVariables )\n\t\t.filter( filterFn )\n\t\t.map( ( [ variableName, modesAndValues ] ) => [\n\t\t\tvariableName,\n\t\t\tmodesAndValues[ '.' ],\n\t\t] );\n}\n\nconst toKebabCase = ( str: string ) =>\n\tstr.replace(\n\t\t/[A-Z]+(?![a-z])|[A-Z]/g,\n\t\t( $, ofs ) => ( ofs ? '-' : '' ) + $.toLowerCase()\n\t);\n\nfunction colorRampCSS( ramp: RampResult, prefix: string ): Entry[] {\n\treturn [ ...Object.entries( ramp.ramp ) ].map(\n\t\t( [ tokenName, tokenValue ] ) => [\n\t\t\t`${ prefix }${ toKebabCase( tokenName ) }`,\n\t\t\ttokenValue.color,\n\t\t]\n\t);\n}\n\nfunction generateStyles( {\n\tprimary,\n\tcomputedColorRamps,\n}: {\n\tprimary: string;\n\tcomputedColorRamps: Map< string, RampResult >;\n} ): CSSProperties {\n\treturn Object.fromEntries(\n\t\t[\n\t\t\t// Primitive tokens\n\t\t\tArray.from( computedColorRamps )\n\t\t\t\t.map( ( [ rampName, computedColorRamp ] ) => [\n\t\t\t\t\tcolorRampCSS(\n\t\t\t\t\t\tcomputedColorRamp,\n\t\t\t\t\t\t`--wpds-color-private-${ rampName }-`\n\t\t\t\t\t),\n\t\t\t\t] )\n\t\t\t\t.flat( 2 ),\n\t\t\t// Semantic color tokens (other semantic tokens for now are static)\n\t\t\tsemanticTokensCSS( ( [ key ] ) => /color/.test( key ) ),\n\t\t\t// Legacy overrides\n\t\t\tlegacyWpAdminThemeOverridesCSS( primary ),\n\t\t\tlegacyWpComponentsOverridesCSS,\n\t\t].flat()\n\t);\n}\n\nexport function useThemeProviderStyles( {\n\tcolor = {},\n}: {\n\tcolor?: ThemeProviderProps[ 'color' ];\n} = {} ) {\n\tconst { resolvedSettings: inheritedSettings } = useContext( ThemeContext );\n\n\t// Compute settings:\n\t// - used provided prop value;\n\t// - otherwise, use inherited value from parent instance;\n\t// - otherwise, use fallback value (where applicable).\n\tconst primary =\n\t\tcolor.primary ??\n\t\tinheritedSettings.color?.primary ??\n\t\tDEFAULT_SEED_COLORS.primary;\n\tconst bg =\n\t\tcolor.bg ?? inheritedSettings.color?.bg ?? DEFAULT_SEED_COLORS.bg;\n\n\tconst resolvedSettings = useMemo(\n\t\t() => ( {\n\t\t\tcolor: {\n\t\t\t\tprimary,\n\t\t\t\tbg,\n\t\t\t},\n\t\t} ),\n\t\t[ primary, bg ]\n\t);\n\n\tconst themeProviderStyles = useMemo( () => {\n\t\t// Determine which seeds are needed for generating ramps.\n\t\tconst seeds = {\n\t\t\t...DEFAULT_SEED_COLORS,\n\t\t\tbg,\n\t\t\tprimary,\n\t\t};\n\n\t\t// Generate ramps.\n\t\tconst computedColorRamps = new Map< string, RampResult >();\n\t\tconst bgRamp = buildBgRamp( { seed: seeds.bg } );\n\t\tObject.entries( seeds ).forEach( ( [ rampName, seed ] ) => {\n\t\t\tif ( rampName === 'bg' ) {\n\t\t\t\tcomputedColorRamps.set( rampName, bgRamp );\n\t\t\t} else {\n\t\t\t\tcomputedColorRamps.set(\n\t\t\t\t\trampName,\n\t\t\t\t\tbuildAccentRamp( {\n\t\t\t\t\t\tseed,\n\t\t\t\t\t\tbgRamp,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\n\t\treturn generateStyles( {\n\t\t\tprimary: seeds.primary,\n\t\t\tcomputedColorRamps,\n\t\t} );\n\t}, [ primary, bg ] );\n\n\treturn {\n\t\tresolvedSettings,\n\t\tthemeProviderStyles,\n\t};\n}\n"],
5
- "mappings": "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",
6
- "names": ["Color", "semanticVariables"]
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\nimport {\n\tparse,\n\tto,\n\tget,\n\tserialize,\n\tsRGB,\n\tHSL,\n\ttype ColorTypes,\n} from 'colorjs.io/fn';\nimport memoize from 'memize';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport './color-ramps/lib/register-color-spaces';\nimport { ThemeContext } from './context';\nimport colorTokens from './prebuilt/ts/color-tokens';\nimport {\n\tbuildBgRamp,\n\tbuildAccentRamp,\n\tDEFAULT_SEED_COLORS,\n\ttype RampResult,\n} from './color-ramps';\nimport type { ThemeProviderProps } from './types';\n\ntype Entry = [ string, string ];\n\nconst getCachedBgRamp = memoize( buildBgRamp, { maxSize: 10 } );\nconst getCachedAccentRamp = memoize( buildAccentRamp, { maxSize: 10 } );\n\nconst legacyWpComponentsOverridesCSS: Entry[] = [\n\t[ '--wp-components-color-accent', 'var(--wp-admin-theme-color)' ],\n\t[\n\t\t'--wp-components-color-accent-darker-10',\n\t\t'var(--wp-admin-theme-color-darker-10)',\n\t],\n\t[\n\t\t'--wp-components-color-accent-darker-20',\n\t\t'var(--wp-admin-theme-color-darker-20)',\n\t],\n\t[\n\t\t'--wp-components-color-accent-inverted',\n\t\t'var(--wpds-color-fg-interactive-brand-strong)',\n\t],\n\t[\n\t\t'--wp-components-color-background',\n\t\t'var(--wpds-color-bg-surface-neutral-strong)',\n\t],\n\t[\n\t\t'--wp-components-color-foreground',\n\t\t'var(--wpds-color-fg-content-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-foreground-inverted',\n\t\t'var(--wpds-color-bg-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-100',\n\t\t'var(--wpds-color-bg-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-200',\n\t\t'var(--wpds-color-stroke-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-300',\n\t\t'var(--wpds-color-stroke-surface-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-400',\n\t\t'var(--wpds-color-stroke-interactive-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-600',\n\t\t'var(--wpds-color-stroke-interactive-neutral)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-700',\n\t\t'var(--wpds-color-fg-content-neutral-weak)',\n\t],\n\t[\n\t\t'--wp-components-color-gray-800',\n\t\t'var(--wpds-color-fg-content-neutral)',\n\t],\n];\n\nfunction customRgbFormat( color: ColorTypes ) {\n\tconst rgb = to( color, sRGB );\n\treturn [ get( rgb, 'srgb.r' ), get( rgb, 'srgb.g' ), get( rgb, 'srgb.b' ) ]\n\t\t.map( ( n ) => Math.round( n * 255 ) )\n\t\t.join( ', ' );\n}\n\nfunction legacyWpAdminThemeOverridesCSS( accent: string ): Entry[] {\n\tconst parsedAccent = to( parse( accent ), HSL );\n\n\tconst coords = parsedAccent.coords;\n\tconst darker10 = to(\n\t\t{\n\t\t\tspace: HSL,\n\t\t\tcoords: [\n\t\t\t\tcoords[ 0 ], // h\n\t\t\t\tcoords[ 1 ], // s\n\t\t\t\tMath.max( 0, Math.min( 100, coords[ 2 ] - 5 ) ), // l (reduced by 5%)\n\t\t\t],\n\t\t},\n\t\tsRGB\n\t);\n\tconst darker20 = to(\n\t\t{\n\t\t\tspace: HSL,\n\t\t\tcoords: [\n\t\t\t\tcoords[ 0 ], // h\n\t\t\t\tcoords[ 1 ], // s\n\t\t\t\tMath.max( 0, Math.min( 100, coords[ 2 ] - 10 ) ), // l (reduced by 10%)\n\t\t\t],\n\t\t},\n\t\tsRGB\n\t);\n\n\treturn [\n\t\t[\n\t\t\t'--wp-admin-theme-color',\n\t\t\tserialize( to( parsedAccent, sRGB ), { format: 'hex' } ),\n\t\t],\n\t\t[ '--wp-admin-theme-color--rgb', customRgbFormat( parsedAccent ) ],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-10',\n\t\t\tserialize( darker10, { format: 'hex' } ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-10--rgb',\n\t\t\tcustomRgbFormat( darker10 ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-20',\n\t\t\tserialize( darker20, { format: 'hex' } ),\n\t\t],\n\t\t[\n\t\t\t'--wp-admin-theme-color-darker-20--rgb',\n\t\t\tcustomRgbFormat( darker20 ),\n\t\t],\n\t];\n}\n\nfunction colorTokensCSS(\n\tcomputedColorRamps: Map< string, RampResult >\n): Entry[] {\n\tconst entries: Entry[] = [];\n\n\tfor ( const [ rampName, { ramp } ] of computedColorRamps ) {\n\t\tfor ( const [ tokenName, tokenValue ] of Object.entries( ramp ) ) {\n\t\t\tconst key = `${ rampName }-${ tokenName }`;\n\t\t\tconst aliasedBy = colorTokens[ key ] ?? [];\n\t\t\tfor ( const aliasedId of aliasedBy ) {\n\t\t\t\tentries.push( [\n\t\t\t\t\t`--wpds-color-${ aliasedId }`,\n\t\t\t\t\ttokenValue.color,\n\t\t\t\t] );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn entries;\n}\n\nfunction generateStyles( {\n\tprimary,\n\tcomputedColorRamps,\n}: {\n\tprimary: string;\n\tcomputedColorRamps: Map< string, RampResult >;\n} ): CSSProperties {\n\treturn Object.fromEntries(\n\t\t[\n\t\t\t// Semantic color tokens\n\t\t\tcolorTokensCSS( computedColorRamps ),\n\t\t\t// Legacy overrides\n\t\t\tlegacyWpAdminThemeOverridesCSS( primary ),\n\t\t\tlegacyWpComponentsOverridesCSS,\n\t\t].flat()\n\t);\n}\n\nexport function useThemeProviderStyles( {\n\tcolor = {},\n}: {\n\tcolor?: ThemeProviderProps[ 'color' ];\n} = {} ) {\n\tconst { resolvedSettings: inheritedSettings } = useContext( ThemeContext );\n\n\t// Compute settings:\n\t// - used provided prop value;\n\t// - otherwise, use inherited value from parent instance;\n\t// - otherwise, use fallback value (where applicable).\n\tconst primary =\n\t\tcolor.primary ??\n\t\tinheritedSettings.color?.primary ??\n\t\tDEFAULT_SEED_COLORS.primary;\n\tconst bg =\n\t\tcolor.bg ?? inheritedSettings.color?.bg ?? DEFAULT_SEED_COLORS.bg;\n\n\tconst resolvedSettings = useMemo(\n\t\t() => ( {\n\t\t\tcolor: {\n\t\t\t\tprimary,\n\t\t\t\tbg,\n\t\t\t},\n\t\t} ),\n\t\t[ primary, bg ]\n\t);\n\n\tconst themeProviderStyles = useMemo( () => {\n\t\t// Determine which seeds are needed for generating ramps.\n\t\tconst seeds = {\n\t\t\t...DEFAULT_SEED_COLORS,\n\t\t\tbg,\n\t\t\tprimary,\n\t\t};\n\n\t\t// Generate ramps.\n\t\tconst computedColorRamps = new Map< string, RampResult >();\n\t\tconst bgRamp = getCachedBgRamp( seeds.bg );\n\t\tObject.entries( seeds ).forEach( ( [ rampName, seed ] ) => {\n\t\t\tif ( rampName === 'bg' ) {\n\t\t\t\tcomputedColorRamps.set( rampName, bgRamp );\n\t\t\t} else {\n\t\t\t\tcomputedColorRamps.set(\n\t\t\t\t\trampName,\n\t\t\t\t\tgetCachedAccentRamp( seed, bgRamp )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\n\t\treturn generateStyles( {\n\t\t\tprimary: seeds.primary,\n\t\t\tcomputedColorRamps,\n\t\t} );\n\t}, [ primary, bg ] );\n\n\treturn {\n\t\tresolvedSettings,\n\t\tthemeProviderStyles,\n\t};\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["memoize", "colorTokens"]
7
7
  }