@oxyhq/bloom 0.36.0 → 0.37.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 (235) hide show
  1. package/lib/commonjs/theme/build-theme.js +31 -43
  2. package/lib/commonjs/theme/build-theme.js.map +1 -1
  3. package/lib/commonjs/theme/color-engine/cam16.js +161 -0
  4. package/lib/commonjs/theme/color-engine/cam16.js.map +1 -0
  5. package/lib/commonjs/theme/color-engine/color-role.js +183 -0
  6. package/lib/commonjs/theme/color-engine/color-role.js.map +1 -0
  7. package/lib/commonjs/theme/color-engine/color-roles.js +416 -0
  8. package/lib/commonjs/theme/color-engine/color-roles.js.map +1 -0
  9. package/lib/commonjs/theme/color-engine/color-utils.js +157 -0
  10. package/lib/commonjs/theme/color-engine/color-utils.js.map +1 -0
  11. package/lib/commonjs/theme/color-engine/contrast-curve.js +32 -0
  12. package/lib/commonjs/theme/color-engine/contrast-curve.js.map +1 -0
  13. package/lib/commonjs/theme/color-engine/contrast.js +70 -0
  14. package/lib/commonjs/theme/color-engine/contrast.js.map +1 -0
  15. package/lib/commonjs/theme/color-engine/dislike-analyzer.js +26 -0
  16. package/lib/commonjs/theme/color-engine/dislike-analyzer.js.map +1 -0
  17. package/lib/commonjs/theme/color-engine/dynamic-scheme.js +70 -0
  18. package/lib/commonjs/theme/color-engine/dynamic-scheme.js.map +1 -0
  19. package/lib/commonjs/theme/color-engine/hct-solver.js +236 -0
  20. package/lib/commonjs/theme/color-engine/hct-solver.js.map +1 -0
  21. package/lib/commonjs/theme/color-engine/hct.js +67 -0
  22. package/lib/commonjs/theme/color-engine/hct.js.map +1 -0
  23. package/lib/commonjs/theme/color-engine/index.js +173 -0
  24. package/lib/commonjs/theme/color-engine/index.js.map +1 -0
  25. package/lib/commonjs/theme/color-engine/lab-point-provider.js +32 -0
  26. package/lib/commonjs/theme/color-engine/lab-point-provider.js.map +1 -0
  27. package/lib/commonjs/theme/color-engine/math-utils.js +77 -0
  28. package/lib/commonjs/theme/color-engine/math-utils.js.map +1 -0
  29. package/lib/commonjs/theme/color-engine/quantizer-map.js +24 -0
  30. package/lib/commonjs/theme/color-engine/quantizer-map.js.map +1 -0
  31. package/lib/commonjs/theme/color-engine/quantizer-wu.js +266 -0
  32. package/lib/commonjs/theme/color-engine/quantizer-wu.js.map +1 -0
  33. package/lib/commonjs/theme/color-engine/scheme-variants.js +102 -0
  34. package/lib/commonjs/theme/color-engine/scheme-variants.js.map +1 -0
  35. package/lib/commonjs/theme/color-engine/score.js +80 -0
  36. package/lib/commonjs/theme/color-engine/score.js.map +1 -0
  37. package/lib/commonjs/theme/color-engine/seed-from-image.js +73 -0
  38. package/lib/commonjs/theme/color-engine/seed-from-image.js.map +1 -0
  39. package/lib/commonjs/theme/color-engine/tonal-palette.js +95 -0
  40. package/lib/commonjs/theme/color-engine/tonal-palette.js.map +1 -0
  41. package/lib/commonjs/theme/color-engine/tone-delta-pair.js +26 -0
  42. package/lib/commonjs/theme/color-engine/tone-delta-pair.js.map +1 -0
  43. package/lib/commonjs/theme/color-engine/variant.js +26 -0
  44. package/lib/commonjs/theme/color-engine/variant.js.map +1 -0
  45. package/lib/commonjs/theme/color-engine/viewing-conditions.js +61 -0
  46. package/lib/commonjs/theme/color-engine/viewing-conditions.js.map +1 -0
  47. package/lib/commonjs/theme/color-presets.js +44 -572
  48. package/lib/commonjs/theme/color-presets.js.map +1 -1
  49. package/lib/commonjs/theme/preset-vars.js +64 -47
  50. package/lib/commonjs/theme/preset-vars.js.map +1 -1
  51. package/lib/module/theme/build-theme.js +32 -44
  52. package/lib/module/theme/build-theme.js.map +1 -1
  53. package/lib/module/theme/color-engine/cam16.js +155 -0
  54. package/lib/module/theme/color-engine/cam16.js.map +1 -0
  55. package/lib/module/theme/color-engine/color-role.js +177 -0
  56. package/lib/module/theme/color-engine/color-role.js.map +1 -0
  57. package/lib/module/theme/color-engine/color-roles.js +411 -0
  58. package/lib/module/theme/color-engine/color-roles.js.map +1 -0
  59. package/lib/module/theme/color-engine/color-utils.js +135 -0
  60. package/lib/module/theme/color-engine/color-utils.js.map +1 -0
  61. package/lib/module/theme/color-engine/contrast-curve.js +26 -0
  62. package/lib/module/theme/color-engine/contrast-curve.js.map +1 -0
  63. package/lib/module/theme/color-engine/contrast.js +61 -0
  64. package/lib/module/theme/color-engine/contrast.js.map +1 -0
  65. package/lib/module/theme/color-engine/dislike-analyzer.js +20 -0
  66. package/lib/module/theme/color-engine/dislike-analyzer.js.map +1 -0
  67. package/lib/module/theme/color-engine/dynamic-scheme.js +65 -0
  68. package/lib/module/theme/color-engine/dynamic-scheme.js.map +1 -0
  69. package/lib/module/theme/color-engine/hct-solver.js +231 -0
  70. package/lib/module/theme/color-engine/hct-solver.js.map +1 -0
  71. package/lib/module/theme/color-engine/hct.js +61 -0
  72. package/lib/module/theme/color-engine/hct.js.map +1 -0
  73. package/lib/module/theme/color-engine/index.js +57 -0
  74. package/lib/module/theme/color-engine/index.js.map +1 -0
  75. package/lib/module/theme/color-engine/lab-point-provider.js +25 -0
  76. package/lib/module/theme/color-engine/lab-point-provider.js.map +1 -0
  77. package/lib/module/theme/color-engine/math-utils.js +65 -0
  78. package/lib/module/theme/color-engine/math-utils.js.map +1 -0
  79. package/lib/module/theme/color-engine/quantizer-map.js +20 -0
  80. package/lib/module/theme/color-engine/quantizer-map.js.map +1 -0
  81. package/lib/module/theme/color-engine/quantizer-wu.js +261 -0
  82. package/lib/module/theme/color-engine/quantizer-wu.js.map +1 -0
  83. package/lib/module/theme/color-engine/scheme-variants.js +93 -0
  84. package/lib/module/theme/color-engine/scheme-variants.js.map +1 -0
  85. package/lib/module/theme/color-engine/score.js +75 -0
  86. package/lib/module/theme/color-engine/score.js.map +1 -0
  87. package/lib/module/theme/color-engine/seed-from-image.js +67 -0
  88. package/lib/module/theme/color-engine/seed-from-image.js.map +1 -0
  89. package/lib/module/theme/color-engine/tonal-palette.js +89 -0
  90. package/lib/module/theme/color-engine/tonal-palette.js.map +1 -0
  91. package/lib/module/theme/color-engine/tone-delta-pair.js +21 -0
  92. package/lib/module/theme/color-engine/tone-delta-pair.js.map +1 -0
  93. package/lib/module/theme/color-engine/variant.js +22 -0
  94. package/lib/module/theme/color-engine/variant.js.map +1 -0
  95. package/lib/module/theme/color-engine/viewing-conditions.js +55 -0
  96. package/lib/module/theme/color-engine/viewing-conditions.js.map +1 -0
  97. package/lib/module/theme/color-presets.js +44 -572
  98. package/lib/module/theme/color-presets.js.map +1 -1
  99. package/lib/module/theme/preset-vars.js +64 -46
  100. package/lib/module/theme/preset-vars.js.map +1 -1
  101. package/lib/typescript/commonjs/theme/build-theme.d.ts.map +1 -1
  102. package/lib/typescript/commonjs/theme/color-engine/cam16.d.ts +26 -0
  103. package/lib/typescript/commonjs/theme/color-engine/cam16.d.ts.map +1 -0
  104. package/lib/typescript/commonjs/theme/color-engine/color-role.d.ts +36 -0
  105. package/lib/typescript/commonjs/theme/color-engine/color-role.d.ts.map +1 -0
  106. package/lib/typescript/commonjs/theme/color-engine/color-roles.d.ts +58 -0
  107. package/lib/typescript/commonjs/theme/color-engine/color-roles.d.ts.map +1 -0
  108. package/lib/typescript/commonjs/theme/color-engine/color-utils.d.ts +32 -0
  109. package/lib/typescript/commonjs/theme/color-engine/color-utils.d.ts.map +1 -0
  110. package/lib/typescript/commonjs/theme/color-engine/contrast-curve.d.ts +9 -0
  111. package/lib/typescript/commonjs/theme/color-engine/contrast-curve.d.ts.map +1 -0
  112. package/lib/typescript/commonjs/theme/color-engine/contrast.d.ts +12 -0
  113. package/lib/typescript/commonjs/theme/color-engine/contrast.d.ts.map +1 -0
  114. package/lib/typescript/commonjs/theme/color-engine/dislike-analyzer.d.ts +11 -0
  115. package/lib/typescript/commonjs/theme/color-engine/dislike-analyzer.d.ts.map +1 -0
  116. package/lib/typescript/commonjs/theme/color-engine/dynamic-scheme.d.ts +47 -0
  117. package/lib/typescript/commonjs/theme/color-engine/dynamic-scheme.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/theme/color-engine/hct-solver.d.ts +6 -0
  119. package/lib/typescript/commonjs/theme/color-engine/hct-solver.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/theme/color-engine/hct.d.ts +20 -0
  121. package/lib/typescript/commonjs/theme/color-engine/hct.d.ts.map +1 -0
  122. package/lib/typescript/commonjs/theme/color-engine/index.d.ts +44 -0
  123. package/lib/typescript/commonjs/theme/color-engine/index.d.ts.map +1 -0
  124. package/lib/typescript/commonjs/theme/color-engine/lab-point-provider.d.ts +6 -0
  125. package/lib/typescript/commonjs/theme/color-engine/lab-point-provider.d.ts.map +1 -0
  126. package/lib/typescript/commonjs/theme/color-engine/math-utils.d.ts +46 -0
  127. package/lib/typescript/commonjs/theme/color-engine/math-utils.d.ts.map +1 -0
  128. package/lib/typescript/commonjs/theme/color-engine/quantizer-map.d.ts +3 -0
  129. package/lib/typescript/commonjs/theme/color-engine/quantizer-map.d.ts.map +1 -0
  130. package/lib/typescript/commonjs/theme/color-engine/quantizer-wu.d.ts +3 -0
  131. package/lib/typescript/commonjs/theme/color-engine/quantizer-wu.d.ts.map +1 -0
  132. package/lib/typescript/commonjs/theme/color-engine/scheme-variants.d.ts +23 -0
  133. package/lib/typescript/commonjs/theme/color-engine/scheme-variants.d.ts.map +1 -0
  134. package/lib/typescript/commonjs/theme/color-engine/score.d.ts +8 -0
  135. package/lib/typescript/commonjs/theme/color-engine/score.d.ts.map +1 -0
  136. package/lib/typescript/commonjs/theme/color-engine/seed-from-image.d.ts +13 -0
  137. package/lib/typescript/commonjs/theme/color-engine/seed-from-image.d.ts.map +1 -0
  138. package/lib/typescript/commonjs/theme/color-engine/tonal-palette.d.ts +24 -0
  139. package/lib/typescript/commonjs/theme/color-engine/tonal-palette.d.ts.map +1 -0
  140. package/lib/typescript/commonjs/theme/color-engine/tone-delta-pair.d.ts +19 -0
  141. package/lib/typescript/commonjs/theme/color-engine/tone-delta-pair.d.ts.map +1 -0
  142. package/lib/typescript/commonjs/theme/color-engine/variant.d.ts +19 -0
  143. package/lib/typescript/commonjs/theme/color-engine/variant.d.ts.map +1 -0
  144. package/lib/typescript/commonjs/theme/color-engine/viewing-conditions.d.ts +18 -0
  145. package/lib/typescript/commonjs/theme/color-engine/viewing-conditions.d.ts.map +1 -0
  146. package/lib/typescript/commonjs/theme/color-presets.d.ts +25 -20
  147. package/lib/typescript/commonjs/theme/color-presets.d.ts.map +1 -1
  148. package/lib/typescript/commonjs/theme/preset-vars.d.ts +16 -12
  149. package/lib/typescript/commonjs/theme/preset-vars.d.ts.map +1 -1
  150. package/lib/typescript/module/theme/build-theme.d.ts.map +1 -1
  151. package/lib/typescript/module/theme/color-engine/cam16.d.ts +26 -0
  152. package/lib/typescript/module/theme/color-engine/cam16.d.ts.map +1 -0
  153. package/lib/typescript/module/theme/color-engine/color-role.d.ts +36 -0
  154. package/lib/typescript/module/theme/color-engine/color-role.d.ts.map +1 -0
  155. package/lib/typescript/module/theme/color-engine/color-roles.d.ts +58 -0
  156. package/lib/typescript/module/theme/color-engine/color-roles.d.ts.map +1 -0
  157. package/lib/typescript/module/theme/color-engine/color-utils.d.ts +32 -0
  158. package/lib/typescript/module/theme/color-engine/color-utils.d.ts.map +1 -0
  159. package/lib/typescript/module/theme/color-engine/contrast-curve.d.ts +9 -0
  160. package/lib/typescript/module/theme/color-engine/contrast-curve.d.ts.map +1 -0
  161. package/lib/typescript/module/theme/color-engine/contrast.d.ts +12 -0
  162. package/lib/typescript/module/theme/color-engine/contrast.d.ts.map +1 -0
  163. package/lib/typescript/module/theme/color-engine/dislike-analyzer.d.ts +11 -0
  164. package/lib/typescript/module/theme/color-engine/dislike-analyzer.d.ts.map +1 -0
  165. package/lib/typescript/module/theme/color-engine/dynamic-scheme.d.ts +47 -0
  166. package/lib/typescript/module/theme/color-engine/dynamic-scheme.d.ts.map +1 -0
  167. package/lib/typescript/module/theme/color-engine/hct-solver.d.ts +6 -0
  168. package/lib/typescript/module/theme/color-engine/hct-solver.d.ts.map +1 -0
  169. package/lib/typescript/module/theme/color-engine/hct.d.ts +20 -0
  170. package/lib/typescript/module/theme/color-engine/hct.d.ts.map +1 -0
  171. package/lib/typescript/module/theme/color-engine/index.d.ts +44 -0
  172. package/lib/typescript/module/theme/color-engine/index.d.ts.map +1 -0
  173. package/lib/typescript/module/theme/color-engine/lab-point-provider.d.ts +6 -0
  174. package/lib/typescript/module/theme/color-engine/lab-point-provider.d.ts.map +1 -0
  175. package/lib/typescript/module/theme/color-engine/math-utils.d.ts +46 -0
  176. package/lib/typescript/module/theme/color-engine/math-utils.d.ts.map +1 -0
  177. package/lib/typescript/module/theme/color-engine/quantizer-map.d.ts +3 -0
  178. package/lib/typescript/module/theme/color-engine/quantizer-map.d.ts.map +1 -0
  179. package/lib/typescript/module/theme/color-engine/quantizer-wu.d.ts +3 -0
  180. package/lib/typescript/module/theme/color-engine/quantizer-wu.d.ts.map +1 -0
  181. package/lib/typescript/module/theme/color-engine/scheme-variants.d.ts +23 -0
  182. package/lib/typescript/module/theme/color-engine/scheme-variants.d.ts.map +1 -0
  183. package/lib/typescript/module/theme/color-engine/score.d.ts +8 -0
  184. package/lib/typescript/module/theme/color-engine/score.d.ts.map +1 -0
  185. package/lib/typescript/module/theme/color-engine/seed-from-image.d.ts +13 -0
  186. package/lib/typescript/module/theme/color-engine/seed-from-image.d.ts.map +1 -0
  187. package/lib/typescript/module/theme/color-engine/tonal-palette.d.ts +24 -0
  188. package/lib/typescript/module/theme/color-engine/tonal-palette.d.ts.map +1 -0
  189. package/lib/typescript/module/theme/color-engine/tone-delta-pair.d.ts +19 -0
  190. package/lib/typescript/module/theme/color-engine/tone-delta-pair.d.ts.map +1 -0
  191. package/lib/typescript/module/theme/color-engine/variant.d.ts +19 -0
  192. package/lib/typescript/module/theme/color-engine/variant.d.ts.map +1 -0
  193. package/lib/typescript/module/theme/color-engine/viewing-conditions.d.ts +18 -0
  194. package/lib/typescript/module/theme/color-engine/viewing-conditions.d.ts.map +1 -0
  195. package/lib/typescript/module/theme/color-presets.d.ts +25 -20
  196. package/lib/typescript/module/theme/color-presets.d.ts.map +1 -1
  197. package/lib/typescript/module/theme/preset-vars.d.ts +16 -12
  198. package/lib/typescript/module/theme/preset-vars.d.ts.map +1 -1
  199. package/package.json +1 -1
  200. package/src/__tests__/BloomThemeProvider.test.tsx +9 -4
  201. package/src/__tests__/native-root-vars.test.ts +8 -4
  202. package/src/__tests__/preset-vars.test.ts +66 -37
  203. package/src/__tests__/theme.test.ts +20 -12
  204. package/src/theme/__tests__/__fixtures__/golden-resolved-tokens.json +509 -509
  205. package/src/theme/__tests__/__snapshots__/visual-gallery.test.tsx.snap +613 -613
  206. package/src/theme/__tests__/color-engine-golden.test.ts +81 -0
  207. package/src/theme/__tests__/fixtures/color-engine-golden.json +1 -0
  208. package/src/theme/__tests__/golden-tokens.test.ts +6 -7
  209. package/src/theme/__tests__/runtime-contract.test.ts +8 -8
  210. package/src/theme/__tests__/theme-colors-parity.test.ts +44 -88
  211. package/src/theme/build-theme.ts +32 -44
  212. package/src/theme/color-engine/cam16.ts +179 -0
  213. package/src/theme/color-engine/color-role.ts +217 -0
  214. package/src/theme/color-engine/color-roles.ts +435 -0
  215. package/src/theme/color-engine/color-utils.ts +157 -0
  216. package/src/theme/color-engine/contrast-curve.ts +25 -0
  217. package/src/theme/color-engine/contrast.ts +59 -0
  218. package/src/theme/color-engine/dislike-analyzer.ts +19 -0
  219. package/src/theme/color-engine/dynamic-scheme.ts +90 -0
  220. package/src/theme/color-engine/hct-solver.ts +263 -0
  221. package/src/theme/color-engine/hct.ts +69 -0
  222. package/src/theme/color-engine/index.ts +73 -0
  223. package/src/theme/color-engine/lab-point-provider.ts +26 -0
  224. package/src/theme/color-engine/math-utils.ts +69 -0
  225. package/src/theme/color-engine/quantizer-map.ts +17 -0
  226. package/src/theme/color-engine/quantizer-wu.ts +320 -0
  227. package/src/theme/color-engine/scheme-variants.ts +113 -0
  228. package/src/theme/color-engine/score.ts +82 -0
  229. package/src/theme/color-engine/seed-from-image.ts +64 -0
  230. package/src/theme/color-engine/tonal-palette.ts +94 -0
  231. package/src/theme/color-engine/tone-delta-pair.ts +21 -0
  232. package/src/theme/color-engine/variant.ts +18 -0
  233. package/src/theme/color-engine/viewing-conditions.ts +77 -0
  234. package/src/theme/color-presets.ts +54 -631
  235. package/src/theme/preset-vars.ts +65 -49
