@kya-os/cli 0.1.0-beta.8 → 1.0.0-beta

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.
Files changed (93) hide show
  1. package/README.md +24 -26
  2. package/dist/commands/claim.d.ts.map +1 -1
  3. package/dist/commands/claim.js +29 -29
  4. package/dist/commands/claim.js.map +1 -1
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +240 -212
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/rotate.d.ts.map +1 -1
  9. package/dist/commands/rotate.js +63 -52
  10. package/dist/commands/rotate.js.map +1 -1
  11. package/dist/components/agent-card.d.ts +14 -0
  12. package/dist/components/agent-card.d.ts.map +1 -0
  13. package/dist/components/agent-card.js +170 -0
  14. package/dist/components/agent-card.js.map +1 -0
  15. package/dist/components/agent-table.d.ts +20 -0
  16. package/dist/components/agent-table.d.ts.map +1 -0
  17. package/dist/components/agent-table.js +201 -0
  18. package/dist/components/agent-table.js.map +1 -0
  19. package/dist/components/box.d.ts +14 -0
  20. package/dist/components/box.d.ts.map +1 -0
  21. package/dist/components/box.js +222 -0
  22. package/dist/components/box.js.map +1 -0
  23. package/dist/components/index.d.ts +16 -0
  24. package/dist/components/index.d.ts.map +1 -0
  25. package/dist/components/index.js +17 -0
  26. package/dist/components/index.js.map +1 -0
  27. package/dist/components/messages.d.ts +62 -0
  28. package/dist/components/messages.d.ts.map +1 -0
  29. package/dist/components/messages.js +146 -0
  30. package/dist/components/messages.js.map +1 -0
  31. package/dist/components/types.d.ts +51 -0
  32. package/dist/components/types.d.ts.map +1 -0
  33. package/dist/components/types.js +5 -0
  34. package/dist/components/types.js.map +1 -0
  35. package/dist/components/welcome.d.ts +34 -0
  36. package/dist/components/welcome.d.ts.map +1 -0
  37. package/dist/components/welcome.js +115 -0
  38. package/dist/components/welcome.js.map +1 -0
  39. package/dist/effects/cli-integration.js +3 -3
  40. package/dist/effects/cli-integration.js.map +1 -1
  41. package/dist/effects/index.d.ts +9 -12
  42. package/dist/effects/index.d.ts.map +1 -1
  43. package/dist/effects/index.js +69 -34
  44. package/dist/effects/index.js.map +1 -1
  45. package/dist/index.d.ts +1 -1
  46. package/dist/index.js +12 -19
  47. package/dist/utils/env-manager.d.ts +66 -2
  48. package/dist/utils/env-manager.d.ts.map +1 -1
  49. package/dist/utils/env-manager.js +381 -56
  50. package/dist/utils/env-manager.js.map +1 -1
  51. package/dist/utils/screen-manager.d.ts +10 -0
  52. package/dist/utils/screen-manager.d.ts.map +1 -0
  53. package/dist/utils/screen-manager.js +50 -0
  54. package/dist/utils/screen-manager.js.map +1 -0
  55. package/dist/utils/validation.d.ts +92 -0
  56. package/dist/utils/validation.d.ts.map +1 -0
  57. package/dist/utils/validation.js +102 -0
  58. package/dist/utils/validation.js.map +1 -0
  59. package/package.json +24 -9
  60. package/dist/commands/cli-experience-demo-simple.d.ts +0 -14
  61. package/dist/commands/cli-experience-demo-simple.d.ts.map +0 -1
  62. package/dist/commands/cli-experience-demo-simple.js +0 -119
  63. package/dist/commands/cli-experience-demo-simple.js.map +0 -1
  64. package/dist/commands/cli-experience-demo.d.ts +0 -14
  65. package/dist/commands/cli-experience-demo.d.ts.map +0 -1
  66. package/dist/commands/cli-experience-demo.js +0 -172
  67. package/dist/commands/cli-experience-demo.js.map +0 -1
  68. package/dist/commands/effects-demo.d.ts +0 -10
  69. package/dist/commands/effects-demo.d.ts.map +0 -1
  70. package/dist/commands/effects-demo.js +0 -292
  71. package/dist/commands/effects-demo.js.map +0 -1
  72. package/dist/dev.d.ts +0 -7
  73. package/dist/dev.d.ts.map +0 -1
  74. package/dist/dev.js +0 -9
  75. package/dist/dev.js.map +0 -1
  76. package/dist/effects/__tests__/effects.test.d.ts +0 -5
  77. package/dist/effects/__tests__/effects.test.d.ts.map +0 -1
  78. package/dist/effects/__tests__/effects.test.js +0 -206
  79. package/dist/effects/__tests__/effects.test.js.map +0 -1
  80. package/dist/effects/implementations/binary-path.d.ts +0 -88
  81. package/dist/effects/implementations/binary-path.d.ts.map +0 -1
  82. package/dist/effects/implementations/binary-path.js +0 -296
  83. package/dist/effects/implementations/binary-path.js.map +0 -1
  84. package/dist/effects/implementations/test.d.ts +0 -113
  85. package/dist/effects/implementations/test.d.ts.map +0 -1
  86. package/dist/effects/implementations/test.js +0 -552
  87. package/dist/effects/implementations/test.js.map +0 -1
  88. package/dist/effects/template/effect-template.d.ts +0 -97
  89. package/dist/effects/template/effect-template.d.ts.map +0 -1
  90. package/dist/effects/template/effect-template.js +0 -208
  91. package/dist/effects/template/effect-template.js.map +0 -1
  92. package/dist/index.d.ts.map +0 -1
  93. package/dist/index.js.map +0 -1
