@terrazzo/cli 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Drew Powers
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/bin/cli.js ADDED
@@ -0,0 +1,358 @@
1
+ /**
2
+ * @module @terrazzo/cli
3
+ * @license MIT License
4
+ *
5
+ * Copyright (c) 2021 Drew Powers
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+
26
+ import { parse, build } from '@terrazzo/parser';
27
+ import chokidar from 'chokidar';
28
+ import dotenv from 'dotenv';
29
+ import fs, { write } from 'node:fs';
30
+ import { fileURLToPath } from 'node:url';
31
+ import pc from 'picocolors';
32
+ import parser from 'yargs-parser';
33
+
34
+ dotenv.config();
35
+
36
+ const [, , cmd, ...args] = process.argv;
37
+ const cwd = new URL(`file://${process.cwd()}/`);
38
+
39
+ const GREEN_CHECK = pc.green('✔');
40
+
41
+ const flags = parser(args, {
42
+ boolean: ['help', 'watch', 'version'],
43
+ string: ['config', 'out'],
44
+ alias: {
45
+ config: ['c'],
46
+ out: ['o'],
47
+ version: ['v'],
48
+ watch: ['w'],
49
+ },
50
+ });
51
+
52
+ export default async function main() {
53
+ const start = performance.now();
54
+
55
+ // ---
56
+ // half-run commands: --help, --version, init
57
+
58
+ // --help
59
+ if (flags.help || !cmd) {
60
+ showHelp();
61
+ process.exit(0);
62
+ }
63
+
64
+ // --version
65
+ if (flags.version) {
66
+ const { version } = parseJSON(fs.readFileSync(new URL('../package.json', import.meta.url), 'utf8'));
67
+ console.log(version);
68
+ process.exit(0);
69
+ }
70
+
71
+ // ---
72
+ // full-run commands: build, check
73
+
74
+ // setup: load tokens.config.js and tokens.config.json
75
+ let configPath;
76
+ if (typeof flags.config === 'string') {
77
+ if (flags.config === '') {
78
+ printErrors('Missing path after --config flag');
79
+ process.exit(1);
80
+ }
81
+ configPath = resolveConfig(flags.config);
82
+ }
83
+ let config;
84
+ try {
85
+ config = (await import(resolveConfig(configPath))).default;
86
+ } catch (err) {
87
+ printErrors(err.message || err);
88
+ process.exit(1);
89
+ }
90
+
91
+ switch (cmd) {
92
+ case 'build': {
93
+ if (!Array.isArray(config.plugins) || !config.plugins.length) {
94
+ printErrors(`No plugins defined! Add some in ${configPath || 'terrazzo.config.js'}`);
95
+ process.exit(1);
96
+ }
97
+
98
+ let rawSchema = await loadTokens(config.tokens);
99
+
100
+ const dt = new Intl.DateTimeFormat('en-us', {
101
+ hour: '2-digit',
102
+ minute: '2-digit',
103
+ });
104
+ const watch = args.includes('-w') || args.includes('--watch');
105
+
106
+ let { tokens, ast } = await parse(rawSchema, { config });
107
+ let result = await build(tokens, { ast, config });
108
+ writeFiles(result, config);
109
+
110
+ printErrors(result.errors);
111
+ printWarnings(result.warnings);
112
+
113
+ if (watch) {
114
+ const tokenWatcher = chokidar.watch(config.tokens.map((filepath) => fileURLToPath(filepath)));
115
+ tokenWatcher.on('change', async (filePath) => {
116
+ try {
117
+ rawSchema = await loadTokens(config.tokens);
118
+ const parseResult = await parse(tokens, { config });
119
+ tokens = parseResult.tokens;
120
+ ast = parseResult.ast;
121
+ result = await build(tokens, { ast, config });
122
+ console.log(
123
+ `${pc.dim(dt.format(new Date()))} ${pc.green('Tz')}} ${pc.yellow(filePath)} updated ${GREEN_CHECK}`,
124
+ );
125
+ } catch (err) {
126
+ printErrors([err.message || err]);
127
+ }
128
+ });
129
+ const configWatcher = chokidar.watch(fileURLToPath(resolveConfig(configPath)));
130
+ configWatcher.on('change', async (filePath) => {
131
+ try {
132
+ console.log(
133
+ `${pc.dim(dt.format(new Date()))} ${pc.green('Tz')} ${pc.yellow('Config updated. Reloading…')}`,
134
+ );
135
+ config = (await import(filePath)).default;
136
+ rawSchema = await loadTokens(config.tokens);
137
+ const parseResult = await parse(tokens, { config });
138
+ tokens = parseResult.tokens;
139
+ ast = parseResult.ast;
140
+ result = await build(tokens, { ast, config });
141
+ writeFiles(result, config);
142
+ } catch (err) {
143
+ printErrors([err.message || err]);
144
+ }
145
+ });
146
+
147
+ // keep process occupied
148
+ await new Promise(() => {});
149
+ } else {
150
+ printSuccess(
151
+ `${Object.keys(tokens).length} token${Object.keys(tokens).length !== 1 ? 's' : ''} built ${time(start)}`,
152
+ );
153
+ }
154
+ break;
155
+ }
156
+ case 'check': {
157
+ const rawSchema = await loadTokens(config.tokens);
158
+ const filepath = config.tokens[0];
159
+ console.log(pc.underline(filepath.protocol === 'file:' ? fileURLToPath(filepath) : filepath));
160
+ const { errors, warnings } = parse(rawSchema, config); // will throw if errors
161
+ if (errors || warnings) {
162
+ printErrors(errors);
163
+ printWarnings(warnings);
164
+ process.exit(1);
165
+ }
166
+ printSuccess(`no errors ${time(start)}`);
167
+ break;
168
+ }
169
+ case 'lint': {
170
+ if (!Array.isArray(config.plugins) || !config.plugins.length) {
171
+ printErrors(`✘ No plugins defined! Add some in ${configPath || 'tokens.config.js'}`);
172
+ process.exit(1);
173
+ }
174
+
175
+ const rawSchema = await loadTokens(config.tokens);
176
+ const parseResult = parse(rawSchema, config); // will throw if errors
177
+
178
+ if (parseResult.errors) {
179
+ printErrors(parseResult.errors);
180
+ printWarnings(parseResult.warnings);
181
+ process.exit(1);
182
+ }
183
+ if (parseResult.warnings) {
184
+ printWarnings(parseResult.warnings);
185
+ }
186
+ const lintResult = await lint({ config, tokens: parseResult.result.tokens, rawSchema, warnIfNoPlugins: true });
187
+ if (lintResult.errors) {
188
+ printErrors(lintResult.errors);
189
+ printWarnings(lintResult.warnings);
190
+ process.exit(1);
191
+ }
192
+ if (lintResult.warnings) {
193
+ printWarnings(lintResult.warnings);
194
+ } else {
195
+ printSuccess(`all checks passed ${time(start)}`);
196
+ }
197
+ break;
198
+ }
199
+ case 'init': {
200
+ if (fs.existsSync(config.tokens)) {
201
+ throw new Error(`${config.tokens} already exists`);
202
+ }
203
+ fs.cpSync(new URL('../tokens-example.json', import.meta.url), new URL(config.tokens, cwd));
204
+ printSuccess(`${config.tokens} created ${time(start)}`);
205
+ break;
206
+ }
207
+ default: {
208
+ showHelp();
209
+ break;
210
+ }
211
+ }
212
+
213
+ // done
214
+ process.exit(0);
215
+ }
216
+
217
+ main();
218
+
219
+ /** Show help */
220
+ function showHelp() {
221
+ console.log(`tz
222
+ [commands]
223
+ build Build token artifacts from tokens.json
224
+ --watch, -w Watch tokens.json for changes and recompile
225
+ --no-lint Disable linters running on build
226
+ check [path] Check tokens.json for syntax errors
227
+ lint [path] Run linters
228
+ init Create a starter tokens.json file
229
+ bundle Combine multiple tokens schemas into one
230
+ --out [path] Specify bundled tokens.json output
231
+ convert [file] Convert Style Dictionary format to DTCG
232
+ --out [path] Specify converted tokens.json output
233
+
234
+ [options]
235
+ --help Show this message
236
+ --config, -c Path to config (default: ./tokens.config.js)
237
+ `);
238
+ }
239
+
240
+ /** load tokens */
241
+ async function loadTokens(tokenPaths) {
242
+ // TODO: allow merging of tokens
243
+
244
+ // download/read
245
+ for (const filepath of tokenPaths) {
246
+ const pathname = filepath.pathname.toLowerCase();
247
+ if (filepath.protocol === 'http:' || filepath.protocol === 'https:') {
248
+ try {
249
+ // if Figma URL
250
+ if (filepath.host === 'figma.com' || filepath.host === 'www.figma.com') {
251
+ const [_, fileKeyword, fileKey] = filepath.pathname.split('/');
252
+ if (fileKeyword !== 'file' || !fileKey) {
253
+ printErrors(
254
+ `Unexpected Figma URL. Expected "https://www.figma.com/file/:file_key/:file_name?…", received "${filepath.href}"`,
255
+ );
256
+ process.exit(1);
257
+ }
258
+ const headers = new Headers({
259
+ Accept: '*/*',
260
+ 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0',
261
+ });
262
+ if (process.env.FIGMA_ACCESS_TOKEN) {
263
+ headers.set('X-FIGMA-TOKEN', process.env.FIGMA_ACCESS_TOKEN);
264
+ } else {
265
+ printWarnings('FIGMA_ACCESS_TOKEN not set');
266
+ }
267
+ const res = await fetch(`https://api.figma.com/v1/files/${fileKey}/variables/local`, {
268
+ method: 'GET',
269
+ headers,
270
+ });
271
+ if (res.ok) {
272
+ return await res.text();
273
+ }
274
+ const message = res.status !== 404 ? JSON.stringify(await res.json(), undefined, 2) : '';
275
+ printErrors(`Figma responded with ${res.status}${message ? `:\n${message}` : ''}`);
276
+ process.exit(1);
277
+ break;
278
+ }
279
+
280
+ // otherwise, expect YAML/JSON
281
+ const res = await fetch(filepath, {
282
+ method: 'GET',
283
+ headers: { Accept: '*/*', 'User-Agent': 'Mozilla/5.0 Gecko/20100101 Firefox/123.0' },
284
+ });
285
+ return await res.text();
286
+ } catch (err) {
287
+ printErrors(`${filepath.href}: ${err}`);
288
+ }
289
+ } else {
290
+ if (fs.existsSync(filepath)) {
291
+ return fs.readFileSync(filepath, 'utf8');
292
+ } else {
293
+ printErrors(`Could not locate ${filepath}. To create one, run \`npx cobalt init\`.`);
294
+ process.exit(1);
295
+ }
296
+ }
297
+ }
298
+ }
299
+
300
+ /** resolve config */
301
+ function resolveConfig(filename) {
302
+ // --config [configpath]
303
+ if (filename) {
304
+ const configPath = new URL(filename, cwd);
305
+ if (fs.existsSync(configPath)) {
306
+ return fileURLToPath(configPath);
307
+ }
308
+ return undefined;
309
+ }
310
+
311
+ // default: terrazzo.config.js
312
+ for (const defaultFilename of ['./terrazzo.config.js', './terrazzo.config.mjs']) {
313
+ const configPath = new URL(defaultFilename, cwd);
314
+ if (fs.existsSync(configPath)) {
315
+ return fileURLToPath(configPath);
316
+ }
317
+ }
318
+ }
319
+
320
+ /** Print time elapsed */
321
+ function time(start) {
322
+ const diff = performance.now() - start;
323
+ return pc.dim(diff < 750 ? `${Math.round(diff)}ms` : `${(diff / 1000).toFixed(1)}s`);
324
+ }
325
+
326
+ /** Print success */
327
+ export function printSuccess(message) {
328
+ console.log(` ${GREEN_CHECK} ${message}`);
329
+ }
330
+
331
+ /** Print errors */
332
+ export function printErrors(errors) {
333
+ if (!errors || (typeof errors !== 'string' && !Array.isArray(errors))) {
334
+ return;
335
+ }
336
+ for (const err of Array.isArray(errors) ? errors : [errors]) {
337
+ console.error(` ${pc.red(`✘ ${err}`)}`);
338
+ }
339
+ }
340
+
341
+ /** Print warnings */
342
+ export function printWarnings(warnings) {
343
+ if (!warnings || (typeof warnings !== 'string' && !Array.isArray(warnings))) {
344
+ return;
345
+ }
346
+ for (const warn of Array.isArray(warnings) ? warnings : [warnings]) {
347
+ console.warn(` ${pc.yellow(`! ${warn}`)}`);
348
+ }
349
+ }
350
+
351
+ /** Write files */
352
+ export function writeFiles(result, config) {
353
+ for (const { filename, contents } of result.outputFiles) {
354
+ const filepath = new URL(filename, config.outDir);
355
+ fs.mkdirSync(new URL('.', filepath), { recursive: true });
356
+ fs.writeFileSync(filepath, contents);
357
+ }
358
+ }
@@ -0,0 +1,2 @@
1
+ import { type Config, type ConfigInit } from '@terrazzo/parser';
2
+ export declare function defineConfig(config: Config): ConfigInit;
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ import { defineConfig as defineConfigCore } from '@terrazzo/parser';
2
+ export function defineConfig(config) {
3
+ return defineConfigCore(config, { cwd: new URL(`file://${process.cwd()}/`) });
4
+ }
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,IAAI,gBAAgB,EAAmB,MAAM,kBAAkB,CAAC;AAElG,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,OAAO,gBAAgB,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,UAAU,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC"}
package/package.json ADDED
@@ -0,0 +1,57 @@
1
+ {
2
+ "name": "@terrazzo/cli",
3
+ "description": "CLI for managing design tokens using the Design Tokens Community Group (DTCG) standard and generating code for any platform via plugins.",
4
+ "version": "0.0.0",
5
+ "author": {
6
+ "name": "Drew Powers",
7
+ "email": "drew@pow.rs"
8
+ },
9
+ "keywords": [
10
+ "design tokens",
11
+ "design tokens community group",
12
+ "design tokens format module",
13
+ "dtcg",
14
+ "cli",
15
+ "w3c design tokens",
16
+ "design system",
17
+ "typescript",
18
+ "sass",
19
+ "css",
20
+ "style tokens",
21
+ "style system"
22
+ ],
23
+ "engines": {
24
+ "node": ">=18.0.0"
25
+ },
26
+ "license": "MIT",
27
+ "type": "module",
28
+ "main": "./dist/index.js",
29
+ "bin": {
30
+ "tz": "bin/cli.js",
31
+ "terrazzo": "bin/cli.js"
32
+ },
33
+ "dependencies": {
34
+ "chokidar": "^3.6.0",
35
+ "dotenv": "^16.4.5",
36
+ "merge-anything": "^5.1.7",
37
+ "picocolors": "^1.0.0",
38
+ "yargs-parser": "^21.1.1",
39
+ "@terrazzo/parser": "^0.0.0",
40
+ "@terrazzo/token-tools": "^0.0.0"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^20.12.7",
44
+ "execa": "^8.0.1",
45
+ "vitest": "^1.5.2"
46
+ },
47
+ "scripts": {
48
+ "build": "pnpm run build:clean && pnpm run build:ts",
49
+ "build:clean": "del dist",
50
+ "build:ts": "tsc -p tsconfig.build.json",
51
+ "dev": "tsc -p tsconfig.build.json -w",
52
+ "lint": "biome check .",
53
+ "test": "pnpm run \"/^test:.*/\"",
54
+ "test:js": "vitest run",
55
+ "test:ts": "tsc --noEmit"
56
+ }
57
+ }
package/src/index.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { type Config, defineConfig as defineConfigCore, type ConfigInit } from '@terrazzo/parser';
2
+
3
+ export function defineConfig(config: Config): ConfigInit {
4
+ return defineConfigCore(config, { cwd: new URL(`file://${process.cwd()}/`) });
5
+ }
@@ -0,0 +1,509 @@
1
+ {
2
+ "color": {
3
+ "$type": "color",
4
+ "primitive": {
5
+ "gray": {
6
+ "1": { "$value": "#fcfcfc", "$extensions": { "mode": { "light": "#fcfcfc", "dark": "#111111" } } },
7
+ "2": { "$value": "#f9f9f9", "$extensions": { "mode": { "light": "#f9f9f9", "dark": "#191919" } } },
8
+ "3": { "$value": "#f0f0f0", "$extensions": { "mode": { "light": "#f0f0f0", "dark": "#222222" } } },
9
+ "4": { "$value": "#e8e8e8", "$extensions": { "mode": { "light": "#e8e8e8", "dark": "#2a2a2a" } } },
10
+ "5": { "$value": "#e0e0e0", "$extensions": { "mode": { "light": "#e0e0e0", "dark": "#313131" } } },
11
+ "6": { "$value": "#d9d9d9", "$extensions": { "mode": { "light": "#d9d9d9", "dark": "#3a3a3a" } } },
12
+ "7": { "$value": "#cecece", "$extensions": { "mode": { "light": "#cecece", "dark": "#484848" } } },
13
+ "8": { "$value": "#bbbbbb", "$extensions": { "mode": { "light": "#bbbbbb", "dark": "#606060" } } },
14
+ "9": { "$value": "#8d8d8d", "$extensions": { "mode": { "light": "#8d8d8d", "dark": "#6e6e6e" } } },
15
+ "10": { "$value": "#838383", "$extensions": { "mode": { "light": "#838383", "dark": "#7b7b7b" } } },
16
+ "11": { "$value": "#646464", "$extensions": { "mode": { "light": "#646464", "dark": "#b4b4b4" } } },
17
+ "12": { "$value": "#202020", "$extensions": { "mode": { "light": "#202020", "dark": "#eeeeee" } } }
18
+ },
19
+ "mauve": {
20
+ "1": { "$value": "#fdfcfd", "$extensions": { "mode": { "light": "#fdfcfd", "dark": "#121113" } } },
21
+ "2": { "$value": "#faf9fb", "$extensions": { "mode": { "light": "#faf9fb", "dark": "#1a191b" } } },
22
+ "3": { "$value": "#f2eff3", "$extensions": { "mode": { "light": "#f2eff3", "dark": "#232225" } } },
23
+ "4": { "$value": "#eae7ec", "$extensions": { "mode": { "light": "#eae7ec", "dark": "#2b292d" } } },
24
+ "5": { "$value": "#e3dfe6", "$extensions": { "mode": { "light": "#e3dfe6", "dark": "#323035" } } },
25
+ "6": { "$value": "#dbd8e0", "$extensions": { "mode": { "light": "#dbd8e0", "dark": "#3c393f" } } },
26
+ "7": { "$value": "#d0cdd7", "$extensions": { "mode": { "light": "#d0cdd7", "dark": "#49474e" } } },
27
+ "8": { "$value": "#bcbac7", "$extensions": { "mode": { "light": "#bcbac7", "dark": "#625f69" } } },
28
+ "9": { "$value": "#8e8c99", "$extensions": { "mode": { "light": "#8e8c99", "dark": "#6f6d78" } } },
29
+ "10": { "$value": "#84828e", "$extensions": { "mode": { "light": "#84828e", "dark": "#7c7a85" } } },
30
+ "11": { "$value": "#65636d", "$extensions": { "mode": { "light": "#65636d", "dark": "#b5b2bc" } } },
31
+ "12": { "$value": "#211f26", "$extensions": { "mode": { "light": "#211f26", "dark": "#eeeef0" } } }
32
+ },
33
+ "slate": {
34
+ "1": { "$value": "#fcfcfd", "$extensions": { "mode": { "light": "#fcfcfd", "dark": "#111113" } } },
35
+ "2": { "$value": "#f9f9fb", "$extensions": { "mode": { "light": "#f9f9fb", "dark": "#18191b" } } },
36
+ "3": { "$value": "#f0f0f3", "$extensions": { "mode": { "light": "#f0f0f3", "dark": "#212225" } } },
37
+ "4": { "$value": "#e8e8ec", "$extensions": { "mode": { "light": "#e8e8ec", "dark": "#272a2d" } } },
38
+ "5": { "$value": "#e0e1e6", "$extensions": { "mode": { "light": "#e0e1e6", "dark": "#2e3135" } } },
39
+ "6": { "$value": "#d9d9e0", "$extensions": { "mode": { "light": "#d9d9e0", "dark": "#363a3f" } } },
40
+ "7": { "$value": "#cdced6", "$extensions": { "mode": { "light": "#cdced6", "dark": "#43484e" } } },
41
+ "8": { "$value": "#b9bbc6", "$extensions": { "mode": { "light": "#b9bbc6", "dark": "#5a6169" } } },
42
+ "9": { "$value": "#8b8d98", "$extensions": { "mode": { "light": "#8b8d98", "dark": "#696e77" } } },
43
+ "10": { "$value": "#80838d", "$extensions": { "mode": { "light": "#80838d", "dark": "#777b84" } } },
44
+ "11": { "$value": "#60646c", "$extensions": { "mode": { "light": "#60646c", "dark": "#b0b4ba" } } },
45
+ "12": { "$value": "#1c2024", "$extensions": { "mode": { "light": "#1c2024", "dark": "#edeef0" } } }
46
+ },
47
+ "sage": {
48
+ "1": { "$value": "#fbfdfc", "$extensions": { "mode": { "light": "#fbfdfc", "dark": "#101211" } } },
49
+ "2": { "$value": "#f7f9f8", "$extensions": { "mode": { "light": "#f7f9f8", "dark": "#171918" } } },
50
+ "3": { "$value": "#eef1f0", "$extensions": { "mode": { "light": "#eef1f0", "dark": "#202221" } } },
51
+ "4": { "$value": "#e6e9e8", "$extensions": { "mode": { "light": "#e6e9e8", "dark": "#272a29" } } },
52
+ "5": { "$value": "#dfe2e0", "$extensions": { "mode": { "light": "#dfe2e0", "dark": "#2e3130" } } },
53
+ "6": { "$value": "#d7dad9", "$extensions": { "mode": { "light": "#d7dad9", "dark": "#373b39" } } },
54
+ "7": { "$value": "#cbcfcd", "$extensions": { "mode": { "light": "#cbcfcd", "dark": "#444947" } } },
55
+ "8": { "$value": "#b8bcba", "$extensions": { "mode": { "light": "#b8bcba", "dark": "#5b625f" } } },
56
+ "9": { "$value": "#868e8b", "$extensions": { "mode": { "light": "#868e8b", "dark": "#63706b" } } },
57
+ "10": { "$value": "#7c8481", "$extensions": { "mode": { "light": "#7c8481", "dark": "#717d79" } } },
58
+ "11": { "$value": "#5f6563", "$extensions": { "mode": { "light": "#5f6563", "dark": "#adb5b2" } } },
59
+ "12": { "$value": "#1a211e", "$extensions": { "mode": { "light": "#1a211e", "dark": "#eceeed" } } }
60
+ },
61
+ "olive": {
62
+ "1": { "$value": "#fcfdfc", "$extensions": { "mode": { "light": "#fcfdfc", "dark": "#111210" } } },
63
+ "2": { "$value": "#f8faf8", "$extensions": { "mode": { "light": "#f8faf8", "dark": "#181917" } } },
64
+ "3": { "$value": "#eff1ef", "$extensions": { "mode": { "light": "#eff1ef", "dark": "#212220" } } },
65
+ "4": { "$value": "#e7e9e7", "$extensions": { "mode": { "light": "#e7e9e7", "dark": "#282a27" } } },
66
+ "5": { "$value": "#dfe2df", "$extensions": { "mode": { "light": "#dfe2df", "dark": "#2f312e" } } },
67
+ "6": { "$value": "#d7dad7", "$extensions": { "mode": { "light": "#d7dad7", "dark": "#383a36" } } },
68
+ "7": { "$value": "#cccfcc", "$extensions": { "mode": { "light": "#cccfcc", "dark": "#454843" } } },
69
+ "8": { "$value": "#b9bcb8", "$extensions": { "mode": { "light": "#b9bcb8", "dark": "#5c625b" } } },
70
+ "9": { "$value": "#898e87", "$extensions": { "mode": { "light": "#898e87", "dark": "#687066" } } },
71
+ "10": { "$value": "#7f847d", "$extensions": { "mode": { "light": "#7f847d", "dark": "#767d74" } } },
72
+ "11": { "$value": "#60655f", "$extensions": { "mode": { "light": "#60655f", "dark": "#afb5ad" } } },
73
+ "12": { "$value": "#1d211c", "$extensions": { "mode": { "light": "#1d211c", "dark": "#eceeec" } } }
74
+ },
75
+ "sand": {
76
+ "1": { "$value": "#fdfdfc", "$extensions": { "mode": { "light": "#fdfdfc", "dark": "#111110" } } },
77
+ "2": { "$value": "#f9f9f8", "$extensions": { "mode": { "light": "#f9f9f8", "dark": "#191918" } } },
78
+ "3": { "$value": "#f1f0ef", "$extensions": { "mode": { "light": "#f1f0ef", "dark": "#222221" } } },
79
+ "4": { "$value": "#e9e8e6", "$extensions": { "mode": { "light": "#e9e8e6", "dark": "#2a2a28" } } },
80
+ "5": { "$value": "#e2e1de", "$extensions": { "mode": { "light": "#e2e1de", "dark": "#31312e" } } },
81
+ "6": { "$value": "#dad9d6", "$extensions": { "mode": { "light": "#dad9d6", "dark": "#3b3a37" } } },
82
+ "7": { "$value": "#cfceca", "$extensions": { "mode": { "light": "#cfceca", "dark": "#494844" } } },
83
+ "8": { "$value": "#bcbbb5", "$extensions": { "mode": { "light": "#bcbbb5", "dark": "#62605b" } } },
84
+ "9": { "$value": "#8d8d86", "$extensions": { "mode": { "light": "#8d8d86", "dark": "#6f6d66" } } },
85
+ "10": { "$value": "#82827c", "$extensions": { "mode": { "light": "#82827c", "dark": "#7c7b74" } } },
86
+ "11": { "$value": "#63635e", "$extensions": { "mode": { "light": "#63635e", "dark": "#b5b3ad" } } },
87
+ "12": { "$value": "#21201c", "$extensions": { "mode": { "light": "#21201c", "dark": "#eeeeec" } } }
88
+ },
89
+ "gold": {
90
+ "1": { "$value": "#fdfdfc", "$extensions": { "mode": { "light": "#fdfdfc", "dark": "#121211" } } },
91
+ "2": { "$value": "#faf9f2", "$extensions": { "mode": { "light": "#faf9f2", "dark": "#1b1a17" } } },
92
+ "3": { "$value": "#f2f0e7", "$extensions": { "mode": { "light": "#f2f0e7", "dark": "#24231f" } } },
93
+ "4": { "$value": "#eae6db", "$extensions": { "mode": { "light": "#eae6db", "dark": "#2d2b26" } } },
94
+ "5": { "$value": "#e1dccf", "$extensions": { "mode": { "light": "#e1dccf", "dark": "#38352e" } } },
95
+ "6": { "$value": "#d8d0bf", "$extensions": { "mode": { "light": "#d8d0bf", "dark": "#444039" } } },
96
+ "7": { "$value": "#cbc0aa", "$extensions": { "mode": { "light": "#cbc0aa", "dark": "#544f46" } } },
97
+ "8": { "$value": "#b9a88d", "$extensions": { "mode": { "light": "#b9a88d", "dark": "#696256" } } },
98
+ "9": { "$value": "#978365", "$extensions": { "mode": { "light": "#978365", "dark": "#978365" } } },
99
+ "10": { "$value": "#8c7a5e", "$extensions": { "mode": { "light": "#8c7a5e", "dark": "#a39073" } } },
100
+ "11": { "$value": "#71624b", "$extensions": { "mode": { "light": "#71624b", "dark": "#cbb99f" } } },
101
+ "12": { "$value": "#3b352b", "$extensions": { "mode": { "light": "#3b352b", "dark": "#e8e2d9" } } }
102
+ },
103
+ "bronze": {
104
+ "1": { "$value": "#fdfcfc", "$extensions": { "mode": { "light": "#fdfcfc", "dark": "#141110" } } },
105
+ "2": { "$value": "#fdf7f5", "$extensions": { "mode": { "light": "#fdf7f5", "dark": "#1c1917" } } },
106
+ "3": { "$value": "#f6edea", "$extensions": { "mode": { "light": "#f6edea", "dark": "#262220" } } },
107
+ "4": { "$value": "#efe4df", "$extensions": { "mode": { "light": "#efe4df", "dark": "#302a27" } } },
108
+ "5": { "$value": "#e7d9d3", "$extensions": { "mode": { "light": "#e7d9d3", "dark": "#3b3330" } } },
109
+ "6": { "$value": "#dfcdc5", "$extensions": { "mode": { "light": "#dfcdc5", "dark": "#493e3a" } } },
110
+ "7": { "$value": "#d3bcb3", "$extensions": { "mode": { "light": "#d3bcb3", "dark": "#5a4c47" } } },
111
+ "8": { "$value": "#c2a499", "$extensions": { "mode": { "light": "#c2a499", "dark": "#6f5f58" } } },
112
+ "9": { "$value": "#a18072", "$extensions": { "mode": { "light": "#a18072", "dark": "#a18072" } } },
113
+ "10": { "$value": "#957468", "$extensions": { "mode": { "light": "#957468", "dark": "#ae8c7e" } } },
114
+ "11": { "$value": "#7d5e54", "$extensions": { "mode": { "light": "#7d5e54", "dark": "#d4b3a5" } } },
115
+ "12": { "$value": "#43302b", "$extensions": { "mode": { "light": "#43302b", "dark": "#ede0d9" } } }
116
+ },
117
+ "brown": {
118
+ "1": { "$value": "#fefdfc", "$extensions": { "mode": { "light": "#fefdfc", "dark": "#12110f" } } },
119
+ "2": { "$value": "#fcf9f6", "$extensions": { "mode": { "light": "#fcf9f6", "dark": "#1c1816" } } },
120
+ "3": { "$value": "#f6eee7", "$extensions": { "mode": { "light": "#f6eee7", "dark": "#28211d" } } },
121
+ "4": { "$value": "#f0e4d9", "$extensions": { "mode": { "light": "#f0e4d9", "dark": "#322922" } } },
122
+ "5": { "$value": "#ebdaca", "$extensions": { "mode": { "light": "#ebdaca", "dark": "#3e3128" } } },
123
+ "6": { "$value": "#e4cdb7", "$extensions": { "mode": { "light": "#e4cdb7", "dark": "#4d3c2f" } } },
124
+ "7": { "$value": "#dcbc9f", "$extensions": { "mode": { "light": "#dcbc9f", "dark": "#614a39" } } },
125
+ "8": { "$value": "#cea37e", "$extensions": { "mode": { "light": "#cea37e", "dark": "#7c5f46" } } },
126
+ "9": { "$value": "#ad7f58", "$extensions": { "mode": { "light": "#ad7f58", "dark": "#ad7f58" } } },
127
+ "10": { "$value": "#a07553", "$extensions": { "mode": { "light": "#a07553", "dark": "#b88c67" } } },
128
+ "11": { "$value": "#815e46", "$extensions": { "mode": { "light": "#815e46", "dark": "#dbb594" } } },
129
+ "12": { "$value": "#3e332e", "$extensions": { "mode": { "light": "#3e332e", "dark": "#f2e1ca" } } }
130
+ },
131
+ "yellow": {
132
+ "1": { "$value": "#fdfdf9", "$extensions": { "mode": { "light": "#fdfdf9", "dark": "#14120b" } } },
133
+ "2": { "$value": "#fefce9", "$extensions": { "mode": { "light": "#fefce9", "dark": "#1b180f" } } },
134
+ "3": { "$value": "#fffab8", "$extensions": { "mode": { "light": "#fffab8", "dark": "#2d2305" } } },
135
+ "4": { "$value": "#fff394", "$extensions": { "mode": { "light": "#fff394", "dark": "#362b00" } } },
136
+ "5": { "$value": "#ffe770", "$extensions": { "mode": { "light": "#ffe770", "dark": "#433500" } } },
137
+ "6": { "$value": "#f3d768", "$extensions": { "mode": { "light": "#f3d768", "dark": "#524202" } } },
138
+ "7": { "$value": "#e4c767", "$extensions": { "mode": { "light": "#e4c767", "dark": "#665417" } } },
139
+ "8": { "$value": "#d5ae39", "$extensions": { "mode": { "light": "#d5ae39", "dark": "#836a21" } } },
140
+ "9": { "$value": "#ffe629", "$extensions": { "mode": { "light": "#ffe629", "dark": "#ffe629" } } },
141
+ "10": { "$value": "#ffdc00", "$extensions": { "mode": { "light": "#ffdc00", "dark": "#ffff57" } } },
142
+ "11": { "$value": "#9e6c00", "$extensions": { "mode": { "light": "#9e6c00", "dark": "#f5e147" } } },
143
+ "12": { "$value": "#473b1f", "$extensions": { "mode": { "light": "#473b1f", "dark": "#f6eeb4" } } }
144
+ },
145
+ "amber": {
146
+ "1": { "$value": "#fefdfb", "$extensions": { "mode": { "light": "#fefdfb", "dark": "#16120c" } } },
147
+ "2": { "$value": "#fefbe9", "$extensions": { "mode": { "light": "#fefbe9", "dark": "#1d180f" } } },
148
+ "3": { "$value": "#fff7c2", "$extensions": { "mode": { "light": "#fff7c2", "dark": "#302008" } } },
149
+ "4": { "$value": "#ffee9c", "$extensions": { "mode": { "light": "#ffee9c", "dark": "#3f2700" } } },
150
+ "5": { "$value": "#fbe577", "$extensions": { "mode": { "light": "#fbe577", "dark": "#4d3000" } } },
151
+ "6": { "$value": "#f3d673", "$extensions": { "mode": { "light": "#f3d673", "dark": "#5c3d05" } } },
152
+ "7": { "$value": "#e9c162", "$extensions": { "mode": { "light": "#e9c162", "dark": "#714f19" } } },
153
+ "8": { "$value": "#e2a336", "$extensions": { "mode": { "light": "#e2a336", "dark": "#8f6424" } } },
154
+ "9": { "$value": "#ffc53d", "$extensions": { "mode": { "light": "#ffc53d", "dark": "#ffc53d" } } },
155
+ "10": { "$value": "#ffba18", "$extensions": { "mode": { "light": "#ffba18", "dark": "#ffd60a" } } },
156
+ "11": { "$value": "#ab6400", "$extensions": { "mode": { "light": "#ab6400", "dark": "#ffca16" } } },
157
+ "12": { "$value": "#4f3422", "$extensions": { "mode": { "light": "#4f3422", "dark": "#ffe7b3" } } }
158
+ },
159
+ "orange": {
160
+ "1": { "$value": "#fefcfb", "$extensions": { "mode": { "light": "#fefcfb", "dark": "#17120e" } } },
161
+ "2": { "$value": "#fff7ed", "$extensions": { "mode": { "light": "#fff7ed", "dark": "#1e160f" } } },
162
+ "3": { "$value": "#ffefd6", "$extensions": { "mode": { "light": "#ffefd6", "dark": "#331e0b" } } },
163
+ "4": { "$value": "#ffdfb5", "$extensions": { "mode": { "light": "#ffdfb5", "dark": "#462100" } } },
164
+ "5": { "$value": "#ffd19a", "$extensions": { "mode": { "light": "#ffd19a", "dark": "#562800" } } },
165
+ "6": { "$value": "#ffc182", "$extensions": { "mode": { "light": "#ffc182", "dark": "#66350c" } } },
166
+ "7": { "$value": "#f5ae73", "$extensions": { "mode": { "light": "#f5ae73", "dark": "#7e451d" } } },
167
+ "8": { "$value": "#ec9455", "$extensions": { "mode": { "light": "#ec9455", "dark": "#a35829" } } },
168
+ "9": { "$value": "#f76b15", "$extensions": { "mode": { "light": "#f76b15", "dark": "#f76b15" } } },
169
+ "10": { "$value": "#ef5f00", "$extensions": { "mode": { "light": "#ef5f00", "dark": "#ff801f" } } },
170
+ "11": { "$value": "#cc4e00", "$extensions": { "mode": { "light": "#cc4e00", "dark": "#ffa057" } } },
171
+ "12": { "$value": "#582d1d", "$extensions": { "mode": { "light": "#582d1d", "dark": "#ffe0c2" } } }
172
+ },
173
+ "tomato": {
174
+ "1": { "$value": "#fffcfc", "$extensions": { "mode": { "light": "#fffcfc", "dark": "#181111" } } },
175
+ "2": { "$value": "#fff8f7", "$extensions": { "mode": { "light": "#fff8f7", "dark": "#1f1513" } } },
176
+ "3": { "$value": "#feebe7", "$extensions": { "mode": { "light": "#feebe7", "dark": "#391714" } } },
177
+ "4": { "$value": "#ffdcd3", "$extensions": { "mode": { "light": "#ffdcd3", "dark": "#4e1511" } } },
178
+ "5": { "$value": "#ffcdc2", "$extensions": { "mode": { "light": "#ffcdc2", "dark": "#5e1c16" } } },
179
+ "6": { "$value": "#fdbdaf", "$extensions": { "mode": { "light": "#fdbdaf", "dark": "#6e2920" } } },
180
+ "7": { "$value": "#f5a898", "$extensions": { "mode": { "light": "#f5a898", "dark": "#853a2d" } } },
181
+ "8": { "$value": "#ec8e7b", "$extensions": { "mode": { "light": "#ec8e7b", "dark": "#ac4d39" } } },
182
+ "9": { "$value": "#e54d2e", "$extensions": { "mode": { "light": "#e54d2e", "dark": "#e54d2e" } } },
183
+ "10": { "$value": "#dd4425", "$extensions": { "mode": { "light": "#dd4425", "dark": "#ec6142" } } },
184
+ "11": { "$value": "#d13415", "$extensions": { "mode": { "light": "#d13415", "dark": "#ff977d" } } },
185
+ "12": { "$value": "#5c271f", "$extensions": { "mode": { "light": "#5c271f", "dark": "#fbd3cb" } } }
186
+ },
187
+ "red": {
188
+ "1": { "$value": "#fffcfc", "$extensions": { "mode": { "light": "#fffcfc", "dark": "#191111" } } },
189
+ "2": { "$value": "#fff7f7", "$extensions": { "mode": { "light": "#fff7f7", "dark": "#201314" } } },
190
+ "3": { "$value": "#feebec", "$extensions": { "mode": { "light": "#feebec", "dark": "#3b1219" } } },
191
+ "4": { "$value": "#ffdbdc", "$extensions": { "mode": { "light": "#ffdbdc", "dark": "#500f1c" } } },
192
+ "5": { "$value": "#ffcdce", "$extensions": { "mode": { "light": "#ffcdce", "dark": "#611623" } } },
193
+ "6": { "$value": "#fdbdbe", "$extensions": { "mode": { "light": "#fdbdbe", "dark": "#72232d" } } },
194
+ "7": { "$value": "#f4a9aa", "$extensions": { "mode": { "light": "#f4a9aa", "dark": "#8c333a" } } },
195
+ "8": { "$value": "#eb8e90", "$extensions": { "mode": { "light": "#eb8e90", "dark": "#b54548" } } },
196
+ "9": { "$value": "#e5484d", "$extensions": { "mode": { "light": "#e5484d", "dark": "#e5484d" } } },
197
+ "10": { "$value": "#dc3e42", "$extensions": { "mode": { "light": "#dc3e42", "dark": "#ec5d5e" } } },
198
+ "11": { "$value": "#ce2c31", "$extensions": { "mode": { "light": "#ce2c31", "dark": "#ff9592" } } },
199
+ "12": { "$value": "#641723", "$extensions": { "mode": { "light": "#641723", "dark": "#ffd1d9" } } }
200
+ },
201
+ "ruby": {
202
+ "1": { "$value": "#fffcfd", "$extensions": { "mode": { "light": "#fffcfd", "dark": "#191113" } } },
203
+ "2": { "$value": "#fff7f8", "$extensions": { "mode": { "light": "#fff7f8", "dark": "#1e1517" } } },
204
+ "3": { "$value": "#feeaed", "$extensions": { "mode": { "light": "#feeaed", "dark": "#3a141e" } } },
205
+ "4": { "$value": "#ffdce1", "$extensions": { "mode": { "light": "#ffdce1", "dark": "#4e1325" } } },
206
+ "5": { "$value": "#ffced6", "$extensions": { "mode": { "light": "#ffced6", "dark": "#5e1a2e" } } },
207
+ "6": { "$value": "#f8bfc8", "$extensions": { "mode": { "light": "#f8bfc8", "dark": "#6f2539" } } },
208
+ "7": { "$value": "#efacb8", "$extensions": { "mode": { "light": "#efacb8", "dark": "#883447" } } },
209
+ "8": { "$value": "#e592a3", "$extensions": { "mode": { "light": "#e592a3", "dark": "#b3445a" } } },
210
+ "9": { "$value": "#e54666", "$extensions": { "mode": { "light": "#e54666", "dark": "#e54666" } } },
211
+ "10": { "$value": "#dc3b5d", "$extensions": { "mode": { "light": "#dc3b5d", "dark": "#ec5a72" } } },
212
+ "11": { "$value": "#ca244d", "$extensions": { "mode": { "light": "#ca244d", "dark": "#ff949d" } } },
213
+ "12": { "$value": "#64172b", "$extensions": { "mode": { "light": "#64172b", "dark": "#fed2e1" } } }
214
+ },
215
+ "crimson": {
216
+ "1": { "$value": "#fffcfd", "$extensions": { "mode": { "light": "#fffcfd", "dark": "#191114" } } },
217
+ "2": { "$value": "#fef7f9", "$extensions": { "mode": { "light": "#fef7f9", "dark": "#201318" } } },
218
+ "3": { "$value": "#ffe9f0", "$extensions": { "mode": { "light": "#ffe9f0", "dark": "#381525" } } },
219
+ "4": { "$value": "#fedce7", "$extensions": { "mode": { "light": "#fedce7", "dark": "#4d122f" } } },
220
+ "5": { "$value": "#facedd", "$extensions": { "mode": { "light": "#facedd", "dark": "#5c1839" } } },
221
+ "6": { "$value": "#f3bed1", "$extensions": { "mode": { "light": "#f3bed1", "dark": "#6d2545" } } },
222
+ "7": { "$value": "#eaacc3", "$extensions": { "mode": { "light": "#eaacc3", "dark": "#873356" } } },
223
+ "8": { "$value": "#e093b2", "$extensions": { "mode": { "light": "#e093b2", "dark": "#b0436e" } } },
224
+ "9": { "$value": "#e93d82", "$extensions": { "mode": { "light": "#e93d82", "dark": "#e93d82" } } },
225
+ "10": { "$value": "#df3478", "$extensions": { "mode": { "light": "#df3478", "dark": "#ee518a" } } },
226
+ "11": { "$value": "#cb1d63", "$extensions": { "mode": { "light": "#cb1d63", "dark": "#ff92ad" } } },
227
+ "12": { "$value": "#621639", "$extensions": { "mode": { "light": "#621639", "dark": "#fdd3e8" } } }
228
+ },
229
+ "pink": {
230
+ "1": { "$value": "#fffcfe", "$extensions": { "mode": { "light": "#fffcfe", "dark": "#191117" } } },
231
+ "2": { "$value": "#fef7fb", "$extensions": { "mode": { "light": "#fef7fb", "dark": "#21121d" } } },
232
+ "3": { "$value": "#fee9f5", "$extensions": { "mode": { "light": "#fee9f5", "dark": "#37172f" } } },
233
+ "4": { "$value": "#fbdcef", "$extensions": { "mode": { "light": "#fbdcef", "dark": "#4b143d" } } },
234
+ "5": { "$value": "#f6cee7", "$extensions": { "mode": { "light": "#f6cee7", "dark": "#591c47" } } },
235
+ "6": { "$value": "#efbfdd", "$extensions": { "mode": { "light": "#efbfdd", "dark": "#692955" } } },
236
+ "7": { "$value": "#e7acd0", "$extensions": { "mode": { "light": "#e7acd0", "dark": "#833869" } } },
237
+ "8": { "$value": "#dd93c2", "$extensions": { "mode": { "light": "#dd93c2", "dark": "#a84885" } } },
238
+ "9": { "$value": "#d6409f", "$extensions": { "mode": { "light": "#d6409f", "dark": "#d6409f" } } },
239
+ "10": { "$value": "#cf3897", "$extensions": { "mode": { "light": "#cf3897", "dark": "#de51a8" } } },
240
+ "11": { "$value": "#c2298a", "$extensions": { "mode": { "light": "#c2298a", "dark": "#ff8dcc" } } },
241
+ "12": { "$value": "#651249", "$extensions": { "mode": { "light": "#651249", "dark": "#fdd1ea" } } }
242
+ },
243
+ "plum": {
244
+ "1": { "$value": "#fefcff", "$extensions": { "mode": { "light": "#fefcff", "dark": "#181118" } } },
245
+ "2": { "$value": "#fdf7fd", "$extensions": { "mode": { "light": "#fdf7fd", "dark": "#201320" } } },
246
+ "3": { "$value": "#fbebfb", "$extensions": { "mode": { "light": "#fbebfb", "dark": "#351a35" } } },
247
+ "4": { "$value": "#f7def8", "$extensions": { "mode": { "light": "#f7def8", "dark": "#451d47" } } },
248
+ "5": { "$value": "#f2d1f3", "$extensions": { "mode": { "light": "#f2d1f3", "dark": "#512454" } } },
249
+ "6": { "$value": "#e9c2ec", "$extensions": { "mode": { "light": "#e9c2ec", "dark": "#5e3061" } } },
250
+ "7": { "$value": "#deade3", "$extensions": { "mode": { "light": "#deade3", "dark": "#734079" } } },
251
+ "8": { "$value": "#cf91d8", "$extensions": { "mode": { "light": "#cf91d8", "dark": "#92549c" } } },
252
+ "9": { "$value": "#ab4aba", "$extensions": { "mode": { "light": "#ab4aba", "dark": "#ab4aba" } } },
253
+ "10": { "$value": "#a144af", "$extensions": { "mode": { "light": "#a144af", "dark": "#b658c4" } } },
254
+ "11": { "$value": "#953ea3", "$extensions": { "mode": { "light": "#953ea3", "dark": "#e796f3" } } },
255
+ "12": { "$value": "#53195d", "$extensions": { "mode": { "light": "#53195d", "dark": "#f4d4f4" } } }
256
+ },
257
+ "purple": {
258
+ "1": { "$value": "#fefcfe", "$extensions": { "mode": { "light": "#fefcfe", "dark": "#18111b" } } },
259
+ "2": { "$value": "#fbf7fe", "$extensions": { "mode": { "light": "#fbf7fe", "dark": "#1e1523" } } },
260
+ "3": { "$value": "#f7edfe", "$extensions": { "mode": { "light": "#f7edfe", "dark": "#301c3b" } } },
261
+ "4": { "$value": "#f2e2fc", "$extensions": { "mode": { "light": "#f2e2fc", "dark": "#3d224e" } } },
262
+ "5": { "$value": "#ead5f9", "$extensions": { "mode": { "light": "#ead5f9", "dark": "#48295c" } } },
263
+ "6": { "$value": "#e0c4f4", "$extensions": { "mode": { "light": "#e0c4f4", "dark": "#54346b" } } },
264
+ "7": { "$value": "#d1afec", "$extensions": { "mode": { "light": "#d1afec", "dark": "#664282" } } },
265
+ "8": { "$value": "#be93e4", "$extensions": { "mode": { "light": "#be93e4", "dark": "#8457aa" } } },
266
+ "9": { "$value": "#8e4ec6", "$extensions": { "mode": { "light": "#8e4ec6", "dark": "#8e4ec6" } } },
267
+ "10": { "$value": "#8347b9", "$extensions": { "mode": { "light": "#8347b9", "dark": "#9a5cd0" } } },
268
+ "11": { "$value": "#8145b5", "$extensions": { "mode": { "light": "#8145b5", "dark": "#d19dff" } } },
269
+ "12": { "$value": "#402060", "$extensions": { "mode": { "light": "#402060", "dark": "#ecd9fa" } } }
270
+ },
271
+ "violet": {
272
+ "1": { "$value": "#fdfcfe", "$extensions": { "mode": { "light": "#fdfcfe", "dark": "#14121f" } } },
273
+ "2": { "$value": "#faf8ff", "$extensions": { "mode": { "light": "#faf8ff", "dark": "#1b1525" } } },
274
+ "3": { "$value": "#f4f0fe", "$extensions": { "mode": { "light": "#f4f0fe", "dark": "#291f43" } } },
275
+ "4": { "$value": "#ebe4ff", "$extensions": { "mode": { "light": "#ebe4ff", "dark": "#33255b" } } },
276
+ "5": { "$value": "#e1d9ff", "$extensions": { "mode": { "light": "#e1d9ff", "dark": "#3c2e69" } } },
277
+ "6": { "$value": "#d4cafe", "$extensions": { "mode": { "light": "#d4cafe", "dark": "#473876" } } },
278
+ "7": { "$value": "#c2b5f5", "$extensions": { "mode": { "light": "#c2b5f5", "dark": "#56468b" } } },
279
+ "8": { "$value": "#aa99ec", "$extensions": { "mode": { "light": "#aa99ec", "dark": "#6958ad" } } },
280
+ "9": { "$value": "#6e56cf", "$extensions": { "mode": { "light": "#6e56cf", "dark": "#6e56cf" } } },
281
+ "10": { "$value": "#654dc4", "$extensions": { "mode": { "light": "#654dc4", "dark": "#7d66d9" } } },
282
+ "11": { "$value": "#6550b9", "$extensions": { "mode": { "light": "#6550b9", "dark": "#baa7ff" } } },
283
+ "12": { "$value": "#2f265f", "$extensions": { "mode": { "light": "#2f265f", "dark": "#e2ddfe" } } }
284
+ },
285
+ "iris": {
286
+ "1": { "$value": "#fdfdff", "$extensions": { "mode": { "light": "#fdfdff", "dark": "#13131e" } } },
287
+ "2": { "$value": "#f8f8ff", "$extensions": { "mode": { "light": "#f8f8ff", "dark": "#171625" } } },
288
+ "3": { "$value": "#f0f1fe", "$extensions": { "mode": { "light": "#f0f1fe", "dark": "#202248" } } },
289
+ "4": { "$value": "#e6e7ff", "$extensions": { "mode": { "light": "#e6e7ff", "dark": "#262a65" } } },
290
+ "5": { "$value": "#dadcff", "$extensions": { "mode": { "light": "#dadcff", "dark": "#303374" } } },
291
+ "6": { "$value": "#cbcdff", "$extensions": { "mode": { "light": "#cbcdff", "dark": "#3d3e82" } } },
292
+ "7": { "$value": "#b8baf8", "$extensions": { "mode": { "light": "#b8baf8", "dark": "#4a4a95" } } },
293
+ "8": { "$value": "#9b9ef0", "$extensions": { "mode": { "light": "#9b9ef0", "dark": "#5958b1" } } },
294
+ "9": { "$value": "#5b5bd6", "$extensions": { "mode": { "light": "#5b5bd6", "dark": "#5b5bd6" } } },
295
+ "10": { "$value": "#5151cd", "$extensions": { "mode": { "light": "#5151cd", "dark": "#6e6ade" } } },
296
+ "11": { "$value": "#5753c6", "$extensions": { "mode": { "light": "#5753c6", "dark": "#b1a9ff" } } },
297
+ "12": { "$value": "#272962", "$extensions": { "mode": { "light": "#272962", "dark": "#e0dffe" } } }
298
+ },
299
+ "indigo": {
300
+ "1": { "$value": "#fdfdfe", "$extensions": { "mode": { "light": "#fdfdfe", "dark": "#11131f" } } },
301
+ "2": { "$value": "#f7f9ff", "$extensions": { "mode": { "light": "#f7f9ff", "dark": "#141726" } } },
302
+ "3": { "$value": "#edf2fe", "$extensions": { "mode": { "light": "#edf2fe", "dark": "#182449" } } },
303
+ "4": { "$value": "#e1e9ff", "$extensions": { "mode": { "light": "#e1e9ff", "dark": "#1d2e62" } } },
304
+ "5": { "$value": "#d2deff", "$extensions": { "mode": { "light": "#d2deff", "dark": "#253974" } } },
305
+ "6": { "$value": "#c1d0ff", "$extensions": { "mode": { "light": "#c1d0ff", "dark": "#304384" } } },
306
+ "7": { "$value": "#abbdf9", "$extensions": { "mode": { "light": "#abbdf9", "dark": "#3a4f97" } } },
307
+ "8": { "$value": "#8da4ef", "$extensions": { "mode": { "light": "#8da4ef", "dark": "#435db1" } } },
308
+ "9": { "$value": "#3e63dd", "$extensions": { "mode": { "light": "#3e63dd", "dark": "#3e63dd" } } },
309
+ "10": { "$value": "#3358d4", "$extensions": { "mode": { "light": "#3358d4", "dark": "#5472e4" } } },
310
+ "11": { "$value": "#3a5bc7", "$extensions": { "mode": { "light": "#3a5bc7", "dark": "#9eb1ff" } } },
311
+ "12": { "$value": "#1f2d5c", "$extensions": { "mode": { "light": "#1f2d5c", "dark": "#d6e1ff" } } }
312
+ },
313
+ "blue": {
314
+ "1": { "$value": "#fbfdff", "$extensions": { "mode": { "light": "#fbfdff", "dark": "#0d1520" } } },
315
+ "2": { "$value": "#f4faff", "$extensions": { "mode": { "light": "#f4faff", "dark": "#111927" } } },
316
+ "3": { "$value": "#e6f4fe", "$extensions": { "mode": { "light": "#e6f4fe", "dark": "#0d2847" } } },
317
+ "4": { "$value": "#d5efff", "$extensions": { "mode": { "light": "#d5efff", "dark": "#003362" } } },
318
+ "5": { "$value": "#c2e5ff", "$extensions": { "mode": { "light": "#c2e5ff", "dark": "#004074" } } },
319
+ "6": { "$value": "#acd8fc", "$extensions": { "mode": { "light": "#acd8fc", "dark": "#104d87" } } },
320
+ "7": { "$value": "#8ec8f6", "$extensions": { "mode": { "light": "#8ec8f6", "dark": "#205d9e" } } },
321
+ "8": { "$value": "#5eb1ef", "$extensions": { "mode": { "light": "#5eb1ef", "dark": "#2870bd" } } },
322
+ "9": { "$value": "#0090ff", "$extensions": { "mode": { "light": "#0090ff", "dark": "#0090ff" } } },
323
+ "10": { "$value": "#0588f0", "$extensions": { "mode": { "light": "#0588f0", "dark": "#3b9eff" } } },
324
+ "11": { "$value": "#0d74ce", "$extensions": { "mode": { "light": "#0d74ce", "dark": "#70b8ff" } } },
325
+ "12": { "$value": "#113264", "$extensions": { "mode": { "light": "#113264", "dark": "#c2e6ff" } } }
326
+ },
327
+ "cyan": {
328
+ "1": { "$value": "#fafdfe", "$extensions": { "mode": { "light": "#fafdfe", "dark": "#0b161a" } } },
329
+ "2": { "$value": "#f2fafb", "$extensions": { "mode": { "light": "#f2fafb", "dark": "#101b20" } } },
330
+ "3": { "$value": "#def7f9", "$extensions": { "mode": { "light": "#def7f9", "dark": "#082c36" } } },
331
+ "4": { "$value": "#caf1f6", "$extensions": { "mode": { "light": "#caf1f6", "dark": "#003848" } } },
332
+ "5": { "$value": "#b5e9f0", "$extensions": { "mode": { "light": "#b5e9f0", "dark": "#004558" } } },
333
+ "6": { "$value": "#9ddde7", "$extensions": { "mode": { "light": "#9ddde7", "dark": "#045468" } } },
334
+ "7": { "$value": "#7dcedc", "$extensions": { "mode": { "light": "#7dcedc", "dark": "#12677e" } } },
335
+ "8": { "$value": "#3db9cf", "$extensions": { "mode": { "light": "#3db9cf", "dark": "#11809c" } } },
336
+ "9": { "$value": "#00a2c7", "$extensions": { "mode": { "light": "#00a2c7", "dark": "#00a2c7" } } },
337
+ "10": { "$value": "#0797b9", "$extensions": { "mode": { "light": "#0797b9", "dark": "#23afd0" } } },
338
+ "11": { "$value": "#107d98", "$extensions": { "mode": { "light": "#107d98", "dark": "#4ccce6" } } },
339
+ "12": { "$value": "#0d3c48", "$extensions": { "mode": { "light": "#0d3c48", "dark": "#b6ecf7" } } }
340
+ },
341
+ "teal": {
342
+ "1": { "$value": "#fafefd", "$extensions": { "mode": { "light": "#fafefd", "dark": "#0d1514" } } },
343
+ "2": { "$value": "#f3fbf9", "$extensions": { "mode": { "light": "#f3fbf9", "dark": "#111c1b" } } },
344
+ "3": { "$value": "#e0f8f3", "$extensions": { "mode": { "light": "#e0f8f3", "dark": "#0d2d2a" } } },
345
+ "4": { "$value": "#ccf3ea", "$extensions": { "mode": { "light": "#ccf3ea", "dark": "#023b37" } } },
346
+ "5": { "$value": "#b8eae0", "$extensions": { "mode": { "light": "#b8eae0", "dark": "#084843" } } },
347
+ "6": { "$value": "#a1ded2", "$extensions": { "mode": { "light": "#a1ded2", "dark": "#145750" } } },
348
+ "7": { "$value": "#83cdc1", "$extensions": { "mode": { "light": "#83cdc1", "dark": "#1c6961" } } },
349
+ "8": { "$value": "#53b9ab", "$extensions": { "mode": { "light": "#53b9ab", "dark": "#207e73" } } },
350
+ "9": { "$value": "#12a594", "$extensions": { "mode": { "light": "#12a594", "dark": "#12a594" } } },
351
+ "10": { "$value": "#0d9b8a", "$extensions": { "mode": { "light": "#0d9b8a", "dark": "#0eb39e" } } },
352
+ "11": { "$value": "#008573", "$extensions": { "mode": { "light": "#008573", "dark": "#0bd8b6" } } },
353
+ "12": { "$value": "#0d3d38", "$extensions": { "mode": { "light": "#0d3d38", "dark": "#adf0dd" } } }
354
+ },
355
+ "jade": {
356
+ "1": { "$value": "#fbfefd", "$extensions": { "mode": { "light": "#fbfefd", "dark": "#0d1512" } } },
357
+ "2": { "$value": "#f4fbf7", "$extensions": { "mode": { "light": "#f4fbf7", "dark": "#121c18" } } },
358
+ "3": { "$value": "#e6f7ed", "$extensions": { "mode": { "light": "#e6f7ed", "dark": "#0f2e22" } } },
359
+ "4": { "$value": "#d6f1e3", "$extensions": { "mode": { "light": "#d6f1e3", "dark": "#0b3b2c" } } },
360
+ "5": { "$value": "#c3e9d7", "$extensions": { "mode": { "light": "#c3e9d7", "dark": "#114837" } } },
361
+ "6": { "$value": "#acdec8", "$extensions": { "mode": { "light": "#acdec8", "dark": "#1b5745" } } },
362
+ "7": { "$value": "#8bceb6", "$extensions": { "mode": { "light": "#8bceb6", "dark": "#246854" } } },
363
+ "8": { "$value": "#56ba9f", "$extensions": { "mode": { "light": "#56ba9f", "dark": "#2a7e68" } } },
364
+ "9": { "$value": "#29a383", "$extensions": { "mode": { "light": "#29a383", "dark": "#29a383" } } },
365
+ "10": { "$value": "#26997b", "$extensions": { "mode": { "light": "#26997b", "dark": "#27b08b" } } },
366
+ "11": { "$value": "#208368", "$extensions": { "mode": { "light": "#208368", "dark": "#1fd8a4" } } },
367
+ "12": { "$value": "#1d3b31", "$extensions": { "mode": { "light": "#1d3b31", "dark": "#adf0d4" } } }
368
+ },
369
+ "green": {
370
+ "1": { "$value": "#fbfefc", "$extensions": { "mode": { "light": "#fbfefc", "dark": "#0e1512" } } },
371
+ "2": { "$value": "#f4fbf6", "$extensions": { "mode": { "light": "#f4fbf6", "dark": "#121b17" } } },
372
+ "3": { "$value": "#e6f6eb", "$extensions": { "mode": { "light": "#e6f6eb", "dark": "#132d21" } } },
373
+ "4": { "$value": "#d6f1df", "$extensions": { "mode": { "light": "#d6f1df", "dark": "#113b29" } } },
374
+ "5": { "$value": "#c4e8d1", "$extensions": { "mode": { "light": "#c4e8d1", "dark": "#174933" } } },
375
+ "6": { "$value": "#adddc0", "$extensions": { "mode": { "light": "#adddc0", "dark": "#20573e" } } },
376
+ "7": { "$value": "#8eceaa", "$extensions": { "mode": { "light": "#8eceaa", "dark": "#28684a" } } },
377
+ "8": { "$value": "#5bb98b", "$extensions": { "mode": { "light": "#5bb98b", "dark": "#2f7c57" } } },
378
+ "9": { "$value": "#30a46c", "$extensions": { "mode": { "light": "#30a46c", "dark": "#30a46c" } } },
379
+ "10": { "$value": "#2b9a66", "$extensions": { "mode": { "light": "#2b9a66", "dark": "#33b074" } } },
380
+ "11": { "$value": "#218358", "$extensions": { "mode": { "light": "#218358", "dark": "#3dd68c" } } },
381
+ "12": { "$value": "#193b2d", "$extensions": { "mode": { "light": "#193b2d", "dark": "#b1f1cb" } } }
382
+ },
383
+ "grass": {
384
+ "1": { "$value": "#fbfefb", "$extensions": { "mode": { "light": "#fbfefb", "dark": "#0e1511" } } },
385
+ "2": { "$value": "#f5fbf5", "$extensions": { "mode": { "light": "#f5fbf5", "dark": "#141a15" } } },
386
+ "3": { "$value": "#e9f6e9", "$extensions": { "mode": { "light": "#e9f6e9", "dark": "#1b2a1e" } } },
387
+ "4": { "$value": "#daf1db", "$extensions": { "mode": { "light": "#daf1db", "dark": "#1d3a24" } } },
388
+ "5": { "$value": "#c9e8ca", "$extensions": { "mode": { "light": "#c9e8ca", "dark": "#25482d" } } },
389
+ "6": { "$value": "#b2ddb5", "$extensions": { "mode": { "light": "#b2ddb5", "dark": "#2d5736" } } },
390
+ "7": { "$value": "#94ce9a", "$extensions": { "mode": { "light": "#94ce9a", "dark": "#366740" } } },
391
+ "8": { "$value": "#65ba74", "$extensions": { "mode": { "light": "#65ba74", "dark": "#3e7949" } } },
392
+ "9": { "$value": "#46a758", "$extensions": { "mode": { "light": "#46a758", "dark": "#46a758" } } },
393
+ "10": { "$value": "#3e9b4f", "$extensions": { "mode": { "light": "#3e9b4f", "dark": "#53b365" } } },
394
+ "11": { "$value": "#2a7e3b", "$extensions": { "mode": { "light": "#2a7e3b", "dark": "#71d083" } } },
395
+ "12": { "$value": "#203c25", "$extensions": { "mode": { "light": "#203c25", "dark": "#c2f0c2" } } }
396
+ },
397
+ "lime": {
398
+ "1": { "$value": "#fcfdfa", "$extensions": { "mode": { "light": "#fcfdfa", "dark": "#11130c" } } },
399
+ "2": { "$value": "#f8faf3", "$extensions": { "mode": { "light": "#f8faf3", "dark": "#151a10" } } },
400
+ "3": { "$value": "#eef6d6", "$extensions": { "mode": { "light": "#eef6d6", "dark": "#1f2917" } } },
401
+ "4": { "$value": "#e2f0bd", "$extensions": { "mode": { "light": "#e2f0bd", "dark": "#29371d" } } },
402
+ "5": { "$value": "#d3e7a6", "$extensions": { "mode": { "light": "#d3e7a6", "dark": "#334423" } } },
403
+ "6": { "$value": "#c2da91", "$extensions": { "mode": { "light": "#c2da91", "dark": "#3d522a" } } },
404
+ "7": { "$value": "#abc978", "$extensions": { "mode": { "light": "#abc978", "dark": "#496231" } } },
405
+ "8": { "$value": "#8db654", "$extensions": { "mode": { "light": "#8db654", "dark": "#577538" } } },
406
+ "9": { "$value": "#bdee63", "$extensions": { "mode": { "light": "#bdee63", "dark": "#bdee63" } } },
407
+ "10": { "$value": "#b0e64c", "$extensions": { "mode": { "light": "#b0e64c", "dark": "#d4ff70" } } },
408
+ "11": { "$value": "#5c7c2f", "$extensions": { "mode": { "light": "#5c7c2f", "dark": "#bde56c" } } },
409
+ "12": { "$value": "#37401c", "$extensions": { "mode": { "light": "#37401c", "dark": "#e3f7ba" } } }
410
+ },
411
+ "mint": {
412
+ "1": { "$value": "#f9fefd", "$extensions": { "mode": { "light": "#f9fefd", "dark": "#0e1515" } } },
413
+ "2": { "$value": "#f2fbf9", "$extensions": { "mode": { "light": "#f2fbf9", "dark": "#0f1b1b" } } },
414
+ "3": { "$value": "#ddf9f2", "$extensions": { "mode": { "light": "#ddf9f2", "dark": "#092c2b" } } },
415
+ "4": { "$value": "#c8f4e9", "$extensions": { "mode": { "light": "#c8f4e9", "dark": "#003a38" } } },
416
+ "5": { "$value": "#b3ecde", "$extensions": { "mode": { "light": "#b3ecde", "dark": "#004744" } } },
417
+ "6": { "$value": "#9ce0d0", "$extensions": { "mode": { "light": "#9ce0d0", "dark": "#105650" } } },
418
+ "7": { "$value": "#7ecfbd", "$extensions": { "mode": { "light": "#7ecfbd", "dark": "#1e685f" } } },
419
+ "8": { "$value": "#4cbba5", "$extensions": { "mode": { "light": "#4cbba5", "dark": "#277f70" } } },
420
+ "9": { "$value": "#86ead4", "$extensions": { "mode": { "light": "#86ead4", "dark": "#86ead4" } } },
421
+ "10": { "$value": "#7de0cb", "$extensions": { "mode": { "light": "#7de0cb", "dark": "#a8f5e5" } } },
422
+ "11": { "$value": "#027864", "$extensions": { "mode": { "light": "#027864", "dark": "#58d5ba" } } },
423
+ "12": { "$value": "#16433c", "$extensions": { "mode": { "light": "#16433c", "dark": "#c4f5e1" } } }
424
+ },
425
+ "sky": {
426
+ "1": { "$value": "#f9feff", "$extensions": { "mode": { "light": "#f9feff", "dark": "#0d141f" } } },
427
+ "2": { "$value": "#f1fafd", "$extensions": { "mode": { "light": "#f1fafd", "dark": "#111a27" } } },
428
+ "3": { "$value": "#e1f6fd", "$extensions": { "mode": { "light": "#e1f6fd", "dark": "#112840" } } },
429
+ "4": { "$value": "#d1f0fa", "$extensions": { "mode": { "light": "#d1f0fa", "dark": "#113555" } } },
430
+ "5": { "$value": "#bee7f5", "$extensions": { "mode": { "light": "#bee7f5", "dark": "#154467" } } },
431
+ "6": { "$value": "#a9daed", "$extensions": { "mode": { "light": "#a9daed", "dark": "#1b537b" } } },
432
+ "7": { "$value": "#8dcae3", "$extensions": { "mode": { "light": "#8dcae3", "dark": "#1f6692" } } },
433
+ "8": { "$value": "#60b3d7", "$extensions": { "mode": { "light": "#60b3d7", "dark": "#197cae" } } },
434
+ "9": { "$value": "#7ce2fe", "$extensions": { "mode": { "light": "#7ce2fe", "dark": "#7ce2fe" } } },
435
+ "10": { "$value": "#74daf8", "$extensions": { "mode": { "light": "#74daf8", "dark": "#a8eeff" } } },
436
+ "11": { "$value": "#00749e", "$extensions": { "mode": { "light": "#00749e", "dark": "#75c7f0" } } },
437
+ "12": { "$value": "#1d3e56", "$extensions": { "mode": { "light": "#1d3e56", "dark": "#c2f3ff" } } }
438
+ }
439
+ },
440
+ "overlay": {
441
+ "black": {
442
+ "1": { "$value": "rgba(0, 0, 0, 0.05)" },
443
+ "2": { "$value": "rgba(0, 0, 0, 0.1)" },
444
+ "3": { "$value": "rgba(0, 0, 0, 0.15)" },
445
+ "4": { "$value": "rgba(0, 0, 0, 0.2)" },
446
+ "5": { "$value": "rgba(0, 0, 0, 0.3)" },
447
+ "6": { "$value": "rgba(0, 0, 0, 0.4)" },
448
+ "7": { "$value": "rgba(0, 0, 0, 0.5)" },
449
+ "8": { "$value": "rgba(0, 0, 0, 0.6)" },
450
+ "9": { "$value": "rgba(0, 0, 0, 0.7)" },
451
+ "10": { "$value": "rgba(0, 0, 0, 0.8)" },
452
+ "11": { "$value": "rgba(0, 0, 0, 0.9)" },
453
+ "12": { "$value": "rgba(0, 0, 0, 0.95)" }
454
+ },
455
+ "white": {
456
+ "1": { "$value": "rgba(255, 255, 255, 0.05)" },
457
+ "2": { "$value": "rgba(255, 255, 255, 0.1)" },
458
+ "3": { "$value": "rgba(255, 255, 255, 0.15)" },
459
+ "4": { "$value": "rgba(255, 255, 255, 0.2)" },
460
+ "5": { "$value": "rgba(255, 255, 255, 0.3)" },
461
+ "6": { "$value": "rgba(255, 255, 255, 0.4)" },
462
+ "7": { "$value": "rgba(255, 255, 255, 0.5)" },
463
+ "8": { "$value": "rgba(255, 255, 255, 0.6)" },
464
+ "9": { "$value": "rgba(255, 255, 255, 0.7)" },
465
+ "10": { "$value": "rgba(255, 255, 255, 0.8)" },
466
+ "11": { "$value": "rgba(255, 255, 255, 0.9)" },
467
+ "12": { "$value": "rgba(255, 255, 255, 0.95)" }
468
+ }
469
+ },
470
+ "bg": {
471
+ "default": { "$value": "{color.primitive.gray.1}" },
472
+ "subtle": { "$value": "{color.primitive.gray.2}" },
473
+ "ui": { "$value": "{color.primitive.gray.3}" },
474
+ "hover": { "$value": "{color.primitive.gray.4}" },
475
+ "active": { "$value": "{color.primitive.gray.5}" },
476
+ "action": {
477
+ "default": { "$value": "{color.primitive.iris.9}" },
478
+ "hover": { "$value": "{color.primitive.iris.10}" }
479
+ },
480
+ "error": {
481
+ "default": { "$value": "{color.primitive.ruby.9}" },
482
+ "hover": { "$value": "{color.primitive.ruby.10}" }
483
+ },
484
+ "success": {
485
+ "default": { "$value": "{color.primitive.grass.9}" },
486
+ "hover": { "$value": "{color.primitive.grass.10}" }
487
+ },
488
+ "warn": {
489
+ "default": { "$value": "{color.primitive.amber.9}" },
490
+ "hover": { "$value": "{color.primitive.amber.10}" }
491
+ }
492
+ },
493
+ "text": {
494
+ "default": { "$value": "{color.primitive.gray.12}" },
495
+ "subtle": { "$value": "{color.primitive.gray.11}" },
496
+ "action": { "default": { "$value": "{color.primitive.gray.1}" } },
497
+ "error": { "default": { "$value": "{color.primitive.gray.1}" } },
498
+ "success": { "default": { "$value": "{color.primitive.gray.1}" } },
499
+ "warn": { "default": { "$value": "{color.primitive.gray.1}" } }
500
+ }
501
+ },
502
+ "border": {
503
+ "color": {
504
+ "$type": "color",
505
+ "default": { "$value": "{color.primitive.gray.6}" },
506
+ "hover": { "$value": "{color.primitive.gray.7}" }
507
+ }
508
+ }
509
+ }