@@ -1,24 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  /**
4
- * Palette tokens for a single mode (light or dark) of a color preset.
4
+ * A single colour preset: a brand SEED colour plus the tonal scheme variant to
5
+ * derive its full role set with.
5
6
  *
6
- * Keys carry a leading `--` for historical reasons (shadcn-style CSS variable
7
- * names) keep in mind the values are platform-agnostic **raw HSL triples**
8
- * (e.g. `'185 100% 20%'` or `'185 100% 20% / 0.5'`), not CSS-resolved colors.
9
- * The single canonical resolver `getResolvedTokens` (in `token-registry.ts`)
10
- * converts this raw map to sRGB `rgb(...)` for every runtime write — the same
11
- * values drive BOTH layers:
12
- * - the web layer: `getResolvedTokens`'s `rgb(...)` strings are written to
13
- * `document.documentElement` / a `BloomColorScope` element, so `var(--x)` —
14
- * the form Tailwind v4 `@theme inline` compiles its color utilities to —
15
- * resolves to a valid color directly, and
16
- * - the native layer (`buildTheme` resolves the raw triples into `hsl(...)`
17
- * strings consumable by React Native styles; `native-root-vars.native.ts`
18
- * writes the same canonical `rgb(...)` values into react-native-css's
19
- * `rootVariables` family).
20
- *
21
- * The `--` prefix is an implementation detail we will drop in a future major.
7
+ * Every preset's palette is now GENERATED by Bloom's dependency-free colour
8
+ * engine (`color-engine/`) from this seed no hand-authored HSL triples. The
9
+ * engine's `generateRoleColors({ seed, variant, isDark })` yields the full
10
+ * Material-3 role set for light and dark; `getPresetVars` (in `preset-vars.ts`)
11
+ * maps those roles onto Bloom's canonical token names. A user-picked colour
12
+ * flows through the identical path — a preset is just a fixed seed.
13
+ */
14
+
15
+ /**
16
+ * Historically each preset carried a full light/dark map of raw HSL triples.
17
+ * That map is gone the engine derives every role from {@link AppColorPreset.hex}.
18
+ * The type alias is retained for the public `PresetTokens` export shape (the
19
+ * resolved `--token -> value` record that `getPresetVars` produces).
22
20
  */
