@codespar/cli 0.11.2 → 0.12.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/dist/api.js +53 -10
- package/dist/api.js.map +1 -1
- package/dist/commands/charge.js +5 -2
- package/dist/commands/charge.js.map +1 -1
- package/dist/commands/connect.js +16 -7
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/execute.js +11 -8
- package/dist/commands/execute.js.map +1 -1
- package/dist/commands/init.js +12 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/ledger.js +8 -2
- package/dist/commands/ledger.js.map +1 -1
- package/dist/commands/login.js +18 -3
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logs.js +4 -2
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/mandate.js +37 -9
- package/dist/commands/mandate.js.map +1 -1
- package/dist/commands/servers.js +7 -3
- package/dist/commands/servers.js.map +1 -1
- package/dist/commands/sessions.js +3 -1
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/wizard.js +12 -2
- package/dist/commands/wizard.js.map +1 -1
- package/dist/config.js +7 -3
- package/dist/config.js.map +1 -1
- package/dist/index.js +52 -9
- package/dist/index.js.map +1 -1
- package/dist/output.js +31 -3
- package/dist/output.js.map +1 -1
- package/dist/surface.js +43 -33
- package/dist/surface.js.map +1 -1
- package/package.json +2 -2
package/dist/api.js
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
import { CliError } from "./config.js";
|
|
2
2
|
import { VERSION } from "./version.js";
|
|
3
|
+
/**
|
|
4
|
+
* An answer from the API that was not 2xx.
|
|
5
|
+
*
|
|
6
|
+
* WHY IT IS A SUBCLASS OF CliError. It prints exactly like any other refusal:
|
|
7
|
+
* one red line on stderr, no stack. What changes is what a script gets. The
|
|
8
|
+
* eleven commands on this client used to report every 401, 404 and 500 as
|
|
9
|
+
* `kind: "cli"` — the kind that means "the CLI refused before reaching the
|
|
10
|
+
* API" — with the status readable only by parsing the message, while the
|
|
11
|
+
* generated resource commands, which go through the SDK's client, answered
|
|
12
|
+
* the same 401 with `kind: "api"`, `status` and `body`. One binary, one
|
|
13
|
+
* `--json`, two contracts, and `kind` separating nothing. Measured on
|
|
14
|
+
* 0.11.3: `wallet`, `servers list`, `sessions list` and `whoami` all said
|
|
15
|
+
* `cli` for a 401; `consumers list` said `api` with `status: 401`.
|
|
16
|
+
*/
|
|
17
|
+
export class HttpError extends CliError {
|
|
18
|
+
status;
|
|
19
|
+
code;
|
|
20
|
+
body;
|
|
21
|
+
constructor(message, opts) {
|
|
22
|
+
super(message);
|
|
23
|
+
this.name = "HttpError";
|
|
24
|
+
this.status = opts.status;
|
|
25
|
+
this.code = opts.code;
|
|
26
|
+
this.body = opts.body;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
3
29
|
/**
|
|
4
30
|
* Expand `{name}` segments with encoded values, refusing before the request
|
|
5
31
|
* when one is missing: an unexpanded `{id}` reaches the backend as a literal
|
|
@@ -117,24 +143,41 @@ export class ApiClient {
|
|
|
117
143
|
clearTimeout(timer);
|
|
118
144
|
}
|
|
119
145
|
if (!res.ok) {
|
|
120
|
-
|
|
146
|
+
// Read the body ONCE. The first version called `res.json()` and, in the
|
|
147
|
+
// catch, `res.text()` — which always throws after json() has consumed
|
|
148
|
+
// the stream, so a non-JSON error body arrived as an empty detail.
|
|
149
|
+
const raw = await res.text().catch(() => "");
|
|
150
|
+
let detail = raw;
|
|
151
|
+
let body = raw === "" ? undefined : raw;
|
|
152
|
+
let code;
|
|
121
153
|
try {
|
|
122
154
|
// The API returns either `{ message }` or the nested envelope
|
|
123
155
|
// `{ error: { code, message } }` (newer routes). Handle both so the
|
|
124
156
|
// human-readable message surfaces instead of "[object Object]".
|
|
125
|
-
const errBody =
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
errBody.
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
157
|
+
const errBody = JSON.parse(raw);
|
|
158
|
+
if (errBody && typeof errBody === "object") {
|
|
159
|
+
body = errBody;
|
|
160
|
+
const nested = typeof errBody.error === "object" && errBody.error ? errBody.error : null;
|
|
161
|
+
code =
|
|
162
|
+
errBody.code ??
|
|
163
|
+
nested?.code ??
|
|
164
|
+
(typeof errBody.error === "string" ? errBody.error : undefined);
|
|
165
|
+
detail =
|
|
166
|
+
errBody.message ??
|
|
167
|
+
nested?.message ??
|
|
168
|
+
(typeof errBody.error === "string" ? errBody.error : "") ??
|
|
169
|
+
"";
|
|
170
|
+
}
|
|
132
171
|
}
|
|
133
172
|
catch {
|
|
134
|
-
|
|
173
|
+
// Not JSON: the raw text is the detail, and the body as read.
|
|
135
174
|
}
|
|
136
175
|
const prefix = `${method} ${url.pathname} → ${res.status}`;
|
|
137
|
-
throw new
|
|
176
|
+
throw new HttpError(detail ? `${prefix}: ${detail}` : prefix, {
|
|
177
|
+
status: res.status,
|
|
178
|
+
code,
|
|
179
|
+
body,
|
|
180
|
+
});
|
|
138
181
|
}
|
|
139
182
|
if (res.status === 204)
|
|
140
183
|
return undefined;
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/charge.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CodeSpar } from "@codespar/sdk";
|
|
2
2
|
import { CliError } from "../config.js";
|
|
3
|
+
import { metaToolEnum } from "../surface.js";
|
|
3
4
|
import { info, json, success } from "../output.js";
|
|
4
5
|
import { resolveMetaInput } from "./meta-input.js";
|
|
5
6
|
const EXAMPLE = '{"amount":50,"currency":"BRL","method":"pix","description":"Test","buyer":{"name":"Ana"}}';
|
|
@@ -35,7 +36,7 @@ export async function chargeCommand(opts) {
|
|
|
35
36
|
await session.close();
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
|
-
function validateChargeArgs(args) {
|
|
39
|
+
export function validateChargeArgs(args) {
|
|
39
40
|
if (typeof args.amount !== "number") {
|
|
40
41
|
throw new CliError("charge.amount must be a number (major units).");
|
|
41
42
|
}
|
|
@@ -43,7 +44,9 @@ function validateChargeArgs(args) {
|
|
|
43
44
|
throw new CliError("charge.currency is required (e.g. BRL).");
|
|
44
45
|
}
|
|
45
46
|
if (!args.method) {
|
|
46
|
-
|
|
47
|
+
// A lista sai do enum publicado: escrita a mao, ela dizia tres de quatro
|
|
48
|
+
// e ensinava que `wallet` nao existia.
|
|
49
|
+
throw new CliError(`charge.method is required (${metaToolEnum("codespar_charge", "method").join(" | ")}).`);
|
|
47
50
|
}
|
|
48
51
|
if (!args.buyer || typeof args.buyer !== "object" || !args.buyer.name) {
|
|
49
52
|
throw new CliError("charge.buyer.name is required.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"charge.js","sourceRoot":"","sources":["../../src/commands/charge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,OAAO,GACX,2FAA2F,CAAC;AAY9F;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAA0B;IAC5D,MAAM,IAAI,GAAG,CAAC,MAAM,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAA0B,CAAC;IACxF,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC;IACvC,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACjG,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzD,IAAI,CAAC;QACH,MAAM,MAAM,GAAiB,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,UAAU,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClD,IAAI,CACF,WAAW,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,gBAAgB,MAAM,CAAC,MAAM,EAAE,CAC3E,CAAC;QACF,IAAI,MAAM,CAAC,UAAU;YAAE,IAAI,CAAC,eAAe,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,WAAW;YAAE,IAAI,CAAC,uBAAuB,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAC1F,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,cAAc,MAAM,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"charge.js","sourceRoot":"","sources":["../../src/commands/charge.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/connect.js
CHANGED
|
@@ -46,7 +46,10 @@ export async function startConnectCommand(client, server, opts) {
|
|
|
46
46
|
// Default to a localhost landing so the CLI works end-to-end without
|
|
47
47
|
// a hosted UI. Users with a real app should pass --redirect-uri.
|
|
48
48
|
const redirectUri = opts.redirectUri ?? "http://localhost:3000/connect/success";
|
|
49
|
-
|
|
49
|
+
// `/v1/connect/start` esta depreciada no documento servido, que a descreve
|
|
50
|
+
// como "DEPRECATED alias of `POST /v1/connections/start`": mesmo handler,
|
|
51
|
+
// mesma exigencia de grant, mesmo corpo de quatro campos.
|
|
52
|
+
const res = await client.post("/v1/connections/start", {
|
|
50
53
|
body: {
|
|
51
54
|
server_id: server,
|
|
52
55
|
user_id: userId,
|
|
@@ -61,18 +64,22 @@ export async function startConnectCommand(client, server, opts) {
|
|
|
61
64
|
info(`Connect ${server} for user ${userId}:`);
|
|
62
65
|
process.stdout.write(`\n ${res.authorize_url}\n\n`);
|
|
63
66
|
info(`Link expires ${new Date(res.expires_at).toLocaleString()}`);
|
|
64
|
-
//
|
|
65
|
-
//
|
|
66
|
-
//
|
|
67
|
-
//
|
|
68
|
-
|
|
67
|
+
// TRES ESTADOS, e nao dois. `--open` esta documentada como "Force-open the
|
|
68
|
+
// link", entao ela FORCA: antes o teste de TTY vinha depois e anulava a
|
|
69
|
+
// flag, e num stdout redirecionado `--open` nao abria nada e nao dizia
|
|
70
|
+
// nada. Sem flag nenhuma, o TTY decide, que e o que `gh auth login` faz.
|
|
71
|
+
// `--no-open` nunca abre, e nesse caso a dica de passar `--open` era
|
|
72
|
+
// conselho para quem acabou de recusar.
|
|
73
|
+
const forcado = opts.open === true;
|
|
74
|
+
const recusado = opts.open === false;
|
|
75
|
+
const shouldOpen = forcado || (!recusado && Boolean(process.stdout.isTTY));
|
|
69
76
|
if (shouldOpen) {
|
|
70
77
|
await openInBrowser(res.authorize_url).catch(() => {
|
|
71
78
|
// Silent fail — user can copy/paste from stdout.
|
|
72
79
|
});
|
|
73
80
|
info("Opened in your default browser. If nothing appeared, copy the URL above.");
|
|
74
81
|
}
|
|
75
|
-
else if (!
|
|
82
|
+
else if (!recusado) {
|
|
76
83
|
info("Tip: pass --open on a future run to launch the link automatically.");
|
|
77
84
|
}
|
|
78
85
|
}
|
|
@@ -101,6 +108,8 @@ export async function revokeConnectCommand(client, serverOrId, opts) {
|
|
|
101
108
|
}
|
|
102
109
|
await client.post("/v1/connections/{id}/revoke", { path: { id: connectionId } });
|
|
103
110
|
success(`Revoked connection ${connectionId}.`);
|
|
111
|
+
if (opts.json)
|
|
112
|
+
json({ revoked: true, connection_id: connectionId });
|
|
104
113
|
}
|
|
105
114
|
/**
|
|
106
115
|
* Opens a URL in the system's default browser. Uses `open` on macOS,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGpF,SAAS,WAAW,CAAC,GAAuB;IAC1C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,CAAE,mBAAyC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,QAAQ,CAChB,2BAA2B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAC3E,CAAC;IACJ,CAAC;IACD,OAAO,GAAuB,CAAC;AACjC,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,MAAiB,EAAE,IAAiB;IAC/E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE;QAC/C,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;KAChE,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,KAAK,CACH,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,EAC1D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM;QACR,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;KACrB,CAAC,CACH,CAAC;AACJ,CAAC;AAUD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAiB,EACjB,MAAc,EACd,IAAkB;IAElB,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,QAAQ,CAAC,iEAAiE,CAAC,CAAC;IAEnG,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC;IACvC,qEAAqE;IACrE,iEAAiE;IACjE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,uCAAuC,CAAC;IAEhF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/execute.js
CHANGED
|
@@ -17,17 +17,20 @@ export async function executeCommand(toolName, opts) {
|
|
|
17
17
|
const session = await cs.create(userId, { servers: [opts.server] });
|
|
18
18
|
try {
|
|
19
19
|
const result = await session.execute(toolName, input);
|
|
20
|
-
|
|
20
|
+
// O envelope sai ANTES da recusa, inclusive em `--json`: quem le por
|
|
21
|
+
// maquina precisa do corpo, e quem encadeia com `&&` precisa do codigo de
|
|
22
|
+
// saida. Antes o comando escrevia "Tool call failed" no stderr e RETORNAVA,
|
|
23
|
+
// entao a mesma resposta saia 0 aqui e 1 por `codespar tool <nome>`.
|
|
24
|
+
if (opts.json)
|
|
21
25
|
json(result);
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
if (result.success) {
|
|
25
|
-
success(`${toolName} succeeded in ${result.duration ?? "?"}ms`);
|
|
26
|
-
}
|
|
27
26
|
else {
|
|
28
|
-
|
|
27
|
+
if (result.success)
|
|
28
|
+
success(`${toolName} succeeded in ${result.duration ?? "?"}ms`);
|
|
29
|
+
process.stdout.write(JSON.stringify(result, null, 2) + "\n");
|
|
30
|
+
}
|
|
31
|
+
if (!result.success) {
|
|
32
|
+
throw new CliError(`${toolName} failed: ${result.error ?? "unknown error"}`);
|
|
29
33
|
}
|
|
30
|
-
process.stdout.write(JSON.stringify(result, null, 2) + "\n");
|
|
31
34
|
}
|
|
32
35
|
finally {
|
|
33
36
|
await session.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/commands/execute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAa7C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,IAAoB;IACzE,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,QAAQ,CAAC,iFAAiF,CAAC,CAAC;IACrH,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,QAAQ,CAAC,4CAA4C,CAAC,CAAC;IAEnF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC;IAEvC,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACjG,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEpE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,IAAI
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/commands/execute.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.js
CHANGED
|
@@ -4,7 +4,7 @@ import { mkdir, readdir, readFile, stat, writeFile } from "node:fs/promises";
|
|
|
4
4
|
import { dirname, join, resolve } from "node:path";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
6
|
import { CliError } from "../config.js";
|
|
7
|
-
import { c, info, success } from "../output.js";
|
|
7
|
+
import { c, info, json, success } from "../output.js";
|
|
8
8
|
const TEMPLATES = [
|
|
9
9
|
{
|
|
10
10
|
slug: "pix-agent",
|
|
@@ -56,6 +56,12 @@ export async function initCommand(name, opts) {
|
|
|
56
56
|
await copyTemplate(source, target, { name });
|
|
57
57
|
process.stdout.write("\n");
|
|
58
58
|
success(`Created ${name}/`);
|
|
59
|
+
// Sem isto, `codespar init x --json` escrevia um roteiro de proximos passos
|
|
60
|
+
// no stdout, que e justamente onde quem automatiza espera um documento.
|
|
61
|
+
if (opts.json) {
|
|
62
|
+
json({ created: name, template: template.slug, path: target });
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
59
65
|
process.stdout.write([
|
|
60
66
|
"",
|
|
61
67
|
"Next steps:",
|
|
@@ -76,6 +82,11 @@ async function pickTemplate(opts) {
|
|
|
76
82
|
}
|
|
77
83
|
if (opts.yes)
|
|
78
84
|
return TEMPLATES[0];
|
|
85
|
+
// Mesma armadilha do `login`: sem TTY o menu e impresso, a pergunta nunca
|
|
86
|
+
// volta e o processo sai 0 sem escrever um arquivo.
|
|
87
|
+
if (!stdin.isTTY) {
|
|
88
|
+
throw new CliError("No terminal to prompt on. Re-run with `--yes` for the default template, or pass `--template <slug>`.");
|
|
89
|
+
}
|
|
79
90
|
// Interactive pick
|
|
80
91
|
process.stdout.write(c.bold("Choose a template:\n\n"));
|
|
81
92
|
TEMPLATES.forEach((t, i) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/ledger.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CodeSpar } from "@codespar/sdk";
|
|
2
2
|
import { CliError } from "../config.js";
|
|
3
|
+
import { metaToolActions } from "../surface.js";
|
|
3
4
|
import { info, json, success } from "../output.js";
|
|
4
5
|
import { resolveMetaInput } from "./meta-input.js";
|
|
5
6
|
const EXAMPLE = '{"action":"entry","asset":"BRL","source":[{"account":"@external/BRL","amount":12500}],"destination":[{"account":"@wallet/user_1","amount":12500}],"description":"top-up"}';
|
|
@@ -41,8 +42,13 @@ export async function ledgerCommand(opts) {
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
export function validateLedgerArgs(args) {
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
// A lista sai de `@codespar/types`, nao de uma copia: `receipt` e
|
|
46
|
+
// `receipts` ja eram publicadas e a copia aqui as recusava antes de a
|
|
47
|
+
// requisicao sair, enquanto `codespar tool codespar_ledger --action
|
|
48
|
+
// receipt` respondia.
|
|
49
|
+
const published = metaToolActions("codespar_ledger");
|
|
50
|
+
if (!args.action || !published.includes(args.action)) {
|
|
51
|
+
throw new CliError(`ledger.action must be one of: ${published.join(", ")}.`);
|
|
46
52
|
}
|
|
47
53
|
if (args.action === "entry") {
|
|
48
54
|
if (!args.asset)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/commands/ledger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAYnD,MAAM,OAAO,GACX,2KAA2K,CAAC;AAE9K;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAA0B;IAC5D,MAAM,IAAI,GAAG,CAAC,MAAM,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAA0B,CAAC;IACxF,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC;IACvC,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC;QACtB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS,EAAE,IAAI,CAAC,OAAO;KACxB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzD,IAAI,CAAC;QACH,MAAM,MAAM,GAAiB,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,UAAU,IAAI,CAAC,MAAM,MAAM,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,UAAU;YAAE,IAAI,CAAC,YAAY,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7D,IAAI,MAAM,CAAC,KAAK;YAAE,IAAI,CAAC,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACjD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,
|
|
1
|
+
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/commands/ledger.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/login.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createInterface } from "node:readline/promises";
|
|
2
2
|
import { stdin as input, stdout as output } from "node:process";
|
|
3
|
-
import { saveConfig, CliError } from "../config.js";
|
|
3
|
+
import { loadConfig, saveConfig, CliError } from "../config.js";
|
|
4
4
|
import { ApiClient } from "../api.js";
|
|
5
|
-
import { success, info } from "../output.js";
|
|
5
|
+
import { success, info, json } from "../output.js";
|
|
6
6
|
/**
|
|
7
7
|
* Read a secret from the TTY without echoing it. The API key is a
|
|
8
8
|
* credential — echoing it leaves the key in terminal scrollback and any
|
|
@@ -43,6 +43,12 @@ async function promptSecret(promptText) {
|
|
|
43
43
|
export async function loginCommand(opts) {
|
|
44
44
|
let apiKey = opts.apiKey;
|
|
45
45
|
if (!apiKey) {
|
|
46
|
+
// Sem TTY a promessa do readline nunca resolve, o processo fica sem
|
|
47
|
+
// trabalho pendente e o Node sai 0: o passo de CI fica verde e o comando
|
|
48
|
+
// seguinte diz "Not logged in". Recusar aqui e a unica saida honesta.
|
|
49
|
+
if (!input.isTTY) {
|
|
50
|
+
throw new CliError("No terminal to prompt on. Pass `--api-key <key>`, or set CODESPAR_API_KEY and skip login.");
|
|
51
|
+
}
|
|
46
52
|
info("Get your API key at https://codespar.dev/dashboard/settings?tab=api-keys");
|
|
47
53
|
apiKey = (await promptSecret("API key: ")).trim();
|
|
48
54
|
}
|
|
@@ -51,7 +57,11 @@ export async function loginCommand(opts) {
|
|
|
51
57
|
if (!apiKey.startsWith("csk_")) {
|
|
52
58
|
throw new CliError("That doesn't look like a CodeSpar key — they start with `csk_live_` or `csk_test_`.");
|
|
53
59
|
}
|
|
54
|
-
|
|
60
|
+
// Pela mesma cadeia de todo mundo (flag > env > arquivo > padrao), que e o
|
|
61
|
+
// que `loadConfig()` ja faz. Lendo so a env, o `login` pulava o arquivo que
|
|
62
|
+
// ELE MESMO grava: depois de `login --base-url <staging>`, um `login` seco
|
|
63
|
+
// validava a chave contra producao.
|
|
64
|
+
const baseUrl = opts.baseUrl ?? (await loadConfig()).baseUrl ?? "https://api.codespar.dev";
|
|
55
65
|
// Validate before saving so we don't persist a typo.
|
|
56
66
|
const client = new ApiClient({ apiKey, baseUrl });
|
|
57
67
|
const me = await client.get("/v1/whoami");
|
|
@@ -60,6 +70,11 @@ export async function loginCommand(opts) {
|
|
|
60
70
|
if (me.organization?.name) {
|
|
61
71
|
info(`Organization: ${me.organization.name}`);
|
|
62
72
|
}
|
|
73
|
+
// Com `--json` o script recebe o mesmo documento que `whoami` devolve, mais
|
|
74
|
+
// a base URL que ficou gravada. Antes recebia zero byte no stdout e tinha de
|
|
75
|
+
// ler o `✓` do stderr para saber que deu certo.
|
|
76
|
+
if (opts.json)
|
|
77
|
+
json({ ...me, base_url: baseUrl });
|
|
63
78
|
}
|
|
64
79
|
export async function whoamiCommand(client, asJson) {
|
|
65
80
|
const me = await client.get("/v1/whoami");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAQnD;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CAAC,UAAkB;IAC5C,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,EAAyD,CAAC;QACxE,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,KAAK,CAAC,cAAc,GAAG,CAAC,CAAS,EAAQ,EAAE;YACzC,KAAK,CAAC,CAAC;YACP,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACzB,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;YACD,iEAAiE;QACnE,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;YAAS,CAAC;QACT,IAAI,MAAM,CAAC,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAkB;IACnD,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAEzB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,oEAAoE;QACpE,yEAAyE;QACzE,sEAAsE;QACtE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,QAAQ,CAChB,2FAA2F,CAC5F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACjF,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,QAAQ,CAChB,qFAAqF,CACtF,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,oCAAoC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC,OAAO,IAAI,0BAA0B,CAAC;IAE3F,qDAAqD;IACrD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAClD,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE1C,MAAM,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAEtC,OAAO,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,cAAc,EAAE,CAAC,CAAC;IAC5D,IAAI,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,4EAA4E;IAC5E,6EAA6E;IAC7E,gDAAgD;IAChD,IAAI,IAAI,CAAC,IAAI;QAAE,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAiB,EAAE,MAAe;IACpE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE1C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO;IACT,CAAC;IAED,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IAC5C,EAAE,CAAC;QACD,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,WAAW,CAAC;QACvC,CAAC,cAAc,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,QAAQ,CAAC;QAClD,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC;QAC9C,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC;KAChD,CAAC,CAAC;AACL,CAAC"}
|
package/dist/commands/logs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CliError } from "../config.js";
|
|
2
|
-
import { c, isoTime,
|
|
2
|
+
import { c, isoTime, jsonLine } from "../output.js";
|
|
3
3
|
/** The filters the API cannot apply. Kept client-side, and counted out loud. */
|
|
4
4
|
export function applyFilters(rows, opts) {
|
|
5
5
|
return rows.filter((row) => (!opts.server || row.server_id === opts.server) &&
|
|
@@ -71,7 +71,9 @@ function sleep(ms) {
|
|
|
71
71
|
}
|
|
72
72
|
function printRow(row, asJson) {
|
|
73
73
|
if (asJson) {
|
|
74
|
-
json(
|
|
74
|
+
// NDJSON: um objeto por linha. Com `json()` cada linha saia indentada em
|
|
75
|
+
// varias, e o fluxo inteiro deixava de ser parseavel de uma vez.
|
|
76
|
+
jsonLine(row);
|
|
75
77
|
return;
|
|
76
78
|
}
|
|
77
79
|
const time = isoTime(row.called_at);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/mandate.js
CHANGED
|
@@ -74,6 +74,28 @@ function parseSlots(specs) {
|
|
|
74
74
|
* Prints the mandate id you then hand to `codespar spend`, and (multi-slot) the
|
|
75
75
|
* `codespar wallet` view.
|
|
76
76
|
*/
|
|
77
|
+
/**
|
|
78
|
+
* Os trilhos que o corpo do consent submit aceita. A lista esta escrita aqui
|
|
79
|
+
* porque enum de spec nao sobrevive a compilacao, e `RAIL_CONFERE` abaixo a
|
|
80
|
+
* amarra ao tipo gerado nas DUAS direcoes: sobra ou falta um trilho e o
|
|
81
|
+
* pacote nao compila. `--rail` aceitava string livre e o `offSpec` nao
|
|
82
|
+
* conferia nada; o primeiro valor errado so aparecia como 400 do servidor.
|
|
83
|
+
*/
|
|
84
|
+
const RAILS_DO_SUBMIT = [
|
|
85
|
+
"pix-consent",
|
|
86
|
+
"card-token",
|
|
87
|
+
"ted-debit-auth",
|
|
88
|
+
"usd-ach-debit",
|
|
89
|
+
"usdc-onchain",
|
|
90
|
+
];
|
|
91
|
+
const RAIL_CONFERE = true;
|
|
92
|
+
void RAIL_CONFERE;
|
|
93
|
+
function railDoSubmit(valor) {
|
|
94
|
+
if (!RAILS_DO_SUBMIT.includes(valor)) {
|
|
95
|
+
throw new CliError(`--rail "${valor}" is outside what the consent submit accepts: ${RAILS_DO_SUBMIT.join(" | ")}.`);
|
|
96
|
+
}
|
|
97
|
+
return valor;
|
|
98
|
+
}
|
|
77
99
|
export async function mandateCreateCommand(opts) {
|
|
78
100
|
if (!opts.consumer)
|
|
79
101
|
throw new CliError("--consumer <id> is required.");
|
|
@@ -121,7 +143,9 @@ export async function mandateCreateCommand(opts) {
|
|
|
121
143
|
});
|
|
122
144
|
// 1. Mint the consent token (authed). slots ride along in the intent.
|
|
123
145
|
// The body is built inline so the document checks every field of it.
|
|
124
|
-
|
|
146
|
+
// `/v1/consents/init` e o alias depreciado de `POST /v1/consents` (ent#979):
|
|
147
|
+
// mesmo handler, mesmo escopo, mesmo pedido e mesmas respostas.
|
|
148
|
+
const init = await client.post("/v1/consents", {
|
|
125
149
|
body: {
|
|
126
150
|
agent_id: opts.agent,
|
|
127
151
|
intent: {
|
|
@@ -141,14 +165,18 @@ export async function mandateCreateCommand(opts) {
|
|
|
141
165
|
// For a multi-slot mandate the backend derives one funding source per slot
|
|
142
166
|
// from intent.slots; the rail/provider_token here only satisfy the submit
|
|
143
167
|
// schema (a valid rail value), so the --rail default is fine.
|
|
144
|
-
// `POST /v1/consents/{token}/submit`
|
|
145
|
-
//
|
|
146
|
-
//
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
168
|
+
// O documento servido passou a declarar `POST /v1/consents/{token}/submit`
|
|
169
|
+
// (refresh de 21/09), entao a chamada deixa de ser `offSpec`: caminho e
|
|
170
|
+
// corpo passam a ser conferidos pela tabela gerada, e a divida saiu de
|
|
171
|
+
// OFF_SPEC_PATHS.
|
|
172
|
+
const submit = (await client.post("/v1/consents/{token}/submit", {
|
|
173
|
+
path: { token: init.token },
|
|
174
|
+
body: {
|
|
175
|
+
consumer_id: opts.consumer,
|
|
176
|
+
rail: railDoSubmit(opts.rail),
|
|
177
|
+
provider_token: opts.providerToken ?? `${opts.rail}:${opts.consumer}`,
|
|
178
|
+
},
|
|
179
|
+
}));
|
|
152
180
|
if (opts.json) {
|
|
153
181
|
json(submit);
|
|
154
182
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mandate.js","sourceRoot":"","sources":["../../src/commands/mandate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mandate.js","sourceRoot":"","sources":["../../src/commands/mandate.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/servers.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { CliError } from "../config.js";
|
|
2
2
|
import { json, kv, table } from "../output.js";
|
|
3
3
|
export async function listServersCommand(client, opts) {
|
|
4
|
-
|
|
4
|
+
// `/v1/servers` e o alias depreciado de `GET /v1/providers` (ent#979).
|
|
5
|
+
const data = await client.get("/v1/providers", {
|
|
5
6
|
query: { category: opts.category, country: opts.country, q: opts.q },
|
|
6
7
|
});
|
|
7
8
|
if (opts.json) {
|
|
@@ -32,14 +33,17 @@ export async function listServersCommand(client, opts) {
|
|
|
32
33
|
export async function showServerCommand(client, id, opts) {
|
|
33
34
|
if (!id)
|
|
34
35
|
throw new CliError("Server id is required. Example: `codespar servers show stripe`");
|
|
35
|
-
const catalog = await client.get("/v1/
|
|
36
|
+
const catalog = await client.get("/v1/providers");
|
|
36
37
|
const server = catalog.servers.find((s) => s.id === id);
|
|
37
38
|
if (!server) {
|
|
38
39
|
throw new CliError(`No server with id "${id}" in the catalog. Run \`codespar servers list\` to see the ${catalog.total} available.`);
|
|
39
40
|
}
|
|
40
41
|
const [tools, auth] = await Promise.all([
|
|
41
42
|
client.get("/v1/servers/{id}/tools", { path: { id } }),
|
|
42
|
-
|
|
43
|
+
// O par vivo do auth-schema mora sob `providers` e chama o parametro de
|
|
44
|
+
// `slug`; o documento diz que os dois sao "the catalog primary key", entao
|
|
45
|
+
// o valor que a CLI ja tem serve.
|
|
46
|
+
client.get("/v1/providers/{slug}/auth-schema", { path: { slug: id } }),
|
|
43
47
|
]);
|
|
44
48
|
if (opts.json) {
|
|
45
49
|
json({ ...server, auth_schema: auth, tools: tools.tools });
|