auq-mcp-server 2.6.4 → 2.7.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/README.md +56 -2
- package/dist/bin/auq.js +36 -3
- package/dist/bin/tui-app.js +27 -6
- package/dist/package.json +7 -2
- package/dist/src/__tests__/schema-validation.test.js +61 -1
- package/dist/src/cli/commands/__tests__/fetch-answers.test.js +310 -0
- package/dist/src/cli/commands/__tests__/history.test.js +211 -0
- package/dist/src/cli/commands/answer.js +11 -0
- package/dist/src/cli/commands/config.js +48 -0
- package/dist/src/cli/commands/fetch-answers.js +205 -0
- package/dist/src/cli/commands/history.js +375 -0
- package/dist/src/config/__tests__/ConfigLoader.test.js +38 -0
- package/dist/src/config/defaults.js +1 -0
- package/dist/src/config/types.js +1 -0
- package/dist/src/core/ask-user-questions.js +63 -0
- package/dist/src/i18n/locales/en.js +2 -2
- package/dist/src/server.js +59 -2
- package/dist/src/session/ResponseFormatter.js +79 -2
- package/dist/src/session/SessionManager.js +36 -0
- package/dist/src/session/__tests__/ResponseFormatter.test.js +86 -0
- package/dist/src/session/__tests__/SessionManager.test.js +129 -0
- package/dist/src/shared/schemas.js +8 -0
- package/dist/src/tui/ThemeProvider.js +3 -3
- package/dist/src/tui/components/Header.js +2 -1
- package/dist/src/tui/components/OptionsList.js +1 -1
- package/dist/src/tui/components/SessionPicker.js +1 -1
- package/dist/src/tui/components/StepperView.js +1 -1
- package/dist/src/tui/components/__tests__/ConfirmationDialog.test.js +1 -1
- package/dist/src/tui/components/__tests__/Footer.test.js +1 -1
- package/dist/src/tui/components/__tests__/MarkdownPrompt.test.js +1 -1
- package/dist/src/tui/components/__tests__/ReviewScreen.test.js +1 -1
- package/dist/src/tui/components/__tests__/SessionDots.test.js +1 -1
- package/dist/src/tui/components/__tests__/SessionPicker.test.js +1 -1
- package/dist/src/tui/components/__tests__/StepperView.abandoned.test.js +1 -1
- package/dist/src/tui/components/__tests__/StepperView.keyboard.test.js +1 -1
- package/dist/src/tui/components/__tests__/StepperView.state.test.js +1 -1
- package/dist/src/tui/components/__tests__/WaitingScreen.test.js +1 -1
- package/dist/src/tui/shared/session-events.js +4 -0
- package/dist/src/tui/shared/themes/catppuccin-latte.js +130 -0
- package/dist/src/tui/shared/themes/catppuccin-mocha.js +131 -0
- package/dist/src/tui/shared/themes/dark.js +131 -0
- package/dist/src/tui/shared/themes/dracula.js +131 -0
- package/dist/src/tui/shared/themes/github-dark.js +129 -0
- package/dist/src/tui/shared/themes/github-light.js +129 -0
- package/dist/src/tui/shared/themes/gruvbox-dark.js +130 -0
- package/dist/src/tui/shared/themes/gruvbox-light.js +130 -0
- package/dist/src/tui/shared/themes/index.js +70 -0
- package/dist/src/tui/shared/themes/light.js +130 -0
- package/dist/src/tui/shared/themes/loader.js +111 -0
- package/dist/src/tui/shared/themes/monokai.js +132 -0
- package/dist/src/tui/shared/themes/nord.js +130 -0
- package/dist/src/tui/shared/themes/one-dark.js +131 -0
- package/dist/src/tui/shared/themes/rose-pine.js +131 -0
- package/dist/src/tui/shared/themes/solarized-dark.js +130 -0
- package/dist/src/tui/shared/themes/solarized-light.js +130 -0
- package/dist/src/tui/shared/themes/tokyo-night.js +131 -0
- package/dist/src/tui/shared/themes/types.js +1 -0
- package/dist/src/tui/shared/types.js +1 -0
- package/dist/src/tui/shared/utils/config.js +80 -0
- package/dist/src/tui/shared/utils/detectTheme.js +33 -0
- package/dist/src/tui/shared/utils/index.js +6 -0
- package/dist/src/tui/shared/utils/recommended.js +52 -0
- package/dist/src/tui/shared/utils/relativeTime.js +24 -0
- package/dist/src/tui/shared/utils/sessionSwitching.js +56 -0
- package/dist/src/tui/shared/utils/staleDetection.js +51 -0
- package/dist/src/tui/themes/catppuccin-latte.js +2 -127
- package/dist/src/tui/themes/catppuccin-mocha.js +2 -127
- package/dist/src/tui/themes/dark.js +2 -128
- package/dist/src/tui/themes/dracula.js +2 -127
- package/dist/src/tui/themes/github-dark.js +2 -126
- package/dist/src/tui/themes/github-light.js +2 -126
- package/dist/src/tui/themes/gruvbox-dark.js +2 -127
- package/dist/src/tui/themes/gruvbox-light.js +2 -127
- package/dist/src/tui/themes/index.js +2 -70
- package/dist/src/tui/themes/light.js +2 -127
- package/dist/src/tui/themes/loader.js +2 -111
- package/dist/src/tui/themes/monokai.js +2 -128
- package/dist/src/tui/themes/nord.js +2 -127
- package/dist/src/tui/themes/one-dark.js +2 -127
- package/dist/src/tui/themes/rose-pine.js +2 -128
- package/dist/src/tui/themes/solarized-dark.js +2 -127
- package/dist/src/tui/themes/solarized-light.js +2 -127
- package/dist/src/tui/themes/tokyo-night.js +2 -127
- package/dist/src/tui/themes/types.js +2 -1
- package/dist/src/tui/types.js +1 -1
- package/dist/src/tui/utils/__tests__/recommended.test.js +1 -1
- package/dist/src/tui/utils/__tests__/relativeTime.test.js +1 -1
- package/dist/src/tui/utils/__tests__/sessionSwitching.test.js +1 -1
- package/dist/src/tui/utils/__tests__/staleDetection.test.js +1 -1
- package/dist/src/tui/utils/config.js +1 -80
- package/dist/src/tui/utils/detectTheme.js +1 -22
- package/dist/src/tui/utils/recommended.js +1 -52
- package/dist/src/tui/utils/relativeTime.js +1 -24
- package/dist/src/tui/utils/sessionSwitching.js +1 -56
- package/dist/src/tui/utils/staleDetection.js +1 -51
- package/package.json +7 -2
|
@@ -1,126 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
*
|
|
3
|
-
* Authentic GitHub Light color palette optimized for readability.
|
|
4
|
-
*/
|
|
5
|
-
export const githubLightTheme = {
|
|
6
|
-
name: "github-light",
|
|
7
|
-
gradient: {
|
|
8
|
-
start: "#0969DA", // GitHub blue
|
|
9
|
-
middle: "#8250DF", // GitHub purple
|
|
10
|
-
end: "#0969DA",
|
|
11
|
-
},
|
|
12
|
-
colors: {
|
|
13
|
-
primary: "#0969DA", // GitHub blue
|
|
14
|
-
success: "#1A7F37", // GitHub green
|
|
15
|
-
warning: "#9A6700", // GitHub orange/brown
|
|
16
|
-
error: "#CF222E", // GitHub red
|
|
17
|
-
info: "#0969DA",
|
|
18
|
-
focused: "#0969DA",
|
|
19
|
-
selected: "#1A7F37",
|
|
20
|
-
pending: "#9A6700",
|
|
21
|
-
unansweredHighlight: "#cf222e",
|
|
22
|
-
text: "#24292F", // GitHub foreground
|
|
23
|
-
textDim: "#6E7781", // Muted text lightened
|
|
24
|
-
textBold: "#1F2328",
|
|
25
|
-
},
|
|
26
|
-
borders: {
|
|
27
|
-
primary: "#0969DA",
|
|
28
|
-
warning: "#9A6700",
|
|
29
|
-
error: "#CF222E",
|
|
30
|
-
neutral: "#D0D7DE", // Light gray border
|
|
31
|
-
},
|
|
32
|
-
components: {
|
|
33
|
-
header: {
|
|
34
|
-
border: "#A0A8B0",
|
|
35
|
-
queueActive: "#0969DA",
|
|
36
|
-
queueEmpty: "#6E7781",
|
|
37
|
-
queueFlash: "#DDF4FF", // Light blue flash
|
|
38
|
-
pillBg: "#DDF4FF", // Light blue bg
|
|
39
|
-
},
|
|
40
|
-
directory: {
|
|
41
|
-
label: "#6E7781",
|
|
42
|
-
path: "#24292F",
|
|
43
|
-
},
|
|
44
|
-
tabBar: {
|
|
45
|
-
selected: "#24292F",
|
|
46
|
-
selectedBg: "#F6F8FA", // Very light gray
|
|
47
|
-
default: "#6E7781",
|
|
48
|
-
answered: "#1A7F37",
|
|
49
|
-
unanswered: "#6E7781",
|
|
50
|
-
divider: "#D0D7DE",
|
|
51
|
-
},
|
|
52
|
-
options: {
|
|
53
|
-
focused: "#1A7F37", // Green cursor
|
|
54
|
-
focusedBg: "#DAFBE1", // Light green bg
|
|
55
|
-
selected: "#0969DA", // Blue selected
|
|
56
|
-
selectedBg: "#DDF4FF", // Light blue bg
|
|
57
|
-
default: "#24292F",
|
|
58
|
-
description: "#424a53", // darker for readability
|
|
59
|
-
hint: "#424a53", // darker for readability
|
|
60
|
-
},
|
|
61
|
-
input: {
|
|
62
|
-
border: "#D0D7DE",
|
|
63
|
-
borderFocused: "#0969DA",
|
|
64
|
-
placeholder: "#6E7781",
|
|
65
|
-
cursor: "#0969DA",
|
|
66
|
-
cursorDim: "#B8E0FF", // Lighter blue for cursor dim
|
|
67
|
-
},
|
|
68
|
-
review: {
|
|
69
|
-
border: "#D0D7DE",
|
|
70
|
-
confirmBorder: "#0969DA",
|
|
71
|
-
selectedOption: "#1A7F37",
|
|
72
|
-
customAnswer: "#9A6700",
|
|
73
|
-
questionId: "#6E7781",
|
|
74
|
-
divider: "#D0D7DE",
|
|
75
|
-
},
|
|
76
|
-
questionDisplay: {
|
|
77
|
-
questionId: "#0969DA",
|
|
78
|
-
typeIndicator: "#6E7781",
|
|
79
|
-
elapsed: "#6E7781",
|
|
80
|
-
},
|
|
81
|
-
footer: {
|
|
82
|
-
border: "#D0D7DE",
|
|
83
|
-
keyBg: "#F6F8FA", // Light key cap
|
|
84
|
-
keyFg: "#0969DA",
|
|
85
|
-
action: "#424a53", // darker for visibility
|
|
86
|
-
separator: "#D0D7DE",
|
|
87
|
-
},
|
|
88
|
-
toast: {
|
|
89
|
-
success: "#1A7F37",
|
|
90
|
-
successPillBg: "#f6f8fa",
|
|
91
|
-
error: "#CF222E",
|
|
92
|
-
info: "#0969DA",
|
|
93
|
-
warning: "#9A6700",
|
|
94
|
-
border: "#D0D7DE",
|
|
95
|
-
},
|
|
96
|
-
markdown: {
|
|
97
|
-
codeBlockBg: "#f6f8fa",
|
|
98
|
-
codeBlockText: "#24292F",
|
|
99
|
-
codeBlockBorder: "#D0D7DE",
|
|
100
|
-
},
|
|
101
|
-
sessionDots: {
|
|
102
|
-
active: "#0969DA",
|
|
103
|
-
answered: "#1A7F37",
|
|
104
|
-
inProgress: "#9A6700",
|
|
105
|
-
untouched: "#6E7781",
|
|
106
|
-
number: "#24292F",
|
|
107
|
-
activeNumber: "#0969DA",
|
|
108
|
-
stale: "#9A6700",
|
|
109
|
-
abandoned: "#CF222E",
|
|
110
|
-
},
|
|
111
|
-
sessionPicker: {
|
|
112
|
-
border: "#0969DA",
|
|
113
|
-
title: "#0969DA",
|
|
114
|
-
rowText: "#24292F",
|
|
115
|
-
rowDim: "#6E7781",
|
|
116
|
-
highlightBg: "#DAFBE1",
|
|
117
|
-
highlightFg: "#1A7F37",
|
|
118
|
-
activeMark: "#0969DA",
|
|
119
|
-
progress: "#0969DA",
|
|
120
|
-
staleIcon: "#9A6700",
|
|
121
|
-
staleText: "#9A6700",
|
|
122
|
-
staleAge: "#9A6700",
|
|
123
|
-
staleSubtitle: "#6E7781",
|
|
124
|
-
},
|
|
125
|
-
},
|
|
126
|
-
};
|
|
1
|
+
// Re-export from shared location for backward compatibility
|
|
2
|
+
export * from "../shared/themes/github-light.js";
|
|
@@ -1,127 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
*
|
|
3
|
-
* Retro groove color scheme with warm colors.
|
|
4
|
-
* https://github.com/morhetz/gruvbox
|
|
5
|
-
*/
|
|
6
|
-
export const gruvboxDarkTheme = {
|
|
7
|
-
name: "gruvbox-dark",
|
|
8
|
-
gradient: {
|
|
9
|
-
start: "#458588", // blue
|
|
10
|
-
middle: "#689d6a", // aqua
|
|
11
|
-
end: "#458588",
|
|
12
|
-
},
|
|
13
|
-
colors: {
|
|
14
|
-
primary: "#458588", // blue
|
|
15
|
-
success: "#98971a", // green
|
|
16
|
-
warning: "#d79921", // yellow
|
|
17
|
-
error: "#cc241d", // red
|
|
18
|
-
info: "#458588", // blue
|
|
19
|
-
focused: "#458588", // blue
|
|
20
|
-
selected: "#98971a", // green
|
|
21
|
-
pending: "#d79921", // yellow
|
|
22
|
-
unansweredHighlight: "#cc241d", // gruvbox red
|
|
23
|
-
text: "#ebdbb2", // light1
|
|
24
|
-
textDim: "#a89984", // gray brightened
|
|
25
|
-
textBold: "#fbf1c7", // light0
|
|
26
|
-
},
|
|
27
|
-
borders: {
|
|
28
|
-
primary: "#458588",
|
|
29
|
-
warning: "#d79921",
|
|
30
|
-
error: "#cc241d",
|
|
31
|
-
neutral: "#3c3836", // dark1
|
|
32
|
-
},
|
|
33
|
-
components: {
|
|
34
|
-
header: {
|
|
35
|
-
border: "#504945", // dark2 - slightly more visible
|
|
36
|
-
queueActive: "#458588",
|
|
37
|
-
queueEmpty: "#a89984",
|
|
38
|
-
queueFlash: "#689d6a",
|
|
39
|
-
pillBg: "#3c3836",
|
|
40
|
-
},
|
|
41
|
-
directory: {
|
|
42
|
-
label: "#a89984",
|
|
43
|
-
path: "#ebdbb2",
|
|
44
|
-
},
|
|
45
|
-
tabBar: {
|
|
46
|
-
selected: "#ebdbb2",
|
|
47
|
-
selectedBg: "#3c3836",
|
|
48
|
-
default: "#a89984",
|
|
49
|
-
answered: "#98971a",
|
|
50
|
-
unanswered: "#a89984",
|
|
51
|
-
divider: "#3c3836",
|
|
52
|
-
},
|
|
53
|
-
options: {
|
|
54
|
-
focused: "#98971a",
|
|
55
|
-
focusedBg: "#3c3836",
|
|
56
|
-
selected: "#458588",
|
|
57
|
-
selectedBg: "#3c3836",
|
|
58
|
-
default: "#ebdbb2",
|
|
59
|
-
description: "#bdae93", // light3 - lighter for readability
|
|
60
|
-
hint: "#bdae93", // light3 - lighter for readability
|
|
61
|
-
},
|
|
62
|
-
input: {
|
|
63
|
-
border: "#3c3836",
|
|
64
|
-
borderFocused: "#458588",
|
|
65
|
-
placeholder: "#a89984",
|
|
66
|
-
cursor: "#458588",
|
|
67
|
-
cursorDim: "#689d6a",
|
|
68
|
-
},
|
|
69
|
-
review: {
|
|
70
|
-
border: "#3c3836",
|
|
71
|
-
confirmBorder: "#458588",
|
|
72
|
-
selectedOption: "#98971a",
|
|
73
|
-
customAnswer: "#d79921",
|
|
74
|
-
questionId: "#a89984",
|
|
75
|
-
divider: "#3c3836",
|
|
76
|
-
},
|
|
77
|
-
questionDisplay: {
|
|
78
|
-
questionId: "#458588",
|
|
79
|
-
typeIndicator: "#a89984",
|
|
80
|
-
elapsed: "#a89984",
|
|
81
|
-
},
|
|
82
|
-
footer: {
|
|
83
|
-
border: "#3c3836",
|
|
84
|
-
keyBg: "#3c3836",
|
|
85
|
-
keyFg: "#458588",
|
|
86
|
-
action: "#bdae93", // light3 - brighter for visibility
|
|
87
|
-
separator: "#3c3836",
|
|
88
|
-
},
|
|
89
|
-
toast: {
|
|
90
|
-
success: "#98971a",
|
|
91
|
-
successPillBg: "#3c3836", // dark1
|
|
92
|
-
error: "#cc241d",
|
|
93
|
-
info: "#458588",
|
|
94
|
-
warning: "#d79921",
|
|
95
|
-
border: "#3c3836",
|
|
96
|
-
},
|
|
97
|
-
markdown: {
|
|
98
|
-
codeBlockBg: "#282828",
|
|
99
|
-
codeBlockText: "#ebdbb2",
|
|
100
|
-
codeBlockBorder: "#3c3836",
|
|
101
|
-
},
|
|
102
|
-
sessionDots: {
|
|
103
|
-
active: "#458588",
|
|
104
|
-
answered: "#98971a",
|
|
105
|
-
inProgress: "#d79921",
|
|
106
|
-
untouched: "#a89984",
|
|
107
|
-
number: "#ebdbb2",
|
|
108
|
-
activeNumber: "#458588",
|
|
109
|
-
stale: "#d79921",
|
|
110
|
-
abandoned: "#cc241d",
|
|
111
|
-
},
|
|
112
|
-
sessionPicker: {
|
|
113
|
-
border: "#458588",
|
|
114
|
-
title: "#458588",
|
|
115
|
-
rowText: "#ebdbb2",
|
|
116
|
-
rowDim: "#a89984",
|
|
117
|
-
highlightBg: "#3c3836",
|
|
118
|
-
highlightFg: "#98971a",
|
|
119
|
-
activeMark: "#458588",
|
|
120
|
-
progress: "#458588",
|
|
121
|
-
staleIcon: "#d79921",
|
|
122
|
-
staleText: "#d79921",
|
|
123
|
-
staleAge: "#d79921",
|
|
124
|
-
staleSubtitle: "#a89984",
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
};
|
|
1
|
+
// Re-export from shared location for backward compatibility
|
|
2
|
+
export * from "../shared/themes/gruvbox-dark.js";
|
|
@@ -1,127 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
*
|
|
3
|
-
* Retro groove color scheme - light variant.
|
|
4
|
-
* https://github.com/morhetz/gruvbox
|
|
5
|
-
*/
|
|
6
|
-
export const gruvboxLightTheme = {
|
|
7
|
-
name: "gruvbox-light",
|
|
8
|
-
gradient: {
|
|
9
|
-
start: "#076678", // faded blue
|
|
10
|
-
middle: "#427b58", // faded aqua
|
|
11
|
-
end: "#076678",
|
|
12
|
-
},
|
|
13
|
-
colors: {
|
|
14
|
-
primary: "#076678", // faded blue
|
|
15
|
-
success: "#79740e", // faded green
|
|
16
|
-
warning: "#b57614", // faded yellow
|
|
17
|
-
error: "#9d0006", // faded red
|
|
18
|
-
info: "#076678", // faded blue
|
|
19
|
-
focused: "#076678",
|
|
20
|
-
selected: "#79740e",
|
|
21
|
-
pending: "#b57614",
|
|
22
|
-
unansweredHighlight: "#cc241d", // gruvbox red
|
|
23
|
-
text: "#3c3836", // dark1
|
|
24
|
-
textDim: "#a89984", // gray lightened
|
|
25
|
-
textBold: "#282828", // dark0
|
|
26
|
-
},
|
|
27
|
-
borders: {
|
|
28
|
-
primary: "#076678",
|
|
29
|
-
warning: "#b57614",
|
|
30
|
-
error: "#9d0006",
|
|
31
|
-
neutral: "#d5c4a1", // light2
|
|
32
|
-
},
|
|
33
|
-
components: {
|
|
34
|
-
header: {
|
|
35
|
-
border: "#a89984", // gray - slightly more visible
|
|
36
|
-
queueActive: "#076678",
|
|
37
|
-
queueEmpty: "#a89984",
|
|
38
|
-
queueFlash: "#427b58",
|
|
39
|
-
pillBg: "#ebdbb2", // light1
|
|
40
|
-
},
|
|
41
|
-
directory: {
|
|
42
|
-
label: "#a89984",
|
|
43
|
-
path: "#3c3836",
|
|
44
|
-
},
|
|
45
|
-
tabBar: {
|
|
46
|
-
selected: "#3c3836",
|
|
47
|
-
selectedBg: "#ebdbb2",
|
|
48
|
-
default: "#a89984",
|
|
49
|
-
answered: "#79740e",
|
|
50
|
-
unanswered: "#a89984",
|
|
51
|
-
divider: "#d5c4a1",
|
|
52
|
-
},
|
|
53
|
-
options: {
|
|
54
|
-
focused: "#79740e",
|
|
55
|
-
focusedBg: "#ebdbb2",
|
|
56
|
-
selected: "#076678",
|
|
57
|
-
selectedBg: "#ebdbb2",
|
|
58
|
-
default: "#3c3836",
|
|
59
|
-
description: "#665c54", // dark3 - darker for readability
|
|
60
|
-
hint: "#665c54", // dark3 - darker for readability
|
|
61
|
-
},
|
|
62
|
-
input: {
|
|
63
|
-
border: "#d5c4a1",
|
|
64
|
-
borderFocused: "#076678",
|
|
65
|
-
placeholder: "#a89984",
|
|
66
|
-
cursor: "#076678",
|
|
67
|
-
cursorDim: "#427b58",
|
|
68
|
-
},
|
|
69
|
-
review: {
|
|
70
|
-
border: "#d5c4a1",
|
|
71
|
-
confirmBorder: "#076678",
|
|
72
|
-
selectedOption: "#79740e",
|
|
73
|
-
customAnswer: "#b57614",
|
|
74
|
-
questionId: "#a89984",
|
|
75
|
-
divider: "#d5c4a1",
|
|
76
|
-
},
|
|
77
|
-
questionDisplay: {
|
|
78
|
-
questionId: "#076678",
|
|
79
|
-
typeIndicator: "#a89984",
|
|
80
|
-
elapsed: "#a89984",
|
|
81
|
-
},
|
|
82
|
-
footer: {
|
|
83
|
-
border: "#d5c4a1",
|
|
84
|
-
keyBg: "#ebdbb2",
|
|
85
|
-
keyFg: "#076678",
|
|
86
|
-
action: "#665c54", // dark3 - darker for visibility
|
|
87
|
-
separator: "#d5c4a1",
|
|
88
|
-
},
|
|
89
|
-
toast: {
|
|
90
|
-
success: "#79740e",
|
|
91
|
-
successPillBg: "#ebdbb2", // light1 - light bg
|
|
92
|
-
error: "#9d0006",
|
|
93
|
-
info: "#076678",
|
|
94
|
-
warning: "#b57614",
|
|
95
|
-
border: "#d5c4a1",
|
|
96
|
-
},
|
|
97
|
-
markdown: {
|
|
98
|
-
codeBlockBg: "#f9f5d9",
|
|
99
|
-
codeBlockText: "#3c3836",
|
|
100
|
-
codeBlockBorder: "#d5c4a1",
|
|
101
|
-
},
|
|
102
|
-
sessionDots: {
|
|
103
|
-
active: "#076678",
|
|
104
|
-
answered: "#79740e",
|
|
105
|
-
inProgress: "#b57614",
|
|
106
|
-
untouched: "#a89984",
|
|
107
|
-
number: "#3c3836",
|
|
108
|
-
activeNumber: "#076678",
|
|
109
|
-
stale: "#b57614",
|
|
110
|
-
abandoned: "#9d0006",
|
|
111
|
-
},
|
|
112
|
-
sessionPicker: {
|
|
113
|
-
border: "#076678",
|
|
114
|
-
title: "#076678",
|
|
115
|
-
rowText: "#3c3836",
|
|
116
|
-
rowDim: "#a89984",
|
|
117
|
-
highlightBg: "#ebdbb2",
|
|
118
|
-
highlightFg: "#79740e",
|
|
119
|
-
activeMark: "#076678",
|
|
120
|
-
progress: "#076678",
|
|
121
|
-
staleIcon: "#b57614",
|
|
122
|
-
staleText: "#b57614",
|
|
123
|
-
staleAge: "#b57614",
|
|
124
|
-
staleSubtitle: "#a89984",
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
};
|
|
1
|
+
// Re-export from shared location for backward compatibility
|
|
2
|
+
export * from "../shared/themes/gruvbox-light.js";
|
|
@@ -1,70 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { nordTheme } from "./nord.js";
|
|
4
|
-
import { draculaTheme } from "./dracula.js";
|
|
5
|
-
import { catppuccinMochaTheme } from "./catppuccin-mocha.js";
|
|
6
|
-
import { catppuccinLatteTheme } from "./catppuccin-latte.js";
|
|
7
|
-
import { solarizedDarkTheme } from "./solarized-dark.js";
|
|
8
|
-
import { solarizedLightTheme } from "./solarized-light.js";
|
|
9
|
-
import { gruvboxDarkTheme } from "./gruvbox-dark.js";
|
|
10
|
-
import { gruvboxLightTheme } from "./gruvbox-light.js";
|
|
11
|
-
import { tokyoNightTheme } from "./tokyo-night.js";
|
|
12
|
-
import { oneDarkTheme } from "./one-dark.js";
|
|
13
|
-
import { monokaiTheme } from "./monokai.js";
|
|
14
|
-
import { githubDarkTheme } from "./github-dark.js";
|
|
15
|
-
import { githubLightTheme } from "./github-light.js";
|
|
16
|
-
import { rosePineTheme } from "./rose-pine.js";
|
|
17
|
-
/**
|
|
18
|
-
* Built-in themes registry
|
|
19
|
-
* Order determines cycling order with Ctrl+T
|
|
20
|
-
*/
|
|
21
|
-
const builtInThemes = new Map([
|
|
22
|
-
["AUQ dark", darkTheme],
|
|
23
|
-
["AUQ light", lightTheme],
|
|
24
|
-
["nord", nordTheme],
|
|
25
|
-
["dracula", draculaTheme],
|
|
26
|
-
["catppuccin-mocha", catppuccinMochaTheme],
|
|
27
|
-
["catppuccin-latte", catppuccinLatteTheme],
|
|
28
|
-
["solarized-dark", solarizedDarkTheme],
|
|
29
|
-
["solarized-light", solarizedLightTheme],
|
|
30
|
-
["gruvbox-dark", gruvboxDarkTheme],
|
|
31
|
-
["gruvbox-light", gruvboxLightTheme],
|
|
32
|
-
["tokyo-night", tokyoNightTheme],
|
|
33
|
-
["one-dark", oneDarkTheme],
|
|
34
|
-
["monokai", monokaiTheme],
|
|
35
|
-
["github-dark", githubDarkTheme],
|
|
36
|
-
["github-light", githubLightTheme],
|
|
37
|
-
["rose-pine", rosePineTheme],
|
|
38
|
-
]);
|
|
39
|
-
/**
|
|
40
|
-
* Custom themes loaded from user config directory
|
|
41
|
-
*/
|
|
42
|
-
const customThemes = new Map();
|
|
43
|
-
/**
|
|
44
|
-
* Register a custom theme
|
|
45
|
-
*/
|
|
46
|
-
export function registerTheme(name, theme) {
|
|
47
|
-
customThemes.set(name, theme);
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Get a theme by name
|
|
51
|
-
* @param name Theme name ('dark', 'light', or custom theme name)
|
|
52
|
-
* @returns Theme object or undefined if not found
|
|
53
|
-
*/
|
|
54
|
-
export function getTheme(name) {
|
|
55
|
-
return builtInThemes.get(name) ?? customThemes.get(name);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* List all available theme names
|
|
59
|
-
*/
|
|
60
|
-
export function listThemes() {
|
|
61
|
-
return [...builtInThemes.keys(), ...customThemes.keys()];
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Check if a theme exists
|
|
65
|
-
*/
|
|
66
|
-
export function hasTheme(name) {
|
|
67
|
-
return builtInThemes.has(name) || customThemes.has(name);
|
|
68
|
-
}
|
|
69
|
-
// Re-export built-in themes for convenience
|
|
70
|
-
export { darkTheme, lightTheme, nordTheme, draculaTheme, catppuccinMochaTheme, catppuccinLatteTheme, solarizedDarkTheme, solarizedLightTheme, gruvboxDarkTheme, gruvboxLightTheme, tokyoNightTheme, oneDarkTheme, monokaiTheme, githubDarkTheme, githubLightTheme, rosePineTheme, };
|
|
1
|
+
// Re-export from shared location for backward compatibility
|
|
2
|
+
export * from "../shared/themes/index.js";
|
|
@@ -1,127 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
*
|
|
3
|
-
* Maintains the "electric-cyan" identity but optimized for light backgrounds.
|
|
4
|
-
* Uses darker grays for text and deeper saturations for accents to ensure readability.
|
|
5
|
-
*/
|
|
6
|
-
export const lightTheme = {
|
|
7
|
-
name: "AUQ light",
|
|
8
|
-
gradient: {
|
|
9
|
-
start: "#007EA7", // Darker cyan
|
|
10
|
-
middle: "#46D9FF", // Electric cyan (original)
|
|
11
|
-
end: "#007EA7",
|
|
12
|
-
},
|
|
13
|
-
colors: {
|
|
14
|
-
primary: "#007EA7", // Deep cyan
|
|
15
|
-
success: "#2DA44E", // GitHub green - readable on white
|
|
16
|
-
warning: "#B07D00", // Dark amber
|
|
17
|
-
error: "#CF222E", // Red
|
|
18
|
-
info: "#007EA7",
|
|
19
|
-
focused: "#007EA7",
|
|
20
|
-
selected: "#2DA44E",
|
|
21
|
-
pending: "#B07D00",
|
|
22
|
-
unansweredHighlight: "#CF222E",
|
|
23
|
-
text: "#24292F", // Graphite
|
|
24
|
-
textDim: "#6E7781", // Slate gray - softened
|
|
25
|
-
textBold: "#050505",
|
|
26
|
-
},
|
|
27
|
-
borders: {
|
|
28
|
-
primary: "#007EA7",
|
|
29
|
-
warning: "#B07D00",
|
|
30
|
-
error: "#CF222E",
|
|
31
|
-
neutral: "#D0D7DE", // Light gray border
|
|
32
|
-
},
|
|
33
|
-
components: {
|
|
34
|
-
header: {
|
|
35
|
-
border: "#A0A8B0", // slightly more visible
|
|
36
|
-
queueActive: "#007EA7",
|
|
37
|
-
queueEmpty: "#6E7781",
|
|
38
|
-
queueFlash: "#E0F7FA", // Light cyan flash
|
|
39
|
-
pillBg: "#E0F7FA", // Light cyan bg
|
|
40
|
-
},
|
|
41
|
-
directory: {
|
|
42
|
-
label: "#6E7781",
|
|
43
|
-
path: "#24292F",
|
|
44
|
-
},
|
|
45
|
-
tabBar: {
|
|
46
|
-
selected: "#24292F",
|
|
47
|
-
selectedBg: "#F0F0F0", // Very light gray
|
|
48
|
-
default: "#6E7781",
|
|
49
|
-
answered: "#2DA44E",
|
|
50
|
-
unanswered: "#6E7781",
|
|
51
|
-
divider: "#D0D7DE",
|
|
52
|
-
},
|
|
53
|
-
options: {
|
|
54
|
-
focused: "#2DA44E", // Green cursor
|
|
55
|
-
focusedBg: "#E6F9EE", // Light green bg
|
|
56
|
-
selected: "#007EA7", // Cyan selected
|
|
57
|
-
selectedBg: "#E0F7FA", // Light cyan bg
|
|
58
|
-
default: "#24292F",
|
|
59
|
-
description: "#57606A",
|
|
60
|
-
hint: "#57606A",
|
|
61
|
-
},
|
|
62
|
-
input: {
|
|
63
|
-
border: "#D0D7DE",
|
|
64
|
-
borderFocused: "#007EA7",
|
|
65
|
-
placeholder: "#6E7781",
|
|
66
|
-
cursor: "#007EA7",
|
|
67
|
-
cursorDim: "#B8F2FF", // Lighter cyan for cursor dim
|
|
68
|
-
},
|
|
69
|
-
review: {
|
|
70
|
-
border: "#D0D7DE",
|
|
71
|
-
confirmBorder: "#007EA7",
|
|
72
|
-
selectedOption: "#2DA44E",
|
|
73
|
-
customAnswer: "#B07D00",
|
|
74
|
-
questionId: "#6E7781",
|
|
75
|
-
divider: "#D0D7DE",
|
|
76
|
-
},
|
|
77
|
-
questionDisplay: {
|
|
78
|
-
questionId: "#007EA7",
|
|
79
|
-
typeIndicator: "#6E7781",
|
|
80
|
-
elapsed: "#6E7781",
|
|
81
|
-
},
|
|
82
|
-
footer: {
|
|
83
|
-
border: "#D0D7DE",
|
|
84
|
-
keyBg: "#F6F8FA", // Light key cap
|
|
85
|
-
keyFg: "#007EA7",
|
|
86
|
-
action: "#57606A",
|
|
87
|
-
separator: "#D0D7DE",
|
|
88
|
-
},
|
|
89
|
-
toast: {
|
|
90
|
-
success: "#2DA44E",
|
|
91
|
-
successPillBg: "#E6F9EE",
|
|
92
|
-
error: "#CF222E",
|
|
93
|
-
info: "#007EA7",
|
|
94
|
-
warning: "#B07D00",
|
|
95
|
-
border: "#D0D7DE",
|
|
96
|
-
},
|
|
97
|
-
markdown: {
|
|
98
|
-
codeBlockBg: "#F6F8FA",
|
|
99
|
-
codeBlockText: "#24292F",
|
|
100
|
-
codeBlockBorder: "#D0D7DE",
|
|
101
|
-
},
|
|
102
|
-
sessionDots: {
|
|
103
|
-
active: "#007EA7",
|
|
104
|
-
answered: "#2DA44E",
|
|
105
|
-
inProgress: "#B07D00",
|
|
106
|
-
untouched: "#6E7781",
|
|
107
|
-
number: "#24292F",
|
|
108
|
-
activeNumber: "#007EA7",
|
|
109
|
-
stale: "#B07D00",
|
|
110
|
-
abandoned: "#CF222E",
|
|
111
|
-
},
|
|
112
|
-
sessionPicker: {
|
|
113
|
-
border: "#007EA7",
|
|
114
|
-
title: "#007EA7",
|
|
115
|
-
rowText: "#24292F",
|
|
116
|
-
rowDim: "#6E7781",
|
|
117
|
-
highlightBg: "#E6F9EE",
|
|
118
|
-
highlightFg: "#2DA44E",
|
|
119
|
-
activeMark: "#007EA7",
|
|
120
|
-
progress: "#007EA7",
|
|
121
|
-
staleIcon: "#B07D00",
|
|
122
|
-
staleText: "#B07D00",
|
|
123
|
-
staleAge: "#B07D00",
|
|
124
|
-
staleSubtitle: "#6E7781",
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
};
|
|
1
|
+
// Re-export from shared location for backward compatibility
|
|
2
|
+
export * from "../shared/themes/light.js";
|