openpaean 0.3.0 → 0.3.2

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.
@@ -38,8 +38,25 @@ export declare class TerminalApp {
38
38
  private agentService;
39
39
  private options;
40
40
  private streamBuffer;
41
+ private currentConversationId;
41
42
  private streamingMessageId;
42
43
  private get mcpToolCount();
44
+ /**
45
+ * Handle slash commands
46
+ */
47
+ private handleCommand;
48
+ /**
49
+ * Get help text
50
+ */
51
+ private getHelpText;
52
+ /**
53
+ * Process a message through the agent
54
+ */
55
+ private processMessage;
56
+ /**
57
+ * Handle stream done
58
+ */
59
+ private handleStreamDone;
43
60
  constructor(options?: TerminalAppOptions);
44
61
  /**
45
62
  * Tab completer for commands
@@ -73,22 +90,10 @@ export declare class TerminalApp {
73
90
  * Handle user input
74
91
  */
75
92
  private handleInput;
76
- /**
77
- * Handle slash commands
78
- */
79
- private handleCommand;
80
- /**
81
- * Get help text
82
- */
83
- private getHelpText;
84
93
  /**
85
94
  * Get MCP status
86
95
  */
87
96
  private getMcpStatus;
88
- /**
89
- * Process a message through the agent
90
- */
91
- private processMessage;
92
97
  /**
93
98
  * Handle streaming content
94
99
  */
@@ -105,10 +110,6 @@ export declare class TerminalApp {
105
110
  * Handle MCP tool call
106
111
  */
107
112
  private handleMcpToolCall;
108
- /**
109
- * Handle stream done
110
- */
111
- private handleStreamDone;
112
113
  /**
113
114
  * Handle error
114
115
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TerminalApp.d.ts","sourceRoot":"","sources":["../../../src/ui/terminal/TerminalApp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAmBpE;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAmBD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,aAAa,CAAC,EAAE,CACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IACpB,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAMjB;IACF,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,kBAAkB,CAAuB;IAGjD,OAAO,KAAK,YAAY,GAKvB;gBAEW,OAAO,GAAE,kBAAuB;IAqB5C;;OAEG;IACH,OAAO,CAAC,SAAS;IAajB;;OAEG;IACH,OAAO,CAAC,aAAa;IA0BrB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAc5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;YACW,WAAW;IAkCzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAiDrB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;YACW,cAAc;IAiD5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;YACW,iBAAiB;IAiC/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,IAAI,IAAI,IAAI;IAMZ;;OAEG;IACH,OAAO,CAAC,OAAO;CAIlB"}
1
+ {"version":3,"file":"TerminalApp.d.ts","sourceRoot":"","sources":["../../../src/ui/terminal/TerminalApp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAgCpE;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAmBD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,aAAa,CAAC,EAAE,CACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IACpB,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAMjB;IACF,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,kBAAkB,CAAuB;IAGjD,OAAO,KAAK,YAAY,GAKvB;IAID;;OAEG;IACH,OAAO,CAAC,aAAa;IA0DrB;;OAEG;IACH,OAAO,CAAC,WAAW;IAyBnB;;OAEG;YACW,cAAc;IAoD5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;gBASZ,OAAO,GAAE,kBAAuB;IAqB5C;;OAEG;IACH,OAAO,CAAC,SAAS;IAajB;;OAEG;IACH,OAAO,CAAC,aAAa;IA0BrB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAc5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACH,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;YACW,WAAW;IAoCzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAiBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;YACW,iBAAiB;IAmC/B;;OAEG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,IAAI,IAAI,IAAI;IAMZ;;OAEG;IACH,OAAO,CAAC,OAAO;CAIlB"}
@@ -6,7 +6,7 @@ import readline from 'readline';
6
6
  import { stdin, stdout } from 'process';
7
7
  import { AgentService } from '../../agent/service.js';
8
8
  import { ANSI, colorize, getTerminalWidth, showCursor, } from './output.js';
9
- import { primary, success, error as errorColor, warning, info, muted, styledMessage, mcpSymbol, toolSymbol } from '../theme/index.js';
9
+ import { primary, success, error as errorColor, warning, info, muted, styledMessage, mcpSymbol, toolSymbol, getLogoAscii, getCompactLogo, bold } from '../theme/index.js';
10
10
  /**
11
11
  * Available commands for completion
12
12
  */
@@ -41,11 +41,151 @@ export class TerminalApp {
41
41
  agentService;
42
42
  options;
43
43
  streamBuffer = [];
44
+ currentConversationId = null;
44
45
  streamingMessageId = null;
45
46
  // MCP tool count
46
47
  get mcpToolCount() {
47
48
  return this.options.mcpState?.mcpServers?.reduce((sum, s) => sum + (s.tools?.length || 0), 0) || 0;
48
49
  }
50
+ // ... existing properties ...
51
+ /**
52
+ * Handle slash commands
53
+ */
54
+ handleCommand(input) {
55
+ const cmd = input.toLowerCase().trim();
56
+ switch (cmd) {
57
+ case '/exit':
58
+ case '/quit':
59
+ case '/q':
60
+ return { handled: true, action: 'exit' };
61
+ case '/clear':
62
+ case '/cls':
63
+ console.clear();
64
+ this.printWelcome();
65
+ return { handled: true, action: 'clear' };
66
+ case '/reset':
67
+ case '/new':
68
+ this.currentConversationId = null;
69
+ this.messages = [];
70
+ console.clear();
71
+ this.printWelcome();
72
+ console.log(success(' Started new conversation context.'));
73
+ return { handled: true, action: 'clear' };
74
+ case '/help':
75
+ case '/h':
76
+ case '/?':
77
+ return {
78
+ handled: true,
79
+ output: this.getHelpText(),
80
+ };
81
+ case '/debug':
82
+ this.statusState.isDebugMode = !this.statusState.isDebugMode;
83
+ return {
84
+ handled: true,
85
+ output: `Debug mode: ${this.statusState.isDebugMode ? 'ON' : 'OFF'}`,
86
+ };
87
+ case '/raw':
88
+ this.statusState.isRawMode = !this.statusState.isRawMode;
89
+ let output = `Raw mode: ${this.statusState.isRawMode ? 'ON' : 'OFF'}`;
90
+ if (this.statusState.isRawMode) {
91
+ output += '\nAgent will return plain text (no markdown)';
92
+ }
93
+ return { handled: true, output };
94
+ case '/mcp':
95
+ return { handled: true, output: this.getMcpStatus() };
96
+ default:
97
+ return {
98
+ handled: true,
99
+ output: errorColor(`Unknown command: ${cmd}\nType /help for available commands`),
100
+ };
101
+ }
102
+ }
103
+ /**
104
+ * Get help text
105
+ */
106
+ getHelpText() {
107
+ return `
108
+ ${info('Available Commands:')}
109
+
110
+ ${success('/exit, /quit, /q')} Exit the chat session
111
+ ${success('/clear, /cls')} Clear the screen
112
+ ${success('/reset, /new')} Start a new conversation
113
+ ${success('/help, /h, /?')} Show this help message
114
+ ${success('/debug')} Toggle debug mode
115
+ ${success('/raw')} Toggle raw output mode (no markdown)
116
+ ${success('/mcp')} Show MCP connection status
117
+
118
+ ${info('Shortcuts:')}
119
+ ${warning('Ctrl+C')} Exit or abort current operation
120
+ ${warning('Ctrl+R')} Search command history
121
+ ${warning('Tab')} Command completion
122
+
123
+ ${info('Terminal:')}
124
+ Use your terminal's scroll to view message history.
125
+ All messages remain visible after exit.
126
+ `;
127
+ }
128
+ // ... existing methods ...
129
+ /**
130
+ * Process a message through the agent
131
+ */
132
+ async processMessage(message) {
133
+ this.isProcessing = true;
134
+ this.updatePrompt();
135
+ // Create streaming message
136
+ this.streamingMessageId = this.generateId();
137
+ this.streamBuffer = [];
138
+ try {
139
+ const { abort } = await this.agentService.streamMessage(message, {
140
+ onContent: (text, partial) => {
141
+ this.handleStreamContent(text, partial);
142
+ },
143
+ onToolCall: (id, name) => {
144
+ this.handleToolCall(id, name);
145
+ },
146
+ onToolResult: (id, name, result) => {
147
+ this.handleToolResult(id, name, result);
148
+ },
149
+ onMcpToolCall: async (callId, serverName, toolName, args) => {
150
+ return this.handleMcpToolCall(callId, serverName, toolName, args);
151
+ },
152
+ onDone: (conversationId) => {
153
+ this.handleStreamDone(conversationId);
154
+ },
155
+ onError: (error) => {
156
+ this.handleError(error);
157
+ },
158
+ }, {
159
+ conversationId: this.currentConversationId || undefined,
160
+ mcpState: this.options.mcpState,
161
+ cliMode: this.statusState.isRawMode ? { enabled: true, streamRaw: true } : undefined,
162
+ });
163
+ this.currentAbort = abort;
164
+ }
165
+ catch (error) {
166
+ this.handleError(error.message);
167
+ }
168
+ finally {
169
+ this.isProcessing = false;
170
+ this.currentAbort = null;
171
+ this.streamingMessageId = null;
172
+ this.updatePrompt();
173
+ this.rl.prompt();
174
+ }
175
+ }
176
+ // ... existing methods ...
177
+ /**
178
+ * Handle stream done
179
+ */
180
+ handleStreamDone(conversationId) {
181
+ // Update current conversation ID to maintain context
182
+ if (conversationId && !this.currentConversationId) {
183
+ this.currentConversationId = conversationId;
184
+ if (this.statusState.isDebugMode) {
185
+ console.log(muted(`[Context set to ${conversationId}]`));
186
+ }
187
+ }
188
+ }
49
189
  constructor(options = {}) {
50
190
  this.options = options;
51
191
  this.statusState.mcpToolCount = this.mcpToolCount;
@@ -120,18 +260,24 @@ export class TerminalApp {
120
260
  */
121
261
  printWelcome() {
122
262
  const width = getTerminalWidth();
123
- const line = '─'.repeat(Math.min(width, 60));
124
- console.log(muted(line));
125
- console.log(primary(' OpenPaean AI Agent'));
263
+ // Use Paean Blue for the divider
264
+ const line = primary('─'.repeat(Math.min(width, 60)));
265
+ console.log('');
266
+ // Print ASCII Logo
267
+ console.log(primary(getLogoAscii()));
268
+ console.log(line);
269
+ console.log(bold(' Interactive Agent Session'));
126
270
  console.log(muted(' Type /help for commands, Ctrl+C to exit'));
127
- console.log(muted(line));
271
+ console.log(line);
272
+ console.log('');
128
273
  }
129
274
  /**
130
275
  * Update the prompt with status hints
131
276
  */
132
277
  updatePrompt() {
133
- // Simple prompt without hints - hints shown separately
134
- this.rl.setPrompt(colorize('> ', ANSI.brightCyan));
278
+ // Paean-styled prompt
279
+ const promptSymbol = this.isProcessing ? ' ' : '◉ ';
280
+ this.rl.setPrompt(primary(promptSymbol));
135
281
  }
136
282
  /**
137
283
  * Get current status hints
@@ -182,74 +328,6 @@ export class TerminalApp {
182
328
  // Process the message (readline already shows the input, no need to echo)
183
329
  await this.processMessage(input);
184
330
  }
185
- /**
186
- * Handle slash commands
187
- */
188
- handleCommand(input) {
189
- const cmd = input.toLowerCase().trim();
190
- switch (cmd) {
191
- case '/exit':
192
- case '/quit':
193
- case '/q':
194
- return { handled: true, action: 'exit' };
195
- case '/clear':
196
- case '/cls':
197
- console.clear();
198
- this.printWelcome();
199
- return { handled: true, action: 'clear' };
200
- case '/help':
201
- case '/h':
202
- case '/?':
203
- return {
204
- handled: true,
205
- output: this.getHelpText(),
206
- };
207
- case '/debug':
208
- this.statusState.isDebugMode = !this.statusState.isDebugMode;
209
- return {
210
- handled: true,
211
- output: `Debug mode: ${this.statusState.isDebugMode ? 'ON' : 'OFF'}`,
212
- };
213
- case '/raw':
214
- this.statusState.isRawMode = !this.statusState.isRawMode;
215
- let output = `Raw mode: ${this.statusState.isRawMode ? 'ON' : 'OFF'}`;
216
- if (this.statusState.isRawMode) {
217
- output += '\nAgent will return plain text (no markdown)';
218
- }
219
- return { handled: true, output };
220
- case '/mcp':
221
- return { handled: true, output: this.getMcpStatus() };
222
- default:
223
- return {
224
- handled: true,
225
- output: errorColor(`Unknown command: ${cmd}\nType /help for available commands`),
226
- };
227
- }
228
- }
229
- /**
230
- * Get help text
231
- */
232
- getHelpText() {
233
- return `
234
- ${info('Available Commands:')}
235
-
236
- ${success('/exit, /quit, /q')} Exit the chat session
237
- ${success('/clear, /cls')} Clear the screen
238
- ${success('/help, /h, /?')} Show this help message
239
- ${success('/debug')} Toggle debug mode
240
- ${success('/raw')} Toggle raw output mode (no markdown)
241
- ${success('/mcp')} Show MCP connection status
242
-
243
- ${info('Shortcuts:')}
244
- ${warning('Ctrl+C')} Exit or abort current operation
245
- ${warning('Ctrl+R')} Search command history
246
- ${warning('Tab')} Command completion
247
-
248
- ${info('Terminal:')}
249
- Use your terminal's scroll to view message history.
250
- All messages remain visible after exit.
251
- `;
252
- }
253
331
  /**
254
332
  * Get MCP status
255
333
  */
@@ -265,52 +343,6 @@ ${info('Terminal:')}
265
343
  }
266
344
  return status;
267
345
  }
268
- /**
269
- * Process a message through the agent
270
- */
271
- async processMessage(message) {
272
- this.isProcessing = true;
273
- this.updatePrompt();
274
- // Create streaming message
275
- this.streamingMessageId = this.generateId();
276
- this.streamBuffer = [];
277
- try {
278
- const { abort } = await this.agentService.streamMessage(message, {
279
- onContent: (text, partial) => {
280
- this.handleStreamContent(text, partial);
281
- },
282
- onToolCall: (id, name) => {
283
- this.handleToolCall(id, name);
284
- },
285
- onToolResult: (id, name, result) => {
286
- this.handleToolResult(id, name, result);
287
- },
288
- onMcpToolCall: async (callId, serverName, toolName, args) => {
289
- return this.handleMcpToolCall(callId, serverName, toolName, args);
290
- },
291
- onDone: (conversationId) => {
292
- this.handleStreamDone(conversationId);
293
- },
294
- onError: (error) => {
295
- this.handleError(error);
296
- },
297
- }, {
298
- mcpState: this.options.mcpState,
299
- cliMode: this.statusState.isRawMode ? { enabled: true, streamRaw: true } : undefined,
300
- });
301
- this.currentAbort = abort;
302
- }
303
- catch (error) {
304
- this.handleError(error.message);
305
- }
306
- finally {
307
- this.isProcessing = false;
308
- this.currentAbort = null;
309
- this.streamingMessageId = null;
310
- this.updatePrompt();
311
- this.rl.prompt();
312
- }
313
- }
314
346
  /**
315
347
  * Handle streaming content
316
348
  */
@@ -321,7 +353,8 @@ ${info('Terminal:')}
321
353
  if (partial) {
322
354
  // First chunk - write prefix
323
355
  if (this.streamBuffer.length === 1) {
324
- process.stdout.write('\n' + primary('OpenPaean: '));
356
+ // Use compact logo or just "Paean" in brand color
357
+ process.stdout.write('\n' + getCompactLogo() + ': ');
325
358
  }
326
359
  // Write the content chunk
327
360
  process.stdout.write(text);
@@ -387,13 +420,6 @@ ${info('Terminal:')}
387
420
  };
388
421
  }
389
422
  }
390
- /**
391
- * Handle stream done
392
- */
393
- handleStreamDone(_conversationId) {
394
- // Stream complete - handled by the last partial=false content event
395
- // No action needed here
396
- }
397
423
  /**
398
424
  * Handle error
399
425
  */
@@ -435,7 +461,7 @@ ${info('Terminal:')}
435
461
  * Exit the application
436
462
  */
437
463
  exit() {
438
- console.log(primary('\n👋 Goodbye!\n'));
464
+ console.log(bold(primary('\n👋 Goodbye!\n')));
439
465
  this.cleanup();
440
466
  process.exit(0);
441
467
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TerminalApp.js","sourceRoot":"","sources":["../../../src/ui/terminal/TerminalApp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EACH,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,UAAU,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AA4BtI;;GAEG;AACH,MAAM,kBAAkB,GAAG;IACvB,OAAO;IACP,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,MAAM;IACN,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,MAAM;IACN,MAAM;CACT,CAAC;AAgBF;;GAEG;AACH,MAAM,OAAO,WAAW;IACZ,EAAE,CAAW;IACb,QAAQ,GAAc,EAAE,CAAC;IACzB,YAAY,GAAG,KAAK,CAAC;IACrB,YAAY,GAAwB,IAAI,CAAC;IACzC,WAAW,GAAmB;QAClC,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;KACrB,CAAC;IACM,YAAY,CAAe;IAC3B,OAAO,CAAqB;IAC5B,YAAY,GAAa,EAAE,CAAC;IAC5B,kBAAkB,GAAkB,IAAI,CAAC;IAEjD,iBAAiB;IACjB,IAAY,YAAY;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAC5C,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,EACxC,CAAC,CACJ,IAAI,CAAC,CAAC;IACX,CAAC;IAED,YAAY,UAA8B,EAAE;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QAEvC,uDAAuD;QACvD,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YAC/B,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI,EAAE,kCAAkC;YACrD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,uBAAuB,EAAE,IAAI;SAChC,CAAC,CAAC;QAEH,iBAAiB;QACjB,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,IAAY;QAC1B,qBAAqB;QACrB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC5C,GAAG,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CACnD,CAAC;YACF,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,4DAA4D;QAC5D,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,aAAa;QACjB,4BAA4B;QAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,IAAI,EAAE,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACvB,oCAAoC;QACxC,CAAC,CAAC,CAAC;QAEH,eAAe;QACf,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACP,uBAAuB;QACvB,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,oBAAoB;QACpB,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,sBAAsB;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,YAAY;QAChB,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,YAAY;QAChB,uDAAuD;QACvD,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACK,cAAc;QAClB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;IACpE,CAAC;IAED;;OAEG;IACK,eAAe;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,KAAa;QACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QAED,2BAA2B;QAC3B,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;oBACZ,OAAO;gBACX,CAAC;gBACD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBACD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO;YACX,CAAC;QACL,CAAC;QAED,8BAA8B;QAC9B,IAAI,CAAC,UAAU,CAAC;YACZ,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACxB,CAAC,CAAC;QAEH,0EAA0E;QAC1E,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAa;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAEvC,QAAQ,GAAG,EAAE,CAAC;YACV,KAAK,OAAO,CAAC;YACb,KAAK,OAAO,CAAC;YACb,KAAK,IAAI;gBACL,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAE7C,KAAK,QAAQ,CAAC;YACd,KAAK,MAAM;gBACP,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YAE9C,KAAK,OAAO,CAAC;YACb,KAAK,IAAI,CAAC;YACV,KAAK,IAAI;gBACL,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE;iBAC7B,CAAC;YAEN,KAAK,QAAQ;gBACT,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC7D,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,eAAe,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE;iBACvE,CAAC;YAEN,KAAK,MAAM;gBACP,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;gBACzD,IAAI,MAAM,GAAG,aAAa,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;gBACtE,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,8CAA8C,CAAC;gBAC7D,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAErC,KAAK,MAAM;gBACP,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YAE1D;gBACI,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,UAAU,CAAC,oBAAoB,GAAG,qCAAqC,CAAC;iBACnF,CAAC;QACV,CAAC;IACL,CAAC;IAED;;OAEG;IACK,WAAW;QACf,OAAO;EACb,IAAI,CAAC,qBAAqB,CAAC;;IAEzB,OAAO,CAAC,kBAAkB,CAAC;IAC3B,OAAO,CAAC,cAAc,CAAC;IACvB,OAAO,CAAC,eAAe,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,MAAM,CAAC;;EAEjB,IAAI,CAAC,YAAY,CAAC;IAChB,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,KAAK,CAAC;;EAEhB,IAAI,CAAC,WAAW,CAAC;;;CAGlB,CAAC;IACE,CAAC;IAED;;OAEG;IACK,YAAY;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC;QAExD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAC/C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;YAC5C,MAAM,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,UAAU,CAAC;QACvE,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,OAAe;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,2BAA2B;QAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CACnD,OAAO,EACP;gBACI,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;oBACzB,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC5C,CAAC;gBACD,UAAU,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE;oBACrB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAClC,CAAC;gBACD,YAAY,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;oBAC/B,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC;gBACD,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;oBACxD,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE;oBACvB,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;gBAC1C,CAAC;gBACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC5B,CAAC;aACJ,EACD;gBACI,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC/B,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;aACvF,CACJ,CAAC;YAEF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAE,KAAe,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QACrB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAY,EAAE,OAAgB;QACtD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7B,6CAA6C;QAC7C,0DAA0D;QAC1D,IAAI,OAAO,EAAE,CAAC;YACV,6BAA6B;YAC7B,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,0BAA0B;YAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,4DAA4D;YAC5D,IAAI,CAAC,UAAU,CAAC;gBACZ,EAAE,EAAE,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,UAAU,EAAE;gBAChD,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACxB,CAAC,CAAC;YACH,uBAAuB;YACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7B,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,GAAW,EAAE,IAAY;QAC5C,gCAAgC;QAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,UAAU,EAAE,IAAI,IAAI,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,GAAW,EAAE,KAAa,EAAE,MAAW;QAC5D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAC3B,MAAc,EACd,UAAkB,EAClB,QAAgB,EAChB,IAA6B;QAE7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO;gBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;gBACtD,OAAO,EAAE,IAAI;aAChB,CAAC;QACN,CAAC;QAED,oCAAoC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,KAAK,UAAU,KAAK,QAAQ,KAAK,CAAC,CAAC;QAExE,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACnD,OAAO;gBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAG,GAAa,CAAC,OAAO,EAAE,CAAC;gBACzD,OAAO,EAAE,IAAI;aAChB,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,eAAuB;QAC5C,oEAAoE;QACpE,wBAAwB;IAC5B,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,KAAa;QAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC;YACZ,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE;YACrB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,eAAe;QACnB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,OAAgB;QAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,UAAU;QACd,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,IAAI;QACA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IACK,OAAO;QACX,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAChB,UAAU,EAAE,CAAC;IACjB,CAAC;CACJ"}
1
+ {"version":3,"file":"TerminalApp.js","sourceRoot":"","sources":["../../../src/ui/terminal/TerminalApp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Paean Brand Assets
3
+ * Colors and visual identity for OpenPaean CLI
4
+ */
5
+ export declare const BRAND_COLORS: {
6
+ primary: string;
7
+ primaryLight: string;
8
+ primaryDark: string;
9
+ secondary: string;
10
+ success: string;
11
+ warning: string;
12
+ error: string;
13
+ muted: string;
14
+ bg: string;
15
+ card: string;
16
+ };
17
+ export declare const getLogoAscii: () => string;
18
+ export declare const getCompactLogo: () => string;
19
+ //# sourceMappingURL=branding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,eAAO,MAAM,YAAY;;;;;;;;;;;CAWxB,CAAC;AAGF,eAAO,MAAM,YAAY,cAiBxB,CAAC;AAGF,eAAO,MAAM,cAAc,cAE1B,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Paean Brand Assets
3
+ * Colors and visual identity for OpenPaean CLI
4
+ */
5
+ import chalk from 'chalk';
6
+ // Brand Colors
7
+ export const BRAND_COLORS = {
8
+ primary: '#06b6d4', // Paean Blue Core
9
+ primaryLight: '#22d3ee',
10
+ primaryDark: '#0891b2',
11
+ secondary: '#8b5cf6', // Violet Accent
12
+ success: '#10b981', // Emerald
13
+ warning: '#f59e0b', // Amber
14
+ error: '#ef4444', // Red
15
+ muted: '#71717a',
16
+ bg: '#000000',
17
+ card: '#121212',
18
+ };
19
+ // ASCII Logo - Stylized 'OpenPaean'
20
+ export const getLogoAscii = () => {
21
+ // A stylized representation linking to the user's request for "ASCII symbols echoing the logo design"
22
+ // Using a font that looks modern and slightly tech/cyber
23
+ return `
24
+ ██████╗ ██████╗ ███████╗███╗ ██╗
25
+ ██╔═══██╗██╔══██╗██╔════╝████╗ ██║
26
+ ██║ ██║██████╔╝█████╗ ██╔██╗ ██║
27
+ ██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║
28
+ ╚██████╔╝██║ ███████╗██║ ╚████║
29
+ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝
30
+ ██████╗ █████╗ ███████╗ █████╗ ███╗ ██╗
31
+ ██╔══██╗██╔══██╗██╔════╝██╔══██╗████╗ ██║
32
+ ██████╔╝███████║█████╗ ███████║██╔██╗ ██║
33
+ ██╔═══╝ ██╔══██║██╔══╝ ██╔══██║██║╚██╗██║
34
+ ██║ ██║ ██║███████╗██║ ██║██║ ╚████║
35
+ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═══╝
36
+ `;
37
+ };
38
+ // Compact Logo for Headers
39
+ export const getCompactLogo = () => {
40
+ return chalk.hex(BRAND_COLORS.primary)('◉ OpenPaean');
41
+ };
42
+ //# sourceMappingURL=branding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAe;AACf,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO,EAAE,SAAS,EAAE,kBAAkB;IACtC,YAAY,EAAE,SAAS;IACvB,WAAW,EAAE,SAAS;IACtB,SAAS,EAAE,SAAS,EAAE,gBAAgB;IACtC,OAAO,EAAE,SAAS,EAAE,UAAU;IAC9B,OAAO,EAAE,SAAS,EAAE,QAAQ;IAC5B,KAAK,EAAE,SAAS,EAAI,MAAM;IAC1B,KAAK,EAAE,SAAS;IAChB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,oCAAoC;AACpC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC7B,sGAAsG;IACtG,yDAAyD;IACzD,OAAO;;;;;;;;;;;;;CAaV,CAAC;AACF,CAAC,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IAC/B,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC"}
@@ -1,157 +1,42 @@
1
1
  /**
2
- * Color Theme System
3
- * Unified semantic color definitions with NO_COLOR support
4
- */
5
- /**
6
- * Check if colors are supported
7
- */
8
- export declare function supportsColor(): boolean;
9
- /**
10
- * Semantic color definitions
11
- */
12
- export declare const COLORS: {
13
- success: {
14
- code: string;
15
- symbol: string;
16
- };
17
- error: {
18
- code: string;
19
- symbol: string;
20
- };
21
- warning: {
22
- code: string;
23
- symbol: string;
24
- };
25
- info: {
26
- code: string;
27
- symbol: string;
28
- };
29
- primary: {
30
- code: string;
31
- symbol: string;
32
- };
33
- secondary: {
34
- code: string;
35
- symbol: string;
36
- };
37
- text: {
38
- code: string;
39
- };
40
- textDim: {
41
- code: string;
42
- };
43
- mcp: {
44
- code: string;
45
- symbol: string;
46
- };
47
- tool: {
48
- code: string;
49
- symbol: string;
50
- };
51
- thinking: {
52
- code: string;
53
- symbol: string;
54
- };
2
+ * Theme configuration
3
+ * Centralized styling for the CLI
4
+ */
5
+ import { BRAND_COLORS } from './branding.js';
6
+ export declare const PAEAN_BLUE: string;
7
+ export declare const primary: import("chalk").ChalkInstance;
8
+ export declare const primaryBold: import("chalk").ChalkInstance;
9
+ export declare const secondary: import("chalk").ChalkInstance;
10
+ export declare const success: import("chalk").ChalkInstance;
11
+ export declare const warning: import("chalk").ChalkInstance;
12
+ export declare const error: import("chalk").ChalkInstance;
13
+ export declare const dummy: import("chalk").ChalkInstance;
14
+ export declare const muted: import("chalk").ChalkInstance;
15
+ export declare const dim: import("chalk").ChalkInstance;
16
+ export declare const bold: import("chalk").ChalkInstance;
17
+ export declare const italic: import("chalk").ChalkInstance;
18
+ export declare const link: import("chalk").ChalkInstance;
19
+ export declare const code: import("chalk").ChalkInstance;
20
+ export declare const highlight: import("chalk").ChalkInstance;
21
+ export declare const symbols: {
22
+ info: string;
23
+ success: string;
24
+ warning: string;
25
+ error: string;
26
+ arrow: string;
27
+ bullet: string;
28
+ pointer: string;
29
+ checkboxOn: string;
30
+ checkboxOff: string;
55
31
  };
32
+ export declare const mcpSymbol: () => string;
33
+ export declare const toolSymbol: () => string;
34
+ export declare const thinkingSymbol: () => string;
56
35
  /**
57
- * Color utility functions
58
- */
59
- /**
60
- * Apply a color code to text (only if colors are supported)
61
- */
62
- export declare function colorize(text: string, colorCode: string): string;
63
- /**
64
- * Apply bold style
65
- */
66
- export declare function bold(text: string): string;
67
- /**
68
- * Apply dim style
69
- */
70
- export declare function dim(text: string): string;
71
- /**
72
- * Semantic color functions
73
- */
74
- /**
75
- * Style text as success
76
- */
77
- export declare function success(text: string): string;
78
- /**
79
- * Style text as error
80
- */
81
- export declare function error(text: string): string;
82
- /**
83
- * Style text as warning
84
- */
85
- export declare function warning(text: string): string;
86
- /**
87
- * Style text as info
88
- */
89
- export declare function info(text: string): string;
90
- /**
91
- * Style text as primary (brand)
36
+ * Format a styled message block
92
37
  */
93
- export declare function primary(text: string): string;
94
- /**
95
- * Style text as secondary (accent)
96
- */
97
- export declare function secondary(text: string): string;
98
- /**
99
- * Style text as dim
100
- */
101
- export declare function muted(text: string): string;
102
- /**
103
- * Get success symbol (with or without color)
104
- */
105
- export declare function successSymbol(): string;
106
- /**
107
- * Get error symbol (with or without color)
108
- */
109
- export declare function errorSymbol(): string;
110
- /**
111
- * Get warning symbol (with or without color)
112
- */
113
- export declare function warningSymbol(): string;
114
- /**
115
- * Get info symbol (with or without color)
116
- */
117
- export declare function infoSymbol(): string;
118
- /**
119
- * Get MCP tool symbol
120
- */
121
- export declare function mcpSymbol(): string;
122
- /**
123
- * Get tool symbol
124
- */
125
- export declare function toolSymbol(): string;
126
- /**
127
- * Get thinking symbol
128
- */
129
- export declare function thinkingSymbol(): string;
130
- /**
131
- * Create a styled message with dual encoding (color + symbol)
132
- */
133
- export declare function styledMessage(type: 'success' | 'error' | 'warning' | 'info', message: string): string;
134
- /**
135
- * Export theme as object for convenience
136
- */
137
- export declare const theme: {
138
- colorize: typeof colorize;
139
- bold: typeof bold;
140
- dim: typeof dim;
141
- success: typeof success;
142
- error: typeof error;
143
- warning: typeof warning;
144
- info: typeof info;
145
- primary: typeof primary;
146
- secondary: typeof secondary;
147
- muted: typeof muted;
148
- successSymbol: typeof successSymbol;
149
- errorSymbol: typeof errorSymbol;
150
- warningSymbol: typeof warningSymbol;
151
- infoSymbol: typeof infoSymbol;
152
- mcpSymbol: typeof mcpSymbol;
153
- toolSymbol: typeof toolSymbol;
154
- thinkingSymbol: typeof thinkingSymbol;
155
- styledMessage: typeof styledMessage;
156
- };
38
+ export declare function styledMessage(type: 'info' | 'success' | 'warning' | 'error', text: string): string;
39
+ export { getLogoAscii, getCompactLogo } from './branding.js';
40
+ export { BRAND_COLORS };
41
+ export declare const info: import("chalk").ChalkInstance;
157
42
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAIvC;AA6BD;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDlB,CAAC;AAEF;;GAEG;AAEH;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAKhE;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKzC;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKxC;AAED;;GAEG;AAEH;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,CACzB,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,EAC9C,OAAO,EAAE,MAAM,GAChB,MAAM,CAGR;AAED;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;CAmBjB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,eAAO,MAAM,UAAU,QAAuB,CAAC;AAG/C,eAAO,MAAM,OAAO,+BAAkC,CAAC;AACvD,eAAO,MAAM,WAAW,+BAAuC,CAAC;AAChE,eAAO,MAAM,SAAS,+BAAoC,CAAC;AAC3D,eAAO,MAAM,OAAO,+BAAkC,CAAC;AACvD,eAAO,MAAM,OAAO,+BAAkC,CAAC;AACvD,eAAO,MAAM,KAAK,+BAAgC,CAAC;AACnD,eAAO,MAAM,KAAK,+BAAa,CAAC;AAChC,eAAO,MAAM,KAAK,+BAAgC,CAAC;AACnD,eAAO,MAAM,GAAG,+BAAY,CAAC;AAC7B,eAAO,MAAM,IAAI,+BAAa,CAAC;AAC/B,eAAO,MAAM,MAAM,+BAAe,CAAC;AAGnC,eAAO,MAAM,IAAI,+BAAiD,CAAC;AACnE,eAAO,MAAM,IAAI,+BAAwC,CAAC;AAC1D,eAAO,MAAM,SAAS,+BAA0C,CAAC;AAGjE,eAAO,MAAM,OAAO;;;;;;;;;;CAUnB,CAAC;AAGF,eAAO,MAAM,SAAS,cAAkC,CAAC;AACzD,eAAO,MAAM,UAAU,cAAmC,CAAC;AAC3D,eAAO,MAAM,cAAc,cAAqB,CAAC;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGlG;AAGD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,CAAC;AAGxB,eAAO,MAAM,IAAI,+BAAuC,CAAC"}
@@ -1,236 +1,53 @@
1
1
  /**
2
- * Color Theme System
3
- * Unified semantic color definitions with NO_COLOR support
4
- */
5
- /**
6
- * Check if colors are supported
7
- */
8
- export function supportsColor() {
9
- return process.env.NO_COLOR === undefined &&
10
- process.stdout.isTTY &&
11
- process.env.TERM !== 'dumb';
12
- }
13
- /**
14
- * ANSI color codes
15
- */
16
- const ANSI = {
17
- reset: '\x1b[0m',
18
- bold: '\x1b[1m',
19
- dim: '\x1b[2m',
20
- // Foreground colors
21
- black: '\x1b[30m',
22
- red: '\x1b[31m',
23
- green: '\x1b[32m',
24
- yellow: '\x1b[33m',
25
- blue: '\x1b[34m',
26
- magenta: '\x1b[35m',
27
- cyan: '\x1b[36m',
28
- white: '\x1b[37m',
29
- brightBlack: '\x1b[90m',
30
- brightRed: '\x1b[91m',
31
- brightGreen: '\x1b[92m',
32
- brightYellow: '\x1b[93m',
33
- brightBlue: '\x1b[94m',
34
- brightMagenta: '\x1b[95m',
35
- brightCyan: '\x1b[96m',
36
- brightWhite: '\x1b[97m',
37
- };
38
- /**
39
- * Semantic color definitions
40
- */
41
- export const COLORS = {
42
- // Status colors with semantic meaning
43
- success: {
44
- code: ANSI.brightGreen,
45
- symbol: '✓',
46
- },
47
- error: {
48
- code: ANSI.brightRed,
49
- symbol: '✗',
50
- },
51
- warning: {
52
- code: ANSI.brightYellow,
53
- symbol: '⚠',
54
- },
55
- info: {
56
- code: ANSI.brightCyan,
57
- symbol: 'ℹ',
58
- },
59
- // Brand colors
60
- primary: {
61
- code: ANSI.brightMagenta, // AI brand color
62
- symbol: '◆',
63
- },
64
- secondary: {
65
- code: ANSI.brightBlue, // Accent color
66
- symbol: '◇',
67
- },
68
- // Text colors
69
- text: {
70
- code: ANSI.white,
71
- },
72
- textDim: {
73
- code: ANSI.brightBlack,
74
- },
75
- // Special indicators
76
- mcp: {
77
- code: ANSI.brightMagenta,
78
- symbol: '🔗',
79
- },
80
- tool: {
81
- code: ANSI.brightYellow,
82
- symbol: '⚙',
83
- },
84
- thinking: {
85
- code: ANSI.brightCyan,
86
- symbol: '⋯',
87
- },
88
- };
89
- /**
90
- * Color utility functions
91
- */
92
- /**
93
- * Apply a color code to text (only if colors are supported)
94
- */
95
- export function colorize(text, colorCode) {
96
- if (!supportsColor()) {
97
- return text;
98
- }
99
- return `${colorCode}${text}${ANSI.reset}`;
100
- }
101
- /**
102
- * Apply bold style
103
- */
104
- export function bold(text) {
105
- if (!supportsColor()) {
106
- return text;
107
- }
108
- return `${ANSI.bold}${text}${ANSI.reset}`;
109
- }
110
- /**
111
- * Apply dim style
112
- */
113
- export function dim(text) {
114
- if (!supportsColor()) {
115
- return text;
116
- }
117
- return `${ANSI.dim}${text}${ANSI.reset}`;
118
- }
119
- /**
120
- * Semantic color functions
121
- */
122
- /**
123
- * Style text as success
124
- */
125
- export function success(text) {
126
- return colorize(text, COLORS.success.code);
127
- }
128
- /**
129
- * Style text as error
130
- */
131
- export function error(text) {
132
- return colorize(text, COLORS.error.code);
133
- }
134
- /**
135
- * Style text as warning
136
- */
137
- export function warning(text) {
138
- return colorize(text, COLORS.warning.code);
139
- }
140
- /**
141
- * Style text as info
142
- */
143
- export function info(text) {
144
- return colorize(text, COLORS.info.code);
145
- }
146
- /**
147
- * Style text as primary (brand)
148
- */
149
- export function primary(text) {
150
- return colorize(text, COLORS.primary.code);
151
- }
152
- /**
153
- * Style text as secondary (accent)
154
- */
155
- export function secondary(text) {
156
- return colorize(text, COLORS.secondary.code);
157
- }
158
- /**
159
- * Style text as dim
160
- */
161
- export function muted(text) {
162
- return dim(text);
163
- }
164
- /**
165
- * Get success symbol (with or without color)
166
- */
167
- export function successSymbol() {
168
- return colorize(COLORS.success.symbol, COLORS.success.code);
169
- }
170
- /**
171
- * Get error symbol (with or without color)
172
- */
173
- export function errorSymbol() {
174
- return colorize(COLORS.error.symbol, COLORS.error.code);
175
- }
176
- /**
177
- * Get warning symbol (with or without color)
178
- */
179
- export function warningSymbol() {
180
- return colorize(COLORS.warning.symbol, COLORS.warning.code);
181
- }
182
- /**
183
- * Get info symbol (with or without color)
184
- */
185
- export function infoSymbol() {
186
- return colorize(COLORS.info.symbol, COLORS.info.code);
187
- }
188
- /**
189
- * Get MCP tool symbol
190
- */
191
- export function mcpSymbol() {
192
- return colorize(COLORS.mcp.symbol, COLORS.mcp.code);
193
- }
194
- /**
195
- * Get tool symbol
196
- */
197
- export function toolSymbol() {
198
- return colorize(COLORS.tool.symbol, COLORS.tool.code);
199
- }
200
- /**
201
- * Get thinking symbol
202
- */
203
- export function thinkingSymbol() {
204
- return colorize(COLORS.thinking.symbol, COLORS.thinking.code);
205
- }
206
- /**
207
- * Create a styled message with dual encoding (color + symbol)
208
- */
209
- export function styledMessage(type, message) {
210
- const color = COLORS[type];
211
- return colorize(`${color.symbol} ${message}`, color.code);
212
- }
213
- /**
214
- * Export theme as object for convenience
215
- */
216
- export const theme = {
217
- colorize,
218
- bold,
219
- dim,
220
- success,
221
- error,
222
- warning,
223
- info,
224
- primary,
225
- secondary,
226
- muted,
227
- successSymbol,
228
- errorSymbol,
229
- warningSymbol,
230
- infoSymbol,
231
- mcpSymbol,
232
- toolSymbol,
233
- thinkingSymbol,
234
- styledMessage,
2
+ * Theme configuration
3
+ * Centralized styling for the CLI
4
+ */
5
+ import chalk from 'chalk';
6
+ import { BRAND_COLORS } from './branding.js';
7
+ // Re-export specific brand colors for usage
8
+ export const PAEAN_BLUE = BRAND_COLORS.primary;
9
+ // Styled functions using Chalk
10
+ export const primary = chalk.hex(BRAND_COLORS.primary);
11
+ export const primaryBold = chalk.hex(BRAND_COLORS.primary).bold;
12
+ export const secondary = chalk.hex(BRAND_COLORS.secondary);
13
+ export const success = chalk.hex(BRAND_COLORS.success);
14
+ export const warning = chalk.hex(BRAND_COLORS.warning);
15
+ export const error = chalk.hex(BRAND_COLORS.error);
16
+ export const dummy = chalk.gray; // Placeholder
17
+ export const muted = chalk.hex(BRAND_COLORS.muted);
18
+ export const dim = chalk.dim;
19
+ export const bold = chalk.bold;
20
+ export const italic = chalk.italic;
21
+ // Component styles
22
+ export const link = chalk.underline.hex(BRAND_COLORS.primaryLight);
23
+ export const code = chalk.bgHex('#1e1e1e').hex('#d4d4d4');
24
+ export const highlight = chalk.bgHex(BRAND_COLORS.primary).black;
25
+ // Status indicators
26
+ export const symbols = {
27
+ info: primary(''),
28
+ success: success(''),
29
+ warning: warning(''),
30
+ error: error(''),
31
+ arrow: primary(''),
32
+ bullet: muted(''),
33
+ pointer: primary(''),
34
+ checkboxOn: success(''),
35
+ checkboxOff: muted(''),
235
36
  };
37
+ // Application specific symbols
38
+ export const mcpSymbol = () => chalk.hex('#f59e0b')('⚡'); // Amber lightning for tools/MCP
39
+ export const toolSymbol = () => chalk.hex('#8b5cf6')('🔧'); // Violet wrench for tools
40
+ export const thinkingSymbol = () => primary('⧖'); // Thinking hourglass symbol
41
+ /**
42
+ * Format a styled message block
43
+ */
44
+ export function styledMessage(type, text) {
45
+ const symbol = symbols[type];
46
+ return `${symbol} ${text}`;
47
+ }
48
+ // Export branding assets
49
+ export { getLogoAscii, getCompactLogo } from './branding.js';
50
+ export { BRAND_COLORS };
51
+ // Additional styles
52
+ export const info = chalk.hex(BRAND_COLORS.primaryLight);
236
53
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/theme/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS;QACrC,OAAO,CAAC,MAAM,CAAC,KAAK;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,IAAI,GAAG;IACT,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,SAAS;IAEd,oBAAoB;IACpB,KAAK,EAAE,UAAU;IACjB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,UAAU;IACvB,SAAS,EAAE,UAAU;IACrB,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,UAAU;IACxB,UAAU,EAAE,UAAU;IACtB,aAAa,EAAE,UAAU;IACzB,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,UAAU;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,sCAAsC;IACtC,OAAO,EAAE;QACL,IAAI,EAAE,IAAI,CAAC,WAAW;QACtB,MAAM,EAAE,GAAG;KACd;IACD,KAAK,EAAE;QACH,IAAI,EAAE,IAAI,CAAC,SAAS;QACpB,MAAM,EAAE,GAAG;KACd;IACD,OAAO,EAAE;QACL,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,MAAM,EAAE,GAAG;KACd;IACD,IAAI,EAAE;QACF,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,MAAM,EAAE,GAAG;KACd;IAED,eAAe;IACf,OAAO,EAAE;QACL,IAAI,EAAE,IAAI,CAAC,aAAa,EAAG,iBAAiB;QAC5C,MAAM,EAAE,GAAG;KACd;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI,CAAC,UAAU,EAAM,eAAe;QAC1C,MAAM,EAAE,GAAG;KACd;IAED,cAAc;IACd,IAAI,EAAE;QACF,IAAI,EAAE,IAAI,CAAC,KAAK;KACnB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,IAAI,CAAC,WAAW;KACzB;IAED,qBAAqB;IACrB,GAAG,EAAE;QACD,IAAI,EAAE,IAAI,CAAC,aAAa;QACxB,MAAM,EAAE,IAAI;KACf;IACD,IAAI,EAAE;QACF,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,MAAM,EAAE,GAAG;KACd;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,MAAM,EAAE,GAAG;KACd;CACJ,CAAC;AAEF;;GAEG;AAEH;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,SAAiB;IACpD,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,IAAY;IAC7B,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,IAAY;IAC5B,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;AAC7C,CAAC;AAED;;GAEG;AAEH;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,IAAY;IAC9B,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,IAAY;IAC7B,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY;IAClC,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,IAAY;IAC9B,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACvB,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU;IACtB,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACrB,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU;IACtB,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC1B,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CACzB,IAA8C,EAC9C,OAAe;IAEf,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB,QAAQ;IACR,IAAI;IACJ,GAAG;IACH,OAAO;IACP,KAAK;IACL,OAAO;IACP,IAAI;IACJ,OAAO;IACP,SAAS;IACT,KAAK;IACL,aAAa;IACb,WAAW;IACX,aAAa;IACb,UAAU;IACV,SAAS;IACT,UAAU;IACV,cAAc;IACd,aAAa;CAChB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/theme/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openpaean",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Open source AI agent CLI with scrolling TUI (Claude Code style) and local MCP integration",
5
5
  "author": "Paean AI <dev@paean.ai>",
6
6
  "license": "MIT",
@@ -78,4 +78,4 @@
78
78
  "bugs": {
79
79
  "url": "https://github.com/paean-ai/openpaean/issues"
80
80
  }
81
- }
81
+ }