@bismawy/pi-arnative 0.4.0 → 0.5.1
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/CHANGELOG.md +27 -0
- package/README.md +8 -0
- package/extensions/arnative.ts +14 -3
- package/extensions/footer.ts +24 -26
- package/extensions/section-headers.ts +24 -11
- package/extensions/tools.ts +12 -10
- package/extensions/ui-render-tweaks.ts +34 -3
- package/extensions/usage.ts +20 -16
- package/lib/ansi.ts +39 -6
- package/package.json +1 -1
- package/themes/arnative-cyberpunk.json +34 -33
- package/themes/arnative-dracula.json +26 -25
- package/themes/arnative-emerald.json +6 -5
- package/themes/arnative-gruvbox.json +26 -25
- package/themes/arnative-matrix.json +22 -21
- package/themes/arnative-nord.json +23 -22
- package/themes/arnative-sun.json +7 -6
- package/themes/arnative-synthwave.json +34 -33
- package/themes/arnative-violet.json +8 -7
- package/themes/arnative-zinc.json +6 -5
- package/themes/arnative.json +7 -6
- package/themes/gen-themes.mjs +121 -52
package/lib/ansi.ts
CHANGED
|
@@ -38,16 +38,38 @@ export function setActiveTheme<T>(th: T | null): void {
|
|
|
38
38
|
else delete (globalThis as Record<symbol, T>)[THEME_PROXY_KEY];
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
/**
|
|
42
|
-
|
|
41
|
+
/**
|
|
42
|
+
* Painter for arnative's soft accent (`accentSoft`).
|
|
43
|
+
*
|
|
44
|
+
* Pi <=1.1.0 let a theme declare extra tokens in `colors`, so `accentSoft` was
|
|
45
|
+
* addressable directly. 1.2.0 validates `colors` with `additionalProperties: false`
|
|
46
|
+
* and rejects the whole theme if it carries one, so the token now lives only in
|
|
47
|
+
* `vars` and `fg("accentSoft")` throws. The soft accent stays available through the
|
|
48
|
+
* resolved `accent` color (1.2.0 exposes `theme.colors`): its hue and chroma are
|
|
49
|
+
* softened to the generator's `*Soft` recipe, which keeps the two-tone look instead
|
|
50
|
+
* of collapsing to grey. Falls back to `muted`, then `accent`, on any older theme.
|
|
51
|
+
*/
|
|
52
|
+
export function softOf(th: {
|
|
53
|
+
fg?(c: string, t: string): string;
|
|
54
|
+
style?(t: string, o: { fg: unknown }): string;
|
|
55
|
+
colors?: Record<string, { kind?: string; c?: number; h?: number }>;
|
|
56
|
+
} | null): (s: string) => string {
|
|
43
57
|
const fg = th?.fg?.bind(th);
|
|
44
58
|
if (!fg) return (s) => s;
|
|
45
59
|
try {
|
|
46
60
|
fg("accentSoft", "");
|
|
47
61
|
return (s) => fg("accentSoft", s);
|
|
48
62
|
} catch {
|
|
49
|
-
|
|
63
|
+
// 1.2.0+ rejects `accentSoft`: derive the soft tint from the resolved accent.
|
|
50
64
|
}
|
|
65
|
+
const accent = th?.colors?.accent;
|
|
66
|
+
const style = th?.style?.bind(th);
|
|
67
|
+
if (accent?.kind === "oklch" && style) {
|
|
68
|
+
// The generator's `*Soft` recipe: lightness 0.82, a fifth of the accent chroma.
|
|
69
|
+
const soft = { kind: "oklch" as const, l: 0.82, c: (accent.c ?? 0) * 0.18, h: accent.h ?? 0 };
|
|
70
|
+
return (s) => style(s, { fg: soft });
|
|
71
|
+
}
|
|
72
|
+
return (s) => fg("muted", s);
|
|
51
73
|
}
|
|
52
74
|
|
|
53
75
|
/** pi defines one theme slot per thinking level (`thinkingOff`…`thinkingMax`), so a box
|
|
@@ -98,15 +120,26 @@ if (isMain(import.meta.url)) {
|
|
|
98
120
|
assert(getActiveTheme<object>() === null, "clearing the active theme leaves no stale slot");
|
|
99
121
|
|
|
100
122
|
const tag = { fg: (c: string, t: string) => `<${c}>${t}</${c}>` };
|
|
101
|
-
assert(
|
|
123
|
+
assert(softOf(tag)("x") === "<accentSoft>x</accentSoft>", "softOf uses accentSoft when the theme defines it");
|
|
102
124
|
const noSoft = {
|
|
103
125
|
fg: (c: string, t: string) => {
|
|
104
126
|
if (c === "accentSoft") throw new Error("Unknown theme color: accentSoft");
|
|
105
127
|
return `<${c}>${t}</${c}>`;
|
|
106
128
|
},
|
|
107
129
|
};
|
|
108
|
-
assert(
|
|
109
|
-
assert(
|
|
130
|
+
assert(softOf(noSoft)("x") === "<muted>x</muted>", "softOf falls back to muted without the token or colors");
|
|
131
|
+
assert(softOf(null)("x") === "x", "softOf without a theme is identity");
|
|
132
|
+
// Pi 1.2.0: acentSoft is rejected, so the soft tint is derived from `colors.accent`.
|
|
133
|
+
const modern = {
|
|
134
|
+
fg: (c: string, t: string) => {
|
|
135
|
+
throw new Error(`Unknown theme color: ${c}`);
|
|
136
|
+
},
|
|
137
|
+
style: (t: string, o: { fg: unknown }) => `<soft:${JSON.stringify(o.fg)}>${t}</soft>`,
|
|
138
|
+
colors: { accent: { kind: "oklch", c: 0.2, h: 355 } },
|
|
139
|
+
};
|
|
140
|
+
const modernOut = softOf(modern)("x");
|
|
141
|
+
assert(modernOut.includes('"l":0.82') && modernOut.includes('"c":0.036'), "softOf derives the soft tint from accent (l=0.82, c=accent*0.18)");
|
|
142
|
+
assert(modernOut.includes("x"), "softOf keeps the text");
|
|
110
143
|
|
|
111
144
|
assert(thinkingColorSlot("off") === "thinkingOff", "thinking off maps to thinkingOff");
|
|
112
145
|
assert(thinkingColorSlot(undefined) === "thinkingOff", "missing level falls back to thinkingOff");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bismawy/pi-arnative",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "Refined aesthetics. Cohesive tools. Built for Pi. Warm themes, rounded tool boxes, tabbed header, compact footer and a /usage dashboard.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pi-package",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://pi.dev/schemas/theme.schema.json",
|
|
3
3
|
"name": "arnative-cyberpunk",
|
|
4
4
|
"appearance": "dark",
|
|
5
5
|
"vars": {
|
|
@@ -7,19 +7,20 @@
|
|
|
7
7
|
"fgMuted": "oklch(72% 0.02 275)",
|
|
8
8
|
"fgDim": "oklch(61% 0.02 275)",
|
|
9
9
|
"fgFaint": "oklch(49% 0.02 275)",
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
10
|
+
"primary": "oklch(88% 0.18 95)",
|
|
11
|
+
"secondary": "oklch(82% 0.139 200)",
|
|
12
|
+
"accent": "oklch(78% 0.146 355)",
|
|
13
|
+
"accentSoft": "oklch(82% 0.026 355)",
|
|
14
|
+
"accentBorder": "oklch(82% 0.114 355)",
|
|
13
15
|
"success": "oklch(78% 0.15 145)",
|
|
14
16
|
"error": "oklch(76% 0.143 25)",
|
|
15
17
|
"warning": "oklch(86% 0.14 85)",
|
|
16
|
-
"surfaceMsg": "oklch(
|
|
18
|
+
"surfaceMsg": "oklch(24% 0.035 200)"
|
|
17
19
|
},
|
|
18
20
|
"colors": {
|
|
19
21
|
"accent": "accent",
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"borderAccent": "accentBorder",
|
|
22
|
+
"border": "oklch(55% 0.07 200)",
|
|
23
|
+
"borderAccent": "secondary",
|
|
23
24
|
"borderMuted": "fgFaint",
|
|
24
25
|
"success": "success",
|
|
25
26
|
"error": "error",
|
|
@@ -29,58 +30,58 @@
|
|
|
29
30
|
"text": "fg",
|
|
30
31
|
|
|
31
32
|
"thinkingText": "fgMuted",
|
|
32
|
-
"selectedBg": "oklch(
|
|
33
|
+
"selectedBg": "oklch(31% 0.05 200)",
|
|
33
34
|
"scrollbarTrack": "fgFaint",
|
|
34
35
|
"scrollbarThumb": "accentSoft",
|
|
35
|
-
"searchMatchBg": "oklch(
|
|
36
|
+
"searchMatchBg": "oklch(38% 0.078 95)",
|
|
36
37
|
"searchMatchText": "fg",
|
|
37
38
|
"userMessageBg": "surfaceMsg",
|
|
38
39
|
"userMessageText": "fg",
|
|
39
|
-
"customMessageBg": "oklch(
|
|
40
|
+
"customMessageBg": "oklch(25% 0.043 200)",
|
|
40
41
|
"customMessageText": "fg",
|
|
41
|
-
"customMessageLabel": "oklch(78% 0.
|
|
42
|
-
"toolPendingBg": "oklch(
|
|
43
|
-
"toolSuccessBg": "oklch(
|
|
44
|
-
"toolErrorBg": "oklch(
|
|
42
|
+
"customMessageLabel": "oklch(78% 0.133 200)",
|
|
43
|
+
"toolPendingBg": "oklch(22% 0.05 355)",
|
|
44
|
+
"toolSuccessBg": "oklch(21% 0.06 145)",
|
|
45
|
+
"toolErrorBg": "oklch(21% 0.06 25)",
|
|
45
46
|
"toolTitle": "fg",
|
|
46
47
|
|
|
47
48
|
"toolOutput": "fgMuted",
|
|
48
|
-
"mdHeading": "
|
|
49
|
-
"mdLink": "oklch(80% 0.
|
|
49
|
+
"mdHeading": "primary",
|
|
50
|
+
"mdLink": "oklch(80% 0.136 200)",
|
|
50
51
|
"mdLinkUrl": "fgDim",
|
|
51
|
-
"mdCode": "
|
|
52
|
+
"mdCode": "secondary",
|
|
52
53
|
"mdCodeBlock": "success",
|
|
53
54
|
"mdCodeBlockBorder": "fgMuted",
|
|
54
55
|
"mdQuote": "fgMuted",
|
|
55
56
|
"mdQuoteBorder": "fgMuted",
|
|
56
57
|
"mdHr": "fgFaint",
|
|
57
58
|
|
|
58
|
-
"mdListBullet": "
|
|
59
|
+
"mdListBullet": "primary",
|
|
59
60
|
"toolDiffAdded": "success",
|
|
60
61
|
"toolDiffRemoved": "error",
|
|
61
62
|
"toolDiffContext": "fgMuted",
|
|
62
63
|
"syntaxComment": "fgDim",
|
|
63
|
-
"syntaxKeyword": "
|
|
64
|
-
"syntaxFunction": "oklch(86% 0.
|
|
65
|
-
"syntaxVariable": "oklch(84% 0.
|
|
66
|
-
"syntaxString": "oklch(82% 0.14
|
|
67
|
-
"syntaxNumber": "oklch(80% 0.
|
|
68
|
-
"syntaxType": "oklch(80% 0.
|
|
64
|
+
"syntaxKeyword": "secondary",
|
|
65
|
+
"syntaxFunction": "oklch(86% 0.16 95)",
|
|
66
|
+
"syntaxVariable": "oklch(84% 0.1 355)",
|
|
67
|
+
"syntaxString": "oklch(82% 0.14 140)",
|
|
68
|
+
"syntaxNumber": "oklch(80% 0.122 45)",
|
|
69
|
+
"syntaxType": "oklch(80% 0.136 200)",
|
|
69
70
|
"syntaxOperator": "fg",
|
|
70
71
|
|
|
71
72
|
"syntaxPunctuation": "fgMuted",
|
|
72
73
|
"thinkingOff": "oklch(40% 0.02 275)",
|
|
73
|
-
"thinkingMinimal": "oklch(47% 0.05
|
|
74
|
-
"thinkingLow": "oklch(55% 0.08
|
|
75
|
-
"thinkingMedium": "oklch(63% 0.12
|
|
76
|
-
"thinkingHigh": "oklch(71% 0.16
|
|
77
|
-
"thinkingXhigh": "oklch(79% 0.
|
|
74
|
+
"thinkingMinimal": "oklch(47% 0.05 355)",
|
|
75
|
+
"thinkingLow": "oklch(55% 0.08 355)",
|
|
76
|
+
"thinkingMedium": "oklch(63% 0.12 355)",
|
|
77
|
+
"thinkingHigh": "oklch(71% 0.16 355)",
|
|
78
|
+
"thinkingXhigh": "oklch(79% 0.138 355)",
|
|
78
79
|
"thinkingMax": "accent",
|
|
79
80
|
"bashMode": "success"
|
|
80
81
|
},
|
|
81
82
|
"export": {
|
|
82
|
-
"pageBg": "oklch(
|
|
83
|
-
"cardBg": "oklch(
|
|
84
|
-
"infoBg": "oklch(
|
|
83
|
+
"pageBg": "oklch(18% 0.02 275)",
|
|
84
|
+
"cardBg": "oklch(21% 0.02 275)",
|
|
85
|
+
"infoBg": "oklch(29% 0.05 355)"
|
|
85
86
|
}
|
|
86
87
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://pi.dev/schemas/theme.schema.json",
|
|
3
3
|
"name": "arnative-dracula",
|
|
4
4
|
"appearance": "dark",
|
|
5
5
|
"vars": {
|
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|
"fgMuted": "oklch(72% 0.012 285)",
|
|
8
8
|
"fgDim": "oklch(61% 0.012 285)",
|
|
9
9
|
"fgFaint": "oklch(49% 0.012 285)",
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
10
|
+
"primary": "oklch(78% 0.125 295)",
|
|
11
|
+
"secondary": "oklch(82% 0.13 190)",
|
|
12
|
+
"accent": "oklch(78% 0.14 330)",
|
|
13
|
+
"accentSoft": "oklch(82% 0.025 330)",
|
|
14
|
+
"accentBorder": "oklch(82% 0.084 330)",
|
|
13
15
|
"success": "oklch(78% 0.14 145)",
|
|
14
16
|
"error": "oklch(76% 0.14 25)",
|
|
15
17
|
"warning": "oklch(86% 0.14 85)",
|
|
@@ -17,9 +19,8 @@
|
|
|
17
19
|
},
|
|
18
20
|
"colors": {
|
|
19
21
|
"accent": "accent",
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"borderAccent": "accentBorder",
|
|
22
|
+
"border": "oklch(55% 0.049 295)",
|
|
23
|
+
"borderAccent": "secondary",
|
|
23
24
|
"borderMuted": "fgFaint",
|
|
24
25
|
"success": "success",
|
|
25
26
|
"error": "error",
|
|
@@ -29,58 +30,58 @@
|
|
|
29
30
|
"text": "fg",
|
|
30
31
|
|
|
31
32
|
"thinkingText": "fgMuted",
|
|
32
|
-
"selectedBg": "oklch(36% 0.035
|
|
33
|
+
"selectedBg": "oklch(36% 0.035 295)",
|
|
33
34
|
"scrollbarTrack": "fgFaint",
|
|
34
35
|
"scrollbarThumb": "accentSoft",
|
|
35
|
-
"searchMatchBg": "oklch(43% 0.063
|
|
36
|
+
"searchMatchBg": "oklch(43% 0.063 85)",
|
|
36
37
|
"searchMatchText": "fg",
|
|
37
38
|
"userMessageBg": "surfaceMsg",
|
|
38
39
|
"userMessageText": "fg",
|
|
39
|
-
"customMessageBg": "oklch(30% 0.
|
|
40
|
+
"customMessageBg": "oklch(30% 0.05 190)",
|
|
40
41
|
"customMessageText": "fg",
|
|
41
|
-
"customMessageLabel": "oklch(78% 0.098
|
|
42
|
-
"toolPendingBg": "oklch(27% 0.042
|
|
42
|
+
"customMessageLabel": "oklch(78% 0.098 190)",
|
|
43
|
+
"toolPendingBg": "oklch(27% 0.042 330)",
|
|
43
44
|
"toolSuccessBg": "oklch(26% 0.056 145)",
|
|
44
45
|
"toolErrorBg": "oklch(26% 0.056 25)",
|
|
45
46
|
"toolTitle": "fg",
|
|
46
47
|
|
|
47
48
|
"toolOutput": "fgMuted",
|
|
48
|
-
"mdHeading": "oklch(88% 0.
|
|
49
|
+
"mdHeading": "oklch(88% 0.084 85)",
|
|
49
50
|
"mdLink": "oklch(80% 0.098 190)",
|
|
50
51
|
"mdLinkUrl": "fgDim",
|
|
51
|
-
"mdCode": "
|
|
52
|
+
"mdCode": "secondary",
|
|
52
53
|
"mdCodeBlock": "success",
|
|
53
54
|
"mdCodeBlockBorder": "fgMuted",
|
|
54
55
|
"mdQuote": "fgMuted",
|
|
55
56
|
"mdQuoteBorder": "fgMuted",
|
|
56
57
|
"mdHr": "fgFaint",
|
|
57
58
|
|
|
58
|
-
"mdListBullet": "
|
|
59
|
+
"mdListBullet": "accent",
|
|
59
60
|
"toolDiffAdded": "success",
|
|
60
61
|
"toolDiffRemoved": "error",
|
|
61
62
|
"toolDiffContext": "fgMuted",
|
|
62
63
|
"syntaxComment": "fgDim",
|
|
63
|
-
"syntaxKeyword": "oklch(80% 0.098
|
|
64
|
-
"syntaxFunction": "oklch(86% 0.112
|
|
64
|
+
"syntaxKeyword": "oklch(80% 0.098 330)",
|
|
65
|
+
"syntaxFunction": "oklch(86% 0.112 140)",
|
|
65
66
|
"syntaxVariable": "oklch(84% 0.077 190)",
|
|
66
|
-
"syntaxString": "oklch(82% 0.098
|
|
67
|
-
"syntaxNumber": "oklch(80% 0.098
|
|
67
|
+
"syntaxString": "oklch(82% 0.098 85)",
|
|
68
|
+
"syntaxNumber": "oklch(80% 0.098 295)",
|
|
68
69
|
"syntaxType": "oklch(80% 0.112 190)",
|
|
69
70
|
"syntaxOperator": "fg",
|
|
70
71
|
|
|
71
72
|
"syntaxPunctuation": "fgMuted",
|
|
72
73
|
"thinkingOff": "oklch(40% 0.012 285)",
|
|
73
|
-
"thinkingMinimal": "oklch(47% 0.035
|
|
74
|
-
"thinkingLow": "oklch(55% 0.056
|
|
75
|
-
"thinkingMedium": "oklch(63% 0.084
|
|
76
|
-
"thinkingHigh": "oklch(71% 0.112
|
|
77
|
-
"thinkingXhigh": "oklch(79% 0.
|
|
74
|
+
"thinkingMinimal": "oklch(47% 0.035 330)",
|
|
75
|
+
"thinkingLow": "oklch(55% 0.056 330)",
|
|
76
|
+
"thinkingMedium": "oklch(63% 0.084 330)",
|
|
77
|
+
"thinkingHigh": "oklch(71% 0.112 330)",
|
|
78
|
+
"thinkingXhigh": "oklch(79% 0.14 330)",
|
|
78
79
|
"thinkingMax": "accent",
|
|
79
80
|
"bashMode": "success"
|
|
80
81
|
},
|
|
81
82
|
"export": {
|
|
82
83
|
"pageBg": "oklch(23% 0.012 285)",
|
|
83
84
|
"cardBg": "oklch(26% 0.012 285)",
|
|
84
|
-
"infoBg": "oklch(34% 0.035
|
|
85
|
+
"infoBg": "oklch(34% 0.035 330)"
|
|
85
86
|
}
|
|
86
87
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://pi.dev/schemas/theme.schema.json",
|
|
3
3
|
"name": "arnative-emerald",
|
|
4
4
|
"appearance": "dark",
|
|
5
5
|
"vars": {
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
"fgMuted": "oklch(72% 0.012 165)",
|
|
8
8
|
"fgDim": "oklch(61% 0.012 165)",
|
|
9
9
|
"fgFaint": "oklch(49% 0.012 165)",
|
|
10
|
+
"primary": "oklch(84% 0.13 165)",
|
|
11
|
+
"secondary": "oklch(78% 0.1 195)",
|
|
10
12
|
"accent": "oklch(78% 0.12 165)",
|
|
11
13
|
"accentSoft": "oklch(82% 0.022 165)",
|
|
12
14
|
"accentBorder": "oklch(82% 0.072 165)",
|
|
@@ -17,8 +19,7 @@
|
|
|
17
19
|
},
|
|
18
20
|
"colors": {
|
|
19
21
|
"accent": "accent",
|
|
20
|
-
"
|
|
21
|
-
"border": "oklch(55% 0.042 165)",
|
|
22
|
+
"border": "oklch(55% 0.042 0)",
|
|
22
23
|
"borderAccent": "accentBorder",
|
|
23
24
|
"borderMuted": "fgFaint",
|
|
24
25
|
"success": "success",
|
|
@@ -29,10 +30,10 @@
|
|
|
29
30
|
"text": "fg",
|
|
30
31
|
|
|
31
32
|
"thinkingText": "fgMuted",
|
|
32
|
-
"selectedBg": "oklch(34% 0.03
|
|
33
|
+
"selectedBg": "oklch(34% 0.03 0)",
|
|
33
34
|
"scrollbarTrack": "fgFaint",
|
|
34
35
|
"scrollbarThumb": "accentSoft",
|
|
35
|
-
"searchMatchBg": "oklch(41% 0.054
|
|
36
|
+
"searchMatchBg": "oklch(41% 0.054 0)",
|
|
36
37
|
"searchMatchText": "fg",
|
|
37
38
|
"userMessageBg": "surfaceMsg",
|
|
38
39
|
"userMessageText": "fg",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://pi.dev/schemas/theme.schema.json",
|
|
3
3
|
"name": "arnative-gruvbox",
|
|
4
4
|
"appearance": "dark",
|
|
5
5
|
"vars": {
|
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|
"fgMuted": "oklch(72% 0.015 70)",
|
|
8
8
|
"fgDim": "oklch(61% 0.015 70)",
|
|
9
9
|
"fgFaint": "oklch(49% 0.015 70)",
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
10
|
+
"primary": "oklch(84% 0.14 83)",
|
|
11
|
+
"secondary": "oklch(78% 0.1 175)",
|
|
12
|
+
"accent": "oklch(78% 0.137 45)",
|
|
13
|
+
"accentSoft": "oklch(82% 0.025 45)",
|
|
14
|
+
"accentBorder": "oklch(82% 0.084 45)",
|
|
13
15
|
"success": "oklch(78% 0.14 145)",
|
|
14
16
|
"error": "oklch(76% 0.14 25)",
|
|
15
17
|
"warning": "oklch(86% 0.14 85)",
|
|
@@ -17,9 +19,8 @@
|
|
|
17
19
|
},
|
|
18
20
|
"colors": {
|
|
19
21
|
"accent": "accent",
|
|
20
|
-
"accentSoft": "accentSoft",
|
|
21
22
|
"border": "oklch(55% 0.049 83)",
|
|
22
|
-
"borderAccent": "
|
|
23
|
+
"borderAccent": "secondary",
|
|
23
24
|
"borderMuted": "fgFaint",
|
|
24
25
|
"success": "success",
|
|
25
26
|
"error": "error",
|
|
@@ -36,51 +37,51 @@
|
|
|
36
37
|
"searchMatchText": "fg",
|
|
37
38
|
"userMessageBg": "surfaceMsg",
|
|
38
39
|
"userMessageText": "fg",
|
|
39
|
-
"customMessageBg": "oklch(25% 0.
|
|
40
|
+
"customMessageBg": "oklch(25% 0.047 175)",
|
|
40
41
|
"customMessageText": "fg",
|
|
41
|
-
"customMessageLabel": "oklch(78% 0.098
|
|
42
|
-
"toolPendingBg": "oklch(22% 0.042
|
|
42
|
+
"customMessageLabel": "oklch(78% 0.098 175)",
|
|
43
|
+
"toolPendingBg": "oklch(22% 0.042 45)",
|
|
43
44
|
"toolSuccessBg": "oklch(21% 0.056 145)",
|
|
44
45
|
"toolErrorBg": "oklch(21% 0.056 25)",
|
|
45
46
|
"toolTitle": "fg",
|
|
46
47
|
|
|
47
48
|
"toolOutput": "fgMuted",
|
|
48
|
-
"mdHeading": "
|
|
49
|
-
"mdLink": "oklch(80% 0.098
|
|
49
|
+
"mdHeading": "primary",
|
|
50
|
+
"mdLink": "oklch(80% 0.098 175)",
|
|
50
51
|
"mdLinkUrl": "fgDim",
|
|
51
|
-
"mdCode": "
|
|
52
|
+
"mdCode": "secondary",
|
|
52
53
|
"mdCodeBlock": "success",
|
|
53
54
|
"mdCodeBlockBorder": "fgMuted",
|
|
54
55
|
"mdQuote": "fgMuted",
|
|
55
56
|
"mdQuoteBorder": "fgMuted",
|
|
56
57
|
"mdHr": "fgFaint",
|
|
57
58
|
|
|
58
|
-
"mdListBullet": "
|
|
59
|
+
"mdListBullet": "accent",
|
|
59
60
|
"toolDiffAdded": "success",
|
|
60
61
|
"toolDiffRemoved": "error",
|
|
61
62
|
"toolDiffContext": "fgMuted",
|
|
62
63
|
"syntaxComment": "fgDim",
|
|
63
|
-
"syntaxKeyword": "oklch(80% 0.098
|
|
64
|
-
"syntaxFunction": "oklch(86% 0.
|
|
65
|
-
"syntaxVariable": "oklch(84% 0.077
|
|
66
|
-
"syntaxString": "oklch(82% 0.098
|
|
67
|
-
"syntaxNumber": "oklch(80% 0.098
|
|
68
|
-
"syntaxType": "oklch(80% 0.112
|
|
64
|
+
"syntaxKeyword": "oklch(80% 0.098 45)",
|
|
65
|
+
"syntaxFunction": "oklch(86% 0.112 83)",
|
|
66
|
+
"syntaxVariable": "oklch(84% 0.077 175)",
|
|
67
|
+
"syntaxString": "oklch(82% 0.098 145)",
|
|
68
|
+
"syntaxNumber": "oklch(80% 0.098 45)",
|
|
69
|
+
"syntaxType": "oklch(80% 0.112 83)",
|
|
69
70
|
"syntaxOperator": "fg",
|
|
70
71
|
|
|
71
72
|
"syntaxPunctuation": "fgMuted",
|
|
72
73
|
"thinkingOff": "oklch(40% 0.015 70)",
|
|
73
|
-
"thinkingMinimal": "oklch(47% 0.035
|
|
74
|
-
"thinkingLow": "oklch(55% 0.056
|
|
75
|
-
"thinkingMedium": "oklch(63% 0.084
|
|
76
|
-
"thinkingHigh": "oklch(71% 0.112
|
|
77
|
-
"thinkingXhigh": "oklch(79% 0.
|
|
74
|
+
"thinkingMinimal": "oklch(47% 0.035 45)",
|
|
75
|
+
"thinkingLow": "oklch(55% 0.056 45)",
|
|
76
|
+
"thinkingMedium": "oklch(63% 0.084 45)",
|
|
77
|
+
"thinkingHigh": "oklch(71% 0.112 45)",
|
|
78
|
+
"thinkingXhigh": "oklch(79% 0.13 45)",
|
|
78
79
|
"thinkingMax": "accent",
|
|
79
80
|
"bashMode": "success"
|
|
80
81
|
},
|
|
81
82
|
"export": {
|
|
82
83
|
"pageBg": "oklch(18% 0.015 70)",
|
|
83
84
|
"cardBg": "oklch(21% 0.015 70)",
|
|
84
|
-
"infoBg": "oklch(29% 0.035
|
|
85
|
+
"infoBg": "oklch(29% 0.035 45)"
|
|
85
86
|
}
|
|
86
87
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://pi.dev/schemas/theme.schema.json",
|
|
3
3
|
"name": "arnative-matrix",
|
|
4
4
|
"appearance": "dark",
|
|
5
5
|
"vars": {
|
|
@@ -7,18 +7,19 @@
|
|
|
7
7
|
"fgMuted": "oklch(72% 0.02 145)",
|
|
8
8
|
"fgDim": "oklch(61% 0.02 145)",
|
|
9
9
|
"fgFaint": "oklch(49% 0.02 145)",
|
|
10
|
+
"primary": "oklch(88% 0.24 145)",
|
|
11
|
+
"secondary": "oklch(76% 0.16 165)",
|
|
10
12
|
"accent": "oklch(78% 0.22 144)",
|
|
11
13
|
"accentSoft": "oklch(82% 0.04 144)",
|
|
12
14
|
"accentBorder": "oklch(82% 0.132 144)",
|
|
13
15
|
"success": "oklch(78% 0.15 145)",
|
|
14
16
|
"error": "oklch(76% 0.143 25)",
|
|
15
17
|
"warning": "oklch(86% 0.14 85)",
|
|
16
|
-
"surfaceMsg": "oklch(
|
|
18
|
+
"surfaceMsg": "oklch(24% 0.035 145)"
|
|
17
19
|
},
|
|
18
20
|
"colors": {
|
|
19
21
|
"accent": "accent",
|
|
20
|
-
"
|
|
21
|
-
"border": "oklch(55% 0.077 144)",
|
|
22
|
+
"border": "oklch(55% 0.077 0)",
|
|
22
23
|
"borderAccent": "accentBorder",
|
|
23
24
|
"borderMuted": "fgFaint",
|
|
24
25
|
"success": "success",
|
|
@@ -29,43 +30,43 @@
|
|
|
29
30
|
"text": "fg",
|
|
30
31
|
|
|
31
32
|
"thinkingText": "fgMuted",
|
|
32
|
-
"selectedBg": "oklch(
|
|
33
|
+
"selectedBg": "oklch(31% 0.055 0)",
|
|
33
34
|
"scrollbarTrack": "fgFaint",
|
|
34
35
|
"scrollbarThumb": "accentSoft",
|
|
35
|
-
"searchMatchBg": "oklch(
|
|
36
|
+
"searchMatchBg": "oklch(38% 0.099 0)",
|
|
36
37
|
"searchMatchText": "fg",
|
|
37
38
|
"userMessageBg": "surfaceMsg",
|
|
38
39
|
"userMessageText": "fg",
|
|
39
|
-
"customMessageBg": "oklch(
|
|
40
|
+
"customMessageBg": "oklch(25% 0.05 145)",
|
|
40
41
|
"customMessageText": "fg",
|
|
41
|
-
"customMessageLabel": "oklch(78% 0.
|
|
42
|
-
"toolPendingBg": "oklch(
|
|
43
|
-
"toolSuccessBg": "oklch(
|
|
44
|
-
"toolErrorBg": "oklch(
|
|
42
|
+
"customMessageLabel": "oklch(78% 0.14 145)",
|
|
43
|
+
"toolPendingBg": "oklch(22% 0.05 144)",
|
|
44
|
+
"toolSuccessBg": "oklch(21% 0.06 145)",
|
|
45
|
+
"toolErrorBg": "oklch(21% 0.06 25)",
|
|
45
46
|
"toolTitle": "fg",
|
|
46
47
|
|
|
47
48
|
"toolOutput": "fgMuted",
|
|
48
49
|
"mdHeading": "oklch(88% 0.132 145)",
|
|
49
|
-
"mdLink": "oklch(80% 0.
|
|
50
|
+
"mdLink": "oklch(80% 0.14 145)",
|
|
50
51
|
"mdLinkUrl": "fgDim",
|
|
51
|
-
"mdCode": "oklch(80% 0.
|
|
52
|
+
"mdCode": "oklch(80% 0.14 144)",
|
|
52
53
|
"mdCodeBlock": "success",
|
|
53
54
|
"mdCodeBlockBorder": "fgMuted",
|
|
54
55
|
"mdQuote": "fgMuted",
|
|
55
56
|
"mdQuoteBorder": "fgMuted",
|
|
56
57
|
"mdHr": "fgFaint",
|
|
57
58
|
|
|
58
|
-
"mdListBullet": "oklch(80% 0.
|
|
59
|
+
"mdListBullet": "oklch(80% 0.14 144)",
|
|
59
60
|
"toolDiffAdded": "success",
|
|
60
61
|
"toolDiffRemoved": "error",
|
|
61
62
|
"toolDiffContext": "fgMuted",
|
|
62
63
|
"syntaxComment": "fgDim",
|
|
63
|
-
"syntaxKeyword": "oklch(80% 0.
|
|
64
|
-
"syntaxFunction": "oklch(86% 0.
|
|
64
|
+
"syntaxKeyword": "oklch(80% 0.14 144)",
|
|
65
|
+
"syntaxFunction": "oklch(86% 0.16 145)",
|
|
65
66
|
"syntaxVariable": "oklch(84% 0.121 145)",
|
|
66
67
|
"syntaxString": "oklch(82% 0.154 145)",
|
|
67
|
-
"syntaxNumber": "oklch(80% 0.
|
|
68
|
-
"syntaxType": "oklch(80% 0.
|
|
68
|
+
"syntaxNumber": "oklch(80% 0.15 145)",
|
|
69
|
+
"syntaxType": "oklch(80% 0.16 145)",
|
|
69
70
|
"syntaxOperator": "fg",
|
|
70
71
|
|
|
71
72
|
"syntaxPunctuation": "fgMuted",
|
|
@@ -79,8 +80,8 @@
|
|
|
79
80
|
"bashMode": "success"
|
|
80
81
|
},
|
|
81
82
|
"export": {
|
|
82
|
-
"pageBg": "oklch(
|
|
83
|
-
"cardBg": "oklch(
|
|
84
|
-
"infoBg": "oklch(
|
|
83
|
+
"pageBg": "oklch(18% 0.02 145)",
|
|
84
|
+
"cardBg": "oklch(21% 0.02 145)",
|
|
85
|
+
"infoBg": "oklch(29% 0.055 144)"
|
|
85
86
|
}
|
|
86
87
|
}
|