@matteoaliano/forest-ui 0.2.9 → 0.2.11
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/bin/stamp-version.mjs +53 -0
- package/bin/sync.mjs +26 -35
- package/dist/{chunk-QF5T6J4D.mjs → chunk-6W3RIXXY.mjs} +109 -165
- package/dist/chunk-6W3RIXXY.mjs.map +1 -0
- package/dist/{index-BxpOMmf6.d.mts → index-DJDmMb_c.d.mts} +99 -42
- package/dist/{index-BxpOMmf6.d.ts → index-DJDmMb_c.d.ts} +99 -42
- package/dist/index.d.mts +96 -4
- package/dist/index.d.ts +96 -4
- package/dist/index.js +679 -175
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +536 -11
- package/dist/index.mjs.map +1 -1
- package/dist/theme.d.mts +1 -1
- package/dist/theme.d.ts +1 -1
- package/dist/theme.js +107 -163
- package/dist/theme.js.map +1 -1
- package/dist/theme.mjs +1 -1
- package/guidelines/FOREST_BE_GUIDELINES.md +90 -0
- package/guidelines/FOREST_FE_GUIDELINES.md +543 -0
- package/guidelines/FOREST_UI_GUIDELINES.md +372 -0
- package/package.json +17 -7
- package/dist/chunk-QF5T6J4D.mjs.map +0 -1
- package/guidelines/FOREST_AI_GUIDELINES.md +0 -344
- package/guidelines/FOREST_DEV_GUIDELINES.md +0 -47
- package/guidelines/themes/FOREST_THEME_ALKEMY_PLUS.md +0 -139
- package/guidelines/themes/FOREST_THEME_DEFAULT.md +0 -70
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Stamps the current package version into all guideline .md files.
|
|
5
|
+
* Replaces lines matching `> **forest-ui v*.**` with the version from package.json.
|
|
6
|
+
*
|
|
7
|
+
* Run automatically before sync and publish via npm scripts.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { readFileSync, writeFileSync, readdirSync, existsSync } from "node:fs";
|
|
11
|
+
import { resolve, dirname } from "node:path";
|
|
12
|
+
import { fileURLToPath } from "node:url";
|
|
13
|
+
|
|
14
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
15
|
+
const pkgPath = resolve(__dirname, "..", "package.json");
|
|
16
|
+
const version = JSON.parse(readFileSync(pkgPath, "utf-8")).version;
|
|
17
|
+
|
|
18
|
+
const guidelinesDir = resolve(__dirname, "..", "guidelines");
|
|
19
|
+
const themesDir = resolve(guidelinesDir, "themes");
|
|
20
|
+
|
|
21
|
+
const versionRe = />\s*\*\*forest-ui v[^*]*\*\*/;
|
|
22
|
+
const replacement = `> **forest-ui v${version}**`;
|
|
23
|
+
|
|
24
|
+
function stampFile(filePath) {
|
|
25
|
+
const content = readFileSync(filePath, "utf-8");
|
|
26
|
+
if (!versionRe.test(content)) return false;
|
|
27
|
+
const updated = content.replace(versionRe, replacement);
|
|
28
|
+
if (updated === content) return false;
|
|
29
|
+
writeFileSync(filePath, updated, "utf-8");
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
let stamped = 0;
|
|
34
|
+
|
|
35
|
+
// Stamp top-level guideline files
|
|
36
|
+
for (const f of readdirSync(guidelinesDir)) {
|
|
37
|
+
if (!f.endsWith(".md")) continue;
|
|
38
|
+
if (stampFile(resolve(guidelinesDir, f))) stamped++;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// Stamp theme files
|
|
42
|
+
if (existsSync(themesDir)) {
|
|
43
|
+
for (const f of readdirSync(themesDir)) {
|
|
44
|
+
if (!f.endsWith(".md")) continue;
|
|
45
|
+
if (stampFile(resolve(themesDir, f))) stamped++;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
if (stamped > 0) {
|
|
50
|
+
console.log(` Stamped v${version} into ${stamped} guideline file(s)`);
|
|
51
|
+
} else {
|
|
52
|
+
console.log(` All guideline files already at v${version}`);
|
|
53
|
+
}
|
package/bin/sync.mjs
CHANGED
|
@@ -14,61 +14,48 @@
|
|
|
14
14
|
* .antigravity/rules.md — Antigravity
|
|
15
15
|
*
|
|
16
16
|
* Guideline categories:
|
|
17
|
-
* -
|
|
18
|
-
* -
|
|
19
|
-
* -
|
|
17
|
+
* - FOREST_UI_GUIDELINES.md — Design system components, tokens, patterns
|
|
18
|
+
* - FOREST_FE_GUIDELINES.md — Next.js frontend best practices
|
|
19
|
+
* - FOREST_BE_GUIDELINES.md — FastAPI backend best practices
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
|
-
import { readFileSync, writeFileSync, mkdirSync, existsSync
|
|
22
|
+
import { readFileSync, writeFileSync, mkdirSync, existsSync } from "node:fs";
|
|
23
23
|
import { resolve, dirname, basename } from "node:path";
|
|
24
24
|
import { fileURLToPath } from "node:url";
|
|
25
25
|
|
|
26
26
|
const __filename = fileURLToPath(import.meta.url);
|
|
27
27
|
const __dirname = dirname(__filename);
|
|
28
28
|
|
|
29
|
+
const pkgPath = resolve(__dirname, "..", "package.json");
|
|
30
|
+
const pkgVersion = JSON.parse(readFileSync(pkgPath, "utf-8")).version;
|
|
31
|
+
|
|
29
32
|
const guidelinesDir = resolve(__dirname, "..", "guidelines");
|
|
30
|
-
const themesDir = resolve(guidelinesDir, "themes");
|
|
31
33
|
|
|
32
34
|
// Static guideline entries
|
|
33
35
|
const staticEntries = [
|
|
34
36
|
{
|
|
35
|
-
source: resolve(guidelinesDir, "
|
|
37
|
+
source: resolve(guidelinesDir, "FOREST_UI_GUIDELINES.md"),
|
|
36
38
|
claudeName: "forest-ui.md",
|
|
37
39
|
geminiName: "forest-ui.md",
|
|
38
40
|
cursorName: "forest-ui.mdc",
|
|
39
41
|
cursorDescription: "Forest UI Design System guidelines — components, tokens, and patterns",
|
|
40
42
|
},
|
|
41
43
|
{
|
|
42
|
-
source: resolve(guidelinesDir, "
|
|
43
|
-
claudeName: "forest-
|
|
44
|
-
geminiName: "forest-
|
|
45
|
-
cursorName: "forest-
|
|
46
|
-
cursorDescription: "
|
|
44
|
+
source: resolve(guidelinesDir, "FOREST_FE_GUIDELINES.md"),
|
|
45
|
+
claudeName: "forest-fe.md",
|
|
46
|
+
geminiName: "forest-fe.md",
|
|
47
|
+
cursorName: "forest-fe.mdc",
|
|
48
|
+
cursorDescription: "Next.js frontend best practices",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
source: resolve(guidelinesDir, "FOREST_BE_GUIDELINES.md"),
|
|
52
|
+
claudeName: "forest-be.md",
|
|
53
|
+
geminiName: "forest-be.md",
|
|
54
|
+
cursorName: "forest-be.mdc",
|
|
55
|
+
cursorDescription: "FastAPI backend requirements and best practices",
|
|
47
56
|
},
|
|
48
57
|
];
|
|
49
58
|
|
|
50
|
-
// Auto-discover theme files from guidelines/themes/
|
|
51
|
-
function discoverThemeEntries() {
|
|
52
|
-
if (!existsSync(themesDir)) return [];
|
|
53
|
-
|
|
54
|
-
return readdirSync(themesDir)
|
|
55
|
-
.filter((f) => /^FOREST_THEME_\w+\.md$/.test(f))
|
|
56
|
-
.map((f) => {
|
|
57
|
-
const themeName = f
|
|
58
|
-
.replace(/^FOREST_THEME_/, "")
|
|
59
|
-
.replace(/\.md$/, "")
|
|
60
|
-
.toLowerCase();
|
|
61
|
-
|
|
62
|
-
return {
|
|
63
|
-
source: resolve(themesDir, f),
|
|
64
|
-
claudeName: `forest-theme-${themeName}.md`,
|
|
65
|
-
geminiName: `forest-theme-${themeName}.md`,
|
|
66
|
-
cursorName: `forest-theme-${themeName}.mdc`,
|
|
67
|
-
cursorDescription: `Forest UI theme guidelines — ${themeName}`,
|
|
68
|
-
};
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
|
|
72
59
|
// Find the consuming project root (walk up until we find package.json)
|
|
73
60
|
function findProjectRoot(startDir) {
|
|
74
61
|
let dir = startDir;
|
|
@@ -87,7 +74,7 @@ function findProjectRoot(startDir) {
|
|
|
87
74
|
}
|
|
88
75
|
|
|
89
76
|
const projectRoot = findProjectRoot(process.cwd());
|
|
90
|
-
const entries = [...staticEntries
|
|
77
|
+
const entries = [...staticEntries];
|
|
91
78
|
|
|
92
79
|
console.log(`\n🌲 Forest UI — Syncing AI guidelines\n`);
|
|
93
80
|
console.log(` Project root: ${projectRoot}`);
|
|
@@ -102,7 +89,11 @@ for (const entry of entries) {
|
|
|
102
89
|
continue;
|
|
103
90
|
}
|
|
104
91
|
|
|
105
|
-
const
|
|
92
|
+
const raw = readFileSync(entry.source, "utf-8");
|
|
93
|
+
const content = raw.replace(
|
|
94
|
+
/>\s*\*\*forest-ui v[^*]*\*\*/,
|
|
95
|
+
`> **forest-ui v${pkgVersion}**`,
|
|
96
|
+
);
|
|
106
97
|
|
|
107
98
|
// Claude Code target
|
|
108
99
|
const claudeDir = resolve(projectRoot, ".claude");
|
|
@@ -94,14 +94,19 @@ var colors = {
|
|
|
94
94
|
950: "#102a56"
|
|
95
95
|
},
|
|
96
96
|
teal: {
|
|
97
|
+
50: "#f0fdf9",
|
|
97
98
|
100: "#ccfbef",
|
|
98
99
|
200: "#99f6e0",
|
|
100
|
+
300: "#5fe9d0",
|
|
101
|
+
400: "#2ed3b7",
|
|
99
102
|
600: "#0e9384",
|
|
100
103
|
700: "#107569"
|
|
101
104
|
},
|
|
102
105
|
orange: {
|
|
103
106
|
100: "#fdead7",
|
|
104
107
|
200: "#f9dbaf",
|
|
108
|
+
300: "#f7b27a",
|
|
109
|
+
400: "#f38744",
|
|
105
110
|
600: "#e04f16",
|
|
106
111
|
700: "#b93815"
|
|
107
112
|
},
|
|
@@ -114,24 +119,31 @@ var colors = {
|
|
|
114
119
|
pink: {
|
|
115
120
|
100: "#fce7f6",
|
|
116
121
|
200: "#fcceee",
|
|
122
|
+
400: "#f670c7",
|
|
123
|
+
500: "#ee46bc",
|
|
117
124
|
600: "#dd2590",
|
|
118
125
|
700: "#c11574"
|
|
119
126
|
},
|
|
120
127
|
fuchsia: {
|
|
121
128
|
100: "#fbe8ff",
|
|
122
129
|
200: "#f6d0fe",
|
|
130
|
+
400: "#e478fa",
|
|
131
|
+
500: "#d444f1",
|
|
123
132
|
600: "#ba24d5",
|
|
124
133
|
700: "#9f1ab1"
|
|
125
134
|
},
|
|
126
135
|
orangeDark: {
|
|
127
136
|
100: "#ffe6d5",
|
|
128
137
|
200: "#ffd6ae",
|
|
138
|
+
400: "#ff692e",
|
|
139
|
+
500: "#ff4405",
|
|
129
140
|
600: "#e62e05",
|
|
130
141
|
700: "#bc1b06"
|
|
131
142
|
},
|
|
132
143
|
green: {
|
|
133
144
|
100: "#d3f8df",
|
|
134
145
|
200: "#aaf0c4",
|
|
146
|
+
500: "#16b364",
|
|
135
147
|
600: "#099250",
|
|
136
148
|
700: "#087443"
|
|
137
149
|
},
|
|
@@ -140,6 +152,30 @@ var colors = {
|
|
|
140
152
|
200: "#c7d7fe",
|
|
141
153
|
600: "#444ce7",
|
|
142
154
|
700: "#3538cd"
|
|
155
|
+
},
|
|
156
|
+
violet: {
|
|
157
|
+
100: "#ece9fe",
|
|
158
|
+
200: "#ddd6fe",
|
|
159
|
+
500: "#875bf7",
|
|
160
|
+
600: "#7839ee"
|
|
161
|
+
},
|
|
162
|
+
rose: {
|
|
163
|
+
100: "#ffe4e8",
|
|
164
|
+
200: "#fecdd6",
|
|
165
|
+
400: "#fd6f8e",
|
|
166
|
+
500: "#f63d68"
|
|
167
|
+
},
|
|
168
|
+
blueLight: {
|
|
169
|
+
100: "#e0f2fe",
|
|
170
|
+
200: "#b9e6fe",
|
|
171
|
+
400: "#36bffa",
|
|
172
|
+
500: "#0ba5ec"
|
|
173
|
+
},
|
|
174
|
+
cyan: {
|
|
175
|
+
100: "#cff9fe",
|
|
176
|
+
200: "#a5f0fc",
|
|
177
|
+
600: "#088ab2",
|
|
178
|
+
700: "#0e7090"
|
|
143
179
|
}
|
|
144
180
|
};
|
|
145
181
|
var spacing = {
|
|
@@ -436,7 +472,7 @@ var toggleColors = {
|
|
|
436
472
|
buttonFgDisabled: colors.gray[50]
|
|
437
473
|
};
|
|
438
474
|
var chartColors = {
|
|
439
|
-
axisFg: colors.gray[
|
|
475
|
+
axisFg: colors.gray[100],
|
|
440
476
|
gridlineFg: colors.gray[100],
|
|
441
477
|
labelFg: colors.gray[600],
|
|
442
478
|
labelFgEmphasis: colors.gray[700],
|
|
@@ -445,47 +481,21 @@ var chartColors = {
|
|
|
445
481
|
tooltipBg: colors.gray[950],
|
|
446
482
|
tooltipFg: colors.base.white,
|
|
447
483
|
crosshairFg: colors.gray[500],
|
|
448
|
-
legendFg:
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
series4Bg: colors.orange[100],
|
|
464
|
-
series4BgHover: colors.orange[200],
|
|
465
|
-
series5Fg: colors.purple[600],
|
|
466
|
-
series5FgHover: colors.purple[700],
|
|
467
|
-
series5Bg: colors.purple[100],
|
|
468
|
-
series5BgHover: colors.purple[200],
|
|
469
|
-
series6Fg: colors.pink[600],
|
|
470
|
-
series6FgHover: colors.pink[700],
|
|
471
|
-
series6Bg: colors.pink[100],
|
|
472
|
-
series6BgHover: colors.pink[200],
|
|
473
|
-
series7Fg: colors.fuchsia[600],
|
|
474
|
-
series7FgHover: colors.fuchsia[700],
|
|
475
|
-
series7Bg: colors.fuchsia[100],
|
|
476
|
-
series7BgHover: colors.fuchsia[200],
|
|
477
|
-
series8Fg: colors.orangeDark[600],
|
|
478
|
-
series8FgHover: colors.orangeDark[700],
|
|
479
|
-
series8Bg: colors.orangeDark[100],
|
|
480
|
-
series8BgHover: colors.orangeDark[200],
|
|
481
|
-
series9Fg: colors.green[600],
|
|
482
|
-
series9FgHover: colors.green[700],
|
|
483
|
-
series9Bg: colors.green[100],
|
|
484
|
-
series9BgHover: colors.green[200],
|
|
485
|
-
series10Fg: colors.indigo[600],
|
|
486
|
-
series10FgHover: colors.indigo[700],
|
|
487
|
-
series10Bg: colors.indigo[100],
|
|
488
|
-
series10BgHover: colors.indigo[200]
|
|
484
|
+
legendFg: text.tertiary,
|
|
485
|
+
series: [
|
|
486
|
+
{ fg: colors.violet[500], fgHover: colors.violet[600], bg: colors.violet[100], bgHover: colors.violet[200] },
|
|
487
|
+
{ fg: colors.orangeDark[400], fgHover: colors.orangeDark[500], bg: colors.orangeDark[100], bgHover: colors.orangeDark[200] },
|
|
488
|
+
{ fg: colors.teal[300], fgHover: colors.teal[400], bg: colors.teal[50], bgHover: colors.teal[100] },
|
|
489
|
+
{ fg: colors.warning[400], fgHover: colors.warning[500], bg: colors.warning[100], bgHover: colors.warning[200] },
|
|
490
|
+
{ fg: colors.rose[400], fgHover: colors.rose[500], bg: colors.rose[100], bgHover: colors.rose[200] },
|
|
491
|
+
{ fg: colors.blueLight[400], fgHover: colors.blueLight[500], bg: colors.blueLight[100], bgHover: colors.blueLight[200] },
|
|
492
|
+
{ fg: colors.orange[300], fgHover: colors.orange[400], bg: colors.orange[100], bgHover: colors.orange[200] },
|
|
493
|
+
{ fg: colors.cyan[600], fgHover: colors.cyan[700], bg: colors.cyan[100], bgHover: colors.cyan[200] },
|
|
494
|
+
{ fg: colors.green[500], fgHover: colors.green[600], bg: colors.green[100], bgHover: colors.green[200] },
|
|
495
|
+
{ fg: colors.pink[400], fgHover: colors.pink[500], bg: colors.pink[100], bgHover: colors.pink[200] },
|
|
496
|
+
{ fg: colors.fuchsia[400], fgHover: colors.fuchsia[500], bg: colors.fuchsia[100], bgHover: colors.fuchsia[200] },
|
|
497
|
+
{ fg: colors.teal[600], fgHover: colors.teal[700], bg: colors.teal[100], bgHover: colors.teal[200] }
|
|
498
|
+
]
|
|
489
499
|
};
|
|
490
500
|
var alpha = {
|
|
491
501
|
white: {
|
|
@@ -869,18 +879,21 @@ function buildComponents(tokens) {
|
|
|
869
879
|
}
|
|
870
880
|
}
|
|
871
881
|
},
|
|
872
|
-
// ───
|
|
873
|
-
|
|
882
|
+
// ─── Menu ──────────────────────────────────────────────────────
|
|
883
|
+
MuiMenu: {
|
|
874
884
|
defaultProps: {
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
885
|
+
autoFocus: false
|
|
886
|
+
},
|
|
887
|
+
styleOverrides: {
|
|
888
|
+
root: {
|
|
889
|
+
"& .MuiBackdrop-root": {
|
|
890
|
+
backgroundColor: "transparent"
|
|
881
891
|
}
|
|
882
892
|
}
|
|
883
|
-
}
|
|
893
|
+
}
|
|
894
|
+
},
|
|
895
|
+
// ─── Select ─────────────────────────────────────────────────────
|
|
896
|
+
MuiSelect: {
|
|
884
897
|
styleOverrides: {
|
|
885
898
|
select: {
|
|
886
899
|
"&.MuiSelect-select": {
|
|
@@ -1899,20 +1912,8 @@ var forestPreset = {
|
|
|
1899
1912
|
};
|
|
1900
1913
|
|
|
1901
1914
|
// src/theme/presets/alkemy-plus.ts
|
|
1902
|
-
var red = {
|
|
1903
|
-
50: "#fef2f2",
|
|
1904
|
-
100: "#fee2e2",
|
|
1905
|
-
200: "#fecaca",
|
|
1906
|
-
600: "#dc2626",
|
|
1907
|
-
700: "#b91c1c",
|
|
1908
|
-
800: "#991b1b",
|
|
1909
|
-
900: "#7f1d1d"};
|
|
1910
1915
|
var colors2 = {
|
|
1911
|
-
|
|
1912
|
-
white: "#ffffff",
|
|
1913
|
-
black: "#000000",
|
|
1914
|
-
transparent: "#ffffff00"
|
|
1915
|
-
},
|
|
1916
|
+
...colors,
|
|
1916
1917
|
/** Brand scale — black-based for primary actions */
|
|
1917
1918
|
brand: {
|
|
1918
1919
|
25: "#fafafa",
|
|
@@ -1942,36 +1943,7 @@ var colors2 = {
|
|
|
1942
1943
|
800: "#27272a",
|
|
1943
1944
|
900: "#18181b",
|
|
1944
1945
|
950: "#09090b"
|
|
1945
|
-
}
|
|
1946
|
-
/** Error — forest defaults (standard UX red) */
|
|
1947
|
-
error: colors.error,
|
|
1948
|
-
/** Warning — orange/yellow tones from Alkemy+ palette */
|
|
1949
|
-
warning: {
|
|
1950
|
-
25: "#fffcf5",
|
|
1951
|
-
50: "#fff7ed",
|
|
1952
|
-
100: "#ffedd5",
|
|
1953
|
-
200: "#fed7aa",
|
|
1954
|
-
300: "#fdba74",
|
|
1955
|
-
400: "#fb923c",
|
|
1956
|
-
500: "#f08828",
|
|
1957
|
-
600: "#ea580c",
|
|
1958
|
-
700: "#c2410c",
|
|
1959
|
-
800: "#9a3412",
|
|
1960
|
-
900: "#7c2d12",
|
|
1961
|
-
950: "#431407"
|
|
1962
|
-
},
|
|
1963
|
-
/** Success — forest defaults (standard UX green) */
|
|
1964
|
-
success: colors.success,
|
|
1965
|
-
/** Blue (info) — forest defaults (standard UX) */
|
|
1966
|
-
blue: colors.blue,
|
|
1967
|
-
teal: colors.teal,
|
|
1968
|
-
orange: colors.orange,
|
|
1969
|
-
purple: colors.purple,
|
|
1970
|
-
pink: colors.pink,
|
|
1971
|
-
fuchsia: colors.fuchsia,
|
|
1972
|
-
orangeDark: colors.orangeDark,
|
|
1973
|
-
green: colors.green,
|
|
1974
|
-
indigo: colors.indigo
|
|
1946
|
+
}
|
|
1975
1947
|
};
|
|
1976
1948
|
var radius2 = {
|
|
1977
1949
|
...radius,
|
|
@@ -1996,10 +1968,10 @@ var text2 = {
|
|
|
1996
1968
|
placeholder: colors2.gray[500],
|
|
1997
1969
|
placeholderSubtle: colors2.gray[300],
|
|
1998
1970
|
white: colors2.base.white,
|
|
1999
|
-
brandPrimary:
|
|
2000
|
-
brandSecondary:
|
|
2001
|
-
brandTertiary:
|
|
2002
|
-
brandTertiaryAlt:
|
|
1971
|
+
brandPrimary: colors2.brand[900],
|
|
1972
|
+
brandSecondary: colors2.brand[700],
|
|
1973
|
+
brandTertiary: colors2.brand[600],
|
|
1974
|
+
brandTertiaryAlt: colors2.brand[600],
|
|
2003
1975
|
primaryOnBrand: colors2.base.white,
|
|
2004
1976
|
secondaryOnBrand: colors2.brand[200],
|
|
2005
1977
|
tertiaryOnBrand: colors2.brand[200],
|
|
@@ -2011,22 +1983,22 @@ var text2 = {
|
|
|
2011
1983
|
var bg2 = {
|
|
2012
1984
|
primary: colors2.gray[50],
|
|
2013
1985
|
primaryAlt: colors2.gray[50],
|
|
2014
|
-
primaryHover: colors2.gray[
|
|
1986
|
+
primaryHover: colors2.gray[100],
|
|
2015
1987
|
primarySolid: colors2.gray[950],
|
|
2016
1988
|
secondary: colors2.base.white,
|
|
2017
1989
|
secondaryAlt: colors2.base.white,
|
|
2018
1990
|
secondarySubtle: colors2.gray[25],
|
|
2019
|
-
secondaryHover: colors2.gray[
|
|
1991
|
+
secondaryHover: colors2.gray[50],
|
|
2020
1992
|
secondarySolid: colors2.gray[600],
|
|
2021
1993
|
tertiary: colors2.gray[100],
|
|
2022
1994
|
quaternary: colors2.gray[200],
|
|
2023
|
-
active: colors2.gray[
|
|
1995
|
+
active: colors2.gray[200],
|
|
2024
1996
|
disabled: colors2.gray[100],
|
|
2025
1997
|
disabledSubtle: colors2.gray[50],
|
|
2026
1998
|
overlay: colors2.gray[950],
|
|
2027
|
-
brandPrimary: colors2.brand[
|
|
2028
|
-
brandPrimaryAlt: colors2.brand[
|
|
2029
|
-
brandSecondary: colors2.brand[
|
|
1999
|
+
brandPrimary: colors2.brand[50],
|
|
2000
|
+
brandPrimaryAlt: colors2.brand[50],
|
|
2001
|
+
brandSecondary: colors2.brand[100],
|
|
2030
2002
|
brandSolid: colors2.brand[600],
|
|
2031
2003
|
brandSolidHover: colors2.brand[700],
|
|
2032
2004
|
brandSection: colors2.brand[800],
|
|
@@ -2078,7 +2050,6 @@ var border2 = {
|
|
|
2078
2050
|
errorSolid: colors2.error[600]
|
|
2079
2051
|
};
|
|
2080
2052
|
var buttonColors2 = {
|
|
2081
|
-
/** Primary buttons — black */
|
|
2082
2053
|
primary: {
|
|
2083
2054
|
bg: colors2.brand[600],
|
|
2084
2055
|
bgHover: colors2.brand[700],
|
|
@@ -2095,7 +2066,6 @@ var buttonColors2 = {
|
|
|
2095
2066
|
border: colors2.gray[300],
|
|
2096
2067
|
borderHover: colors2.gray[300]
|
|
2097
2068
|
},
|
|
2098
|
-
/** Outlined accent buttons — dark */
|
|
2099
2069
|
secondaryColor: {
|
|
2100
2070
|
bg: colors2.base.white,
|
|
2101
2071
|
bgHover: colors2.brand[50],
|
|
@@ -2109,11 +2079,10 @@ var buttonColors2 = {
|
|
|
2109
2079
|
fgHover: colors2.gray[700],
|
|
2110
2080
|
bgHover: colors2.gray[50]
|
|
2111
2081
|
},
|
|
2112
|
-
/** Text accent buttons — red */
|
|
2113
2082
|
tertiaryColor: {
|
|
2114
|
-
fg:
|
|
2115
|
-
fgHover:
|
|
2116
|
-
bgHover:
|
|
2083
|
+
fg: colors2.brand[700],
|
|
2084
|
+
fgHover: colors2.brand[800],
|
|
2085
|
+
bgHover: colors2.brand[50]
|
|
2117
2086
|
},
|
|
2118
2087
|
primaryError: {
|
|
2119
2088
|
bg: colors2.error[600],
|
|
@@ -2142,22 +2111,23 @@ var avatarColors2 = {
|
|
|
2142
2111
|
contrastBorder: "#00000014",
|
|
2143
2112
|
profilePhotoBorder: colors2.base.white,
|
|
2144
2113
|
focusBorder: "#a0a0a624"
|
|
2114
|
+
// gray[400] + 14% alpha
|
|
2145
2115
|
};
|
|
2146
2116
|
var breadcrumbColors2 = {
|
|
2147
2117
|
fg: colors2.gray[600],
|
|
2148
2118
|
fgHover: colors2.gray[700],
|
|
2149
2119
|
bgHover: colors2.gray[50],
|
|
2150
|
-
brandBgHover:
|
|
2151
|
-
brandFgHover:
|
|
2120
|
+
brandBgHover: colors2.brand[50],
|
|
2121
|
+
brandFgHover: colors2.brand[700],
|
|
2152
2122
|
iconFg: colors2.gray[500],
|
|
2153
2123
|
iconFgHover: colors2.gray[700],
|
|
2154
|
-
brandIconFgHover:
|
|
2124
|
+
brandIconFgHover: colors2.brand[700]
|
|
2155
2125
|
};
|
|
2156
2126
|
var iconColors2 = {
|
|
2157
|
-
fgBrand:
|
|
2158
|
-
fgBrandOnBrand:
|
|
2127
|
+
fgBrand: colors2.brand[600],
|
|
2128
|
+
fgBrandOnBrand: colors2.brand[200],
|
|
2159
2129
|
featuredModernBorder: colors2.gray[200],
|
|
2160
|
-
featuredLightFgBrand:
|
|
2130
|
+
featuredLightFgBrand: colors2.brand[600],
|
|
2161
2131
|
featuredLightFgGray: colors2.gray[500],
|
|
2162
2132
|
featuredLightFgError: colors2.error[600],
|
|
2163
2133
|
featuredLightFgWarning: colors2.warning[600],
|
|
@@ -2170,19 +2140,19 @@ var iconColors2 = {
|
|
|
2170
2140
|
};
|
|
2171
2141
|
var navColors2 = {
|
|
2172
2142
|
itemIconFg: colors2.gray[500],
|
|
2173
|
-
itemIconFgActive: colors2.gray[
|
|
2143
|
+
itemIconFgActive: colors2.gray[700],
|
|
2174
2144
|
itemButtonIconFg: colors2.gray[500],
|
|
2175
2145
|
itemButtonIconFgActive: colors2.gray[700]
|
|
2176
2146
|
};
|
|
2177
2147
|
var sliderColors2 = {
|
|
2178
|
-
handleBorder:
|
|
2148
|
+
handleBorder: colors2.brand[600],
|
|
2179
2149
|
handleBg: colors2.base.white
|
|
2180
2150
|
};
|
|
2181
2151
|
var toggleColors2 = {
|
|
2182
2152
|
buttonFgDisabled: colors2.gray[50]
|
|
2183
2153
|
};
|
|
2184
2154
|
var chartColors2 = {
|
|
2185
|
-
axisFg: colors2.gray[
|
|
2155
|
+
axisFg: colors2.gray[100],
|
|
2186
2156
|
gridlineFg: colors2.gray[100],
|
|
2187
2157
|
labelFg: colors2.gray[600],
|
|
2188
2158
|
labelFgEmphasis: colors2.gray[700],
|
|
@@ -2191,52 +2161,26 @@ var chartColors2 = {
|
|
|
2191
2161
|
tooltipBg: colors2.gray[950],
|
|
2192
2162
|
tooltipFg: colors2.base.white,
|
|
2193
2163
|
crosshairFg: colors2.gray[500],
|
|
2194
|
-
legendFg:
|
|
2195
|
-
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
series4Bg: colors2.orange[100],
|
|
2210
|
-
series4BgHover: colors2.orange[200],
|
|
2211
|
-
series5Fg: colors2.purple[600],
|
|
2212
|
-
series5FgHover: colors2.purple[700],
|
|
2213
|
-
series5Bg: colors2.purple[100],
|
|
2214
|
-
series5BgHover: colors2.purple[200],
|
|
2215
|
-
series6Fg: colors2.pink[600],
|
|
2216
|
-
series6FgHover: colors2.pink[700],
|
|
2217
|
-
series6Bg: colors2.pink[100],
|
|
2218
|
-
series6BgHover: colors2.pink[200],
|
|
2219
|
-
series7Fg: colors2.fuchsia[600],
|
|
2220
|
-
series7FgHover: colors2.fuchsia[700],
|
|
2221
|
-
series7Bg: colors2.fuchsia[100],
|
|
2222
|
-
series7BgHover: colors2.fuchsia[200],
|
|
2223
|
-
series8Fg: colors2.orangeDark[600],
|
|
2224
|
-
series8FgHover: colors2.orangeDark[700],
|
|
2225
|
-
series8Bg: colors2.orangeDark[100],
|
|
2226
|
-
series8BgHover: colors2.orangeDark[200],
|
|
2227
|
-
series9Fg: colors2.green[600],
|
|
2228
|
-
series9FgHover: colors2.green[700],
|
|
2229
|
-
series9Bg: colors2.green[100],
|
|
2230
|
-
series9BgHover: colors2.green[200],
|
|
2231
|
-
series10Fg: colors2.indigo[600],
|
|
2232
|
-
series10FgHover: colors2.indigo[700],
|
|
2233
|
-
series10Bg: colors2.indigo[100],
|
|
2234
|
-
series10BgHover: colors2.indigo[200]
|
|
2164
|
+
legendFg: text2.tertiary,
|
|
2165
|
+
series: [
|
|
2166
|
+
{ fg: colors2.violet[500], fgHover: colors2.violet[600], bg: colors2.violet[100], bgHover: colors2.violet[200] },
|
|
2167
|
+
{ fg: colors2.orangeDark[400], fgHover: colors2.orangeDark[500], bg: colors2.orangeDark[100], bgHover: colors2.orangeDark[200] },
|
|
2168
|
+
{ fg: colors2.teal[300], fgHover: colors2.teal[400], bg: colors2.teal[50], bgHover: colors2.teal[100] },
|
|
2169
|
+
{ fg: colors2.warning[400], fgHover: colors2.warning[500], bg: colors2.warning[100], bgHover: colors2.warning[200] },
|
|
2170
|
+
{ fg: colors2.rose[400], fgHover: colors2.rose[500], bg: colors2.rose[100], bgHover: colors2.rose[200] },
|
|
2171
|
+
{ fg: colors2.blueLight[400], fgHover: colors2.blueLight[500], bg: colors2.blueLight[100], bgHover: colors2.blueLight[200] },
|
|
2172
|
+
{ fg: colors2.orange[300], fgHover: colors2.orange[400], bg: colors2.orange[100], bgHover: colors2.orange[200] },
|
|
2173
|
+
{ fg: colors2.cyan[600], fgHover: colors2.cyan[700], bg: colors2.cyan[100], bgHover: colors2.cyan[200] },
|
|
2174
|
+
{ fg: colors2.green[500], fgHover: colors2.green[600], bg: colors2.green[100], bgHover: colors2.green[200] },
|
|
2175
|
+
{ fg: colors2.pink[400], fgHover: colors2.pink[500], bg: colors2.pink[100], bgHover: colors2.pink[200] },
|
|
2176
|
+
{ fg: colors2.fuchsia[400], fgHover: colors2.fuchsia[500], bg: colors2.fuchsia[100], bgHover: colors2.fuchsia[200] },
|
|
2177
|
+
{ fg: colors2.teal[600], fgHover: colors2.teal[700], bg: colors2.teal[100], bgHover: colors2.teal[200] }
|
|
2178
|
+
]
|
|
2235
2179
|
};
|
|
2236
2180
|
var focusRings2 = {
|
|
2237
|
-
brand: "0px 0px 0px 4px #
|
|
2238
|
-
brandShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #
|
|
2239
|
-
brandShadowSm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #
|
|
2181
|
+
brand: "0px 0px 0px 4px #4040403d",
|
|
2182
|
+
brandShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #4040403d",
|
|
2183
|
+
brandShadowSm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #4040403d",
|
|
2240
2184
|
gray: "0px 0px 0px 4px #a0a0a624",
|
|
2241
2185
|
grayShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #a0a0a624",
|
|
2242
2186
|
grayShadowSm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #a0a0a624",
|
|
@@ -2306,5 +2250,5 @@ var forestThemeOptions = {
|
|
|
2306
2250
|
var forestTheme = createTheme(forestThemeOptions);
|
|
2307
2251
|
|
|
2308
2252
|
export { alkemyPlusPreset, alpha, avatarColors, bg, border, breadcrumbColors, buildTheme, buildThemeOptions, buttonColors, chartColors, colors, components, container, display, fg, focusRings, fontFamily, fontSize, fontWeight, forestPreset, forestTheme, forestThemeOptions, getAvailablePresets, getPreset, iconColors, lineHeight, navColors, palette, radius, registerPreset, shadows, shadows2, sliderColors, spacing, text, toggleColors, typography, widths };
|
|
2309
|
-
//# sourceMappingURL=chunk-
|
|
2310
|
-
//# sourceMappingURL=chunk-
|
|
2253
|
+
//# sourceMappingURL=chunk-6W3RIXXY.mjs.map
|
|
2254
|
+
//# sourceMappingURL=chunk-6W3RIXXY.mjs.map
|