@@ -0,0 +1,201 @@
1
+ /**
2
+ * Agent Table Component
3
+ * Displays agent identity information using cli-table3 for better presentation
4
+ */
5
+ import Table from "cli-table3";
6
+ import chalk from "chalk";
7
+ /**
8
+ * Create an agent identity table
9
+ */
10
+ export function createAgentTable(data) {
11
+ // Create table with custom styling
12
+ const table = new Table({
13
+ head: [],
14
+ style: {
15
+ head: [],
16
+ border: ['cyan'],
17
+ 'padding-left': 2,
18
+ 'padding-right': 2
19
+ },
20
+ chars: {
21
+ 'top': '═',
22
+ 'top-mid': '╤',
23
+ 'top-left': '╔',
24
+ 'top-right': '╗',
25
+ 'bottom': '═',
26
+ 'bottom-mid': '╧',
27
+ 'bottom-left': '╚',
28
+ 'bottom-right': '╝',
29
+ 'left': '║',
30
+ 'left-mid': '╟',
31
+ 'mid': '─',
32
+ 'mid-mid': '┼',
33
+ 'right': '║',
34
+ 'right-mid': '╢',
35
+ 'middle': '│'
36
+ },
37
+ colWidths: [20, 60],
38
+ wordWrap: true
39
+ });
40
+ // Add title row
41
+ table.push([
42
+ {
43
+ colSpan: 2,
44
+ content: chalk.bold.white('🤖 AGENT IDENTITY CREATED'),
45
+ hAlign: 'center'
46
+ }
47
+ ]);
48
+ // Add agent details
49
+ table.push([chalk.bold('Agent Name'), chalk.yellow(data.name)], [chalk.bold('Description'), chalk.gray(data.description || 'N/A')]);
50
+ // Add separator
51
+ table.push([{ colSpan: 2, content: '' }]);
52
+ // Add DID with proper wrapping
53
+ table.push([
54
+ chalk.bold('DID'),
55
+ chalk.green(data.did)
56
+ ]);
57
+ // Add profile URL if available
58
+ if (data.profileUrl || data.agentSlug) {
59
+ const profileUrl = data.profileUrl || `https://knowthat.ai/agents/${data.agentSlug}`;
60
+ table.push([
61
+ chalk.bold('Profile'),
62
+ chalk.blue(profileUrl)
63
+ ]);
64
+ }
65
+ // If private key is provided, add it with warning
66
+ if (data.privateKey) {
67
+ table.push([{ colSpan: 2, content: '' }]);
68
+ table.push([
69
+ {
70
+ colSpan: 2,
71
+ content: chalk.bold.red('🔐 PRIVATE KEY (KEEP SAFE!)'),
72
+ hAlign: 'center'
73
+ }
74
+ ]);
75
+ table.push([
76
+ {
77
+ colSpan: 2,
78
+ content: chalk.red(data.privateKey),
79
+ hAlign: 'left'
80
+ }
81
+ ]);
82
+ table.push([
83
+ {
84
+ colSpan: 2,
85
+ content: chalk.yellow('⚠️ This key controls your agent - never share it!'),
86
+ hAlign: 'center'
87
+ }
88
+ ]);
89
+ }
90
+ // Add success message
91
+ table.push([{ colSpan: 2, content: '' }]);
92
+ table.push([
93
+ {
94
+ colSpan: 2,
95
+ content: chalk.bold.green('✅ Agent successfully registered on the KYA-OS network'),
96
+ hAlign: 'center'
97
+ }
98
+ ]);
99
+ table.push([
100
+ {
101
+ colSpan: 2,
102
+ content: chalk.gray('Your AI agent now has a verifiable decentralized identity'),
103
+ hAlign: 'center'
104
+ }
105
+ ]);
106
+ return table.toString();
107
+ }
108
+ /**
109
+ * Create a compact agent info table (for check command)
110
+ */
111
+ export function createCompactAgentTable(data) {
112
+ const table = new Table({
113
+ style: {
114
+ head: [],
115
+ border: ['green']
116
+ },
117
+ chars: {
118
+ 'top': '─',
119
+ 'top-mid': '┬',
120
+ 'top-left': '╭',
121
+ 'top-right': '╮',
122
+ 'bottom': '─',
123
+ 'bottom-mid': '┴',
124
+ 'bottom-left': '╰',
125
+ 'bottom-right': '╯',
126
+ 'left': '│',
127
+ 'left-mid': '├',
128
+ 'mid': '─',
129
+ 'mid-mid': '┼',
130
+ 'right': '│',
131
+ 'right-mid': '┤',
132
+ 'middle': '│'
133
+ },
134
+ colWidths: [15, 50],
135
+ wordWrap: true
136
+ });
137
+ table.push([chalk.bold('Agent'), chalk.yellow(data.name)], [chalk.bold('DID'), chalk.green(data.did)]);
138
+ if (data.profileUrl || data.agentSlug) {
139
+ const profileUrl = data.profileUrl || `https://knowthat.ai/agents/${data.agentSlug}`;
140
+ table.push([chalk.bold('Profile'), chalk.blue(profileUrl)]);
141
+ }
142
+ return table.toString();
143
+ }
144
+ /**
145
+ * Create claim URL table with interactive prompt
146
+ */
147
+ export function createClaimTable(data) {
148
+ const table = new Table({
149
+ style: {
150
+ head: [],
151
+ border: ['yellow']
152
+ },
153
+ chars: {
154
+ 'top': '═',
155
+ 'top-mid': '╤',
156
+ 'top-left': '╔',
157
+ 'top-right': '╗',
158
+ 'bottom': '═',
159
+ 'bottom-mid': '╧',
160
+ 'bottom-left': '╚',
161
+ 'bottom-right': '╝',
162
+ 'left': '║',
163
+ 'left-mid': '╟',
164
+ 'mid': '─',
165
+ 'mid-mid': '┼',
166
+ 'right': '║',
167
+ 'right-mid': '╢',
168
+ 'middle': '│'
169
+ },
170
+ colWidths: [70],
171
+ wordWrap: true
172
+ });
173
+ table.push([
174
+ {
175
+ content: chalk.bold.yellow('🎯 CLAIM YOUR AGENT NOW'),
176
+ hAlign: 'center'
177
+ }
178
+ ]);
179
+ table.push([{ content: '' }]);
180
+ table.push([
181
+ {
182
+ content: chalk.bold.cyan('🔗 Click to claim your agent:'),
183
+ hAlign: 'center'
184
+ }
185
+ ]);
186
+ table.push([
187
+ {
188
+ content: chalk.cyan.underline(data.claimUrl),
189
+ hAlign: 'center'
190
+ }
191
+ ]);
192
+ table.push([{ content: '' }]);
193
+ table.push([
194
+ {
195
+ content: chalk.gray('This link lets you manage your agent and add capabilities.'),
196
+ hAlign: 'center'
197
+ }
198
+ ]);
199
+ return table.toString();
200
+ }
201
+ //# sourceMappingURL=agent-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-table.js","sourceRoot":"","sources":["../../src/components/agent-table.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Box Drawing Component
3
+ * Creates beautiful boxes for CLI output without dependencies
4
+ */
5
+ import { BoxOptions } from "./types.js";
6
+ /**
7
+ * Create a box around content
8
+ */
9
+ export declare function createBox(content: string | string[], options?: BoxOptions): string;
10
+ /**
11
+ * Create a divider line
12
+ */
13
+ export declare function createDivider(width?: number, style?: 'single' | 'double' | 'heavy'): string;
14
+ //# sourceMappingURL=box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../src/components/box.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAY,MAAM,YAAY,CAAC;AAuHlD;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,UAAe,GAAG,MAAM,CAkHtF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,GAAE,MAAW,EAAE,KAAK,GAAE,QAAQ,GAAG,QAAQ,GAAG,OAAkB,GAAG,MAAM,CAQzG"}
@@ -0,0 +1,222 @@
1
+ /**
2
+ * Box Drawing Component
3
+ * Creates beautiful boxes for CLI output without dependencies
4
+ */
5
+ import chalk from "chalk";
6
+ // Predefined box styles
7
+ const BOX_STYLES = {
8
+ single: {
9
+ topLeft: "┌",
10
+ topRight: "┐",
11
+ bottomLeft: "└",
12
+ bottomRight: "┘",
13
+ horizontal: "─",
14
+ vertical: "│",
15
+ topJunction: "┬",
16
+ bottomJunction: "┴",
17
+ leftJunction: "├",
18
+ rightJunction: "┤",
19
+ cross: "┼",
20
+ },
21
+ double: {
22
+ topLeft: "╔",
23
+ topRight: "╗",
24
+ bottomLeft: "╚",
25
+ bottomRight: "╝",
26
+ horizontal: "═",
27
+ vertical: "║",
28
+ topJunction: "╦",
29
+ bottomJunction: "╩",
30
+ leftJunction: "╠",
31
+ rightJunction: "╣",
32
+ cross: "╬",
33
+ },
34
+ round: {
35
+ topLeft: "╭",
36
+ topRight: "╮",
37
+ bottomLeft: "╰",
38
+ bottomRight: "╯",
39
+ horizontal: "─",
40
+ vertical: "│",
41
+ topJunction: "┬",
42
+ bottomJunction: "┴",
43
+ leftJunction: "├",
44
+ rightJunction: "┤",
45
+ cross: "┼",
46
+ },
47
+ heavy: {
48
+ topLeft: "┏",
49
+ topRight: "┓",
50
+ bottomLeft: "┗",
51
+ bottomRight: "┛",
52
+ horizontal: "━",
53
+ vertical: "┃",
54
+ topJunction: "┳",
55
+ bottomJunction: "┻",
56
+ leftJunction: "┣",
57
+ rightJunction: "┫",
58
+ cross: "╋",
59
+ },
60
+ };
61
+ /**
62
+ * Wrap text to fit within a specific width
63
+ */
64
+ function wrapText(text, width) {
65
+ const words = text.split(" ");
66
+ const lines = [];
67
+ let currentLine = "";
68
+ for (const word of words) {
69
+ if (currentLine.length + word.length + 1 <= width) {
70
+ currentLine += (currentLine ? " " : "") + word;
71
+ }
72
+ else {
73
+ if (currentLine)
74
+ lines.push(currentLine);
75
+ currentLine = word;
76
+ }
77
+ }
78
+ if (currentLine)
79
+ lines.push(currentLine);
80
+ return lines.length > 0 ? lines : [""];
81
+ }
82
+ /**
83
+ * Pad text to center it within a given width
84
+ */
85
+ function stripAnsi(text) {
86
+ // Simple ANSI code removal - matches most common ANSI escape sequences
87
+ return text.replace(/\x1b\[[0-9;]*m/g, '');
88
+ }
89
+ /**
90
+ * Pad text to center it within a given width
91
+ */
92
+ function centerText(text, width) {
93
+ const textLength = stripAnsi(text).length;
94
+ if (textLength >= width)
95
+ return text;
96
+ const totalPadding = width - textLength;
97
+ const leftPadding = Math.floor(totalPadding / 2);
98
+ const rightPadding = totalPadding - leftPadding;
99
+ return " ".repeat(leftPadding) + text + " ".repeat(rightPadding);
100
+ }
101
+ /**
102
+ * Pad text to align it within a given width
103
+ */
104
+ function alignText(text, width, align = 'left') {
105
+ const textLength = stripAnsi(text).length;
106
+ if (textLength >= width)
107
+ return text.substring(0, width);
108
+ switch (align) {
109
+ case 'center':
110
+ return centerText(text, width);
111
+ case 'right':
112
+ return " ".repeat(width - textLength) + text;
113
+ default:
114
+ return text + " ".repeat(width - textLength);
115
+ }
116
+ }
117
+ /**
118
+ * Create a box around content
119
+ */
120
+ export function createBox(content, options = {}) {
121
+ const { padding = 1, margin = 0, style = "single", width = 72, align = "left", title, titleAlign = "center", borderColor, } = options;
122
+ // Get box style
123
+ const boxStyle = typeof style === "string" ? BOX_STYLES[style] : style;
124
+ if (!boxStyle)
125
+ throw new Error(`Unknown box style: ${style}`);
126
+ // Prepare content lines
127
+ const lines = Array.isArray(content) ? content : content.split("\n");
128
+ const contentWidth = width - 2 - (padding * 2); // Account for borders and padding
129
+ // Wrap and align lines
130
+ const wrappedLines = [];
131
+ for (const line of lines) {
132
+ if (stripAnsi(line).length > contentWidth) {
133
+ wrappedLines.push(...wrapText(line, contentWidth));
134
+ }
135
+ else {
136
+ wrappedLines.push(line);
137
+ }
138
+ }
139
+ // Build the box
140
+ const result = [];
141
+ // Apply margin
142
+ for (let i = 0; i < margin; i++) {
143
+ result.push("");
144
+ }
145
+ // Top border with optional title
146
+ let topBorder = boxStyle.topLeft + boxStyle.horizontal.repeat(width - 2) + boxStyle.topRight;
147
+ if (title) {
148
+ const titleText = ` ${title} `;
149
+ const titleLength = stripAnsi(titleText).length;
150
+ const borderLength = width - 2;
151
+ if (titleLength < borderLength - 4) {
152
+ let titlePosition;
153
+ switch (titleAlign) {
154
+ case 'center':
155
+ titlePosition = Math.floor((borderLength - titleLength) / 2);
156
+ break;
157
+ case 'right':
158
+ titlePosition = borderLength - titleLength - 2;
159
+ break;
160
+ default:
161
+ titlePosition = 2;
162
+ }
163
+ topBorder =
164
+ boxStyle.topLeft +
165
+ boxStyle.horizontal.repeat(titlePosition) +
166
+ titleText +
167
+ boxStyle.horizontal.repeat(borderLength - titlePosition - titleLength) +
168
+ boxStyle.topRight;
169
+ }
170
+ }
171
+ if (borderColor) {
172
+ result.push(chalk.hex(borderColor)(topBorder));
173
+ }
174
+ else {
175
+ result.push(topBorder);
176
+ }
177
+ // Add top padding
178
+ for (let i = 0; i < padding; i++) {
179
+ const paddingLine = boxStyle.vertical + " ".repeat(width - 2) + boxStyle.vertical;
180
+ result.push(borderColor ? chalk.hex(borderColor)(paddingLine) : paddingLine);
181
+ }
182
+ // Add content lines
183
+ for (const line of wrappedLines) {
184
+ const alignedContent = alignText(line, contentWidth, align);
185
+ const paddedContent = " ".repeat(padding) + alignedContent + " ".repeat(padding);
186
+ const contentLine = boxStyle.vertical + paddedContent + boxStyle.vertical;
187
+ if (borderColor) {
188
+ // Color only the borders, not the content
189
+ result.push(chalk.hex(borderColor)(boxStyle.vertical) +
190
+ paddedContent +
191
+ chalk.hex(borderColor)(boxStyle.vertical));
192
+ }
193
+ else {
194
+ result.push(contentLine);
195
+ }
196
+ }
197
+ // Add bottom padding
198
+ for (let i = 0; i < padding; i++) {
199
+ const paddingLine = boxStyle.vertical + " ".repeat(width - 2) + boxStyle.vertical;
200
+ result.push(borderColor ? chalk.hex(borderColor)(paddingLine) : paddingLine);
201
+ }
202
+ // Bottom border
203
+ const bottomBorder = boxStyle.bottomLeft + boxStyle.horizontal.repeat(width - 2) + boxStyle.bottomRight;
204
+ result.push(borderColor ? chalk.hex(borderColor)(bottomBorder) : bottomBorder);
205
+ // Apply margin
206
+ for (let i = 0; i < margin; i++) {
207
+ result.push("");
208
+ }
209
+ return result.join("\n");
210
+ }
211
+ /**
212
+ * Create a divider line
213
+ */
214
+ export function createDivider(width = 72, style = 'single') {
215
+ const chars = {
216
+ single: "─",
217
+ double: "═",
218
+ heavy: "━",
219
+ };
220
+ return chars[style].repeat(width);
221
+ }
222
+ //# sourceMappingURL=box.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"box.js","sourceRoot":"","sources":["../../src/components/box.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAwB;AACxB,MAAM,UAAU,GAA6B;IAC3C,MAAM,EAAE;QACN,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,GAAG;QAClB,KAAK,EAAE,GAAG;KACX;IACD,MAAM,EAAE;QACN,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,GAAG;QAClB,KAAK,EAAE,GAAG;KACX;IACD,KAAK,EAAE;QACL,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,GAAG;QAClB,KAAK,EAAE,GAAG;KACX;IACD,KAAK,EAAE;QACL,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,GAAG;QAClB,KAAK,EAAE,GAAG;KACX;CACF,CAAC;AAEF;;GAEG;AACH,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAa;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;YAClD,WAAW,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,IAAI,WAAW;gBAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAED,IAAI,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,uEAAuE;IACvE,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,IAAY,EAAE,KAAa;IAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,UAAU,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,YAAY,GAAG,KAAK,GAAG,UAAU,CAAC;IACxC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,YAAY,GAAG,WAAW,CAAC;IAEhD,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY,EAAE,KAAa,EAAE,QAAqC,MAAM;IACzF,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAE1C,IAAI,UAAU,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAEzD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,KAAK,OAAO;YACV,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,IAAI,CAAC;QAC/C;YACE,OAAO,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,OAA0B,EAAE,UAAsB,EAAE;IAC5E,MAAM,EACJ,OAAO,GAAG,CAAC,EACX,MAAM,GAAG,CAAC,EACV,KAAK,GAAG,QAAQ,EAChB,KAAK,GAAG,EAAE,EACV,KAAK,GAAG,MAAM,EACd,KAAK,EACL,UAAU,GAAG,QAAQ,EACrB,WAAW,GACZ,GAAG,OAAO,CAAC;IAEZ,gBAAgB;IAChB,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACvE,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;IAE9D,wBAAwB;IACxB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,kCAAkC;IAElF,uBAAuB;IACvB,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;YAC1C,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,eAAe;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,iCAAiC;IACjC,IAAI,SAAS,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,UAAW,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAE9F,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,SAAS,GAAG,IAAI,KAAK,GAAG,CAAC;QAC/B,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QAChD,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,CAAC;QAE/B,IAAI,WAAW,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,aAAqB,CAAC;YAC1B,QAAQ,UAAU,EAAE,CAAC;gBACnB,KAAK,QAAQ;oBACX,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC7D,MAAM;gBACR,KAAK,OAAO;oBACV,aAAa,GAAG,YAAY,GAAG,WAAW,GAAG,CAAC,CAAC;oBAC/C,MAAM;gBACR;oBACE,aAAa,GAAG,CAAC,CAAC;YACtB,CAAC;YAED,SAAS;gBACP,QAAQ,CAAC,OAAO;oBAChB,QAAQ,CAAC,UAAW,CAAC,MAAM,CAAC,aAAa,CAAC;oBAC1C,SAAS;oBACT,QAAQ,CAAC,UAAW,CAAC,MAAM,CAAC,YAAY,GAAG,aAAa,GAAG,WAAW,CAAC;oBACvE,QAAQ,CAAC,QAAQ,CAAC;QACtB,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC;IAED,kBAAkB;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED,oBAAoB;IACpB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAE1E,IAAI,WAAW,EAAE,CAAC;YAChB,0CAA0C;YAC1C,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAS,CAAC;gBAC1C,aAAa;gBACb,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAS,CAAC,CAC3C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED,gBAAgB;IAChB,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAW,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC;IACzG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAE/E,eAAe;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,EAAE,QAAuC,QAAQ;IAC/F,MAAM,KAAK,GAAG;QACZ,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,GAAG;QACX,KAAK,EAAE,GAAG;KACX,CAAC;IAEF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * CLI Components
3
+ * Reusable UI components for beautiful CLI output
4
+ */
5
+ export * from "./types.js";
6
+ export * from "./box.js";
7
+ export * from "./agent-card.js";
8
+ export * from "./agent-table.js";
9
+ export * from "./messages.js";
10
+ export * from "./welcome.js";
11
+ export { createBox, createDivider, } from "./box.js";
12
+ export { createAgentCard, createCompactAgentCard, } from "./agent-card.js";
13
+ export { createAgentTable, createCompactAgentTable, createClaimTable, } from "./agent-table.js";
14
+ export { createSuccessMessage, createErrorMessage, createWarningMessage, createInfoMessage, createStepIndicator, createProgressBar, createBulletList, createNumberedList, createKeyValueDisplay, createSpinner, } from "./messages.js";
15
+ export { createWelcomeBanner, createGradientText, createGradientBox, createErrorBox, createSuccessBox, createInfoBox, } from "./welcome.js";
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAG7B,OAAO,EACL,SAAS,EACT,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,MAAM,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * CLI Components
3
+ * Reusable UI components for beautiful CLI output
4
+ */
5
+ export * from "./types.js";
6
+ export * from "./box.js";
7
+ export * from "./agent-card.js";
8
+ export * from "./agent-table.js";
9
+ export * from "./messages.js";
10
+ export * from "./welcome.js";
11
+ // Re-export commonly used functions for convenience
12
+ export { createBox, createDivider, } from "./box.js";
13
+ export { createAgentCard, createCompactAgentCard, } from "./agent-card.js";
14
+ export { createAgentTable, createCompactAgentTable, createClaimTable, } from "./agent-table.js";
15
+ export { createSuccessMessage, createErrorMessage, createWarningMessage, createInfoMessage, createStepIndicator, createProgressBar, createBulletList, createNumberedList, createKeyValueDisplay, createSpinner, } from "./messages.js";
16
+ export { createWelcomeBanner, createGradientText, createGradientBox, createErrorBox, createSuccessBox, createInfoBox, } from "./welcome.js";
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAE7B,oDAAoD;AACpD,OAAO,EACL,SAAS,EACT,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,MAAM,cAAc,CAAC"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Message Components
3
+ * Reusable components for displaying various types of messages
4
+ */
5
+ import { MessageOptions } from "./types.js";
6
+ /**
7
+ * Create a success message
8
+ */
9
+ export declare function createSuccessMessage(message: string, options?: MessageOptions): string;
10
+ /**
11
+ * Create an error message
12
+ */
13
+ export declare function createErrorMessage(message: string, options?: MessageOptions): string;
14
+ /**
15
+ * Create a warning message
16
+ */
17
+ export declare function createWarningMessage(message: string, options?: MessageOptions): string;
18
+ /**
19
+ * Create an info message
20
+ */
21
+ export declare function createInfoMessage(message: string, options?: MessageOptions): string;
22
+ /**
23
+ * Create a step indicator
24
+ */
25
+ export declare function createStepIndicator(currentStep: number, totalSteps: number, stepName: string, status?: "pending" | "active" | "completed" | "failed"): string;
26
+ /**
27
+ * Create a progress bar
28
+ */
29
+ export declare function createProgressBar(current: number, total: number, width?: number, options?: {
30
+ showPercentage?: boolean;
31
+ showNumbers?: boolean;
32
+ }): string;
33
+ /**
34
+ * Create a list of items with bullets
35
+ */
36
+ export declare function createBulletList(items: string[], options?: {
37
+ bullet?: string;
38
+ indent?: number;
39
+ color?: string;
40
+ }): string;
41
+ /**
42
+ * Create a numbered list
43
+ */
44
+ export declare function createNumberedList(items: string[], options?: {
45
+ startNumber?: number;
46
+ indent?: number;
47
+ color?: string;
48
+ }): string;
49
+ /**
50
+ * Create a key-value display
51
+ */
52
+ export declare function createKeyValueDisplay(data: Record<string, string | undefined>, options?: {
53
+ separator?: string;
54
+ keyColor?: string;
55
+ valueColor?: string;
56
+ maxKeyLength?: number;
57
+ }): string;
58
+ /**
59
+ * Create a spinner with text (static version for display)
60
+ */
61
+ export declare function createSpinner(text: string, frame?: number): string;
62
+ //# sourceMappingURL=messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/components/messages.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAoB1F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAmBxF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAmB1F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAmBvF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAmB,GAC/D,MAAM,CAoBR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,EAClB,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GAChE,MAAM,CAoBR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GACjE,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GACtE,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACxC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAO,GAClG,MAAM,CAsBR;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM,CAIrE"}