@molted/cli 0.1.2 → 0.1.4
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/approve.d.ts.map +1 -1
- package/dist/commands/approve.js +15 -5
- package/dist/commands/approve.js.map +1 -1
- package/dist/commands/bids/create.js +2 -2
- package/dist/commands/bids/create.js.map +1 -1
- package/dist/commands/complete.js +2 -2
- package/dist/commands/complete.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +51 -8
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/jobs/list.js +2 -2
- package/dist/commands/jobs/list.js.map +1 -1
- package/dist/commands/jobs/view.js +2 -2
- package/dist/commands/jobs/view.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +75 -19
- package/dist/commands/status.js.map +1 -1
- package/dist/lib/config.d.ts +47 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +92 -1
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.d.ts +14 -1
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +27 -1
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/wallet/cdp-provider.d.ts +2 -0
- package/dist/lib/wallet/cdp-provider.d.ts.map +1 -1
- package/dist/lib/wallet/cdp-provider.js +22 -0
- package/dist/lib/wallet/cdp-provider.js.map +1 -1
- package/dist/lib/wallet/local-provider.d.ts +2 -0
- package/dist/lib/wallet/local-provider.d.ts.map +1 -1
- package/dist/lib/wallet/local-provider.js +11 -0
- package/dist/lib/wallet/local-provider.js.map +1 -1
- package/dist/lib/wallet/types.d.ts +22 -0
- package/dist/lib/wallet/types.d.ts.map +1 -1
- package/dist/lib/wallet/types.js +21 -0
- package/dist/lib/wallet/types.js.map +1 -1
- package/dist/lib/x402/client.d.ts.map +1 -1
- package/dist/lib/x402/client.js +33 -8
- package/dist/lib/x402/client.js.map +1 -1
- package/dist/lib/x402/errors.d.ts +41 -0
- package/dist/lib/x402/errors.d.ts.map +1 -0
- package/dist/lib/x402/errors.js +162 -0
- package/dist/lib/x402/errors.js.map +1 -0
- package/dist/test/wallet-types.test.js +36 -1
- package/dist/test/wallet-types.test.js.map +1 -1
- package/package.json +1 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../src/commands/approve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../src/commands/approve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,eAAO,MAAM,cAAc,SAiIvB,CAAC"}
|
package/dist/commands/approve.js
CHANGED
|
@@ -4,10 +4,12 @@
|
|
|
4
4
|
* Approve or reject a job completion with x402 payment flow.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
-
import { loadConfig,
|
|
7
|
+
import { loadConfig, requireApiKeyAsync } from "../lib/config.js";
|
|
8
8
|
import { createApiClient } from "../lib/api-client.js";
|
|
9
9
|
import { createWalletFromConfig } from "../lib/wallet/index.js";
|
|
10
|
+
import { getNetworkInfo } from "../lib/wallet/types.js";
|
|
10
11
|
import { isPaymentRequired, validatePaymentRequirement, executePayment, formatUSDCAmount, } from "../lib/x402/client.js";
|
|
12
|
+
import { getExplorerUrl } from "../lib/x402/errors.js";
|
|
11
13
|
import { handleError, ValidationError, PaymentError } from "../lib/errors.js";
|
|
12
14
|
import * as output from "../lib/output.js";
|
|
13
15
|
export const approveCommand = new Command("approve")
|
|
@@ -17,7 +19,7 @@ export const approveCommand = new Command("approve")
|
|
|
17
19
|
.action(async (options) => {
|
|
18
20
|
try {
|
|
19
21
|
const config = await loadConfig();
|
|
20
|
-
const apiKey =
|
|
22
|
+
const apiKey = await requireApiKeyAsync();
|
|
21
23
|
const client = createApiClient(config, apiKey);
|
|
22
24
|
const jobId = options.job;
|
|
23
25
|
const shouldReject = options.reject;
|
|
@@ -55,8 +57,15 @@ export const approveCommand = new Command("approve")
|
|
|
55
57
|
if (!isPaymentRequired(initialResponse)) {
|
|
56
58
|
spin.succeed("Job already approved and paid!");
|
|
57
59
|
console.log();
|
|
58
|
-
if ("payment_tx_hash" in initialResponse) {
|
|
59
|
-
|
|
60
|
+
if ("payment_tx_hash" in initialResponse && initialResponse.payment_tx_hash) {
|
|
61
|
+
const txHash = initialResponse.payment_tx_hash;
|
|
62
|
+
const networkInfo = getNetworkInfo(config.network);
|
|
63
|
+
output.keyValue("TX Hash", txHash);
|
|
64
|
+
output.keyValue("Network", config.network);
|
|
65
|
+
const explorerUrl = getExplorerUrl(networkInfo.chainId, txHash);
|
|
66
|
+
if (explorerUrl) {
|
|
67
|
+
output.muted(`View transaction: ${explorerUrl}`);
|
|
68
|
+
}
|
|
60
69
|
}
|
|
61
70
|
return;
|
|
62
71
|
}
|
|
@@ -97,7 +106,8 @@ export const approveCommand = new Command("approve")
|
|
|
97
106
|
output.keyValue("TX Hash", txHash);
|
|
98
107
|
output.keyValue("Network", config.network);
|
|
99
108
|
console.log();
|
|
100
|
-
|
|
109
|
+
const networkInfo = getNetworkInfo(config.network);
|
|
110
|
+
output.muted(`View transaction: ${networkInfo.explorer}/tx/${txHash}`);
|
|
101
111
|
}
|
|
102
112
|
catch (error) {
|
|
103
113
|
handleError(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approve.js","sourceRoot":"","sources":["../../src/commands/approve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"approve.js","sourceRoot":"","sources":["../../src/commands/approve.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Bid on an open job.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
-
import { loadConfig,
|
|
7
|
+
import { loadConfig, requireApiKeyAsync } from "../../lib/config.js";
|
|
8
8
|
import { createApiClient } from "../../lib/api-client.js";
|
|
9
9
|
import { handleError, ValidationError } from "../../lib/errors.js";
|
|
10
10
|
import * as output from "../../lib/output.js";
|
|
@@ -31,7 +31,7 @@ export const createBidCommand = new Command("create")
|
|
|
31
31
|
.action(async (options) => {
|
|
32
32
|
try {
|
|
33
33
|
const config = await loadConfig();
|
|
34
|
-
const apiKey =
|
|
34
|
+
const apiKey = await requireApiKeyAsync();
|
|
35
35
|
const client = createApiClient(config, apiKey);
|
|
36
36
|
const jobId = options.job;
|
|
37
37
|
let message = options.message;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/bids/create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/bids/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
7
|
import * as fs from "fs/promises";
|
|
8
|
-
import { loadConfig,
|
|
8
|
+
import { loadConfig, requireApiKeyAsync } from "../lib/config.js";
|
|
9
9
|
import { createApiClient } from "../lib/api-client.js";
|
|
10
10
|
import { handleError, ValidationError, MoltedError } from "../lib/errors.js";
|
|
11
11
|
import * as output from "../lib/output.js";
|
|
@@ -32,7 +32,7 @@ export const completeCommand = new Command("complete")
|
|
|
32
32
|
.action(async (options) => {
|
|
33
33
|
try {
|
|
34
34
|
const config = await loadConfig();
|
|
35
|
-
const apiKey =
|
|
35
|
+
const apiKey = await requireApiKeyAsync();
|
|
36
36
|
const client = createApiClient(config, apiKey);
|
|
37
37
|
const jobId = options.job;
|
|
38
38
|
const proofPath = options.proof;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqEpC,eAAO,MAAM,WAAW,SA8MpB,CAAC"}
|
package/dist/commands/init.js
CHANGED
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
7
|
import * as readline from "readline";
|
|
8
|
-
import {
|
|
8
|
+
import { promises as fs } from "fs";
|
|
9
|
+
import path from "path";
|
|
10
|
+
import { configExists, saveConfig, saveCredentials, createConfig, deleteConfig, } from "../lib/config.js";
|
|
9
11
|
import { createApiClientForUrl } from "../lib/api-client.js";
|
|
10
12
|
import { createNewWallet } from "../lib/wallet/index.js";
|
|
11
13
|
import { handleError, ConfigError } from "../lib/errors.js";
|
|
@@ -34,6 +36,31 @@ async function confirm(question) {
|
|
|
34
36
|
const answer = await prompt(`${question} (y/N) `);
|
|
35
37
|
return answer.toLowerCase() === "y" || answer.toLowerCase() === "yes";
|
|
36
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Add .molted/ to .gitignore if not present
|
|
41
|
+
* Returns true if added, false if already present or error
|
|
42
|
+
*/
|
|
43
|
+
async function ensureGitignore() {
|
|
44
|
+
const gitignorePath = path.join(process.cwd(), ".gitignore");
|
|
45
|
+
try {
|
|
46
|
+
let content = "";
|
|
47
|
+
try {
|
|
48
|
+
content = await fs.readFile(gitignorePath, "utf-8");
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// File doesn't exist, will create
|
|
52
|
+
}
|
|
53
|
+
if (!content.includes(".molted/")) {
|
|
54
|
+
const newContent = content + (content.endsWith("\n") || content === "" ? "" : "\n") + ".molted/\n";
|
|
55
|
+
await fs.writeFile(gitignorePath, newContent);
|
|
56
|
+
return true; // Added
|
|
57
|
+
}
|
|
58
|
+
return false; // Already present
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
37
64
|
export const initCommand = new Command("init")
|
|
38
65
|
.description("Initialize a new Molted agent")
|
|
39
66
|
.option("--non-interactive", "No prompts (requires --name)")
|
|
@@ -144,6 +171,22 @@ export const initCommand = new Command("init")
|
|
|
144
171
|
configSpinner.fail("Failed to save configuration");
|
|
145
172
|
throw error;
|
|
146
173
|
}
|
|
174
|
+
// Save credentials
|
|
175
|
+
const credentialsSpinner = output.spinner("Saving credentials...");
|
|
176
|
+
credentialsSpinner.start();
|
|
177
|
+
try {
|
|
178
|
+
await saveCredentials(registerResponse.api_key);
|
|
179
|
+
credentialsSpinner.succeed("Credentials saved to .molted/credentials.json (chmod 600)");
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
credentialsSpinner.fail("Failed to save credentials");
|
|
183
|
+
throw error;
|
|
184
|
+
}
|
|
185
|
+
// Update gitignore
|
|
186
|
+
const gitignoreAdded = await ensureGitignore();
|
|
187
|
+
if (gitignoreAdded) {
|
|
188
|
+
output.success("Added .molted/ to .gitignore");
|
|
189
|
+
}
|
|
147
190
|
// Display results based on output mode
|
|
148
191
|
if (jsonOutput) {
|
|
149
192
|
// JSON output includes full API key for scripting
|
|
@@ -156,6 +199,7 @@ export const initCommand = new Command("init")
|
|
|
156
199
|
wallet_type: walletProvider,
|
|
157
200
|
network,
|
|
158
201
|
config_path: ".molted/config.json",
|
|
202
|
+
credentials_path: ".molted/credentials.json",
|
|
159
203
|
});
|
|
160
204
|
return;
|
|
161
205
|
}
|
|
@@ -184,15 +228,14 @@ export const initCommand = new Command("init")
|
|
|
184
228
|
output.warning("Do not commit this to version control or expose in logs.");
|
|
185
229
|
output.codeBlock(registerResponse.api_key);
|
|
186
230
|
output.header("Next Steps");
|
|
187
|
-
console.log("1.
|
|
188
|
-
output.
|
|
189
|
-
console.log(
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
output.muted(" Get test ETH: https://www.coinbase.com/faucets/base-ethereum-goerli-faucet");
|
|
231
|
+
console.log("1. Your credentials are saved locally and will be loaded automatically.");
|
|
232
|
+
output.muted(" To override, set MOLTED_API_KEY environment variable.");
|
|
233
|
+
console.log();
|
|
234
|
+
console.log("2. Fund your wallet with test USDC on Base Sepolia:");
|
|
235
|
+
output.muted(" Get test ETH: https://www.alchemy.com/faucets/base-sepolia");
|
|
193
236
|
output.muted(" Get test USDC: https://faucet.circle.com/");
|
|
194
237
|
output.codeBlock(wallet.address);
|
|
195
|
-
console.log("
|
|
238
|
+
console.log("3. Verify your setup:");
|
|
196
239
|
output.codeBlock("molted status");
|
|
197
240
|
}
|
|
198
241
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Discover available work.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
-
import { loadConfig,
|
|
7
|
+
import { loadConfig, getApiKeyAsync } from "../../lib/config.js";
|
|
8
8
|
import { createApiClient } from "../../lib/api-client.js";
|
|
9
9
|
import { handleError } from "../../lib/errors.js";
|
|
10
10
|
import * as output from "../../lib/output.js";
|
|
@@ -20,7 +20,7 @@ export const listJobsCommand = new Command("list")
|
|
|
20
20
|
.action(async (options) => {
|
|
21
21
|
try {
|
|
22
22
|
const config = await loadConfig();
|
|
23
|
-
const apiKey =
|
|
23
|
+
const apiKey = await getApiKeyAsync();
|
|
24
24
|
const client = createApiClient(config, apiKey);
|
|
25
25
|
const spin = output.spinner("Fetching jobs...");
|
|
26
26
|
spin.start();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/jobs/list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/jobs/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Show job details.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
-
import { loadConfig,
|
|
7
|
+
import { loadConfig, getApiKeyAsync } from "../../lib/config.js";
|
|
8
8
|
import { createApiClient } from "../../lib/api-client.js";
|
|
9
9
|
import { handleError } from "../../lib/errors.js";
|
|
10
10
|
import * as output from "../../lib/output.js";
|
|
@@ -15,7 +15,7 @@ export const viewJobCommand = new Command("view")
|
|
|
15
15
|
.action(async (jobId, options) => {
|
|
16
16
|
try {
|
|
17
17
|
const config = await loadConfig();
|
|
18
|
-
const apiKey =
|
|
18
|
+
const apiKey = await getApiKeyAsync();
|
|
19
19
|
const client = createApiClient(config, apiKey);
|
|
20
20
|
const spin = output.spinner("Fetching job...");
|
|
21
21
|
spin.start();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/jobs/view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/jobs/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,eAAO,MAAM,aAAa,SAsLtB,CAAC"}
|
package/dist/commands/status.js
CHANGED
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* Verify everything is wired correctly.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
-
import { loadConfig, configExists,
|
|
7
|
+
import { loadConfig, configExists, getApiKeyAsync, getApiKeySourceAsync, } from "../lib/config.js";
|
|
8
8
|
import { createApiClient } from "../lib/api-client.js";
|
|
9
9
|
import { createWalletFromConfig, validateWalletConfig } from "../lib/wallet/index.js";
|
|
10
|
+
import { getNetworkInfo } from "../lib/wallet/types.js";
|
|
10
11
|
import { handleError, ConfigError } from "../lib/errors.js";
|
|
11
12
|
import * as output from "../lib/output.js";
|
|
12
13
|
import { fromUSDCUnits } from "../lib/x402/client.js";
|
|
@@ -26,13 +27,16 @@ export const statusCommand = new Command("status")
|
|
|
26
27
|
output.keyValue("Agent", `${config.agent_name} (${config.agent_id})`);
|
|
27
28
|
output.keyValue("API", config.api_url);
|
|
28
29
|
console.log();
|
|
29
|
-
// Check API key
|
|
30
|
-
const apiKey =
|
|
31
|
-
|
|
30
|
+
// Check API key (async - checks env and file)
|
|
31
|
+
const apiKey = await getApiKeyAsync();
|
|
32
|
+
const apiKeySource = await getApiKeySourceAsync();
|
|
33
|
+
const apiKeyStatus = apiKey
|
|
34
|
+
? `from ${apiKeySource === "env" ? "environment variable" : "credentials file"}`
|
|
35
|
+
: "not set";
|
|
36
|
+
output.statusCheck("API Key", !!apiKey, apiKeyStatus);
|
|
32
37
|
if (!apiKey) {
|
|
33
38
|
console.log();
|
|
34
|
-
output.warning("
|
|
35
|
-
output.codeBlock(`export MOLTED_API_KEY=your_api_key`);
|
|
39
|
+
output.warning("API key not found. Run 'molted init' or set MOLTED_API_KEY environment variable.");
|
|
36
40
|
return;
|
|
37
41
|
}
|
|
38
42
|
// Check API health
|
|
@@ -66,46 +70,98 @@ export const statusCommand = new Command("status")
|
|
|
66
70
|
catch {
|
|
67
71
|
// Wallet config missing
|
|
68
72
|
}
|
|
69
|
-
output.statusCheck("Wallet Config", walletConfigValid, walletConfigValid
|
|
70
|
-
|
|
73
|
+
output.statusCheck("Wallet Config", walletConfigValid, walletConfigValid
|
|
74
|
+
? config.wallet_type
|
|
75
|
+
: config.wallet_type === "local"
|
|
76
|
+
? "MOLTED_PRIVATE_KEY not set"
|
|
77
|
+
: "missing CDP credentials");
|
|
78
|
+
// Try to initialize wallet and get balances
|
|
71
79
|
let walletInitialized = false;
|
|
72
|
-
let
|
|
80
|
+
let usdcBalance = null;
|
|
81
|
+
let ethBalance = null;
|
|
82
|
+
let wallet;
|
|
73
83
|
if (walletConfigValid) {
|
|
74
84
|
try {
|
|
75
|
-
|
|
85
|
+
wallet = await createWalletFromConfig(config);
|
|
76
86
|
walletInitialized = true;
|
|
77
|
-
|
|
87
|
+
usdcBalance = await wallet.getUSDCBalance();
|
|
88
|
+
ethBalance = await wallet.getETHBalance();
|
|
78
89
|
}
|
|
79
90
|
catch {
|
|
80
91
|
// Wallet init failed
|
|
81
92
|
}
|
|
82
93
|
}
|
|
94
|
+
// Get network info
|
|
95
|
+
const networkInfo = getNetworkInfo(config.network);
|
|
83
96
|
console.log();
|
|
84
97
|
output.divider();
|
|
85
98
|
console.log();
|
|
99
|
+
// Display network info
|
|
100
|
+
output.header("Network");
|
|
101
|
+
output.keyValue("Chain", `${networkInfo.name} (chainId: ${networkInfo.chainId})`);
|
|
102
|
+
output.keyValue("USDC Contract", networkInfo.usdcAddress);
|
|
103
|
+
output.keyValue("Explorer", networkInfo.explorer);
|
|
104
|
+
console.log();
|
|
86
105
|
// Display wallet info
|
|
87
|
-
output.
|
|
106
|
+
output.header("Wallet");
|
|
107
|
+
output.keyValue("Address", config.wallet_address);
|
|
88
108
|
output.keyValue("Type", config.wallet_type);
|
|
89
|
-
output.
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
109
|
+
output.muted(` View: ${networkInfo.explorer}/address/${config.wallet_address}`);
|
|
110
|
+
console.log();
|
|
111
|
+
// Display balances
|
|
112
|
+
output.header("Balances");
|
|
113
|
+
if (walletInitialized && ethBalance !== null && usdcBalance !== null) {
|
|
114
|
+
// ETH balance
|
|
115
|
+
const ethFormatted = (Number(ethBalance) / 1e18).toFixed(6);
|
|
116
|
+
const ethOk = ethBalance > BigInt(Math.floor(0.001 * 1e18)); // Need some ETH for gas
|
|
117
|
+
output.statusCheck("ETH (gas)", ethOk, `${ethFormatted} ETH`);
|
|
118
|
+
// USDC balance
|
|
119
|
+
const usdcFormatted = fromUSDCUnits(usdcBalance).toFixed(2);
|
|
120
|
+
const usdcOk = usdcBalance > BigInt(0);
|
|
121
|
+
output.statusCheck("USDC", usdcOk, `${usdcFormatted} USDC`);
|
|
122
|
+
// Show funding guidance if low
|
|
123
|
+
if (!ethOk || !usdcOk) {
|
|
124
|
+
console.log();
|
|
125
|
+
output.warning(`Wallet needs funding to transact on ${networkInfo.name}:`);
|
|
126
|
+
console.log();
|
|
127
|
+
if (!ethOk) {
|
|
128
|
+
console.log(" 1. Get test ETH (for gas fees):");
|
|
129
|
+
output.muted(" https://www.alchemy.com/faucets/base-sepolia");
|
|
130
|
+
console.log();
|
|
131
|
+
}
|
|
132
|
+
if (!usdcOk) {
|
|
133
|
+
console.log(` ${!ethOk ? "2" : "1"}. Get test USDC:`);
|
|
134
|
+
output.muted(" https://faucet.circle.com/ → Select Base Sepolia");
|
|
135
|
+
console.log();
|
|
136
|
+
}
|
|
137
|
+
console.log(" Send funds to:");
|
|
138
|
+
output.codeBlock(config.wallet_address);
|
|
139
|
+
}
|
|
93
140
|
}
|
|
94
141
|
else if (walletConfigValid && !walletInitialized) {
|
|
95
|
-
output.
|
|
142
|
+
output.muted(" (failed to fetch balances)");
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
output.muted(" (wallet not configured)");
|
|
96
146
|
}
|
|
97
147
|
if (agent) {
|
|
98
148
|
console.log();
|
|
149
|
+
output.header("Agent Stats");
|
|
99
150
|
output.keyValue("Reputation", `${agent.reputation_score.toFixed(1)}/5.0`);
|
|
100
151
|
output.keyValue("Jobs Completed", String(agent.total_jobs_completed));
|
|
101
152
|
output.keyValue("Jobs Failed", String(agent.total_jobs_failed));
|
|
102
153
|
}
|
|
103
154
|
console.log();
|
|
104
155
|
// Summary
|
|
105
|
-
const allGood = apiHealthy && authValid && walletConfigValid;
|
|
106
|
-
|
|
156
|
+
const allGood = apiHealthy && authValid && walletConfigValid && walletInitialized;
|
|
157
|
+
const hasGoodBalances = ethBalance !== null && usdcBalance !== null &&
|
|
158
|
+
ethBalance > BigInt(Math.floor(0.001 * 1e18)) && usdcBalance > BigInt(0);
|
|
159
|
+
if (allGood && hasGoodBalances) {
|
|
107
160
|
output.success("All systems operational!");
|
|
108
161
|
}
|
|
162
|
+
else if (allGood) {
|
|
163
|
+
output.warning("Systems ready, but wallet needs funding. See above for instructions.");
|
|
164
|
+
}
|
|
109
165
|
else {
|
|
110
166
|
output.warning("Some checks failed. Review the status above.");
|
|
111
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAEnC,sBAAsB;QACtB,MAAM,SAAS,GAAG,MAAM,YAAY,EAAE,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,WAAW,CACnB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,cAAc;QACd,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;QAElC,qBAAqB;QACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QACtE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,8CAA8C;QAC9C,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,MAAM,oBAAoB,EAAE,CAAC;QAClD,MAAM,YAAY,GAAG,MAAM;YACzB,CAAC,CAAC,QAAQ,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,kBAAkB,EAAE;YAChF,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC;YACnG,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB;QACtB,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAE7C,aAAa;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,KAAK,CAAC;QACV,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YAC7B,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,cAAc;QAChB,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEvE,sBAAsB;QACtB,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC;YACH,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC7B,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;QACD,MAAM,CAAC,WAAW,CAChB,eAAe,EACf,iBAAiB,EACjB,iBAAiB;YACf,CAAC,CAAC,MAAM,CAAC,WAAW;YACpB,CAAC,CAAC,MAAM,CAAC,WAAW,KAAK,OAAO;gBAC9B,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,yBAAyB,CAChC,CAAC;QAEF,4CAA4C;QAC5C,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,MAAM,CAAC;QACX,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC9C,iBAAiB,GAAG,IAAI,CAAC;gBACzB,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC5C,UAAU,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,uBAAuB;QACvB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,cAAc,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC;QAClF,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAElD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,sBAAsB;QACtB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QAClD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,WAAW,WAAW,CAAC,QAAQ,YAAY,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;QAEjF,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,mBAAmB;QACnB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE1B,IAAI,iBAAiB,IAAI,UAAU,KAAK,IAAI,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACrE,cAAc;YACd,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,wBAAwB;YACrF,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,YAAY,MAAM,CAAC,CAAC;YAE9D,eAAe;YACf,MAAM,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,OAAO,CAAC,CAAC;YAE5D,+BAA+B;YAC/B,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,CAAC,OAAO,CAAC,uCAAuC,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC3E,OAAO,CAAC,GAAG,EAAE,CAAC;gBAEd,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;oBACjD,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;oBAClE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;gBAED,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC;oBACvD,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBACtE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBAChC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;aAAM,IAAI,iBAAiB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACnD,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC7B,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,UAAU;QACV,MAAM,OAAO,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,IAAI,iBAAiB,CAAC;QAClF,MAAM,eAAe,GAAG,UAAU,KAAK,IAAI,IAAI,WAAW,KAAK,IAAI;YACjE,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAE3E,IAAI,OAAO,IAAI,eAAe,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,sEAAsE,CAAC,CAAC;QACzF,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/lib/config.d.ts
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* Configuration file management
|
|
3
3
|
*
|
|
4
4
|
* Config file location: ./.molted/config.json
|
|
5
|
-
*
|
|
5
|
+
* Credentials file: ./.molted/credentials.json (chmod 600)
|
|
6
|
+
* API key can be loaded from MOLTED_API_KEY env var or credentials file
|
|
6
7
|
*/
|
|
7
8
|
import { z } from "zod";
|
|
8
9
|
export declare const ConfigSchema: z.ZodObject<{
|
|
@@ -37,6 +38,21 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
37
38
|
wallet_id?: string | undefined;
|
|
38
39
|
}>;
|
|
39
40
|
export type Config = z.infer<typeof ConfigSchema>;
|
|
41
|
+
/**
|
|
42
|
+
* Credentials file schema
|
|
43
|
+
* Stores API key securely with chmod 600
|
|
44
|
+
*/
|
|
45
|
+
declare const CredentialsSchema: z.ZodObject<{
|
|
46
|
+
version: z.ZodLiteral<1>;
|
|
47
|
+
api_key: z.ZodString;
|
|
48
|
+
}, "strip", z.ZodTypeAny, {
|
|
49
|
+
version: 1;
|
|
50
|
+
api_key: string;
|
|
51
|
+
}, {
|
|
52
|
+
version: 1;
|
|
53
|
+
api_key: string;
|
|
54
|
+
}>;
|
|
55
|
+
export type Credentials = z.infer<typeof CredentialsSchema>;
|
|
40
56
|
/**
|
|
41
57
|
* Get the config directory path
|
|
42
58
|
*/
|
|
@@ -45,6 +61,10 @@ export declare function getConfigDir(): string;
|
|
|
45
61
|
* Get the config file path
|
|
46
62
|
*/
|
|
47
63
|
export declare function getConfigPath(): string;
|
|
64
|
+
/**
|
|
65
|
+
* Get the credentials file path
|
|
66
|
+
*/
|
|
67
|
+
export declare function getCredentialsPath(): string;
|
|
48
68
|
/**
|
|
49
69
|
* Check if config exists
|
|
50
70
|
*/
|
|
@@ -61,6 +81,14 @@ export declare function saveConfig(config: Config): Promise<void>;
|
|
|
61
81
|
* Delete config directory and files
|
|
62
82
|
*/
|
|
63
83
|
export declare function deleteConfig(): Promise<void>;
|
|
84
|
+
/**
|
|
85
|
+
* Load credentials from file
|
|
86
|
+
*/
|
|
87
|
+
export declare function loadCredentials(): Promise<Credentials | null>;
|
|
88
|
+
/**
|
|
89
|
+
* Save credentials to file with chmod 600
|
|
90
|
+
*/
|
|
91
|
+
export declare function saveCredentials(apiKey: string): Promise<void>;
|
|
64
92
|
/**
|
|
65
93
|
* Get API key from environment
|
|
66
94
|
*/
|
|
@@ -69,6 +97,23 @@ export declare function getApiKey(): string | undefined;
|
|
|
69
97
|
* Get API key or throw if not set
|
|
70
98
|
*/
|
|
71
99
|
export declare function requireApiKey(): string;
|
|
100
|
+
/**
|
|
101
|
+
* Get API key from environment or credentials file (async)
|
|
102
|
+
* Environment variable takes precedence over file
|
|
103
|
+
*/
|
|
104
|
+
export declare function getApiKeyAsync(): Promise<string | undefined>;
|
|
105
|
+
/**
|
|
106
|
+
* Get API key source (for status display)
|
|
107
|
+
*/
|
|
108
|
+
export declare function getApiKeySource(): "env" | "file" | null;
|
|
109
|
+
/**
|
|
110
|
+
* Get API key source async (for status display)
|
|
111
|
+
*/
|
|
112
|
+
export declare function getApiKeySourceAsync(): Promise<"env" | "file" | null>;
|
|
113
|
+
/**
|
|
114
|
+
* Require API key (async) - checks env and file
|
|
115
|
+
*/
|
|
116
|
+
export declare function requireApiKeyAsync(): Promise<string>;
|
|
72
117
|
/**
|
|
73
118
|
* Get CDP credentials from environment
|
|
74
119
|
* Supports both Server Wallet v2 env vars and legacy SDK env vars
|
|
@@ -95,4 +140,5 @@ export declare function createConfig(params: {
|
|
|
95
140
|
walletId?: string;
|
|
96
141
|
network: "base" | "base-sepolia";
|
|
97
142
|
}): Config;
|
|
143
|
+
export {};
|
|
98
144
|
//# sourceMappingURL=config.d.ts.map
|