23
21
 
24
22
  export const APP_COLOR_NAMES = ['teal', 'blue', 'green', 'amber', 'yellow', 'red', 'purple', 'pink', 'sky', 'orange', 'mint', 'oxy', 'faircoin'];
@@ -43,604 +41,78 @@ export const HEX_TO_APP_COLOR = {
43
41
  export function hexToAppColorName(hex) {
44
42
  return HEX_TO_APP_COLOR[hex.toLowerCase()] ?? 'teal';
45
43
  }
44
+
45
+ /**
46
+ * The 13 named presets, each a brand seed + scheme variant. The engine derives
47
+ * the full role set (light + dark) from the seed. Seeds are the brand hex of
48
+ * each preset; `oxy` reads most faithfully as `vibrant`, everything else keeps a
49
+ * bold `vibrant` derivation to match the prior saturated palette.
50
+ */
46
51
  export const APP_COLOR_PRESETS = {
47
52
  teal: {
48
53
  name: 'teal',
49
54
  hex: '#005c67',
50
- light: {
51
- '--background': '185 55% 96%',
52
- '--foreground': '0 0% 12%',
53
- '--surface': '185 58% 94%',
54
- '--surface-foreground': '0 0% 12%',
55
- '--popover': '185 55% 97%',
56
- '--popover-foreground': '0 0% 12%',
57
- '--primary': '185 100% 20%',
58
- '--primary-foreground': '0 0% 100%',
59
- '--secondary': '185 55% 92%',
60
- '--secondary-foreground': '0 0% 12%',
61
- '--muted': '185 55% 92%',
62
- '--muted-foreground': '185 5% 42%',
63
- '--accent': '185 55% 92%',
64
- '--accent-foreground': '0 0% 12%',
65
- '--destructive': '0 84% 60%',
66
- '--border': '185 40% 87%',
67
- '--input': '185 40% 87%',
68
- '--ring': '185 100% 20%',
69
- '--sidebar': '185 58% 94%'
70
- },
71
- dark: {
72
- '--background': '185 50% 5%',
73
- '--foreground': '0 0% 93%',
74
- '--surface': '185 20% 18%',
75
- '--surface-foreground': '0 0% 93%',
76
- '--popover': '185 20% 18%',
77
- '--popover-foreground': '0 0% 93%',
78
- '--primary': '185 100% 20%',
79
- '--primary-foreground': '0 0% 100%',
80
- '--secondary': '185 20% 18%',
81
- '--secondary-foreground': '0 0% 93%',
82
- '--muted': '185 18% 20%',
83
- '--muted-foreground': '0 0% 70%',
84
- '--accent': '185 18% 20%',
85
- '--accent-foreground': '0 0% 93%',
86
- '--destructive': '0 84% 60%',
87
- '--border': '185 12% 20%',
88
- '--input': '185 10% 23%',
89
- '--ring': '185 100% 20%',
90
- '--sidebar': '185 30% 8%'
91
- }
55
+ variant: 'vibrant'
92
56
  },
93
57
  blue: {
94
58
  name: 'blue',
95
- hex: '#1D9BF0',
96
- light: {
97
- '--background': '205 55% 96%',
98
- '--foreground': '0 0% 12%',
99
- '--surface': '205 58% 94%',
100
- '--surface-foreground': '0 0% 12%',
101
- '--popover': '205 55% 97%',
102
- '--popover-foreground': '0 0% 12%',
103
- '--primary': '205 87% 53%',
104
- '--primary-foreground': '0 0% 100%',
105
- '--secondary': '205 55% 92%',
106
- '--secondary-foreground': '0 0% 12%',
107
- '--muted': '205 55% 92%',
108
- '--muted-foreground': '205 5% 42%',
109
- '--accent': '205 55% 92%',
110
- '--accent-foreground': '0 0% 12%',
111
- '--destructive': '0 84% 60%',
112
- '--border': '205 40% 87%',
113
- '--input': '205 40% 87%',
114
- '--ring': '205 87% 53%',
115
- '--sidebar': '205 58% 94%'
116
- },
117
- dark: {
118
- '--background': '205 50% 5%',
119
- '--foreground': '0 0% 93%',
120
- '--surface': '205 20% 18%',
121
- '--surface-foreground': '0 0% 93%',
122
- '--popover': '205 20% 18%',
123
- '--popover-foreground': '0 0% 93%',
124
- '--primary': '205 87% 53%',
125
- '--primary-foreground': '0 0% 100%',
126
- '--secondary': '205 20% 18%',
127
- '--secondary-foreground': '0 0% 93%',
128
- '--muted': '205 18% 20%',
129
- '--muted-foreground': '0 0% 70%',
130
- '--accent': '205 18% 20%',
131
- '--accent-foreground': '0 0% 93%',
132
- '--destructive': '0 84% 60%',
133
- '--border': '205 12% 20%',
134
- '--input': '205 10% 23%',
135
- '--ring': '205 87% 53%',
136
- '--sidebar': '205 30% 8%'
137
- }
59
+ hex: '#1d9bf0',
60
+ variant: 'vibrant'
138
61
  },
139
62
  green: {
140
63
  name: 'green',
141
- hex: '#10B981',
142
- light: {
143
- '--background': '160 55% 96%',
144
- '--foreground': '0 0% 12%',
145
- '--surface': '160 58% 94%',
146
- '--surface-foreground': '0 0% 12%',
147
- '--popover': '160 55% 97%',
148
- '--popover-foreground': '0 0% 12%',
149
- '--primary': '160 84% 39%',
150
- '--primary-foreground': '0 0% 100%',
151
- '--secondary': '160 55% 92%',
152
- '--secondary-foreground': '0 0% 12%',
153
- '--muted': '160 55% 92%',
154
- '--muted-foreground': '160 5% 42%',
155
- '--accent': '160 55% 92%',
156
- '--accent-foreground': '0 0% 12%',
157
- '--destructive': '0 84% 60%',
158
- '--border': '160 40% 87%',
159
- '--input': '160 40% 87%',
160
- '--ring': '160 84% 39%',
161
- '--sidebar': '160 58% 94%'
162
- },
163
- dark: {
164
- '--background': '160 50% 5%',
165
- '--foreground': '0 0% 93%',
166
- '--surface': '160 20% 18%',
167
- '--surface-foreground': '0 0% 93%',
168
- '--popover': '160 20% 18%',
169
- '--popover-foreground': '0 0% 93%',
170
- '--primary': '160 84% 39%',
171
- '--primary-foreground': '0 0% 100%',
172
- '--secondary': '160 20% 18%',
173
- '--secondary-foreground': '0 0% 93%',
174
- '--muted': '160 18% 20%',
175
- '--muted-foreground': '0 0% 70%',
176
- '--accent': '160 18% 20%',
177
- '--accent-foreground': '0 0% 93%',
178
- '--destructive': '0 84% 60%',
179
- '--border': '160 12% 20%',
180
- '--input': '160 10% 23%',
181
- '--ring': '160 84% 39%',
182
- '--sidebar': '160 30% 8%'
183
- }
64
+ hex: '#10b981',
65
+ variant: 'vibrant'
184
66
  },
185
67
  amber: {
186
68
  name: 'amber',
187
- hex: '#F59E0B',
188
- light: {
189
- '--background': '38 55% 96%',
190
- '--foreground': '0 0% 12%',
191
- '--surface': '38 58% 94%',
192
- '--surface-foreground': '0 0% 12%',
193
- '--popover': '38 55% 97%',
194
- '--popover-foreground': '0 0% 12%',
195
- '--primary': '38 92% 50%',
196
- '--primary-foreground': '0 0% 0%',
197
- '--secondary': '38 55% 92%',
198
- '--secondary-foreground': '0 0% 12%',
199
- '--muted': '38 55% 92%',
200
- '--muted-foreground': '38 5% 42%',
201
- '--accent': '38 55% 92%',
202
- '--accent-foreground': '0 0% 12%',
203
- '--destructive': '0 84% 60%',
204
- '--border': '38 40% 87%',
205
- '--input': '38 40% 87%',
206
- '--ring': '38 92% 50%',
207
- '--sidebar': '38 58% 94%'
208
- },
209
- dark: {
210
- '--background': '38 50% 5%',
211
- '--foreground': '0 0% 93%',
212
- '--surface': '38 20% 18%',
213
- '--surface-foreground': '0 0% 93%',
214
- '--popover': '38 20% 18%',
215
- '--popover-foreground': '0 0% 93%',
216
- '--primary': '38 92% 50%',
217
- '--primary-foreground': '0 0% 0%',
218
- '--secondary': '38 20% 18%',
219
- '--secondary-foreground': '0 0% 93%',
220
- '--muted': '38 18% 20%',
221
- '--muted-foreground': '0 0% 70%',
222
- '--accent': '38 18% 20%',
223
- '--accent-foreground': '0 0% 93%',
224
- '--destructive': '0 84% 60%',
225
- '--border': '38 12% 20%',
226
- '--input': '38 10% 23%',
227
- '--ring': '38 92% 50%',
228
- '--sidebar': '38 30% 8%'
229
- }
69
+ hex: '#f59e0b',
70
+ variant: 'vibrant'
230
71
  },
231
72
  yellow: {
232
73
  name: 'yellow',
233
74
  hex: '#ffc300',
234
- light: {
235
- '--background': '46 55% 96%',
236
- '--foreground': '0 0% 12%',
237
- '--surface': '46 58% 94%',
238
- '--surface-foreground': '0 0% 12%',
239
- '--popover': '46 55% 97%',
240
- '--popover-foreground': '0 0% 12%',
241
- '--primary': '46 100% 50%',
242
- '--primary-foreground': '0 0% 0%',
243
- '--secondary': '46 55% 92%',
244
- '--secondary-foreground': '0 0% 12%',
245
- '--muted': '46 55% 92%',
246
- '--muted-foreground': '46 5% 42%',
247
- '--accent': '46 55% 92%',
248
- '--accent-foreground': '0 0% 12%',
249
- '--destructive': '0 84% 60%',
250
- '--border': '46 40% 87%',
251
- '--input': '46 40% 87%',
252
- '--ring': '46 100% 50%',
253
- '--sidebar': '46 58% 94%'
254
- },
255
- dark: {
256
- '--background': '46 50% 5%',
257
- '--foreground': '0 0% 93%',
258
- '--surface': '46 20% 18%',
259
- '--surface-foreground': '0 0% 93%',
260
- '--popover': '46 20% 18%',
261
- '--popover-foreground': '0 0% 93%',
262
- '--primary': '46 100% 50%',
263
- '--primary-foreground': '0 0% 0%',
264
- '--secondary': '46 20% 18%',
265
- '--secondary-foreground': '0 0% 93%',
266
- '--muted': '46 18% 20%',
267
- '--muted-foreground': '0 0% 70%',
268
- '--accent': '46 18% 20%',
269
- '--accent-foreground': '0 0% 93%',
270
- '--destructive': '0 84% 60%',
271
- '--border': '46 12% 20%',
272
- '--input': '46 10% 23%',
273
- '--ring': '46 100% 50%',
274
- '--sidebar': '46 30% 8%'
275
- }
75
+ variant: 'vibrant'
276
76
  },
277
77
  red: {
278
78
  name: 'red',
279
- hex: '#EF4444',
280
- light: {
281
- '--background': '0 55% 96%',
282
- '--foreground': '0 0% 12%',
283
- '--surface': '0 58% 94%',
284
- '--surface-foreground': '0 0% 12%',
285
- '--popover': '0 55% 97%',
286
- '--popover-foreground': '0 0% 12%',
287
- '--primary': '0 84% 60%',
288
- '--primary-foreground': '0 0% 100%',
289
- '--secondary': '0 55% 92%',
290
- '--secondary-foreground': '0 0% 12%',
291
- '--muted': '0 55% 92%',
292
- '--muted-foreground': '0 5% 42%',
293
- '--accent': '0 55% 92%',
294
- '--accent-foreground': '0 0% 12%',
295
- '--destructive': '0 84% 60%',
296
- '--border': '0 40% 87%',
297
- '--input': '0 40% 87%',
298
- '--ring': '0 84% 60%',
299
- '--sidebar': '0 58% 94%'
300
- },
301
- dark: {
302
- '--background': '0 50% 5%',
303
- '--foreground': '0 0% 93%',
304
- '--surface': '0 20% 18%',
305
- '--surface-foreground': '0 0% 93%',
306
- '--popover': '0 20% 18%',
307
- '--popover-foreground': '0 0% 93%',
308
- '--primary': '0 84% 60%',
309
- '--primary-foreground': '0 0% 100%',
310
- '--secondary': '0 20% 18%',
311
- '--secondary-foreground': '0 0% 93%',
312
- '--muted': '0 18% 20%',
313
- '--muted-foreground': '0 0% 70%',
314
- '--accent': '0 18% 20%',
315
- '--accent-foreground': '0 0% 93%',
316
- '--destructive': '0 84% 60%',
317
- '--border': '0 12% 20%',
318
- '--input': '0 10% 23%',
319
- '--ring': '0 84% 60%',
320
- '--sidebar': '0 30% 8%'
321
- }
79
+ hex: '#ef4444',
80
+ variant: 'vibrant'
322
81
  },
323
82
  purple: {
324
83
  name: 'purple',
325
- hex: '#8B5CF6',
326
- light: {
327
- '--background': '258 55% 96%',
328
- '--foreground': '0 0% 12%',
329
- '--surface': '258 58% 94%',
330
- '--surface-foreground': '0 0% 12%',
331
- '--popover': '258 55% 97%',
332
- '--popover-foreground': '0 0% 12%',
333
- '--primary': '258 90% 66%',
334
- '--primary-foreground': '0 0% 100%',
335
- '--secondary': '258 55% 92%',
336
- '--secondary-foreground': '0 0% 12%',
337
- '--muted': '258 55% 92%',
338
- '--muted-foreground': '258 5% 42%',
339
- '--accent': '258 55% 92%',
340
- '--accent-foreground': '0 0% 12%',
341
- '--destructive': '0 84% 60%',
342
- '--border': '258 40% 87%',
343
- '--input': '258 40% 87%',
344
- '--ring': '258 90% 66%',
345
- '--sidebar': '258 58% 94%'
346
- },
347
- dark: {
348
- '--background': '258 50% 5%',
349
- '--foreground': '0 0% 93%',
350
- '--surface': '258 20% 18%',
351
- '--surface-foreground': '0 0% 93%',
352
- '--popover': '258 20% 18%',
353
- '--popover-foreground': '0 0% 93%',
354
- '--primary': '258 90% 66%',
355
- '--primary-foreground': '0 0% 100%',
356
- '--secondary': '258 20% 18%',
357
- '--secondary-foreground': '0 0% 93%',
358
- '--muted': '258 18% 20%',
359
- '--muted-foreground': '0 0% 70%',
360
- '--accent': '258 18% 20%',
361
- '--accent-foreground': '0 0% 93%',
362
- '--destructive': '0 84% 60%',
363
- '--border': '258 12% 20%',
364
- '--input': '258 10% 23%',
365
- '--ring': '258 90% 66%',
366
- '--sidebar': '258 30% 8%'
367
- }
84
+ hex: '#8b5cf6',
85
+ variant: 'vibrant'
368
86
  },
369
87
  pink: {
370
88
  name: 'pink',
371
- hex: '#EC4899',
372
- light: {
373
- '--background': '330 55% 96%',
374
- '--foreground': '0 0% 12%',
375
- '--surface': '330 58% 94%',
376
- '--surface-foreground': '0 0% 12%',
377
- '--popover': '330 55% 97%',
378
- '--popover-foreground': '0 0% 12%',
379
- '--primary': '330 81% 60%',
380
- '--primary-foreground': '0 0% 100%',
381
- '--secondary': '330 55% 92%',
382
- '--secondary-foreground': '0 0% 12%',
383
- '--muted': '330 55% 92%',
384
- '--muted-foreground': '330 5% 42%',
385
- '--accent': '330 55% 92%',
386
- '--accent-foreground': '0 0% 12%',
387
- '--destructive': '0 84% 60%',
388
- '--border': '330 40% 87%',
389
- '--input': '330 40% 87%',
390
- '--ring': '330 81% 60%',
391
- '--sidebar': '330 58% 94%'
392
- },
393
- dark: {
394
- '--background': '330 50% 5%',
395
- '--foreground': '0 0% 93%',
396
- '--surface': '330 20% 18%',
397
- '--surface-foreground': '0 0% 93%',
398
- '--popover': '330 20% 18%',
399
- '--popover-foreground': '0 0% 93%',
400
- '--primary': '330 81% 60%',
401
- '--primary-foreground': '0 0% 100%',
402
- '--secondary': '330 20% 18%',
403
- '--secondary-foreground': '0 0% 93%',
404
- '--muted': '330 18% 20%',
405
- '--muted-foreground': '0 0% 70%',
406
- '--accent': '330 18% 20%',
407
- '--accent-foreground': '0 0% 93%',
408
- '--destructive': '0 84% 60%',
409
- '--border': '330 12% 20%',
410
- '--input': '330 10% 23%',
411
- '--ring': '330 81% 60%',
412
- '--sidebar': '330 30% 8%'
413
- }
89
+ hex: '#ec4899',
90
+ variant: 'vibrant'
414
91
  },
415
92
  sky: {
416
93
  name: 'sky',
417
- hex: '#0EA5E9',
418
- light: {
419
- '--background': '199 55% 96%',
420
- '--foreground': '0 0% 12%',
421
- '--surface': '199 58% 94%',
422
- '--surface-foreground': '0 0% 12%',
423
- '--popover': '199 55% 97%',
424
- '--popover-foreground': '0 0% 12%',
425
- '--primary': '199 89% 48%',
426
- '--primary-foreground': '0 0% 100%',
427
- '--secondary': '199 55% 92%',
428
- '--secondary-foreground': '0 0% 12%',
429
- '--muted': '199 55% 92%',
430
- '--muted-foreground': '199 5% 42%',
431
- '--accent': '199 55% 92%',
432
- '--accent-foreground': '0 0% 12%',
433
- '--destructive': '0 84% 60%',
434
- '--border': '199 40% 87%',
435
- '--input': '199 40% 87%',
436
- '--ring': '199 89% 48%',
437
- '--sidebar': '199 58% 94%'
438
- },
439
- dark: {
440
- '--background': '199 50% 5%',
441
- '--foreground': '0 0% 93%',
442
- '--surface': '199 20% 18%',
443
- '--surface-foreground': '0 0% 93%',
444
- '--popover': '199 20% 18%',
445
- '--popover-foreground': '0 0% 93%',
446
- '--primary': '199 89% 48%',
447
- '--primary-foreground': '0 0% 100%',
448
- '--secondary': '199 20% 18%',
449
- '--secondary-foreground': '0 0% 93%',
450
- '--muted': '199 18% 20%',
451
- '--muted-foreground': '0 0% 70%',
452
- '--accent': '199 18% 20%',
453
- '--accent-foreground': '0 0% 93%',
454
- '--destructive': '0 84% 60%',
455
- '--border': '199 12% 20%',
456
- '--input': '199 10% 23%',
457
- '--ring': '199 89% 48%',
458
- '--sidebar': '199 30% 8%'
459
- }
94
+ hex: '#0ea5e9',
95
+ variant: 'vibrant'
460
96
  },
461
97
  orange: {
462
98
  name: 'orange',
463
- hex: '#F97316',
464
- light: {
465
- '--background': '25 55% 96%',
466
- '--foreground': '0 0% 12%',
467
- '--surface': '25 58% 94%',
468
- '--surface-foreground': '0 0% 12%',
469
- '--popover': '25 55% 97%',
470
- '--popover-foreground': '0 0% 12%',
471
- '--primary': '25 95% 53%',
472
- '--primary-foreground': '0 0% 100%',
473
- '--secondary': '25 55% 92%',
474
- '--secondary-foreground': '0 0% 12%',
475
- '--muted': '25 55% 92%',
476
- '--muted-foreground': '25 5% 42%',
477
- '--accent': '25 55% 92%',
478
- '--accent-foreground': '0 0% 12%',
479
- '--destructive': '0 84% 60%',
480
- '--border': '25 40% 87%',
481
- '--input': '25 40% 87%',
482
- '--ring': '25 95% 53%',
483
- '--sidebar': '25 58% 94%'
484
- },
485
- dark: {
486
- '--background': '25 50% 5%',
487
- '--foreground': '0 0% 93%',
488
- '--surface': '25 20% 18%',
489
- '--surface-foreground': '0 0% 93%',
490
- '--popover': '25 20% 18%',
491
- '--popover-foreground': '0 0% 93%',
492
- '--primary': '25 95% 53%',
493
- '--primary-foreground': '0 0% 100%',
494
- '--secondary': '25 20% 18%',
495
- '--secondary-foreground': '0 0% 93%',
496
- '--muted': '25 18% 20%',
497
- '--muted-foreground': '0 0% 70%',
498
- '--accent': '25 18% 20%',
499
- '--accent-foreground': '0 0% 93%',
500
- '--destructive': '0 84% 60%',
501
- '--border': '25 12% 20%',
502
- '--input': '25 10% 23%',
503
- '--ring': '25 95% 53%',
504
- '--sidebar': '25 30% 8%'
505
- }
99
+ hex: '#f97316',
100
+ variant: 'vibrant'
506
101
  },
507
102
  mint: {
508
103
  name: 'mint',
509
- hex: '#14B8A6',
510
- light: {
511
- '--background': '173 55% 96%',
512
- '--foreground': '0 0% 12%',
513
- '--surface': '173 58% 94%',
514
- '--surface-foreground': '0 0% 12%',
515
- '--popover': '173 55% 97%',
516
- '--popover-foreground': '0 0% 12%',
517
- '--primary': '173 80% 40%',
518
- '--primary-foreground': '0 0% 100%',
519
- '--secondary': '173 55% 92%',
520
- '--secondary-foreground': '0 0% 12%',
521
- '--muted': '173 55% 92%',
522
- '--muted-foreground': '173 5% 42%',
523
- '--accent': '173 55% 92%',
524
- '--accent-foreground': '0 0% 12%',
525
- '--destructive': '0 84% 60%',
526
- '--border': '173 40% 87%',
527
- '--input': '173 40% 87%',
528
- '--ring': '173 80% 40%',
529
- '--sidebar': '173 58% 94%'
530
- },
531
- dark: {
532
- '--background': '173 50% 5%',
533
- '--foreground': '0 0% 93%',
534
- '--surface': '173 20% 18%',
535
- '--surface-foreground': '0 0% 93%',
536
- '--popover': '173 20% 18%',
537
- '--popover-foreground': '0 0% 93%',
538
- '--primary': '173 80% 40%',
539
- '--primary-foreground': '0 0% 100%',
540
- '--secondary': '173 20% 18%',
541
- '--secondary-foreground': '0 0% 93%',
542
- '--muted': '173 18% 20%',
543
- '--muted-foreground': '0 0% 70%',
544
- '--accent': '173 18% 20%',
545
- '--accent-foreground': '0 0% 93%',
546
- '--destructive': '0 84% 60%',
547
- '--border': '173 12% 20%',
548
- '--input': '173 10% 23%',
549
- '--ring': '173 80% 40%',
550
- '--sidebar': '173 30% 8%'
551
- }
104
+ hex: '#14b8a6',
105
+ variant: 'vibrant'
552
106
  },
553
107
  oxy: {
554
108
  name: 'oxy',
555
109
  hex: '#c46ede',
556
- light: {
557
- '--background': '277 55% 96%',
558
- '--foreground': '0 0% 12%',
559
- '--surface': '277 58% 94%',
560
- '--surface-foreground': '0 0% 12%',
561
- '--popover': '277 55% 97%',
562
- '--popover-foreground': '0 0% 12%',
563
- '--primary': '277 66% 56%',
564
- '--primary-foreground': '0 0% 100%',
565
- '--secondary': '277 55% 92%',
566
- '--secondary-foreground': '0 0% 12%',
567
- '--muted': '277 55% 92%',
568
- '--muted-foreground': '277 5% 42%',
569
- '--accent': '277 55% 92%',
570
- '--accent-foreground': '0 0% 12%',
571
- '--destructive': '0 84% 60%',
572
- '--border': '277 40% 87%',
573
- '--input': '277 40% 87%',
574
- '--ring': '277 66% 56%',
575
- '--sidebar': '277 58% 94%'
576
- },
577
- dark: {
578
- '--background': '277 50% 5%',
579
- '--foreground': '0 0% 93%',
580
- '--surface': '277 20% 18%',
581
- '--surface-foreground': '0 0% 93%',
582
- '--popover': '277 20% 18%',
583
- '--popover-foreground': '0 0% 93%',
584
- '--primary': '277 66% 56%',
585
- '--primary-foreground': '0 0% 100%',
586
- '--secondary': '277 20% 18%',
587
- '--secondary-foreground': '0 0% 93%',
588
- '--muted': '277 18% 20%',
589
- '--muted-foreground': '0 0% 70%',
590
- '--accent': '277 18% 20%',
591
- '--accent-foreground': '0 0% 93%',
592
- '--destructive': '0 84% 60%',
593
- '--border': '277 12% 20%',
594
- '--input': '277 10% 23%',
595
- '--ring': '277 66% 56%',
596
- '--sidebar': '277 30% 8%'
597
- }
110
+ variant: 'vibrant'
598
111
  },
599
112
  faircoin: {
600
113
  name: 'faircoin',
601
114
  hex: '#9ffb50',
602
- light: {
603
- '--background': '92 55% 96%',
604
- '--foreground': '0 0% 12%',
605
- '--surface': '92 58% 94%',
606
- '--surface-foreground': '0 0% 12%',
607
- '--popover': '92 55% 97%',
608
- '--popover-foreground': '0 0% 12%',
609
- '--primary': '92 90% 25%',
610
- '--primary-foreground': '0 0% 100%',
611
- '--secondary': '92 55% 92%',
612
- '--secondary-foreground': '0 0% 12%',
613
- '--muted': '92 55% 92%',
614
- '--muted-foreground': '92 5% 40%',
615
- '--accent': '92 55% 92%',
616
- '--accent-foreground': '0 0% 12%',
617
- '--destructive': '0 84% 60%',
618
- '--border': '92 40% 87%',
619
- '--input': '92 40% 87%',
620
- '--ring': '92 90% 25%',
621
- '--sidebar': '92 58% 94%'
622
- },
623
- dark: {
624
- '--background': '69 54% 8%',
625
- '--foreground': '0 0% 93%',
626
- '--surface': '69 30% 13%',
627
- '--surface-foreground': '0 0% 93%',
628
- '--popover': '69 30% 13%',
629
- '--popover-foreground': '0 0% 93%',
630
- '--primary': '92 96% 65%',
631
- '--primary-foreground': '0 0% 0%',
632
- '--secondary': '69 20% 15%',
633
- '--secondary-foreground': '0 0% 93%',
634
- '--muted': '69 18% 16%',
635
- '--muted-foreground': '0 0% 46%',
636
- '--accent': '69 18% 16%',
637
- '--accent-foreground': '0 0% 93%',
638
- '--destructive': '0 84% 60%',
639
- '--border': '69 20% 18%',
640
- '--input': '69 15% 20%',
641
- '--ring': '92 96% 65%',
642
- '--sidebar': '69 40% 6%'
643
- }
115
+ variant: 'vibrant'
644
116
  }
645
117
  };
646
118
  //# sourceMappingURL=color-presets.js.map