@grimoirelabs/cli 0.11.0 → 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/commands/advisory-handlers.d.ts.map +1 -1
- package/dist/commands/advisory-handlers.js +77 -4
- package/dist/commands/advisory-handlers.js.map +1 -1
- package/dist/commands/setup.d.ts +29 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +507 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/venue-doctor.d.ts.map +1 -1
- package/dist/commands/venue-doctor.js +1 -0
- package/dist/commands/venue-doctor.js.map +1 -1
- package/dist/commands/venue.d.ts.map +1 -1
- package/dist/commands/venue.js +18 -2
- package/dist/commands/venue.js.map +1 -1
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/setup-env.d.ts +13 -0
- package/dist/lib/setup-env.d.ts.map +1 -0
- package/dist/lib/setup-env.js +127 -0
- package/dist/lib/setup-env.js.map +1 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advisory-handlers.d.ts","sourceRoot":"","sources":["../../src/commands/advisory-handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAwB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAc7F,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClD,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrD,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjD;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA2BtC;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe,
|
|
1
|
+
{"version":3,"file":"advisory-handlers.d.ts","sourceRoot":"","sources":["../../src/commands/advisory-handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAwB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAc7F,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClD,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrD,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjD;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA2BtC;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe,CAwHjF;AAED,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,eAAe,CAoBxF"}
|
|
@@ -96,9 +96,29 @@ export function createPiAdvisoryHandler(config) {
|
|
|
96
96
|
const verboseTrace = verboseEnabled
|
|
97
97
|
? createVerboseSessionTracer(input.stepId, traceLogger)
|
|
98
98
|
: undefined;
|
|
99
|
+
let activeTextBuffer = "";
|
|
100
|
+
const completedTextBuffers = [];
|
|
99
101
|
const unsubscribe = session.subscribe((event) => {
|
|
100
102
|
emitToolTrace(event, input);
|
|
101
103
|
verboseTrace?.handle(event);
|
|
104
|
+
if (event.type !== "message_update")
|
|
105
|
+
return;
|
|
106
|
+
const detail = event.assistantMessageEvent;
|
|
107
|
+
if (detail.type === "text_start") {
|
|
108
|
+
activeTextBuffer = "";
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (detail.type === "text_delta" && typeof detail.delta === "string") {
|
|
112
|
+
activeTextBuffer += detail.delta;
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (detail.type === "text_end") {
|
|
116
|
+
const trimmed = activeTextBuffer.trim();
|
|
117
|
+
if (trimmed.length > 0) {
|
|
118
|
+
completedTextBuffers.push(activeTextBuffer);
|
|
119
|
+
}
|
|
120
|
+
activeTextBuffer = "";
|
|
121
|
+
}
|
|
102
122
|
});
|
|
103
123
|
try {
|
|
104
124
|
const prompt = buildAdvisoryPrompt(input);
|
|
@@ -106,6 +126,12 @@ export function createPiAdvisoryHandler(config) {
|
|
|
106
126
|
const responseText = extractAssistantText(session.messages);
|
|
107
127
|
return parseJsonResponse(responseText);
|
|
108
128
|
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
const fallbackText = extractTextFromEventBuffers(completedTextBuffers, activeTextBuffer);
|
|
131
|
+
if (!fallbackText)
|
|
132
|
+
throw error;
|
|
133
|
+
return parseJsonResponse(fallbackText);
|
|
134
|
+
}
|
|
109
135
|
finally {
|
|
110
136
|
unsubscribe();
|
|
111
137
|
verboseTrace?.flushAll();
|
|
@@ -292,26 +318,73 @@ function buildOutputExample(schema) {
|
|
|
292
318
|
}
|
|
293
319
|
}
|
|
294
320
|
function extractAssistantText(messages) {
|
|
321
|
+
let lastAssistantError;
|
|
295
322
|
for (let i = messages.length - 1; i >= 0; i -= 1) {
|
|
296
323
|
const message = messages[i];
|
|
297
324
|
if (message?.role !== "assistant")
|
|
298
325
|
continue;
|
|
326
|
+
const messageRecord = message;
|
|
327
|
+
const assistantError = readStringCandidate(messageRecord.errorMessage) ?? readStringCandidate(messageRecord.error);
|
|
328
|
+
if (assistantError) {
|
|
329
|
+
lastAssistantError = assistantError;
|
|
330
|
+
}
|
|
299
331
|
const content = message.content ?? message.text;
|
|
300
332
|
if (typeof content === "string")
|
|
301
333
|
return content;
|
|
334
|
+
if (typeof content === "object" && content !== null) {
|
|
335
|
+
const obj = content;
|
|
336
|
+
const scalarCandidate = readStringCandidate(obj.text) ??
|
|
337
|
+
readStringCandidate(obj.output_text) ??
|
|
338
|
+
readStringCandidate(obj.content) ??
|
|
339
|
+
readStringCandidate(obj.value);
|
|
340
|
+
if (scalarCandidate)
|
|
341
|
+
return scalarCandidate;
|
|
342
|
+
}
|
|
302
343
|
if (Array.isArray(content)) {
|
|
303
344
|
const textBlocks = content
|
|
304
|
-
.
|
|
305
|
-
block !== null
|
|
306
|
-
|
|
307
|
-
|
|
345
|
+
.map((block) => {
|
|
346
|
+
if (typeof block !== "object" || block === null) {
|
|
347
|
+
return undefined;
|
|
348
|
+
}
|
|
349
|
+
const typedBlock = block;
|
|
350
|
+
if (typedBlock.type !== "text" && typedBlock.type !== "output_text") {
|
|
351
|
+
return undefined;
|
|
352
|
+
}
|
|
353
|
+
return (readStringCandidate(typedBlock.text) ??
|
|
354
|
+
readStringCandidate(typedBlock.output_text) ??
|
|
355
|
+
readStringCandidate(typedBlock.content) ??
|
|
356
|
+
readStringCandidate(typedBlock.value));
|
|
357
|
+
})
|
|
308
358
|
.filter((text) => typeof text === "string");
|
|
309
359
|
if (textBlocks.length > 0)
|
|
310
360
|
return textBlocks.join("");
|
|
311
361
|
}
|
|
312
362
|
}
|
|
363
|
+
if (lastAssistantError) {
|
|
364
|
+
throw new Error(`Advisory model returned no text response: ${lastAssistantError}`);
|
|
365
|
+
}
|
|
313
366
|
throw new Error("No assistant response found for advisory");
|
|
314
367
|
}
|
|
368
|
+
function readStringCandidate(value) {
|
|
369
|
+
if (typeof value !== "string")
|
|
370
|
+
return undefined;
|
|
371
|
+
const trimmed = value.trim();
|
|
372
|
+
return trimmed.length > 0 ? value : undefined;
|
|
373
|
+
}
|
|
374
|
+
function extractTextFromEventBuffers(completed, active) {
|
|
375
|
+
if (active.trim().length > 0) {
|
|
376
|
+
completed.push(active);
|
|
377
|
+
}
|
|
378
|
+
for (let i = completed.length - 1; i >= 0; i -= 1) {
|
|
379
|
+
const candidate = completed[i];
|
|
380
|
+
if (typeof candidate !== "string")
|
|
381
|
+
continue;
|
|
382
|
+
const trimmed = candidate.trim();
|
|
383
|
+
if (trimmed.length > 0)
|
|
384
|
+
return candidate;
|
|
385
|
+
}
|
|
386
|
+
return undefined;
|
|
387
|
+
}
|
|
315
388
|
function parseJsonResponse(text) {
|
|
316
389
|
const cleaned = stripCodeFences(text.trim());
|
|
317
390
|
const jsonText = extractJsonSnippet(cleaned);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advisory-handlers.js","sourceRoot":"","sources":["../../src/commands/advisory-handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"advisory-handlers.js","sourceRoot":"","sources":["../../src/commands/advisory-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Setup Command
|
|
3
|
+
* Onboards local execute mode (wallet + RPC + readiness checks)
|
|
4
|
+
*/
|
|
5
|
+
type WalletProvisionMode = "existing_keystore" | "import_env_key" | "generate";
|
|
6
|
+
interface SetupOptions {
|
|
7
|
+
chain?: string;
|
|
8
|
+
rpcUrl?: string;
|
|
9
|
+
adapter?: string;
|
|
10
|
+
keystore?: string;
|
|
11
|
+
passwordEnv?: string;
|
|
12
|
+
keyEnv?: string;
|
|
13
|
+
importKey?: boolean;
|
|
14
|
+
walletMode?: WalletProvisionMode;
|
|
15
|
+
noDoctor?: boolean;
|
|
16
|
+
doctor?: boolean;
|
|
17
|
+
savePasswordEnv?: boolean;
|
|
18
|
+
nonInteractive?: boolean;
|
|
19
|
+
json?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare function setupCommand(options: SetupOptions): Promise<void>;
|
|
22
|
+
export declare function resolveSetupRpcUrl(chainId: number, explicitRpcUrl: string | undefined, env: Record<string, string | undefined>): string | undefined;
|
|
23
|
+
export declare function selectWalletProvisionMode(input: {
|
|
24
|
+
keystoreExists: boolean;
|
|
25
|
+
importKey: boolean;
|
|
26
|
+
keyEnvValue?: string;
|
|
27
|
+
}): WalletProvisionMode;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAyCH,KAAK,mBAAmB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,UAAU,CAAC;AAE/E,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAgDD,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6KvE;AA8HD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,MAAM,GAAG,SAAS,CAKpB;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,mBAAmB,CAQtB"}
|
|
@@ -0,0 +1,507 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Setup Command
|
|
3
|
+
* Onboards local execute mode (wallet + RPC + readiness checks)
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync } from "node:fs";
|
|
6
|
+
import { chmod, mkdir, readFile, writeFile } from "node:fs/promises";
|
|
7
|
+
import { homedir } from "node:os";
|
|
8
|
+
import { dirname, join } from "node:path";
|
|
9
|
+
import * as readline from "node:readline";
|
|
10
|
+
import { Writable } from "node:stream";
|
|
11
|
+
import { compile, createKeystore, createProvider, createWalletFromConfig, formatWei, generatePrivateKey, getAddressFromConfig, getChainName, getNativeCurrencySymbol, preview, } from "@grimoirelabs/core";
|
|
12
|
+
import chalk from "chalk";
|
|
13
|
+
import ora from "ora";
|
|
14
|
+
import { runVenueDoctor } from "./venue-doctor.js";
|
|
15
|
+
const DEFAULT_KEYSTORE_PATH = join(homedir(), ".grimoire", "keystore.json");
|
|
16
|
+
const DEFAULT_SETUP_ENV_FILE = join(".grimoire", "setup.env");
|
|
17
|
+
const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
18
|
+
const DEFAULT_PASSWORD_ENV = "KEYSTORE_PASSWORD";
|
|
19
|
+
const SETUP_SMOKE_SPELL = `spell SetupSmoke {
|
|
20
|
+
params: {
|
|
21
|
+
amount: 21
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
on manual: {
|
|
25
|
+
doubled = params.amount * 2
|
|
26
|
+
emit setup_ok(input=params.amount, doubled=doubled)
|
|
27
|
+
}
|
|
28
|
+
}`;
|
|
29
|
+
export async function setupCommand(options) {
|
|
30
|
+
const interactive = options.nonInteractive !== true &&
|
|
31
|
+
options.json !== true &&
|
|
32
|
+
process.stdin.isTTY &&
|
|
33
|
+
process.stdout.isTTY;
|
|
34
|
+
const spinner = ora({
|
|
35
|
+
text: "Configuring Grimoire execute mode...",
|
|
36
|
+
isEnabled: interactive,
|
|
37
|
+
discardStdin: false,
|
|
38
|
+
});
|
|
39
|
+
if (!options.json) {
|
|
40
|
+
printSetupStartWarning(options.passwordEnv ?? DEFAULT_PASSWORD_ENV);
|
|
41
|
+
}
|
|
42
|
+
spinner.start();
|
|
43
|
+
let stage = "init";
|
|
44
|
+
try {
|
|
45
|
+
stage = "guidance";
|
|
46
|
+
const effectiveOptions = interactive ? await collectGuidedInputs(options, spinner) : options;
|
|
47
|
+
const passwordEnv = effectiveOptions.passwordEnv ?? DEFAULT_PASSWORD_ENV;
|
|
48
|
+
stage = "chain";
|
|
49
|
+
const chainId = parsePositiveInteger(effectiveOptions.chain, "--chain");
|
|
50
|
+
const chainName = getChainName(chainId);
|
|
51
|
+
stage = "state-dir";
|
|
52
|
+
await mkdir(".grimoire", { recursive: true });
|
|
53
|
+
stage = "smoke";
|
|
54
|
+
spinner.text = "Running local smoke preview...";
|
|
55
|
+
await runSmokePreview(chainId);
|
|
56
|
+
stage = "rpc";
|
|
57
|
+
spinner.text = "Checking RPC connectivity...";
|
|
58
|
+
const explicitRpc = effectiveOptions.rpcUrl?.trim();
|
|
59
|
+
const rpcUrl = resolveSetupRpcUrl(chainId, explicitRpc, process.env);
|
|
60
|
+
const provider = createProvider(chainId, rpcUrl);
|
|
61
|
+
const blockNumber = await provider.getBlockNumber();
|
|
62
|
+
const effectiveRpcUrl = provider.rpcUrl;
|
|
63
|
+
stage = "wallet";
|
|
64
|
+
spinner.text = "Preparing wallet credentials...";
|
|
65
|
+
const walletSetup = await setupWallet(effectiveOptions, spinner, interactive);
|
|
66
|
+
process.env[passwordEnv] = walletSetup.password;
|
|
67
|
+
let passwordEnvFile;
|
|
68
|
+
if (walletSetup.passwordSource === "prompt" && effectiveOptions.savePasswordEnv !== false) {
|
|
69
|
+
stage = "password-env";
|
|
70
|
+
spinner.text = "Saving password env helper...";
|
|
71
|
+
passwordEnvFile = await writeSetupPasswordEnvFile(passwordEnv, walletSetup.password);
|
|
72
|
+
}
|
|
73
|
+
const wallet = createWalletFromConfig(walletSetup.keyConfig, chainId, effectiveRpcUrl);
|
|
74
|
+
const balanceWei = await provider.getBalance(wallet.address);
|
|
75
|
+
const balance = formatWei(balanceWei);
|
|
76
|
+
const currency = getNativeCurrencySymbol(chainId);
|
|
77
|
+
let venueDoctorSummary;
|
|
78
|
+
if (shouldRunVenueDoctor(effectiveOptions)) {
|
|
79
|
+
stage = "venue-doctor";
|
|
80
|
+
spinner.text = "Running venue doctor checks...";
|
|
81
|
+
const adapter = effectiveOptions.adapter?.trim() || "uniswap";
|
|
82
|
+
const venueDoctorReport = await runVenueDoctor({ chainId, adapter, rpcUrl: effectiveRpcUrl }, {
|
|
83
|
+
env: {
|
|
84
|
+
...process.env,
|
|
85
|
+
GRIMOIRE_WALLET_ADDRESS: wallet.address,
|
|
86
|
+
WALLET_ADDRESS: wallet.address,
|
|
87
|
+
},
|
|
88
|
+
});
|
|
89
|
+
venueDoctorSummary = {
|
|
90
|
+
adapter,
|
|
91
|
+
ok: venueDoctorReport.ok,
|
|
92
|
+
failedChecks: venueDoctorReport.checks
|
|
93
|
+
.filter((check) => check.status === "fail")
|
|
94
|
+
.map((check) => check.name),
|
|
95
|
+
};
|
|
96
|
+
if (!venueDoctorReport.ok) {
|
|
97
|
+
throw new Error(`Venue doctor failed (${adapter}): ${venueDoctorSummary.failedChecks.join(", ")}`);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
spinner.succeed(chalk.green("Execute mode setup completed"));
|
|
101
|
+
const report = {
|
|
102
|
+
success: true,
|
|
103
|
+
mode: "execute",
|
|
104
|
+
chainId,
|
|
105
|
+
chainName,
|
|
106
|
+
rpcUrl: effectiveRpcUrl,
|
|
107
|
+
rpcBlockNumber: blockNumber.toString(),
|
|
108
|
+
wallet: {
|
|
109
|
+
address: wallet.address,
|
|
110
|
+
keystore: walletSetup.keystorePath,
|
|
111
|
+
source: walletSetup.mode,
|
|
112
|
+
balance,
|
|
113
|
+
balanceWei: balanceWei.toString(),
|
|
114
|
+
currency,
|
|
115
|
+
},
|
|
116
|
+
smoke: {
|
|
117
|
+
success: true,
|
|
118
|
+
spell: "SetupSmoke",
|
|
119
|
+
},
|
|
120
|
+
passwordEnv: {
|
|
121
|
+
name: passwordEnv,
|
|
122
|
+
file: passwordEnvFile,
|
|
123
|
+
},
|
|
124
|
+
venueDoctor: venueDoctorSummary,
|
|
125
|
+
};
|
|
126
|
+
if (options.json) {
|
|
127
|
+
console.log(JSON.stringify(report, null, 2));
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const adapter = effectiveOptions.adapter?.trim() || "uniswap";
|
|
131
|
+
console.log();
|
|
132
|
+
console.log(chalk.cyan("Setup Summary"));
|
|
133
|
+
console.log(` ${chalk.dim("Mode:")} execute`);
|
|
134
|
+
console.log(` ${chalk.dim("Chain:")} ${chainName} (${chainId})`);
|
|
135
|
+
console.log(` ${chalk.dim("RPC:")} ${effectiveRpcUrl}`);
|
|
136
|
+
console.log(` ${chalk.dim("Block:")} ${blockNumber.toString()}`);
|
|
137
|
+
console.log(` ${chalk.dim("Wallet:")} ${wallet.address}`);
|
|
138
|
+
console.log(` ${chalk.dim("Keystore:")} ${walletSetup.keystorePath}`);
|
|
139
|
+
console.log(` ${chalk.dim("Password env:")} ${passwordEnv}`);
|
|
140
|
+
if (passwordEnvFile) {
|
|
141
|
+
console.log(` ${chalk.dim("Password env file:")} ${passwordEnvFile}`);
|
|
142
|
+
}
|
|
143
|
+
console.log(` ${chalk.dim("Balance:")} ${balance} ${currency}`);
|
|
144
|
+
if (balanceWei === 0n) {
|
|
145
|
+
console.log(chalk.yellow(` Warning: wallet balance is zero ${currency}.`));
|
|
146
|
+
}
|
|
147
|
+
if (venueDoctorSummary) {
|
|
148
|
+
console.log(` ${chalk.dim("Venue doctor:")} ${venueDoctorSummary.ok ? "pass" : "fail"} (${adapter})`);
|
|
149
|
+
}
|
|
150
|
+
const castCommand = `grimoire cast spells/uniswap-swap-execute.spell --dry-run --chain ${chainId} --rpc-url "${effectiveRpcUrl}" --keystore "${walletSetup.keystorePath}" --password-env ${passwordEnv}`;
|
|
151
|
+
console.log();
|
|
152
|
+
console.log(chalk.cyan("Next steps"));
|
|
153
|
+
console.log(chalk.white(` 1. ${castCommand}`));
|
|
154
|
+
console.log(chalk.white(` 2. grimoire venue doctor --adapter ${adapter} --chain ${chainId} --rpc-url "${effectiveRpcUrl}" --json`));
|
|
155
|
+
printSetupPasswordGuidelines(passwordEnv, passwordEnvFile);
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
const message = error.message;
|
|
159
|
+
spinner.fail(chalk.red(`Setup failed: ${message}`));
|
|
160
|
+
if (options.json) {
|
|
161
|
+
const payload = {
|
|
162
|
+
success: false,
|
|
163
|
+
mode: "execute",
|
|
164
|
+
stage,
|
|
165
|
+
error: message,
|
|
166
|
+
};
|
|
167
|
+
console.log(JSON.stringify(payload, null, 2));
|
|
168
|
+
}
|
|
169
|
+
process.exit(1);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
function shouldRunVenueDoctor(options) {
|
|
173
|
+
if (options.noDoctor === true) {
|
|
174
|
+
return false;
|
|
175
|
+
}
|
|
176
|
+
if (options.doctor === false) {
|
|
177
|
+
return false;
|
|
178
|
+
}
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
async function collectGuidedInputs(options, spinner) {
|
|
182
|
+
const guided = { ...options };
|
|
183
|
+
spinner.stop();
|
|
184
|
+
console.log();
|
|
185
|
+
console.log(chalk.cyan("Guided Setup (Execute Mode)"));
|
|
186
|
+
console.log(chalk.dim("Press Enter to accept defaults."));
|
|
187
|
+
console.log(chalk.dim("Sensitive password prompts are hidden and never echoed."));
|
|
188
|
+
if (guided.savePasswordEnv !== false) {
|
|
189
|
+
console.log(chalk.dim(`If you enter a password, setup will save ${DEFAULT_SETUP_ENV_FILE} for command reuse.`));
|
|
190
|
+
}
|
|
191
|
+
spinner.start();
|
|
192
|
+
if (!guided.chain) {
|
|
193
|
+
guided.chain = await promptValueWithSpinner(spinner, "Chain ID", "1");
|
|
194
|
+
}
|
|
195
|
+
const chainId = parsePositiveInteger(guided.chain, "--chain");
|
|
196
|
+
if (!guided.rpcUrl) {
|
|
197
|
+
const detected = resolveSetupRpcUrl(chainId, undefined, process.env);
|
|
198
|
+
const rpcInput = await promptValueWithSpinner(spinner, "RPC URL (blank to use default public RPC)", detected);
|
|
199
|
+
guided.rpcUrl = rpcInput.trim().length > 0 ? rpcInput.trim() : undefined;
|
|
200
|
+
}
|
|
201
|
+
if (guided.noDoctor === undefined && guided.doctor === undefined) {
|
|
202
|
+
const runDoctor = await promptYesNoWithSpinner(spinner, "Run venue doctor checks?", true);
|
|
203
|
+
guided.noDoctor = !runDoctor;
|
|
204
|
+
}
|
|
205
|
+
if (shouldRunVenueDoctor(guided) && (!guided.adapter || guided.adapter.trim().length === 0)) {
|
|
206
|
+
guided.adapter = await promptValueWithSpinner(spinner, "Adapter for venue doctor", "uniswap");
|
|
207
|
+
}
|
|
208
|
+
if (!guided.keystore || guided.keystore.trim().length === 0) {
|
|
209
|
+
guided.keystore = await promptValueWithSpinner(spinner, "Keystore path", DEFAULT_KEYSTORE_PATH);
|
|
210
|
+
}
|
|
211
|
+
const keystorePath = guided.keystore ?? DEFAULT_KEYSTORE_PATH;
|
|
212
|
+
const keyEnvDefault = guided.keyEnv ?? "PRIVATE_KEY";
|
|
213
|
+
const hasDefaultEnvKey = Boolean(process.env[keyEnvDefault]);
|
|
214
|
+
const keystoreExists = existsSync(keystorePath);
|
|
215
|
+
if (guided.importKey === true) {
|
|
216
|
+
guided.walletMode = "import_env_key";
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
guided.walletMode = await promptWalletModeWithSpinner(spinner, keystoreExists, hasDefaultEnvKey);
|
|
220
|
+
}
|
|
221
|
+
guided.importKey = guided.walletMode === "import_env_key";
|
|
222
|
+
if (guided.walletMode === "import_env_key") {
|
|
223
|
+
guided.keyEnv = await promptValueWithSpinner(spinner, "Private key env var", keyEnvDefault);
|
|
224
|
+
const importEnvName = guided.keyEnv ?? keyEnvDefault;
|
|
225
|
+
if (!process.env[importEnvName] || process.env[importEnvName]?.trim().length === 0) {
|
|
226
|
+
throw new Error(`Environment variable ${importEnvName} is not set. Export it first or choose wallet generation.`);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
if (guided.walletMode !== "existing_keystore" && existsSync(keystorePath)) {
|
|
230
|
+
const overwrite = await promptYesNoWithSpinner(spinner, `Keystore exists at ${keystorePath}. Overwrite?`, false);
|
|
231
|
+
if (!overwrite) {
|
|
232
|
+
throw new Error("Setup canceled. Re-run with --keystore <new-path> or choose the existing keystore.");
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
return guided;
|
|
236
|
+
}
|
|
237
|
+
async function promptWalletModeWithSpinner(spinner, keystoreExists, hasDefaultEnvKey) {
|
|
238
|
+
if (keystoreExists) {
|
|
239
|
+
const useExisting = await promptYesNoWithSpinner(spinner, "Use existing keystore?", true);
|
|
240
|
+
if (useExisting) {
|
|
241
|
+
return "existing_keystore";
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
const importDefault = hasDefaultEnvKey;
|
|
245
|
+
const importFromEnv = await promptYesNoWithSpinner(spinner, "Import wallet from a private key environment variable?", importDefault);
|
|
246
|
+
if (importFromEnv) {
|
|
247
|
+
return "import_env_key";
|
|
248
|
+
}
|
|
249
|
+
return "generate";
|
|
250
|
+
}
|
|
251
|
+
export function resolveSetupRpcUrl(chainId, explicitRpcUrl, env) {
|
|
252
|
+
if (explicitRpcUrl && explicitRpcUrl.length > 0) {
|
|
253
|
+
return explicitRpcUrl;
|
|
254
|
+
}
|
|
255
|
+
return env[`RPC_URL_${chainId}`] ?? env.RPC_URL;
|
|
256
|
+
}
|
|
257
|
+
export function selectWalletProvisionMode(input) {
|
|
258
|
+
if (input.keystoreExists) {
|
|
259
|
+
return "existing_keystore";
|
|
260
|
+
}
|
|
261
|
+
if (input.importKey || (input.keyEnvValue !== undefined && input.keyEnvValue.length > 0)) {
|
|
262
|
+
return "import_env_key";
|
|
263
|
+
}
|
|
264
|
+
return "generate";
|
|
265
|
+
}
|
|
266
|
+
async function runSmokePreview(chainId) {
|
|
267
|
+
const compileResult = compile(SETUP_SMOKE_SPELL);
|
|
268
|
+
if (!compileResult.success || !compileResult.ir) {
|
|
269
|
+
const firstError = compileResult.errors[0];
|
|
270
|
+
throw new Error(firstError ? `${firstError.code}: ${firstError.message}` : "Smoke compile failed");
|
|
271
|
+
}
|
|
272
|
+
const result = await preview({
|
|
273
|
+
spell: compileResult.ir,
|
|
274
|
+
vault: ZERO_ADDRESS,
|
|
275
|
+
chain: chainId,
|
|
276
|
+
});
|
|
277
|
+
if (!result.success) {
|
|
278
|
+
throw new Error(result.error?.message ?? "Smoke preview failed");
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
async function setupWallet(options, spinner, interactive) {
|
|
282
|
+
const keystorePath = options.keystore ?? DEFAULT_KEYSTORE_PATH;
|
|
283
|
+
const keyEnvName = options.keyEnv ?? "PRIVATE_KEY";
|
|
284
|
+
const keyEnvValue = process.env[keyEnvName];
|
|
285
|
+
const keystoreExists = existsSync(keystorePath);
|
|
286
|
+
const mode = options.walletMode ??
|
|
287
|
+
selectWalletProvisionMode({
|
|
288
|
+
keystoreExists,
|
|
289
|
+
importKey: options.importKey === true,
|
|
290
|
+
keyEnvValue,
|
|
291
|
+
});
|
|
292
|
+
if (mode === "existing_keystore") {
|
|
293
|
+
const password = await resolveExistingKeystorePassword(options, interactive, spinner);
|
|
294
|
+
const keystoreJson = await readFile(keystorePath, "utf8");
|
|
295
|
+
const keyConfig = {
|
|
296
|
+
type: "keystore",
|
|
297
|
+
source: keystoreJson,
|
|
298
|
+
password: password.value,
|
|
299
|
+
};
|
|
300
|
+
return {
|
|
301
|
+
mode,
|
|
302
|
+
keyConfig,
|
|
303
|
+
keystorePath,
|
|
304
|
+
address: getAddressFromConfig(keyConfig),
|
|
305
|
+
password: password.value,
|
|
306
|
+
passwordSource: password.source,
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
if (mode === "import_env_key") {
|
|
310
|
+
if (!keyEnvValue) {
|
|
311
|
+
throw new Error(`Environment variable ${keyEnvName} is required for wallet import.`);
|
|
312
|
+
}
|
|
313
|
+
const normalizedKey = normalizePrivateKey(keyEnvValue);
|
|
314
|
+
const password = await resolveNewKeystorePassword(options, interactive, spinner);
|
|
315
|
+
const keystoreJson = await createKeystore(normalizedKey, password.value);
|
|
316
|
+
await mkdir(dirname(keystorePath), { recursive: true });
|
|
317
|
+
await writeFile(keystorePath, keystoreJson, "utf8");
|
|
318
|
+
const keyConfig = {
|
|
319
|
+
type: "keystore",
|
|
320
|
+
source: keystoreJson,
|
|
321
|
+
password: password.value,
|
|
322
|
+
};
|
|
323
|
+
return {
|
|
324
|
+
mode,
|
|
325
|
+
keyConfig,
|
|
326
|
+
keystorePath,
|
|
327
|
+
address: getAddressFromConfig(keyConfig),
|
|
328
|
+
password: password.value,
|
|
329
|
+
passwordSource: password.source,
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
const privateKey = generatePrivateKey();
|
|
333
|
+
const password = await resolveNewKeystorePassword(options, interactive, spinner);
|
|
334
|
+
const keystoreJson = await createKeystore(privateKey, password.value);
|
|
335
|
+
await mkdir(dirname(keystorePath), { recursive: true });
|
|
336
|
+
await writeFile(keystorePath, keystoreJson, "utf8");
|
|
337
|
+
const keyConfig = {
|
|
338
|
+
type: "keystore",
|
|
339
|
+
source: keystoreJson,
|
|
340
|
+
password: password.value,
|
|
341
|
+
};
|
|
342
|
+
return {
|
|
343
|
+
mode,
|
|
344
|
+
keyConfig,
|
|
345
|
+
keystorePath,
|
|
346
|
+
address: getAddressFromConfig(keyConfig),
|
|
347
|
+
password: password.value,
|
|
348
|
+
passwordSource: password.source,
|
|
349
|
+
};
|
|
350
|
+
}
|
|
351
|
+
function parsePositiveInteger(value, flag) {
|
|
352
|
+
const parsed = Number.parseInt(value ?? "1", 10);
|
|
353
|
+
if (!Number.isFinite(parsed) || parsed <= 0) {
|
|
354
|
+
throw new Error(`${flag} must be a positive integer`);
|
|
355
|
+
}
|
|
356
|
+
return parsed;
|
|
357
|
+
}
|
|
358
|
+
function normalizePrivateKey(value) {
|
|
359
|
+
const trimmed = value.trim();
|
|
360
|
+
if (trimmed.length === 0) {
|
|
361
|
+
throw new Error("Private key value is empty.");
|
|
362
|
+
}
|
|
363
|
+
return (trimmed.startsWith("0x") ? trimmed : `0x${trimmed}`);
|
|
364
|
+
}
|
|
365
|
+
async function resolveExistingKeystorePassword(options, interactive, spinner) {
|
|
366
|
+
const envName = options.passwordEnv ?? DEFAULT_PASSWORD_ENV;
|
|
367
|
+
const envValue = process.env[envName];
|
|
368
|
+
if (envValue) {
|
|
369
|
+
return { value: envValue, source: "env" };
|
|
370
|
+
}
|
|
371
|
+
if (!interactive) {
|
|
372
|
+
throw new Error(`No keystore password available. Set ${envName} or run interactively.`);
|
|
373
|
+
}
|
|
374
|
+
return {
|
|
375
|
+
value: await promptPasswordWithSpinner(spinner, "Keystore password: "),
|
|
376
|
+
source: "prompt",
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
async function resolveNewKeystorePassword(options, interactive, spinner) {
|
|
380
|
+
const envName = options.passwordEnv ?? DEFAULT_PASSWORD_ENV;
|
|
381
|
+
const envValue = process.env[envName];
|
|
382
|
+
if (envValue) {
|
|
383
|
+
return { value: envValue, source: "env" };
|
|
384
|
+
}
|
|
385
|
+
if (!interactive) {
|
|
386
|
+
throw new Error(`No keystore password available. Set ${envName} or run interactively.`);
|
|
387
|
+
}
|
|
388
|
+
const password = await promptPasswordWithSpinner(spinner, "New keystore password: ");
|
|
389
|
+
const confirm = await promptPasswordWithSpinner(spinner, "Confirm password: ");
|
|
390
|
+
if (password !== confirm) {
|
|
391
|
+
throw new Error("Passwords do not match.");
|
|
392
|
+
}
|
|
393
|
+
if (password.length === 0) {
|
|
394
|
+
throw new Error("Password must not be empty.");
|
|
395
|
+
}
|
|
396
|
+
return { value: password, source: "prompt" };
|
|
397
|
+
}
|
|
398
|
+
async function promptPasswordWithSpinner(spinner, message) {
|
|
399
|
+
spinner.stop();
|
|
400
|
+
try {
|
|
401
|
+
return await promptPassword(message);
|
|
402
|
+
}
|
|
403
|
+
finally {
|
|
404
|
+
spinner.start();
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
async function promptValueWithSpinner(spinner, label, defaultValue) {
|
|
408
|
+
const prompt = defaultValue ? `${label} [${defaultValue}]: ` : `${label}: `;
|
|
409
|
+
const value = (await promptLineWithSpinner(spinner, prompt)).trim();
|
|
410
|
+
if (value.length > 0) {
|
|
411
|
+
return value;
|
|
412
|
+
}
|
|
413
|
+
return defaultValue ?? "";
|
|
414
|
+
}
|
|
415
|
+
async function promptYesNoWithSpinner(spinner, label, defaultValue) {
|
|
416
|
+
const suffix = defaultValue ? "Y/n" : "y/N";
|
|
417
|
+
while (true) {
|
|
418
|
+
const answer = (await promptLineWithSpinner(spinner, `${label} [${suffix}]: `))
|
|
419
|
+
.trim()
|
|
420
|
+
.toLowerCase();
|
|
421
|
+
if (answer.length === 0) {
|
|
422
|
+
return defaultValue;
|
|
423
|
+
}
|
|
424
|
+
if (answer === "y" || answer === "yes") {
|
|
425
|
+
return true;
|
|
426
|
+
}
|
|
427
|
+
if (answer === "n" || answer === "no") {
|
|
428
|
+
return false;
|
|
429
|
+
}
|
|
430
|
+
spinner.stop();
|
|
431
|
+
console.log(chalk.yellow("Please answer yes or no."));
|
|
432
|
+
spinner.start();
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
async function promptLineWithSpinner(spinner, message) {
|
|
436
|
+
spinner.stop();
|
|
437
|
+
try {
|
|
438
|
+
return await promptLine(message);
|
|
439
|
+
}
|
|
440
|
+
finally {
|
|
441
|
+
spinner.start();
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
async function promptLine(message) {
|
|
445
|
+
return await new Promise((resolve) => {
|
|
446
|
+
const rl = readline.createInterface({
|
|
447
|
+
input: process.stdin,
|
|
448
|
+
output: process.stdout,
|
|
449
|
+
terminal: true,
|
|
450
|
+
});
|
|
451
|
+
rl.question(message, (answer) => {
|
|
452
|
+
rl.close();
|
|
453
|
+
resolve(answer);
|
|
454
|
+
});
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
async function promptPassword(message) {
|
|
458
|
+
return await new Promise((resolve) => {
|
|
459
|
+
process.stdout.write(message);
|
|
460
|
+
const silentOutput = new Writable({
|
|
461
|
+
write(_chunk, _encoding, callback) {
|
|
462
|
+
callback();
|
|
463
|
+
},
|
|
464
|
+
});
|
|
465
|
+
const rl = readline.createInterface({
|
|
466
|
+
input: process.stdin,
|
|
467
|
+
output: silentOutput,
|
|
468
|
+
terminal: true,
|
|
469
|
+
});
|
|
470
|
+
rl.question("", (answer) => {
|
|
471
|
+
rl.close();
|
|
472
|
+
process.stdout.write("\n");
|
|
473
|
+
resolve(answer);
|
|
474
|
+
});
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
function printSetupStartWarning(passwordEnv) {
|
|
478
|
+
console.log(chalk.yellow("Security warning: never paste passwords or private keys into agent chat."));
|
|
479
|
+
console.log(chalk.dim(`Use hidden prompts, or preload secrets in your shell/secret manager and pass only --password-env ${passwordEnv}.`));
|
|
480
|
+
console.log();
|
|
481
|
+
}
|
|
482
|
+
function printSetupPasswordGuidelines(passwordEnv, passwordEnvFile) {
|
|
483
|
+
console.log();
|
|
484
|
+
console.log(chalk.cyan("Password Safety"));
|
|
485
|
+
console.log(chalk.white(" 1. Do not type keystore passwords or private keys in Codex/Claude prompts."));
|
|
486
|
+
console.log(chalk.white(" 2. Prefer interactive hidden prompts: run commands without inline secret values."));
|
|
487
|
+
console.log(chalk.white(` 3. For non-interactive runs, preload ${passwordEnv} outside the agent and pass only the env var name.`));
|
|
488
|
+
if (passwordEnvFile) {
|
|
489
|
+
console.log(chalk.white(` 4. Grimoire auto-loads ${passwordEnvFile} on startup (existing env vars still take precedence).`));
|
|
490
|
+
console.log(chalk.white(" 5. The env file is plaintext. Keep it local and rotate/delete when not needed."));
|
|
491
|
+
return;
|
|
492
|
+
}
|
|
493
|
+
console.log(chalk.white(" 4. Avoid inline secrets like KEYSTORE_PASSWORD=... grimoire ... because command logs may persist."));
|
|
494
|
+
}
|
|
495
|
+
async function writeSetupPasswordEnvFile(envName, password) {
|
|
496
|
+
const escaped = password.replaceAll("'", "'\"'\"'");
|
|
497
|
+
const content = [
|
|
498
|
+
"# Generated by grimoire setup. Contains sensitive data.",
|
|
499
|
+
"# Keep this file local and do not commit it.",
|
|
500
|
+
`export ${envName}='${escaped}'`,
|
|
501
|
+
"",
|
|
502
|
+
].join("\n");
|
|
503
|
+
await writeFile(DEFAULT_SETUP_ENV_FILE, content, { encoding: "utf8", mode: 0o600 });
|
|
504
|
+
await chmod(DEFAULT_SETUP_ENV_FILE, 0o600);
|
|
505
|
+
return DEFAULT_SETUP_ENV_FILE;
|
|
506
|
+
}
|
|
507
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"venue-doctor.d.ts","sourceRoot":"","sources":["../../src/commands/venue-doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAS5B,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,KAAK,2BAA2B,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;AAElE,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,2BAA2B,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,2BAA2B,CAAC;CACrD;AAED,UAAU,gBAAgB;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,YAAY;IACpB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,gBAAgB,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC;IACtE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"venue-doctor.d.ts","sourceRoot":"","sources":["../../src/commands/venue-doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"venue-doctor.js","sourceRoot":"","sources":["../../src/commands/venue-doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,mBAAmB,GAEpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,QAAQ,IAAI,eAAe,EAC3B,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAyEhC,MAAM,kBAAkB,GAA6B;IACnD,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,SAAS,EAAE,CAAC,SAAS,CAAC;IACtB,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;IACrC,YAAY,EAAE,CAAC,YAAY,CAAC;IAC5B,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,YAAY,EAAE,CAAC,YAAY,CAAC;IAC5B,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,MAAM,EAAE,CAAC,aAAa,CAAC;IACvB,aAAa,EAAE,CAAC,aAAa,CAAC;IAC9B,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,CAAC,QAAQ,CAAC;CACnB,CAAC;AAEF,MAAM,SAAS,GAAG,QAAQ,CAAC;IACzB,0DAA0D;IAC1D,2EAA2E;CAC5E,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,QAAQ,CAAC;IAC1B,iIAAiI;CAClI,CAAC,CAAC;AAEH,MAAM,UAAU,oBAAoB,CAAC,IAAc;IACjD,MAAM,OAAO,GAAuB,EAAE,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG;YAAE,SAAS;QAEnB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACrC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;YAClF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;YAC1B,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC3D,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC3D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;YACvB,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAA2B,EAC3B,OAAwB,EAAE;IAE1B,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC;IACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,cAAc,CAAC;IACjE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAE7D,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,aAAa,GAAmB,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5D,MAAM,cAAc,GAClB,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxF,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,SAAS;YACjD,cAAc;YACd,WAAW;YACX,UAAU;SACX,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACxE,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACxC,OAAO,EAAE,cAAc;YACrB,CAAC,CAAC,uCAAuC;YACzC,CAAC,CAAC,4CAA4C;KACjD,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAC5E,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QAC/B,OAAO,EAAE,KAAK;YACZ,CAAC,CAAC,iDAAiD;YACnD,CAAC,CAAC,kEAAkE;KACvE,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,4DAA4D;SACtE,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACjC,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,uCAAuC,OAAO,CAAC,OAAO,GAAG;gBAC3D,CAAC,CAAC,+CAA+C,OAAO,CAAC,OAAO,GAAG;SACtE,CAAC,CAAC;IACL,CAAC;IAED,IAAI,UAA8B,CAAC;IACnC,IAAI,cAAkC,CAAC;IACvC,IAAI,sBAAgD,CAAC;IACrD,IAAI,qBAA8D,CAAC;IAEnE,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,kBAAkB;YACxB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,sDAAsD;SAChE,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACjE,sBAAsB,GAAG,QAAQ,CAAC;YAClC,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC;YACpD,cAAc,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;YACxC,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,YAAY,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,kBAAkB;gBACxB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,sBAAsB,cAAc,GAAG;aACjD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,GAAG,YAAY,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,kBAAkB;gBACxB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAG,KAAe,CAAC,OAAO;aAClC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;IACjF,IAAI,cAAc,EAAE,CAAC;QACnB,qBAAqB,GAAG,MAAM,4BAA4B,CAAC;YACzD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,sBAAsB;YAChC,GAAG;SACJ,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EACJ,qBAAqB,CAAC,MAAM,KAAK,OAAO;gBACtC,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,qBAAqB,CAAC,MAAM,KAAK,MAAM;oBACvC,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,MAAM;YACd,OAAO,EAAE,4BAA4B,CAAC,qBAAqB,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAE5D,OAAO;QACL,EAAE;QACF,SAAS,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,gBAAgB,EAAE,OAAO,CAAC,OAAO;QACjC,MAAM,EAAE,UAAU;QAClB,cAAc;QACd,MAAM;QACN,QAAQ,EAAE,aAAa;QACvB,qBAAqB;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAc,EACd,OAAwB,EAAE;IAE1B,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QACrB,qBAAqB,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAClD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ,MAAM,EACN,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EACvE,CAAC,CACF,CACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,CACT,6NAA6N,CAC9N,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAyB;IACvD,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,KAAK,MAAM;YACrB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;YACrB,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM;gBACvB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBACnB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,MAAM,KAAK,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;QAC/E,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,OAAO,CAAC,IAAI;YACZ,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACjC,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAC7E,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG;YACrE,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG;SACpE,CAAC,CAAC;QACH,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC/C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3C,IAAI,SAAS,CAAC,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC;QAC/E,IAAI,SAAS,CAAC,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,cAAc,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE,IAAI,SAAS,CAAC,eAAe;YAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;QAC9F,IAAI,SAAS,CAAC,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3E,IAAI,SAAS,CAAC,eAAe;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7F,IAAI,SAAS,CAAC,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC;QACvF,IAAI,SAAS,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,8BAA8B,SAAS,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,SAAS,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,yBAAyB,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,SAAS,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,wBAAwB,SAAS,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,SAAS,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,SAAS,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,YAAY,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,OAAiB,EAAE,IAAgB;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC3C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CACvE,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,GAAa,EAAU,EAAE,CAC1C,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,mBAAmB,GAAG,4CAAuD,CAAC;AAEpF,KAAK,UAAU,4BAA4B,CAAC,KAI3C;IACC,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO;YACL,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,6CAA6C,CAAC;SACzD,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5F,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,0DAA0D,KAAK,CAAC,OAAO,GAAG,CAAC;SACtF,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzD,MAAM,IAAI,GAAgC;QACxC,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,KAAK;QAClB,aAAa;QACb,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,eAAe,EAAE,qBAAqB,CAAC,MAAM,CAAC;QAC9C,aAAa,EAAE,mBAAmB;QAClC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,+FAA+F,CAChG,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC1C,IAAI,OAAO,MAAM,EAAE,YAAY,KAAK,UAAU,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAqE,CAAC;IAElG,IAAI,CAAC;QACH,MAAM,CAAC,0BAA0B,EAAE,sBAAsB,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1F,YAAY,CAAC;gBACX,OAAO,EAAE,MAAM,CAAC,eAAe;gBAC/B,GAAG,EAAE,SAAS;gBACd,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,CAAC,aAAa,CAAC;aACtB,CAAC;YACF,YAAY,CAAC;gBACX,OAAO,EAAE,MAAM,CAAC,eAAe;gBAC/B,GAAG,EAAE,SAAS;gBACd,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAC;aAC3C,CAAC;YACF,YAAY,CAAC;gBACX,OAAO,EAAE,mBAAmB;gBAC5B,GAAG,EAAE,UAAU;gBACf,YAAY,EAAE,UAAU;gBACxB,IAAI,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;aACrD,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,uBAAuB,GAAG,cAAc,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,mBAAmB,GAAG,cAAc,CAAC,sBAAsB,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAElD,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC,QAAQ,EAAE,CAAC;QAClE,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC1D,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7D,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7D,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAEzD,IAAI,uBAAuB,IAAI,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,mBAAmB,IAAI,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,QAAQ,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAmC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,4BAA4B,CAAC,SAAsC;IAC1E,MAAM,OAAO,GACX,SAAS,CAAC,MAAM,KAAK,OAAO;QAC1B,CAAC,CAAC,iCAAiC;QACnC,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM;YAC3B,CAAC,CAAC,kCAAkC;YACpC,CAAC,CAAC,iCAAiC,CAAC;IAC1C,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IAKzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,YAAY,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtC,YAAY,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtC,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACrC,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,KAAgC,CAAC;QAChD,OAAO;YACL,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;SAC7D,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAuC;IACtE,MAAM,SAAS,GAAG,GAAG,CAAC,uBAAuB,IAAI,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,aAAa,CAAC;IACzF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;IACjC,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,OAAO,OAAkB,CAAC;IAC5B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CACrB,KAA6B,EAC7B,aAAiC;IAEjC,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAEjC,MAAM,UAAU,GAAG,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAEvE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACvE,OAAO,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,OAAO,KAAK;SACT,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;SACzB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CACpB,OAAe,EACf,cAAkC,EAClC,GAAuC;IAEvC,IAAI,cAAc,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,cAAc,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;IAC9C,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"venue-doctor.js","sourceRoot":"","sources":["../../src/commands/venue-doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"venue.d.ts","sourceRoot":"","sources":["../../src/commands/venue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"venue.d.ts","sourceRoot":"","sources":["../../src/commands/venue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWhD,CAAC;AAWF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKxD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAe3D;AAqDD,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CtF"}
|
package/dist/commands/venue.js
CHANGED
|
@@ -19,6 +19,7 @@ export const VENUE_CLI_MAP = {
|
|
|
19
19
|
morpho: "morpho-blue",
|
|
20
20
|
hyperliquid: "hyperliquid",
|
|
21
21
|
pendle: "pendle",
|
|
22
|
+
polymarket: "polymarket",
|
|
22
23
|
};
|
|
23
24
|
const PRIMARY_ADAPTERS = [
|
|
24
25
|
{ name: "aave", aliases: ["aave-v3"] },
|
|
@@ -26,6 +27,7 @@ const PRIMARY_ADAPTERS = [
|
|
|
26
27
|
{ name: "morpho-blue", aliases: ["morpho"] },
|
|
27
28
|
{ name: "hyperliquid", aliases: [] },
|
|
28
29
|
{ name: "pendle", aliases: [] },
|
|
30
|
+
{ name: "polymarket", aliases: [] },
|
|
29
31
|
];
|
|
30
32
|
export function normalizeAdapter(adapter) {
|
|
31
33
|
return adapter
|
|
@@ -35,7 +37,17 @@ export function normalizeAdapter(adapter) {
|
|
|
35
37
|
}
|
|
36
38
|
export function resolveVenueCliPath(cliName) {
|
|
37
39
|
const venuesRoot = resolveVenuesRoot();
|
|
38
|
-
|
|
40
|
+
const srcPath = path.join(venuesRoot, "src", "cli", `${cliName}.ts`);
|
|
41
|
+
if (isBunRuntime() && existsSync(srcPath)) {
|
|
42
|
+
return srcPath;
|
|
43
|
+
}
|
|
44
|
+
const distPath = path.join(venuesRoot, "dist", "cli", `${cliName}.js`);
|
|
45
|
+
if (existsSync(distPath))
|
|
46
|
+
return distPath;
|
|
47
|
+
if (existsSync(srcPath)) {
|
|
48
|
+
return srcPath;
|
|
49
|
+
}
|
|
50
|
+
return distPath;
|
|
39
51
|
}
|
|
40
52
|
function resolveVenuesRoot() {
|
|
41
53
|
try {
|
|
@@ -133,6 +145,10 @@ function printUsage() {
|
|
|
133
145
|
return ` - ${adapter.name}`;
|
|
134
146
|
return ` - ${adapter.name} (aliases: ${adapter.aliases.join(", ")})`;
|
|
135
147
|
}).join("\n");
|
|
136
|
-
console.log(`\nUsage:\n grimoire venue <adapter> [args...]\n grimoire venue doctor [--chain <id>] [--adapter <name>] [--rpc-url <url>] [--json]\n\nAdapters:\n${adapterLines}\n\nExamples:\n grimoire venue morpho-blue vaults --chain 8453 --asset USDC --min-tvl 5000000 --format spell\n grimoire venue uniswap tokens --chain 1 --symbol USDC\n grimoire venue pendle chains\n grimoire venue aave markets --chain 1\n grimoire venue doctor --chain 1 --adapter uniswap\n`);
|
|
148
|
+
console.log(`\nUsage:\n grimoire venue <adapter> [args...]\n grimoire venue doctor [--chain <id>] [--adapter <name>] [--rpc-url <url>] [--json]\n\nAdapters:\n${adapterLines}\n\nExamples:\n grimoire venue morpho-blue vaults --chain 8453 --asset USDC --min-tvl 5000000 --format spell\n grimoire venue uniswap tokens --chain 1 --symbol USDC\n grimoire venue pendle chains\n grimoire venue polymarket markets --format json\n grimoire venue aave markets --chain 1\n grimoire venue doctor --chain 1 --adapter uniswap\n`);
|
|
149
|
+
}
|
|
150
|
+
function isBunRuntime() {
|
|
151
|
+
const versions = process.versions;
|
|
152
|
+
return typeof versions.bun === "string";
|
|
137
153
|
}
|
|
138
154
|
//# sourceMappingURL=venue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"venue.js","sourceRoot":"","sources":["../../src/commands/venue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,CAAC,MAAM,aAAa,GAA2B;IACnD,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,aAAa;IAC5B,MAAM,EAAE,aAAa;IACrB,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"venue.js","sourceRoot":"","sources":["../../src/commands/venue.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -12,11 +12,14 @@ import { historyCommand } from "./commands/history.js";
|
|
|
12
12
|
import { initCommand } from "./commands/init.js";
|
|
13
13
|
import { logCommand } from "./commands/log.js";
|
|
14
14
|
import { resumeCommand } from "./commands/resume.js";
|
|
15
|
+
import { setupCommand } from "./commands/setup.js";
|
|
15
16
|
import { simulateCommand } from "./commands/simulate.js";
|
|
16
17
|
import { validateCommand } from "./commands/validate.js";
|
|
17
18
|
import { venueCommand } from "./commands/venue.js";
|
|
18
19
|
import { venuesCommand } from "./commands/venues.js";
|
|
19
20
|
import { walletCommand } from "./commands/wallet.js";
|
|
21
|
+
import { loadSetupEnv } from "./lib/setup-env.js";
|
|
22
|
+
loadSetupEnv();
|
|
20
23
|
const program = new Command();
|
|
21
24
|
program.enablePositionalOptions();
|
|
22
25
|
program
|
|
@@ -30,6 +33,22 @@ program
|
|
|
30
33
|
.option("-f, --force", "Overwrite existing files")
|
|
31
34
|
.option("--runtime-quickstart", "Create an embedded runtime quickstart scaffold")
|
|
32
35
|
.action(initCommand);
|
|
36
|
+
// Setup command
|
|
37
|
+
program
|
|
38
|
+
.command("setup")
|
|
39
|
+
.description("Guided local execute setup (wallet, RPC, and readiness checks)")
|
|
40
|
+
.option("--chain <id>", "Chain ID for execute setup checks")
|
|
41
|
+
.option("--rpc-url <url>", "RPC URL (or set RPC_URL_<chainId> / RPC_URL)")
|
|
42
|
+
.option("--adapter <name>", "Adapter for venue doctor check")
|
|
43
|
+
.option("--keystore <path>", "Path to keystore file")
|
|
44
|
+
.option("--password-env <name>", "Environment variable for keystore password")
|
|
45
|
+
.option("--key-env <name>", "Environment variable containing private key", "PRIVATE_KEY")
|
|
46
|
+
.option("--import-key", "Import private key from --key-env if keystore is missing")
|
|
47
|
+
.option("--no-save-password-env", "Do not write .grimoire/setup.env after prompting password")
|
|
48
|
+
.option("--no-doctor", "Skip venue doctor readiness check")
|
|
49
|
+
.option("--non-interactive", "Disable interactive prompts")
|
|
50
|
+
.option("--json", "Output setup result as JSON")
|
|
51
|
+
.action(setupCommand);
|
|
33
52
|
// Compile command
|
|
34
53
|
program
|
|
35
54
|
.command("compile <spell>")
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type EnvRecord = Record<string, string | undefined>;
|
|
2
|
+
export interface LoadSetupEnvResult {
|
|
3
|
+
loadedPath?: string;
|
|
4
|
+
loadedKeys: string[];
|
|
5
|
+
}
|
|
6
|
+
export declare function loadSetupEnv(options?: {
|
|
7
|
+
cwd?: string;
|
|
8
|
+
env?: EnvRecord;
|
|
9
|
+
explicitPath?: string;
|
|
10
|
+
}): LoadSetupEnvResult;
|
|
11
|
+
export declare function parseSetupEnv(content: string): Record<string, string>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=setup-env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-env.d.ts","sourceRoot":"","sources":["../../src/lib/setup-env.ts"],"names":[],"mappings":"AAMA,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,kBAAkB,CAmCrB;AAwBD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBrE"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
+
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
3
|
+
const DEFAULT_SETUP_ENV_FILE = join(".grimoire", "setup.env");
|
|
4
|
+
const SETUP_ENV_FILE_ENV = "GRIMOIRE_SETUP_ENV_FILE";
|
|
5
|
+
export function loadSetupEnv(options) {
|
|
6
|
+
const env = options?.env ?? process.env;
|
|
7
|
+
const cwd = options?.cwd ?? process.cwd();
|
|
8
|
+
const envPath = options?.explicitPath ?? env[SETUP_ENV_FILE_ENV];
|
|
9
|
+
const setupEnvPath = resolveSetupEnvPath(cwd, envPath);
|
|
10
|
+
if (!setupEnvPath) {
|
|
11
|
+
return { loadedKeys: [] };
|
|
12
|
+
}
|
|
13
|
+
let content;
|
|
14
|
+
try {
|
|
15
|
+
content = readFileSync(setupEnvPath, "utf8");
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return { loadedKeys: [] };
|
|
19
|
+
}
|
|
20
|
+
let parsed;
|
|
21
|
+
try {
|
|
22
|
+
parsed = parseSetupEnv(content);
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return { loadedKeys: [] };
|
|
26
|
+
}
|
|
27
|
+
const loadedKeys = [];
|
|
28
|
+
for (const [name, value] of Object.entries(parsed)) {
|
|
29
|
+
if (env[name] === undefined) {
|
|
30
|
+
env[name] = value;
|
|
31
|
+
loadedKeys.push(name);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
loadedPath: loadedKeys.length > 0 ? setupEnvPath : undefined,
|
|
36
|
+
loadedKeys,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
function resolveSetupEnvPath(cwd, envPath) {
|
|
40
|
+
const trimmedEnvPath = envPath?.trim();
|
|
41
|
+
if (trimmedEnvPath && trimmedEnvPath.length > 0) {
|
|
42
|
+
const explicitPath = isAbsolute(trimmedEnvPath) ? trimmedEnvPath : resolve(cwd, trimmedEnvPath);
|
|
43
|
+
return existsSync(explicitPath) ? explicitPath : undefined;
|
|
44
|
+
}
|
|
45
|
+
let current = resolve(cwd);
|
|
46
|
+
while (true) {
|
|
47
|
+
const candidate = join(current, DEFAULT_SETUP_ENV_FILE);
|
|
48
|
+
if (existsSync(candidate)) {
|
|
49
|
+
return candidate;
|
|
50
|
+
}
|
|
51
|
+
const parent = dirname(current);
|
|
52
|
+
if (parent === current) {
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
current = parent;
|
|
56
|
+
}
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
export function parseSetupEnv(content) {
|
|
60
|
+
const parsed = {};
|
|
61
|
+
const lines = content.split(/\r?\n/u);
|
|
62
|
+
for (const line of lines) {
|
|
63
|
+
const trimmed = line.trim();
|
|
64
|
+
if (trimmed.length === 0 || trimmed.startsWith("#")) {
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
const match = trimmed.match(/^(?:export\s+)?([A-Za-z_][A-Za-z0-9_]*)\s*=\s*(.*)$/u);
|
|
68
|
+
if (!match) {
|
|
69
|
+
throw new Error(`Invalid setup env line: ${line}`);
|
|
70
|
+
}
|
|
71
|
+
const name = match[1];
|
|
72
|
+
const rawValue = match[2] ?? "";
|
|
73
|
+
parsed[name] = decodeEnvValue(rawValue);
|
|
74
|
+
}
|
|
75
|
+
return parsed;
|
|
76
|
+
}
|
|
77
|
+
function decodeEnvValue(rawValue) {
|
|
78
|
+
const value = rawValue.trim();
|
|
79
|
+
if (value.length === 0) {
|
|
80
|
+
return "";
|
|
81
|
+
}
|
|
82
|
+
if (value.startsWith("'") && value.endsWith("'")) {
|
|
83
|
+
return value.slice(1, -1).replaceAll("'\"'\"'", "'");
|
|
84
|
+
}
|
|
85
|
+
if (value.startsWith('"') && value.endsWith('"')) {
|
|
86
|
+
return decodeDoubleQuoted(value.slice(1, -1));
|
|
87
|
+
}
|
|
88
|
+
return value;
|
|
89
|
+
}
|
|
90
|
+
function decodeDoubleQuoted(input) {
|
|
91
|
+
let output = "";
|
|
92
|
+
for (let index = 0; index < input.length; index += 1) {
|
|
93
|
+
const char = input[index];
|
|
94
|
+
if (char !== "\\") {
|
|
95
|
+
output += char;
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
index += 1;
|
|
99
|
+
if (index >= input.length) {
|
|
100
|
+
output += "\\";
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
const escaped = input[index];
|
|
104
|
+
switch (escaped) {
|
|
105
|
+
case "n":
|
|
106
|
+
output += "\n";
|
|
107
|
+
break;
|
|
108
|
+
case "r":
|
|
109
|
+
output += "\r";
|
|
110
|
+
break;
|
|
111
|
+
case "t":
|
|
112
|
+
output += "\t";
|
|
113
|
+
break;
|
|
114
|
+
case "\\":
|
|
115
|
+
case '"':
|
|
116
|
+
case "$":
|
|
117
|
+
case "`":
|
|
118
|
+
output += escaped;
|
|
119
|
+
break;
|
|
120
|
+
default:
|
|
121
|
+
output += escaped;
|
|
122
|
+
break;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return output;
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=setup-env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-env.js","sourceRoot":"","sources":["../../src/lib/setup-env.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grimoirelabs/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "CLI for Grimoire spell execution",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@grimoirelabs/core": "0.13.0",
|
|
23
|
-
"@grimoirelabs/venues": "0.
|
|
23
|
+
"@grimoirelabs/venues": "0.8.0",
|
|
24
24
|
"@mariozechner/pi-coding-agent": "0.51.2",
|
|
25
25
|
"chalk": "^5.3.0",
|
|
26
26
|
"commander": "^12.1.0",
|