incur 0.1.16 → 0.2.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 +86 -0
- package/SKILL.md +42 -0
- package/dist/Cli.d.ts +25 -2
- package/dist/Cli.d.ts.map +1 -1
- package/dist/Cli.js +233 -25
- package/dist/Cli.js.map +1 -1
- package/dist/Fetch.d.ts +26 -0
- package/dist/Fetch.d.ts.map +1 -0
- package/dist/Fetch.js +150 -0
- package/dist/Fetch.js.map +1 -0
- package/dist/Help.d.ts +4 -0
- package/dist/Help.d.ts.map +1 -1
- package/dist/Help.js +11 -9
- package/dist/Help.js.map +1 -1
- package/dist/Openapi.d.ts +20 -0
- package/dist/Openapi.d.ts.map +1 -0
- package/dist/Openapi.js +136 -0
- package/dist/Openapi.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -1
- package/src/Cli.test-d.ts +2 -2
- package/src/Cli.test.ts +206 -2
- package/src/Cli.ts +273 -26
- package/src/Completions.test.ts +49 -0
- package/src/Fetch.test.ts +274 -0
- package/src/Fetch.ts +170 -0
- package/src/Help.test.ts +48 -0
- package/src/Help.ts +13 -6
- package/src/Openapi.test.ts +320 -0
- package/src/Openapi.ts +196 -0
- package/src/bun-compile.test.ts +84 -0
- package/src/e2e.test.ts +179 -5
- package/src/index.ts +2 -0
package/dist/Fetch.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** Structured input parsed from curl-style argv. */
|
|
2
|
+
export type FetchInput = {
|
|
3
|
+
body: string | undefined;
|
|
4
|
+
headers: Headers;
|
|
5
|
+
method: string;
|
|
6
|
+
path: string;
|
|
7
|
+
query: URLSearchParams;
|
|
8
|
+
};
|
|
9
|
+
/** Structured output from a fetch Response. */
|
|
10
|
+
export type FetchOutput = {
|
|
11
|
+
data: unknown;
|
|
12
|
+
headers: Headers;
|
|
13
|
+
ok: boolean;
|
|
14
|
+
status: number;
|
|
15
|
+
};
|
|
16
|
+
/** Parses curl-style argv into a structured fetch input. */
|
|
17
|
+
export declare function parseArgv(argv: string[]): FetchInput;
|
|
18
|
+
/** Constructs a standard Request from a FetchInput. */
|
|
19
|
+
export declare function buildRequest(input: FetchInput): Request;
|
|
20
|
+
/** Returns true if the response body is a stream that should be consumed incrementally. */
|
|
21
|
+
export declare function isStreamingResponse(response: Response): boolean;
|
|
22
|
+
/** Parses a streaming response body as an async generator of parsed NDJSON chunks. */
|
|
23
|
+
export declare function parseStreamingResponse(response: Response): AsyncGenerator<unknown, void, unknown>;
|
|
24
|
+
/** Parses a fetch Response into structured output. */
|
|
25
|
+
export declare function parseResponse(response: Response): Promise<FetchOutput>;
|
|
26
|
+
//# sourceMappingURL=Fetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fetch.d.ts","sourceRoot":"","sources":["../src/Fetch.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,+CAA+C;AAC/C,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAMD,4DAA4D;AAC5D,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAoEpD;AAED,uDAAuD;AACvD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAgBvD;AAED,2FAA2F;AAC3F,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE/D;AAED,sFAAsF;AACtF,wBAAuB,sBAAsB,CAC3C,QAAQ,EAAE,QAAQ,GACjB,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAgCxC;AAED,sDAAsD;AACtD,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAe5E"}
|
package/dist/Fetch.js
ADDED
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/** Reserved flags consumed by the fetch gateway (not forwarded as query params). */
|
|
2
|
+
const reservedFlags = new Set(['method', 'body', 'data', 'header']);
|
|
3
|
+
const reservedShort = { X: 'method', d: 'data', H: 'header' };
|
|
4
|
+
/** Parses curl-style argv into a structured fetch input. */
|
|
5
|
+
export function parseArgv(argv) {
|
|
6
|
+
const segments = [];
|
|
7
|
+
const headers = new Headers();
|
|
8
|
+
const query = new URLSearchParams();
|
|
9
|
+
let method;
|
|
10
|
+
let body;
|
|
11
|
+
let i = 0;
|
|
12
|
+
while (i < argv.length) {
|
|
13
|
+
const token = argv[i];
|
|
14
|
+
if (token.startsWith('--')) {
|
|
15
|
+
const eqIdx = token.indexOf('=');
|
|
16
|
+
if (eqIdx !== -1) {
|
|
17
|
+
// --key=value
|
|
18
|
+
const key = token.slice(2, eqIdx);
|
|
19
|
+
const value = token.slice(eqIdx + 1);
|
|
20
|
+
if (reservedFlags.has(key))
|
|
21
|
+
handleReserved(key, value);
|
|
22
|
+
else
|
|
23
|
+
query.set(key, value);
|
|
24
|
+
i++;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
const key = token.slice(2);
|
|
28
|
+
const value = argv[i + 1];
|
|
29
|
+
if (reservedFlags.has(key)) {
|
|
30
|
+
handleReserved(key, value);
|
|
31
|
+
i += 2;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
query.set(key, value);
|
|
35
|
+
i += 2;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else if (token.startsWith('-') && token.length === 2) {
|
|
40
|
+
const short = token[1];
|
|
41
|
+
const mapped = reservedShort[short];
|
|
42
|
+
const value = argv[i + 1];
|
|
43
|
+
if (mapped) {
|
|
44
|
+
handleReserved(mapped, value);
|
|
45
|
+
i += 2;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
// Unknown short flag — skip (shouldn't happen in fetch context)
|
|
49
|
+
i += 2;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
segments.push(token);
|
|
54
|
+
i++;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function handleReserved(key, value) {
|
|
58
|
+
if (key === 'method')
|
|
59
|
+
method = value.toUpperCase();
|
|
60
|
+
else if (key === 'body' || key === 'data')
|
|
61
|
+
body = value;
|
|
62
|
+
else if (key === 'header') {
|
|
63
|
+
const colonIdx = value.indexOf(':');
|
|
64
|
+
if (colonIdx !== -1) {
|
|
65
|
+
const name = value.slice(0, colonIdx).trim();
|
|
66
|
+
const val = value.slice(colonIdx + 1).trim();
|
|
67
|
+
headers.set(name, val);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
path: segments.length > 0 ? `/${segments.join('/')}` : '/',
|
|
73
|
+
method: method ?? (body !== undefined ? 'POST' : 'GET'),
|
|
74
|
+
headers,
|
|
75
|
+
body,
|
|
76
|
+
query,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
/** Constructs a standard Request from a FetchInput. */
|
|
80
|
+
export function buildRequest(input) {
|
|
81
|
+
const url = new URL(input.path, 'http://localhost');
|
|
82
|
+
input.query.forEach((value, key) => url.searchParams.set(key, value));
|
|
83
|
+
const init = {
|
|
84
|
+
method: input.method,
|
|
85
|
+
headers: input.headers,
|
|
86
|
+
};
|
|
87
|
+
if (input.body !== undefined) {
|
|
88
|
+
init.body = input.body;
|
|
89
|
+
if (!input.headers.has('content-type'))
|
|
90
|
+
input.headers.set('content-type', 'application/json');
|
|
91
|
+
}
|
|
92
|
+
return new Request(url.toString(), init);
|
|
93
|
+
}
|
|
94
|
+
/** Returns true if the response body is a stream that should be consumed incrementally. */
|
|
95
|
+
export function isStreamingResponse(response) {
|
|
96
|
+
return response.body !== null && response.headers.get('content-type') === 'application/x-ndjson';
|
|
97
|
+
}
|
|
98
|
+
/** Parses a streaming response body as an async generator of parsed NDJSON chunks. */
|
|
99
|
+
export async function* parseStreamingResponse(response) {
|
|
100
|
+
const reader = response.body.getReader();
|
|
101
|
+
const decoder = new TextDecoder();
|
|
102
|
+
let buffer = '';
|
|
103
|
+
while (true) {
|
|
104
|
+
const { value, done } = await reader.read();
|
|
105
|
+
if (done)
|
|
106
|
+
break;
|
|
107
|
+
buffer += decoder.decode(value, { stream: true });
|
|
108
|
+
let newlineIdx;
|
|
109
|
+
while ((newlineIdx = buffer.indexOf('\n')) !== -1) {
|
|
110
|
+
const line = buffer.slice(0, newlineIdx).trim();
|
|
111
|
+
buffer = buffer.slice(newlineIdx + 1);
|
|
112
|
+
if (line.length === 0)
|
|
113
|
+
continue;
|
|
114
|
+
try {
|
|
115
|
+
yield JSON.parse(line);
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
yield line;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
// flush remaining buffer
|
|
123
|
+
const remaining = buffer.trim();
|
|
124
|
+
if (remaining.length > 0) {
|
|
125
|
+
try {
|
|
126
|
+
yield JSON.parse(remaining);
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
yield remaining;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/** Parses a fetch Response into structured output. */
|
|
134
|
+
export async function parseResponse(response) {
|
|
135
|
+
const text = await response.text();
|
|
136
|
+
let data;
|
|
137
|
+
try {
|
|
138
|
+
data = JSON.parse(text);
|
|
139
|
+
}
|
|
140
|
+
catch {
|
|
141
|
+
data = text;
|
|
142
|
+
}
|
|
143
|
+
return {
|
|
144
|
+
ok: response.ok,
|
|
145
|
+
status: response.status,
|
|
146
|
+
data,
|
|
147
|
+
headers: response.headers,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=Fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fetch.js","sourceRoot":"","sources":["../src/Fetch.ts"],"names":[],"mappings":"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"}
|
package/dist/Help.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ import { z } from 'zod';
|
|
|
3
3
|
export declare function formatRoot(name: string, options?: formatRoot.Options): string;
|
|
4
4
|
export declare namespace formatRoot {
|
|
5
5
|
type Options = {
|
|
6
|
+
/** Alternative binary names for this CLI. */
|
|
7
|
+
aliases?: string[] | undefined;
|
|
6
8
|
/** Commands to list. */
|
|
7
9
|
commands?: {
|
|
8
10
|
name: string;
|
|
@@ -20,6 +22,8 @@ export declare namespace formatCommand {
|
|
|
20
22
|
type Options = {
|
|
21
23
|
/** Map of option names to single-char aliases. */
|
|
22
24
|
alias?: Record<string, string> | undefined;
|
|
25
|
+
/** Alternative binary names for this CLI. */
|
|
26
|
+
aliases?: string[] | undefined;
|
|
23
27
|
/** Zod schema for positional arguments. */
|
|
24
28
|
args?: z.ZodObject<any> | undefined;
|
|
25
29
|
/** Subcommands to list (for CLIs with both a root handler and subcommands). */
|
package/dist/Help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Help.d.ts","sourceRoot":"","sources":["../src/Help.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,2DAA2D;AAC3D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,UAAU,CAAC,OAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"Help.d.ts","sourceRoot":"","sources":["../src/Help.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,2DAA2D;AAC3D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,UAAU,CAAC,OAAY,GAAG,MAAM,CA6BjF;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAK,OAAO,GAAG;QACb,6CAA6C;QAC7C,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;QAC9B,wBAAwB;QACxB,QAAQ,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAAE,EAAE,GAAG,SAAS,CAAA;QAC3E,+CAA+C;QAC/C,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAChC,mDAAmD;QACnD,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC1B,0BAA0B;QAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF;AAED,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC,KAAK,OAAO,GAAG;QACb,kDAAkD;QAClD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;QAC1C,6CAA6C;QAC7C,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;QAC9B,2CAA2C;QAC3C,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;QACnC,+EAA+E;QAC/E,QAAQ,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAAE,EAAE,GAAG,SAAS,CAAA;QAC3E,oDAAoD;QACpD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAChC,4CAA4C;QAC5C,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;QAClC,0FAA0F;QAC1F,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;QAC1D,gCAAgC;QAChC,QAAQ,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,EAAE,GAAG,SAAS,CAAA;QAClE,0EAA0E;QAC1E,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,0CAA0C;QAC1C,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;QACtC,mDAAmD;QACnD,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC1B,kCAAkC;QAClC,KAAK,CAAC,EACF;YACE,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;YAChD,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;YACnD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC5B,EAAE,GACH,SAAS,CAAA;QACb,0BAA0B;QAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF;AAED,4CAA4C;AAC5C,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAa,CAAC,OAAY,GAAG,MAAM,CAmIvF"}
|
package/dist/Help.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
/** Formats help text for a router CLI or command group. */
|
|
3
3
|
export function formatRoot(name, options = {}) {
|
|
4
|
-
const { description, version, commands = [], root = false } = options;
|
|
4
|
+
const { aliases, description, version, commands = [], root = false } = options;
|
|
5
5
|
const lines = [];
|
|
6
6
|
// Header
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const title = version ? `${name}@${version}` : name;
|
|
8
|
+
lines.push(description ? `${title} \u2014 ${description}` : title);
|
|
9
|
+
if (aliases?.length)
|
|
10
|
+
lines.push(`Aliases: ${aliases.join(', ')}`);
|
|
10
11
|
lines.push('');
|
|
11
12
|
// Synopsis
|
|
12
13
|
lines.push(`Usage: ${name} <command>`);
|
|
@@ -29,12 +30,13 @@ export function formatRoot(name, options = {}) {
|
|
|
29
30
|
}
|
|
30
31
|
/** Formats help text for a leaf command. */
|
|
31
32
|
export function formatCommand(name, options = {}) {
|
|
32
|
-
const { alias, description, version, args, env, envSource, hint, root = false, options: opts, examples, } = options;
|
|
33
|
+
const { alias, aliases, description, version, args, env, envSource, hint, root = false, options: opts, examples, } = options;
|
|
33
34
|
const lines = [];
|
|
34
35
|
// Header
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
const title = version ? `${name}@${version}` : name;
|
|
37
|
+
lines.push(description ? `${title} \u2014 ${description}` : title);
|
|
38
|
+
if (aliases?.length)
|
|
39
|
+
lines.push(`Aliases: ${aliases.join(', ')}`);
|
|
38
40
|
lines.push('');
|
|
39
41
|
// Synopsis
|
|
40
42
|
const { usage } = options;
|
|
@@ -100,7 +102,7 @@ export function formatCommand(name, options = {}) {
|
|
|
100
102
|
for (const ex of examples) {
|
|
101
103
|
const cmd = ex.command ? `$ ${name} ${ex.command}` : `$ ${name}`;
|
|
102
104
|
if (ex.description)
|
|
103
|
-
lines.push(` ${cmd}${' '.repeat(maxLen - cmd.length)} ${ex.description}`);
|
|
105
|
+
lines.push(` ${cmd}${' '.repeat(maxLen - cmd.length)} # ${ex.description}`);
|
|
104
106
|
else
|
|
105
107
|
lines.push(` ${cmd}`);
|
|
106
108
|
}
|
package/dist/Help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Help.js","sourceRoot":"","sources":["../src/Help.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Help.js","sourceRoot":"","sources":["../src/Help.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,2DAA2D;AAC3D,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,UAA8B,EAAE;IACvE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,GAAG,KAAK,EAAE,GAAG,OAAO,CAAA;IAC9E,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,SAAS;IACT,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IACnD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClE,IAAI,OAAO,EAAE,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACjE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEd,WAAW;IACX,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,CAAA;IAEtC,WAAW;IACX,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACpB,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,OAAO,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;YAC3D,CAAC;;gBAAM,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QACpC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;IAEvC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAuDD,4CAA4C;AAC5C,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,UAAiC,EAAE;IAC7E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,OAAO,EACP,IAAI,EACJ,GAAG,EACH,SAAS,EACT,IAAI,EACJ,IAAI,GAAG,KAAK,EACZ,OAAO,EAAE,IAAI,EACb,QAAQ,GACT,GAAG,OAAO,CAAA;IACX,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,SAAS;IACT,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IACnD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClE,IAAI,OAAO,EAAE,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACjE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEd,WAAW;IACX,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IACzB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAa,EAAE,CAAA;YAC1B,IAAI,CAAC,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChB,IAAI,CAAC,CAAC,IAAI;gBAAE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;YACzE,IAAI,CAAC,CAAC,OAAO;gBAAE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,GAAG,CAAC,CAAA;YACxF,IAAI,CAAC,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAClC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QACxC,KAAK,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACrC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,CAAC,CAAA;IACrE,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC1C,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3F,KAAK,CAAC,IAAI,CAAC,UAAU,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,EAAE,CAAC,CAAA;IAC7E,CAAC;IAED,YAAY;IACZ,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;YAC7D,KAAK,MAAM,KAAK,IAAI,OAAO;gBACzB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;IAED,UAAU;IACV,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC1C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;YAC7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACtD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;gBACtD,MAAM,IAAI,GACR,KAAK,CAAC,YAAY,KAAK,SAAS;oBAC9B,CAAC,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,WAAW,cAAc,KAAK,CAAC,YAAY,GAAG;oBAClE,CAAC,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;gBACrC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,GAAG,OAAO,KAAK,IAAI,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,WAAW;IACX,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CACpF,CAAA;QACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAA;YAChE,IAAI,EAAE,CAAC,WAAW;gBAChB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;;gBAC1E,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,OAAO;IACP,IAAI,IAAI,EAAE,CAAC;QACT,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAClB,CAAC;IAED,kEAAkE;IAClE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IAC5B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACpB,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,OAAO,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;YAC3D,CAAC;;gBAAM,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QACpC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;IAEvC,wBAAwB;IACxB,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;YAC7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACtD,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBAC3C,MAAM,MAAM,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAA;gBACvC,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM;oBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,EAAE,CAAC,CAAA;gBAC3E,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA;gBAClF,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACvF,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,GAAG,OAAO,KAAK,IAAI,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,kFAAkF;AAClF,SAAS,aAAa,CAAC,IAAY,EAAE,IAAuB;IAC1D,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;IACpB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QACpD,KAAK,CAAC,IAAI,CAAE,MAAoB,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;IACxF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC;AAED,qDAAqD;AACrD,SAAS,WAAW,CAAC,MAAwB;IAC3C,MAAM,OAAO,GAA4C,EAAE,CAAA;IAC3D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAG,KAAa,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;IAC5E,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,yDAAyD;AACzD,SAAS,UAAU,CAAC,MAAwB;IAC1C,MAAM,OAAO,GAAoE,EAAE,CAAA;IACnF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;QAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAG,KAAa,CAAC,WAAW,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,wDAAwD;AACxD,SAAS,aAAa,CAAC,MAAwB,EAAE,KAA0C;IACzF,MAAM,OAAO,GAKP,EAAE,CAAA;IACR,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,GAAG,CAAA;QAC/E,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;QAC1C,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;QAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAG,KAAa,CAAC,WAAW,IAAI,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAA;IACjG,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,6DAA6D;AAC7D,SAAS,eAAe,CAAC,MAAe;IACtC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,IAAI,SAAS,YAAY,CAAC,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAA;IACrD,IAAI,SAAS,YAAY,CAAC,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAA;IACrD,IAAI,SAAS,YAAY,CAAC,CAAC,UAAU;QAAE,OAAO,SAAS,CAAA;IACvD,IAAI,SAAS,YAAY,CAAC,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAA;IACnD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,wEAAwE;AACxE,SAAS,MAAM,CAAC,MAAe;IAC7B,IAAI,MAAM,YAAY,CAAC,CAAC,WAAW;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;IACnE,IAAI,MAAM,YAAY,CAAC,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAA;IACzE,IAAI,MAAM,YAAY,CAAC,CAAC,WAAW;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;IACnE,OAAO,MAAM,CAAA;AACf,CAAC;AAED,4DAA4D;AAC5D,SAAS,cAAc,CAAC,MAAe;IACrC,IAAI,MAAM,YAAY,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAA;QACpC,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAA;QAChE,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,MAAM,YAAY,CAAC,CAAC,WAAW;QAAE,OAAO,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3E,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,iEAAiE;AACjE,SAAS,iBAAiB,CAAC,MAAe;IACxC,MAAM,IAAI,GAAI,MAAc,EAAE,IAAI,EAAE,EAAE,CAAA;IACtC,OAAO,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AACrD,CAAC;AAED,iDAAiD;AACjD,SAAS,OAAO,CAAC,GAAW;IAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,0GAA0G;AAC1G,SAAS,kBAAkB,CAAC,IAAI,GAAG,KAAK;IACtC,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG;YACf,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,kCAAkC,EAAE;YACjE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,2BAA2B,EAAE;YACtD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,gCAAgC,EAAE;SAC/D,CAAA;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9D,KAAK,CAAC,IAAI,CACR,EAAE,EACF,oBAAoB,EACpB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CACtF,CAAA;IACH,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,EAAE,IAAI,EAAE,oCAAoC,EAAE,IAAI,EAAE,eAAe,EAAE;QACrE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;QACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE;QACvD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,2BAA2B,EAAE;QACxD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/D,CAAA;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3D,KAAK,CAAC,IAAI,CACR,EAAE,EACF,iBAAiB,EACjB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CACnF,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,2DAA2D;AAC3D,SAAS,MAAM,CAAC,KAAa;IAC3B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,MAAM,CAAA;IACpC,OAAO,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACjC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** A minimal OpenAPI 3.x spec shape. Accepts both hand-written specs and generated ones (e.g. from `@hono/zod-openapi`). */
|
|
3
|
+
export type OpenAPISpec = {
|
|
4
|
+
paths?: {} | undefined;
|
|
5
|
+
};
|
|
6
|
+
/** A fetch handler. */
|
|
7
|
+
type FetchHandler = (req: Request) => Response | Promise<Response>;
|
|
8
|
+
/** A generated command entry compatible with incur's internal CommandEntry. */
|
|
9
|
+
type GeneratedCommand = {
|
|
10
|
+
args?: z.ZodObject<any> | undefined;
|
|
11
|
+
description?: string | undefined;
|
|
12
|
+
options?: z.ZodObject<any> | undefined;
|
|
13
|
+
run: (context: any) => any;
|
|
14
|
+
};
|
|
15
|
+
/** Generates incur command entries from an OpenAPI spec. Resolves all `$ref` pointers. */
|
|
16
|
+
export declare function generateCommands(spec: OpenAPISpec, fetch: FetchHandler, options?: {
|
|
17
|
+
basePath?: string | undefined;
|
|
18
|
+
}): Promise<Map<string, GeneratedCommand>>;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=Openapi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Openapi.d.ts","sourceRoot":"","sources":["../src/Openapi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,4HAA4H;AAC5H,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,CAAC,EAAE,EAAE,GAAG,SAAS,CAAA;CAAE,CAAA;AAyBpD,uBAAuB;AACvB,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;AAElE,+EAA+E;AAC/E,KAAK,gBAAgB,GAAG;IACtB,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;IACnC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;IACtC,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,CAAA;CAC3B,CAAA;AAED,0FAA0F;AAC1F,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GAC9C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAyDxC"}
|
package/dist/Openapi.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { dereference } from '@readme/openapi-parser';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import * as Fetch from './Fetch.js';
|
|
4
|
+
/** Generates incur command entries from an OpenAPI spec. Resolves all `$ref` pointers. */
|
|
5
|
+
export async function generateCommands(spec, fetch, options = {}) {
|
|
6
|
+
const resolved = await dereference(structuredClone(spec));
|
|
7
|
+
const commands = new Map();
|
|
8
|
+
const paths = (resolved.paths ?? {});
|
|
9
|
+
for (const [path, methods] of Object.entries(paths)) {
|
|
10
|
+
for (const [method, operation] of Object.entries(methods)) {
|
|
11
|
+
if (method.startsWith('x-'))
|
|
12
|
+
continue;
|
|
13
|
+
const op = operation;
|
|
14
|
+
const name = op.operationId ?? `${method}_${path.replace(/[/{}]/g, '_')}`;
|
|
15
|
+
const httpMethod = method.toUpperCase();
|
|
16
|
+
const pathParams = (op.parameters ?? []).filter((p) => p.in === 'path');
|
|
17
|
+
const queryParams = (op.parameters ?? []).filter((p) => p.in === 'query');
|
|
18
|
+
const bodySchema = op.requestBody?.content?.['application/json']?.schema;
|
|
19
|
+
const bodyProps = (bodySchema?.properties ?? {});
|
|
20
|
+
const bodyRequired = new Set(bodySchema?.required ?? []);
|
|
21
|
+
// Build args Zod schema from path params
|
|
22
|
+
let argsSchema;
|
|
23
|
+
if (pathParams.length > 0) {
|
|
24
|
+
const shape = {};
|
|
25
|
+
for (const p of pathParams) {
|
|
26
|
+
let zodType = p.schema ? toZod(p.schema) : z.string();
|
|
27
|
+
if (p.description)
|
|
28
|
+
zodType = zodType.describe(p.description);
|
|
29
|
+
// Path params need coercion from string argv
|
|
30
|
+
shape[p.name] = coerceIfNeeded(zodType);
|
|
31
|
+
}
|
|
32
|
+
argsSchema = z.object(shape);
|
|
33
|
+
}
|
|
34
|
+
// Build options Zod schema from query params + body properties
|
|
35
|
+
const optShape = {};
|
|
36
|
+
for (const p of queryParams) {
|
|
37
|
+
let zodType = p.schema ? toZod(p.schema) : z.string();
|
|
38
|
+
if (!p.required)
|
|
39
|
+
zodType = zodType.optional();
|
|
40
|
+
if (p.description)
|
|
41
|
+
zodType = zodType.describe(p.description);
|
|
42
|
+
optShape[p.name] = coerceIfNeeded(zodType);
|
|
43
|
+
}
|
|
44
|
+
for (const [key, schema] of Object.entries(bodyProps)) {
|
|
45
|
+
let zodType = toZod(schema);
|
|
46
|
+
if (!bodyRequired.has(key))
|
|
47
|
+
zodType = zodType.optional();
|
|
48
|
+
optShape[key] = zodType;
|
|
49
|
+
}
|
|
50
|
+
const optionsSchema = Object.keys(optShape).length > 0 ? z.object(optShape) : undefined;
|
|
51
|
+
commands.set(name, {
|
|
52
|
+
description: op.summary ?? op.description,
|
|
53
|
+
args: argsSchema,
|
|
54
|
+
options: optionsSchema,
|
|
55
|
+
run: createHandler({ basePath: options.basePath, fetch, httpMethod, path, pathParams, queryParams, bodyProps }),
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return commands;
|
|
60
|
+
}
|
|
61
|
+
function createHandler(config) {
|
|
62
|
+
return async (context) => {
|
|
63
|
+
const { args = {}, options = {} } = context;
|
|
64
|
+
// Build URL path with interpolated path params
|
|
65
|
+
let urlPath = (config.basePath ?? '') + config.path;
|
|
66
|
+
for (const p of config.pathParams) {
|
|
67
|
+
const value = args[p.name];
|
|
68
|
+
if (value !== undefined)
|
|
69
|
+
urlPath = urlPath.replace(`{${p.name}}`, String(value));
|
|
70
|
+
}
|
|
71
|
+
// Build query string from query params
|
|
72
|
+
const query = new URLSearchParams();
|
|
73
|
+
for (const p of config.queryParams) {
|
|
74
|
+
const value = options[p.name];
|
|
75
|
+
if (value !== undefined)
|
|
76
|
+
query.set(p.name, String(value));
|
|
77
|
+
}
|
|
78
|
+
// Build body from body properties
|
|
79
|
+
let body;
|
|
80
|
+
const bodyKeys = Object.keys(config.bodyProps);
|
|
81
|
+
if (bodyKeys.length > 0) {
|
|
82
|
+
const bodyObj = {};
|
|
83
|
+
for (const key of bodyKeys)
|
|
84
|
+
if (options[key] !== undefined)
|
|
85
|
+
bodyObj[key] = options[key];
|
|
86
|
+
if (Object.keys(bodyObj).length > 0)
|
|
87
|
+
body = JSON.stringify(bodyObj);
|
|
88
|
+
}
|
|
89
|
+
const input = {
|
|
90
|
+
path: urlPath,
|
|
91
|
+
method: config.httpMethod,
|
|
92
|
+
headers: new Headers(),
|
|
93
|
+
body,
|
|
94
|
+
query,
|
|
95
|
+
};
|
|
96
|
+
if (body)
|
|
97
|
+
input.headers.set('content-type', 'application/json');
|
|
98
|
+
const request = Fetch.buildRequest(input);
|
|
99
|
+
const response = await config.fetch(request);
|
|
100
|
+
const output = await Fetch.parseResponse(response);
|
|
101
|
+
if (!output.ok)
|
|
102
|
+
return context.error({
|
|
103
|
+
code: `HTTP_${output.status}`,
|
|
104
|
+
message: typeof output.data === 'object' && output.data !== null && 'message' in output.data
|
|
105
|
+
? String(output.data.message)
|
|
106
|
+
: typeof output.data === 'string'
|
|
107
|
+
? output.data
|
|
108
|
+
: `HTTP ${output.status}`,
|
|
109
|
+
});
|
|
110
|
+
return output.data;
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
/** Converts a JSON Schema object to a Zod schema. */
|
|
114
|
+
function toZod(schema) {
|
|
115
|
+
return z.fromJSONSchema(schema);
|
|
116
|
+
}
|
|
117
|
+
/** Wraps a Zod schema with coercion if the base type is number or boolean (argv is always strings). */
|
|
118
|
+
function coerceIfNeeded(schema) {
|
|
119
|
+
const isOptional = schema instanceof z.ZodOptional;
|
|
120
|
+
const inner = isOptional ? schema.unwrap() : schema;
|
|
121
|
+
// Direct number/boolean
|
|
122
|
+
if (inner instanceof z.ZodNumber)
|
|
123
|
+
return isOptional ? z.coerce.number().optional() : z.coerce.number();
|
|
124
|
+
if (inner instanceof z.ZodBoolean)
|
|
125
|
+
return isOptional ? z.coerce.boolean().optional() : z.coerce.boolean();
|
|
126
|
+
// Union containing number (e.g. type: ["number", "null"] from OpenAPI 3.1)
|
|
127
|
+
if (inner instanceof z.ZodUnion) {
|
|
128
|
+
const options = inner._zod?.def?.options;
|
|
129
|
+
if (options?.some((o) => o instanceof z.ZodNumber))
|
|
130
|
+
return isOptional ? z.coerce.number().optional() : z.coerce.number();
|
|
131
|
+
if (options?.some((o) => o instanceof z.ZodBoolean))
|
|
132
|
+
return isOptional ? z.coerce.boolean().optional() : z.coerce.boolean();
|
|
133
|
+
}
|
|
134
|
+
return schema;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=Openapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Openapi.js","sourceRoot":"","sources":["../src/Openapi.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ export * as Errors from './Errors.js';
|
|
|
7
7
|
export * as Formatter from './Formatter.js';
|
|
8
8
|
export * as Help from './Help.js';
|
|
9
9
|
export * as Mcp from './Mcp.js';
|
|
10
|
+
export * as Fetch from './Fetch.js';
|
|
11
|
+
export * as Openapi from './Openapi.js';
|
|
10
12
|
export * as Parser from './Parser.js';
|
|
11
13
|
export type { Register } from './Register.js';
|
|
12
14
|
export * as Schema from './Schema.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACvD,YAAY,EAAE,OAAO,IAAI,iBAAiB,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACjG,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACvD,YAAY,EAAE,OAAO,IAAI,iBAAiB,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACjG,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,8 @@ export * as Errors from './Errors.js';
|
|
|
6
6
|
export * as Formatter from './Formatter.js';
|
|
7
7
|
export * as Help from './Help.js';
|
|
8
8
|
export * as Mcp from './Mcp.js';
|
|
9
|
+
export * as Fetch from './Fetch.js';
|
|
10
|
+
export * as Openapi from './Openapi.js';
|
|
9
11
|
export * as Parser from './Parser.js';
|
|
10
12
|
export * as Schema from './Schema.js';
|
|
11
13
|
export * as Skill from './Skill.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEvD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEvD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"devDependencies": {
|
|
3
3
|
"@changesets/cli": "latest",
|
|
4
|
+
"@hono/zod-openapi": "^1.2.2",
|
|
4
5
|
"@types/node": "latest",
|
|
5
6
|
"@vitest/coverage-v8": "^4.0.18",
|
|
7
|
+
"bun": "^1.3.10",
|
|
8
|
+
"hono": "^4.12.5",
|
|
6
9
|
"oxfmt": "^0.35.0",
|
|
7
10
|
"oxlint": "^1.50.0",
|
|
8
11
|
"tsx": "^4.21.0",
|
|
@@ -13,7 +16,7 @@
|
|
|
13
16
|
"[!start-pkg]": "",
|
|
14
17
|
"name": "incur",
|
|
15
18
|
"type": "module",
|
|
16
|
-
"version": "0.
|
|
19
|
+
"version": "0.2.0",
|
|
17
20
|
"license": "MIT",
|
|
18
21
|
"repository": {
|
|
19
22
|
"type": "git",
|
|
@@ -27,6 +30,7 @@
|
|
|
27
30
|
],
|
|
28
31
|
"dependencies": {
|
|
29
32
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
33
|
+
"@readme/openapi-parser": "^6.0.0",
|
|
30
34
|
"@toon-format/toon": "^2.1.0",
|
|
31
35
|
"yaml": "^2.8.2",
|
|
32
36
|
"zod": "^4.3.6"
|
package/src/Cli.test-d.ts
CHANGED
|
@@ -47,9 +47,9 @@ test('output constrains run return type', () => {
|
|
|
47
47
|
},
|
|
48
48
|
})
|
|
49
49
|
|
|
50
|
+
// @ts-expect-error — return doesn't match output schema
|
|
50
51
|
cli.command('greet', {
|
|
51
52
|
output: z.object({ message: z.string() }),
|
|
52
|
-
// @ts-expect-error — return doesn't match output schema
|
|
53
53
|
run() {
|
|
54
54
|
return { wrong: 123 }
|
|
55
55
|
},
|
|
@@ -64,9 +64,9 @@ test('alias keys are constrained to option keys', () => {
|
|
|
64
64
|
run: () => ({}),
|
|
65
65
|
})
|
|
66
66
|
|
|
67
|
+
// @ts-expect-error — 'foo' is not an option key
|
|
67
68
|
cli.command('list', {
|
|
68
69
|
options: z.object({ state: z.string() }),
|
|
69
|
-
// @ts-expect-error — 'foo' is not an option key
|
|
70
70
|
alias: { foo: 'f' },
|
|
71
71
|
run: () => ({}),
|
|
72
72
|
})
|