@loadnetwork/permaweb-deploy 2.5.1-loadnetwork.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/LICENSE +21 -0
- package/README.md +581 -0
- package/bin/dev.js +5 -0
- package/bin/run.js +5 -0
- package/dist/commands/deploy.js +384 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/constants/flags.js +195 -0
- package/dist/constants/flags.js.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/arns.js +89 -0
- package/dist/prompts/arns.js.map +1 -0
- package/dist/prompts/deployment.js +27 -0
- package/dist/prompts/deployment.js.map +1 -0
- package/dist/prompts/wallet.js +51 -0
- package/dist/prompts/wallet.js.map +1 -0
- package/dist/src/commands/deploy.d.ts +9 -0
- package/dist/src/commands/deploy.d.ts.map +1 -0
- package/dist/src/constants/flags.d.ts +96 -0
- package/dist/src/constants/flags.d.ts.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/prompts/arns.d.ts +13 -0
- package/dist/src/prompts/arns.d.ts.map +1 -0
- package/dist/src/prompts/deployment.d.ts +6 -0
- package/dist/src/prompts/deployment.d.ts.map +1 -0
- package/dist/src/prompts/wallet.d.ts +11 -0
- package/dist/src/prompts/wallet.d.ts.map +1 -0
- package/dist/src/types/index.d.ts +31 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/utils/__tests__/constants.test.d.ts +2 -0
- package/dist/src/utils/__tests__/constants.test.d.ts.map +1 -0
- package/dist/src/utils/config-resolver.d.ts +72 -0
- package/dist/src/utils/config-resolver.d.ts.map +1 -0
- package/dist/src/utils/constants.d.ts +4 -0
- package/dist/src/utils/constants.d.ts.map +1 -0
- package/dist/src/utils/path.d.ts +5 -0
- package/dist/src/utils/path.d.ts.map +1 -0
- package/dist/src/utils/signer.d.ts +17 -0
- package/dist/src/utils/signer.d.ts.map +1 -0
- package/dist/src/utils/uploader.d.ts +8 -0
- package/dist/src/utils/uploader.d.ts.map +1 -0
- package/dist/src/utils/validators.d.ts +29 -0
- package/dist/src/utils/validators.d.ts.map +1 -0
- package/dist/tests/constants.d.ts +11 -0
- package/dist/tests/constants.d.ts.map +1 -0
- package/dist/tests/e2e/deploy-command.test.d.ts +2 -0
- package/dist/tests/e2e/deploy-command.test.d.ts.map +1 -0
- package/dist/tests/global-setup.d.ts +6 -0
- package/dist/tests/global-setup.d.ts.map +1 -0
- package/dist/tests/mocks/turbo-handlers.d.ts +105 -0
- package/dist/tests/mocks/turbo-handlers.d.ts.map +1 -0
- package/dist/tests/setup.d.ts +11 -0
- package/dist/tests/setup.d.ts.map +1 -0
- package/dist/tests/types/payment-service.d.ts +218 -0
- package/dist/tests/types/payment-service.d.ts.map +1 -0
- package/dist/tests/types/upload-service.d.ts +168 -0
- package/dist/tests/types/upload-service.d.ts.map +1 -0
- package/dist/tests/unit/validators.test.d.ts +2 -0
- package/dist/tests/unit/validators.test.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/config-resolver.js +39 -0
- package/dist/utils/config-resolver.js.map +1 -0
- package/dist/utils/constants.js +6 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/path.js +15 -0
- package/dist/utils/path.js.map +1 -0
- package/dist/utils/signer.js +40 -0
- package/dist/utils/signer.js.map +1 -0
- package/dist/utils/uploader.js +86 -0
- package/dist/utils/uploader.js.map +1 -0
- package/dist/utils/validators.js +62 -0
- package/dist/utils/validators.js.map +1 -0
- package/package.json +110 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.js","sources":["../../src/constants/flags.ts"],"sourcesContent":["import { ARIO_MAINNET_PROCESS_ID } from '@ar.io/sdk'\nimport { Flags } from '@oclif/core'\n\nimport { promptArioProcess, promptArnsName } from '../prompts/arns.js'\nimport { promptDeployTarget } from '../prompts/deployment.js'\nimport { promptSignerType } from '../prompts/wallet.js'\nimport { createFlagConfig } from '../utils/config-resolver.js'\nimport { TTL_MAX, TTL_MIN } from '../utils/constants.js'\nimport { validateFileExists, validateFolderExists } from '../utils/validators.js'\n\n/**\n * Global flag definitions - single source of truth for all flags\n * Each flag includes its oclif definition and optional prompt function\n */\nexport const globalFlags = {\n arioProcess: createFlagConfig<string>({\n flag: Flags.string({\n char: 'p',\n default: ARIO_MAINNET_PROCESS_ID,\n description: 'The ARIO process to use (mainnet, testnet, or process ID)',\n required: false,\n }),\n prompt: promptArioProcess,\n }),\n arnsName: createFlagConfig<string>({\n flag: Flags.string({\n char: 'n',\n description: 'The ArNS name to deploy to',\n required: false,\n }),\n prompt: promptArnsName,\n triggersInteractive: true,\n }),\n deployFile: createFlagConfig<string | undefined>({\n flag: Flags.string({\n char: 'f',\n description: 'File to deploy (overrides deploy-folder)',\n async parse(input) {\n const validation = validateFileExists(input)\n if (validation !== true) {\n throw new Error(validation)\n }\n\n return input\n },\n required: false,\n }),\n async prompt() {\n const target = await promptDeployTarget()\n return target.type === 'file' ? target.path : undefined\n },\n }),\n deployFolder: createFlagConfig<string>({\n flag: Flags.string({\n char: 'd',\n default: './dist',\n description: 'Folder to deploy',\n async parse(input) {\n const validation = validateFolderExists(input)\n if (validation !== true) {\n throw new Error(validation)\n }\n\n return input\n },\n required: false,\n }),\n async prompt() {\n const target = await promptDeployTarget()\n return target.type === 'folder' ? target.path : './dist'\n },\n }),\n // Advanced payment settings\n maxTokenAmount: createFlagConfig<string | undefined>({\n flag: Flags.string({\n description: 'Maximum token amount for on-demand payment',\n required: false,\n }),\n }),\n onDemand: createFlagConfig<string | undefined>({\n flag: Flags.string({\n description: 'Enable on-demand payment with specified token (ario or base-eth)',\n options: ['ario', 'base-eth'],\n required: false,\n }),\n }),\n privateKey: createFlagConfig<string | undefined>({\n flag: Flags.string({\n char: 'k',\n description: 'Private key or JWK JSON string (alternative to --wallet)',\n exclusive: ['wallet'],\n required: false,\n }),\n }),\n sigType: createFlagConfig<string>({\n flag: Flags.string({\n char: 's',\n default: 'arweave',\n description: 'Signer type for deployment',\n options: ['arweave', 'ethereum', 'polygon', 'kyve'],\n required: false,\n }),\n prompt: promptSignerType,\n }),\n ttlSeconds: createFlagConfig<string>({\n flag: Flags.string({\n char: 't',\n default: '60',\n description: `ArNS TTL in seconds (${TTL_MIN}-${TTL_MAX})`,\n required: false,\n }),\n }),\n undername: createFlagConfig<string>({\n flag: Flags.string({\n char: 'u',\n default: '@',\n description: 'ANT undername to update',\n required: false,\n }),\n }),\n wallet: createFlagConfig<string | undefined>({\n flag: Flags.string({\n char: 'w',\n description: 'Path to wallet file (JWK for Arweave, private key for others)',\n exclusive: ['private-key'],\n async parse(input) {\n const validation = validateFileExists(input)\n if (validation !== true) {\n throw new Error(validation)\n }\n\n return input\n },\n required: false,\n }),\n }),\n preview: createFlagConfig<boolean>({\n flag: Flags.boolean({\n description: 'Deploy to Load S3 preview endpoint (no ANT update)',\n required: false,\n default: false,\n }),\n }),\n anchor: createFlagConfig<boolean>({\n flag: Flags.boolean({\n description: 'Anchor a Load S3 preview manifest to Arweave',\n required: false,\n default: false,\n }),\n }),\n previewId: createFlagConfig<string | undefined>({\n flag: Flags.string({\n description: 'Load S3 preview manifest ID to anchor',\n required: false,\n }),\n }),\n}\n\n/**\n * Complete set of flags for the deploy command\n */\nexport const deployFlags = {\n 'ario-process': globalFlags.arioProcess.flag,\n 'arns-name': globalFlags.arnsName.flag,\n 'deploy-file': globalFlags.deployFile.flag,\n 'deploy-folder': globalFlags.deployFolder.flag,\n 'max-token-amount': globalFlags.maxTokenAmount.flag,\n 'on-demand': globalFlags.onDemand.flag,\n 'private-key': globalFlags.privateKey.flag,\n 'sig-type': globalFlags.sigType.flag,\n 'ttl-seconds': globalFlags.ttlSeconds.flag,\n undername: globalFlags.undername.flag,\n wallet: globalFlags.wallet.flag,\n preview: globalFlags.preview.flag,\n anchor: globalFlags.anchor.flag,\n 'preview-id': globalFlags.previewId.flag,\n}\n\n/**\n * ArNS-specific flags (subset of deploy flags)\n */\nexport const arnsFlags = {\n 'ario-process': globalFlags.arioProcess.flag,\n 'arns-name': globalFlags.arnsName.flag,\n 'ttl-seconds': globalFlags.ttlSeconds.flag,\n undername: globalFlags.undername.flag,\n}\n\n/**\n * Wallet/authentication flags (subset of deploy flags)\n */\nexport const walletFlags = {\n 'private-key': globalFlags.privateKey.flag,\n 'sig-type': globalFlags.sigType.flag,\n wallet: globalFlags.wallet.flag,\n}\n\n/**\n * Deploy command configuration type\n */\nexport interface DeployConfig {\n 'ario-process': string\n 'arns-name': string\n 'deploy-file'?: string\n 'deploy-folder': string\n 'max-token-amount'?: string\n 'on-demand'?: string\n 'private-key'?: string\n 'sig-type': string\n 'ttl-seconds': string\n undername: string\n wallet?: string\n preview?: boolean\n anchor?: boolean\n 'preview-id'?: string\n}\n\n/**\n * Deploy command flag configurations\n * Maps kebab-case flag names to their camelCase globalFlags definitions\n */\nexport const deployFlagConfigs = {\n 'ario-process': globalFlags.arioProcess,\n 'arns-name': globalFlags.arnsName,\n 'deploy-file': globalFlags.deployFile,\n 'deploy-folder': globalFlags.deployFolder,\n 'max-token-amount': globalFlags.maxTokenAmount,\n 'on-demand': globalFlags.onDemand,\n 'private-key': globalFlags.privateKey,\n 'sig-type': globalFlags.sigType,\n 'ttl-seconds': globalFlags.ttlSeconds,\n undername: globalFlags.undername,\n wallet: globalFlags.wallet,\n preview: globalFlags.preview,\n anchor: globalFlags.anchor,\n 'preview-id': globalFlags.previewId,\n} as const\n"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { ARIO_MAINNET_PROCESS_ID, ARIO_TESTNET_PROCESS_ID } from '@ar.io/sdk';
|
|
2
|
+
import { input, select, confirm } from '@inquirer/prompts';
|
|
3
|
+
import { validateArnsName, validateArioProcess, validateTtl } from '../utils/validators.js';
|
|
4
|
+
|
|
5
|
+
async function promptArnsName() {
|
|
6
|
+
return input({
|
|
7
|
+
message: "Enter your ArNS name:",
|
|
8
|
+
required: true,
|
|
9
|
+
validate: validateArnsName
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
async function promptUndername() {
|
|
13
|
+
return input({
|
|
14
|
+
default: "@",
|
|
15
|
+
message: "Enter undername (subdomain):"
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
async function promptTtl() {
|
|
19
|
+
return input({
|
|
20
|
+
default: "60",
|
|
21
|
+
message: "Enter TTL in seconds:",
|
|
22
|
+
validate: validateTtl
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
async function promptArioProcess() {
|
|
26
|
+
const networkChoice = await select({
|
|
27
|
+
choices: [
|
|
28
|
+
{ name: "Mainnet", value: "mainnet" },
|
|
29
|
+
{ name: "Testnet", value: "testnet" },
|
|
30
|
+
{ name: "Custom Process ID", value: "custom" }
|
|
31
|
+
],
|
|
32
|
+
default: "mainnet",
|
|
33
|
+
message: "Select ARIO network:"
|
|
34
|
+
});
|
|
35
|
+
if (networkChoice === "custom") {
|
|
36
|
+
return input({
|
|
37
|
+
message: "Enter ARIO process ID:",
|
|
38
|
+
validate: validateArioProcess
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return networkChoice === "mainnet" ? ARIO_MAINNET_PROCESS_ID : ARIO_TESTNET_PROCESS_ID;
|
|
42
|
+
}
|
|
43
|
+
async function promptAdvancedOptions() {
|
|
44
|
+
const wantsAdvanced = await confirm({
|
|
45
|
+
default: false,
|
|
46
|
+
message: "Configure advanced options?"
|
|
47
|
+
});
|
|
48
|
+
if (!wantsAdvanced) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const undername = await promptUndername();
|
|
52
|
+
const ttlSeconds = await promptTtl();
|
|
53
|
+
const arioProcess = await promptArioProcess();
|
|
54
|
+
const wantsOnDemand = await confirm({
|
|
55
|
+
default: false,
|
|
56
|
+
message: "Enable on-demand payment?"
|
|
57
|
+
});
|
|
58
|
+
let onDemand;
|
|
59
|
+
let maxTokenAmount;
|
|
60
|
+
if (wantsOnDemand) {
|
|
61
|
+
onDemand = await select({
|
|
62
|
+
choices: [
|
|
63
|
+
{ name: "ARIO", value: "ario" },
|
|
64
|
+
{ name: "ETH (Base Network)", value: "base-eth" }
|
|
65
|
+
],
|
|
66
|
+
message: "Select payment token:"
|
|
67
|
+
});
|
|
68
|
+
maxTokenAmount = await input({
|
|
69
|
+
message: "Enter maximum token amount:",
|
|
70
|
+
validate(value) {
|
|
71
|
+
const num = Number.parseFloat(value);
|
|
72
|
+
if (Number.isNaN(num) || num <= 0) {
|
|
73
|
+
return "Please enter a valid positive number";
|
|
74
|
+
}
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
arioProcess,
|
|
81
|
+
maxTokenAmount,
|
|
82
|
+
onDemand,
|
|
83
|
+
ttlSeconds,
|
|
84
|
+
undername
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export { promptAdvancedOptions, promptArioProcess, promptArnsName, promptTtl, promptUndername };
|
|
89
|
+
//# sourceMappingURL=arns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arns.js","sources":["../../src/prompts/arns.ts"],"sourcesContent":["import { ARIO_MAINNET_PROCESS_ID, ARIO_TESTNET_PROCESS_ID } from '@ar.io/sdk'\nimport { confirm, input, select } from '@inquirer/prompts'\n\nimport { validateArioProcess, validateArnsName, validateTtl } from '../utils/validators.js'\n\nexport interface AdvancedOptions {\n arioProcess: string\n maxTokenAmount?: string\n onDemand?: string\n ttlSeconds: string\n undername: string\n}\n\nexport async function promptArnsName(): Promise<string> {\n return input({\n message: 'Enter your ArNS name:',\n required: true,\n validate: validateArnsName,\n })\n}\n\nexport async function promptUndername(): Promise<string> {\n return input({\n default: '@',\n message: 'Enter undername (subdomain):',\n })\n}\n\nexport async function promptTtl(): Promise<string> {\n return input({\n default: '60',\n message: 'Enter TTL in seconds:',\n validate: validateTtl,\n })\n}\n\nexport async function promptArioProcess(): Promise<string> {\n const networkChoice = await select({\n choices: [\n { name: 'Mainnet', value: 'mainnet' },\n { name: 'Testnet', value: 'testnet' },\n { name: 'Custom Process ID', value: 'custom' },\n ],\n default: 'mainnet',\n message: 'Select ARIO network:',\n })\n\n if (networkChoice === 'custom') {\n return input({\n message: 'Enter ARIO process ID:',\n validate: validateArioProcess,\n })\n }\n\n return networkChoice === 'mainnet' ? ARIO_MAINNET_PROCESS_ID : ARIO_TESTNET_PROCESS_ID\n}\n\nexport async function promptAdvancedOptions(): Promise<AdvancedOptions | null> {\n const wantsAdvanced = await confirm({\n default: false,\n message: 'Configure advanced options?',\n })\n\n if (!wantsAdvanced) {\n return null\n }\n\n const undername = await promptUndername()\n const ttlSeconds = await promptTtl()\n const arioProcess = await promptArioProcess()\n\n // On-demand payment options\n const wantsOnDemand = await confirm({\n default: false,\n message: 'Enable on-demand payment?',\n })\n\n let onDemand: string | undefined\n let maxTokenAmount: string | undefined\n\n if (wantsOnDemand) {\n onDemand = await select({\n choices: [\n { name: 'ARIO', value: 'ario' },\n { name: 'ETH (Base Network)', value: 'base-eth' },\n ],\n message: 'Select payment token:',\n })\n\n maxTokenAmount = await input({\n message: 'Enter maximum token amount:',\n validate(value: string) {\n const num = Number.parseFloat(value)\n if (Number.isNaN(num) || num <= 0) {\n return 'Please enter a valid positive number'\n }\n\n return true\n },\n })\n }\n\n return {\n arioProcess,\n maxTokenAmount,\n onDemand,\n ttlSeconds,\n undername,\n }\n}\n"],"names":[],"mappings":";;;;AAaA,eAAsB,cAAA,GAAkC;AACtD,EAAA,OAAO,KAAA,CAAM;AAAA,IACX,OAAA,EAAS,uBAAA;AAAA,IACT,QAAA,EAAU,IAAA;AAAA,IACV,QAAA,EAAU;AAAA,GACX,CAAA;AACH;AAEA,eAAsB,eAAA,GAAmC;AACvD,EAAA,OAAO,KAAA,CAAM;AAAA,IACX,OAAA,EAAS,GAAA;AAAA,IACT,OAAA,EAAS;AAAA,GACV,CAAA;AACH;AAEA,eAAsB,SAAA,GAA6B;AACjD,EAAA,OAAO,KAAA,CAAM;AAAA,IACX,OAAA,EAAS,IAAA;AAAA,IACT,OAAA,EAAS,uBAAA;AAAA,IACT,QAAA,EAAU;AAAA,GACX,CAAA;AACH;AAEA,eAAsB,iBAAA,GAAqC;AACzD,EAAA,MAAM,aAAA,GAAgB,MAAM,MAAA,CAAO;AAAA,IACjC,OAAA,EAAS;AAAA,MACP,EAAE,IAAA,EAAM,SAAA,EAAW,KAAA,EAAO,SAAA,EAAU;AAAA,MACpC,EAAE,IAAA,EAAM,SAAA,EAAW,KAAA,EAAO,SAAA,EAAU;AAAA,MACpC,EAAE,IAAA,EAAM,mBAAA,EAAqB,KAAA,EAAO,QAAA;AAAS,KAC/C;AAAA,IACA,OAAA,EAAS,SAAA;AAAA,IACT,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,IAAI,kBAAkB,QAAA,EAAU;AAC9B,IAAA,OAAO,KAAA,CAAM;AAAA,MACX,OAAA,EAAS,wBAAA;AAAA,MACT,QAAA,EAAU;AAAA,KACX,CAAA;AAAA,EACH;AAEA,EAAA,OAAO,aAAA,KAAkB,YAAY,uBAAA,GAA0B,uBAAA;AACjE;AAEA,eAAsB,qBAAA,GAAyD;AAC7E,EAAA,MAAM,aAAA,GAAgB,MAAM,OAAA,CAAQ;AAAA,IAClC,OAAA,EAAS,KAAA;AAAA,IACT,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,IAAI,CAAC,aAAA,EAAe;AAClB,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,MAAM,SAAA,GAAY,MAAM,eAAA,EAAgB;AACxC,EAAA,MAAM,UAAA,GAAa,MAAM,SAAA,EAAU;AACnC,EAAA,MAAM,WAAA,GAAc,MAAM,iBAAA,EAAkB;AAG5C,EAAA,MAAM,aAAA,GAAgB,MAAM,OAAA,CAAQ;AAAA,IAClC,OAAA,EAAS,KAAA;AAAA,IACT,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,IAAI,QAAA;AACJ,EAAA,IAAI,cAAA;AAEJ,EAAA,IAAI,aAAA,EAAe;AACjB,IAAA,QAAA,GAAW,MAAM,MAAA,CAAO;AAAA,MACtB,OAAA,EAAS;AAAA,QACP,EAAE,IAAA,EAAM,MAAA,EAAQ,KAAA,EAAO,MAAA,EAAO;AAAA,QAC9B,EAAE,IAAA,EAAM,oBAAA,EAAsB,KAAA,EAAO,UAAA;AAAW,OAClD;AAAA,MACA,OAAA,EAAS;AAAA,KACV,CAAA;AAED,IAAA,cAAA,GAAiB,MAAM,KAAA,CAAM;AAAA,MAC3B,OAAA,EAAS,6BAAA;AAAA,MACT,SAAS,KAAA,EAAe;AACtB,QAAA,MAAM,GAAA,GAAM,MAAA,CAAO,UAAA,CAAW,KAAK,CAAA;AACnC,QAAA,IAAI,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA,IAAK,OAAO,CAAA,EAAG;AACjC,UAAA,OAAO,sCAAA;AAAA,QACT;AAEA,QAAA,OAAO,IAAA;AAAA,MACT;AAAA,KACD,CAAA;AAAA,EACH;AAEA,EAAA,OAAO;AAAA,IACL,WAAA;AAAA,IACA,cAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { select, input } from '@inquirer/prompts';
|
|
2
|
+
import { validateFolderExists, validateFileExists } from '../utils/validators.js';
|
|
3
|
+
|
|
4
|
+
async function promptDeployTarget() {
|
|
5
|
+
const deployType = await select({
|
|
6
|
+
choices: [
|
|
7
|
+
{ name: "Deploy a folder", value: "folder" },
|
|
8
|
+
{ name: "Deploy a single file", value: "file" }
|
|
9
|
+
],
|
|
10
|
+
message: "What do you want to deploy?"
|
|
11
|
+
});
|
|
12
|
+
const deployPath = await (deployType === "folder" ? input({
|
|
13
|
+
default: "./dist",
|
|
14
|
+
message: "Enter folder path to deploy:",
|
|
15
|
+
validate: validateFolderExists
|
|
16
|
+
}) : input({
|
|
17
|
+
message: "Enter file path to deploy:",
|
|
18
|
+
validate: validateFileExists
|
|
19
|
+
}));
|
|
20
|
+
return {
|
|
21
|
+
path: deployPath,
|
|
22
|
+
type: deployType
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { promptDeployTarget };
|
|
27
|
+
//# sourceMappingURL=deployment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment.js","sources":["../../src/prompts/deployment.ts"],"sourcesContent":["import { input, select } from '@inquirer/prompts'\n\nimport { validateFileExists, validateFolderExists } from '../utils/validators.js'\n\nexport interface DeployTarget {\n path: string\n type: 'file' | 'folder'\n}\n\nexport async function promptDeployTarget(): Promise<DeployTarget> {\n const deployType = (await select({\n choices: [\n { name: 'Deploy a folder', value: 'folder' },\n { name: 'Deploy a single file', value: 'file' },\n ],\n message: 'What do you want to deploy?',\n })) as 'file' | 'folder'\n\n const deployPath = await (deployType === 'folder'\n ? input({\n default: './dist',\n message: 'Enter folder path to deploy:',\n validate: validateFolderExists,\n })\n : input({\n message: 'Enter file path to deploy:',\n validate: validateFileExists,\n }))\n\n return {\n path: deployPath,\n type: deployType,\n }\n}\n"],"names":[],"mappings":";;;AASA,eAAsB,kBAAA,GAA4C;AAChE,EAAA,MAAM,UAAA,GAAc,MAAM,MAAA,CAAO;AAAA,IAC/B,OAAA,EAAS;AAAA,MACP,EAAE,IAAA,EAAM,iBAAA,EAAmB,KAAA,EAAO,QAAA,EAAS;AAAA,MAC3C,EAAE,IAAA,EAAM,sBAAA,EAAwB,KAAA,EAAO,MAAA;AAAO,KAChD;AAAA,IACA,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,MAAM,UAAA,GAAa,OAAO,UAAA,KAAe,QAAA,GACrC,KAAA,CAAM;AAAA,IACJ,OAAA,EAAS,QAAA;AAAA,IACT,OAAA,EAAS,8BAAA;AAAA,IACT,QAAA,EAAU;AAAA,GACX,IACD,KAAA,CAAM;AAAA,IACJ,OAAA,EAAS,4BAAA;AAAA,IACT,QAAA,EAAU;AAAA,GACX,CAAA,CAAA;AAEL,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,UAAA;AAAA,IACN,IAAA,EAAM;AAAA,GACR;AACF;;;;"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { select, input } from '@inquirer/prompts';
|
|
2
|
+
import { validateFileExists } from '../utils/validators.js';
|
|
3
|
+
|
|
4
|
+
async function promptWalletMethod() {
|
|
5
|
+
return select({
|
|
6
|
+
choices: [
|
|
7
|
+
{ name: "Wallet file path", value: "file" },
|
|
8
|
+
{ name: "Private key/JWK string", value: "string" },
|
|
9
|
+
{ name: "Environment variable (DEPLOY_KEY)", value: "env" }
|
|
10
|
+
],
|
|
11
|
+
message: "How do you want to provide your wallet?"
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
async function promptWalletFile() {
|
|
15
|
+
return input({
|
|
16
|
+
default: "./wallet.json",
|
|
17
|
+
message: "Enter wallet file path:",
|
|
18
|
+
validate: validateFileExists
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async function promptPrivateKey() {
|
|
22
|
+
return input({
|
|
23
|
+
message: "Enter your private key or JWK JSON:",
|
|
24
|
+
required: true
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
async function promptSignerType() {
|
|
28
|
+
return select({
|
|
29
|
+
choices: [
|
|
30
|
+
{ name: "Arweave", value: "arweave" },
|
|
31
|
+
{ name: "Ethereum", value: "ethereum" },
|
|
32
|
+
{ name: "Polygon", value: "polygon" },
|
|
33
|
+
{ name: "KYVE", value: "kyve" }
|
|
34
|
+
],
|
|
35
|
+
default: "arweave",
|
|
36
|
+
message: "Select signer type:"
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
async function getWalletConfig() {
|
|
40
|
+
const method = await promptWalletMethod();
|
|
41
|
+
const config = { method };
|
|
42
|
+
if (method === "file") {
|
|
43
|
+
config.wallet = await promptWalletFile();
|
|
44
|
+
} else if (method === "string") {
|
|
45
|
+
config.privateKey = await promptPrivateKey();
|
|
46
|
+
}
|
|
47
|
+
return config;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export { getWalletConfig, promptPrivateKey, promptSignerType, promptWalletFile, promptWalletMethod };
|
|
51
|
+
//# sourceMappingURL=wallet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.js","sources":["../../src/prompts/wallet.ts"],"sourcesContent":["import { input, select } from '@inquirer/prompts'\n\nimport { validateFileExists } from '../utils/validators.js'\n\nexport interface WalletConfig {\n method: 'env' | 'file' | 'string'\n privateKey?: string\n wallet?: string\n}\n\nexport async function promptWalletMethod(): Promise<string> {\n return select({\n choices: [\n { name: 'Wallet file path', value: 'file' },\n { name: 'Private key/JWK string', value: 'string' },\n { name: 'Environment variable (DEPLOY_KEY)', value: 'env' },\n ],\n message: 'How do you want to provide your wallet?',\n })\n}\n\nexport async function promptWalletFile(): Promise<string> {\n return input({\n default: './wallet.json',\n message: 'Enter wallet file path:',\n validate: validateFileExists,\n })\n}\n\nexport async function promptPrivateKey(): Promise<string> {\n return input({\n message: 'Enter your private key or JWK JSON:',\n required: true,\n })\n}\n\nexport async function promptSignerType(): Promise<string> {\n return select({\n choices: [\n { name: 'Arweave', value: 'arweave' },\n { name: 'Ethereum', value: 'ethereum' },\n { name: 'Polygon', value: 'polygon' },\n { name: 'KYVE', value: 'kyve' },\n ],\n default: 'arweave',\n message: 'Select signer type:',\n })\n}\n\nexport async function getWalletConfig(): Promise<WalletConfig> {\n const method = (await promptWalletMethod()) as 'env' | 'file' | 'string'\n\n const config: WalletConfig = { method }\n\n if (method === 'file') {\n config.wallet = await promptWalletFile()\n } else if (method === 'string') {\n config.privateKey = await promptPrivateKey()\n }\n\n return config\n}\n"],"names":[],"mappings":";;;AAUA,eAAsB,kBAAA,GAAsC;AAC1D,EAAA,OAAO,MAAA,CAAO;AAAA,IACZ,OAAA,EAAS;AAAA,MACP,EAAE,IAAA,EAAM,kBAAA,EAAoB,KAAA,EAAO,MAAA,EAAO;AAAA,MAC1C,EAAE,IAAA,EAAM,wBAAA,EAA0B,KAAA,EAAO,QAAA,EAAS;AAAA,MAClD,EAAE,IAAA,EAAM,mCAAA,EAAqC,KAAA,EAAO,KAAA;AAAM,KAC5D;AAAA,IACA,OAAA,EAAS;AAAA,GACV,CAAA;AACH;AAEA,eAAsB,gBAAA,GAAoC;AACxD,EAAA,OAAO,KAAA,CAAM;AAAA,IACX,OAAA,EAAS,eAAA;AAAA,IACT,OAAA,EAAS,yBAAA;AAAA,IACT,QAAA,EAAU;AAAA,GACX,CAAA;AACH;AAEA,eAAsB,gBAAA,GAAoC;AACxD,EAAA,OAAO,KAAA,CAAM;AAAA,IACX,OAAA,EAAS,qCAAA;AAAA,IACT,QAAA,EAAU;AAAA,GACX,CAAA;AACH;AAEA,eAAsB,gBAAA,GAAoC;AACxD,EAAA,OAAO,MAAA,CAAO;AAAA,IACZ,OAAA,EAAS;AAAA,MACP,EAAE,IAAA,EAAM,SAAA,EAAW,KAAA,EAAO,SAAA,EAAU;AAAA,MACpC,EAAE,IAAA,EAAM,UAAA,EAAY,KAAA,EAAO,UAAA,EAAW;AAAA,MACtC,EAAE,IAAA,EAAM,SAAA,EAAW,KAAA,EAAO,SAAA,EAAU;AAAA,MACpC,EAAE,IAAA,EAAM,MAAA,EAAQ,KAAA,EAAO,MAAA;AAAO,KAChC;AAAA,IACA,OAAA,EAAS,SAAA;AAAA,IACT,OAAA,EAAS;AAAA,GACV,CAAA;AACH;AAEA,eAAsB,eAAA,GAAyC;AAC7D,EAAA,MAAM,MAAA,GAAU,MAAM,kBAAA,EAAmB;AAEzC,EAAA,MAAM,MAAA,GAAuB,EAAE,MAAA,EAAO;AAEtC,EAAA,IAAI,WAAW,MAAA,EAAQ;AACrB,IAAA,MAAA,CAAO,MAAA,GAAS,MAAM,gBAAA,EAAiB;AAAA,EACzC,CAAA,MAAA,IAAW,WAAW,QAAA,EAAU;AAC9B,IAAA,MAAA,CAAO,UAAA,GAAa,MAAM,gBAAA,EAAiB;AAAA,EAC7C;AAEA,EAAA,OAAO,MAAA;AACT;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class Deploy extends Command {
|
|
3
|
+
static args: {};
|
|
4
|
+
static description: string;
|
|
5
|
+
static examples: string[];
|
|
6
|
+
static flags: Record<string, any>;
|
|
7
|
+
run(): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=deploy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAsBrC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,OAAgB,IAAI,KAAK;IAEzB,OAAgB,WAAW,SAA4C;IAEvE,OAAgB,QAAQ,WASvB;IAED,OAAgB,KAAK,sBAAkC;IAE1C,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA0XlC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global flag definitions - single source of truth for all flags
|
|
3
|
+
* Each flag includes its oclif definition and optional prompt function
|
|
4
|
+
*/
|
|
5
|
+
export declare const globalFlags: {
|
|
6
|
+
arioProcess: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
7
|
+
arnsName: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
8
|
+
deployFile: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
9
|
+
deployFolder: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
10
|
+
maxTokenAmount: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
11
|
+
onDemand: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
12
|
+
privateKey: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
13
|
+
sigType: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
14
|
+
ttlSeconds: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
15
|
+
undername: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
16
|
+
wallet: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
17
|
+
preview: import("../utils/config-resolver.js").FlagConfig<boolean, any>;
|
|
18
|
+
anchor: import("../utils/config-resolver.js").FlagConfig<boolean, any>;
|
|
19
|
+
previewId: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Complete set of flags for the deploy command
|
|
23
|
+
*/
|
|
24
|
+
export declare const deployFlags: {
|
|
25
|
+
'ario-process': any;
|
|
26
|
+
'arns-name': any;
|
|
27
|
+
'deploy-file': any;
|
|
28
|
+
'deploy-folder': any;
|
|
29
|
+
'max-token-amount': any;
|
|
30
|
+
'on-demand': any;
|
|
31
|
+
'private-key': any;
|
|
32
|
+
'sig-type': any;
|
|
33
|
+
'ttl-seconds': any;
|
|
34
|
+
undername: any;
|
|
35
|
+
wallet: any;
|
|
36
|
+
preview: any;
|
|
37
|
+
anchor: any;
|
|
38
|
+
'preview-id': any;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* ArNS-specific flags (subset of deploy flags)
|
|
42
|
+
*/
|
|
43
|
+
export declare const arnsFlags: {
|
|
44
|
+
'ario-process': any;
|
|
45
|
+
'arns-name': any;
|
|
46
|
+
'ttl-seconds': any;
|
|
47
|
+
undername: any;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Wallet/authentication flags (subset of deploy flags)
|
|
51
|
+
*/
|
|
52
|
+
export declare const walletFlags: {
|
|
53
|
+
'private-key': any;
|
|
54
|
+
'sig-type': any;
|
|
55
|
+
wallet: any;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Deploy command configuration type
|
|
59
|
+
*/
|
|
60
|
+
export interface DeployConfig {
|
|
61
|
+
'ario-process': string;
|
|
62
|
+
'arns-name': string;
|
|
63
|
+
'deploy-file'?: string;
|
|
64
|
+
'deploy-folder': string;
|
|
65
|
+
'max-token-amount'?: string;
|
|
66
|
+
'on-demand'?: string;
|
|
67
|
+
'private-key'?: string;
|
|
68
|
+
'sig-type': string;
|
|
69
|
+
'ttl-seconds': string;
|
|
70
|
+
undername: string;
|
|
71
|
+
wallet?: string;
|
|
72
|
+
preview?: boolean;
|
|
73
|
+
anchor?: boolean;
|
|
74
|
+
'preview-id'?: string;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Deploy command flag configurations
|
|
78
|
+
* Maps kebab-case flag names to their camelCase globalFlags definitions
|
|
79
|
+
*/
|
|
80
|
+
export declare const deployFlagConfigs: {
|
|
81
|
+
readonly 'ario-process': import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
82
|
+
readonly 'arns-name': import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
83
|
+
readonly 'deploy-file': import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
84
|
+
readonly 'deploy-folder': import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
85
|
+
readonly 'max-token-amount': import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
86
|
+
readonly 'on-demand': import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
87
|
+
readonly 'private-key': import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
88
|
+
readonly 'sig-type': import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
89
|
+
readonly 'ttl-seconds': import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
90
|
+
readonly undername: import("../utils/config-resolver.js").FlagConfig<string, any>;
|
|
91
|
+
readonly wallet: import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
92
|
+
readonly preview: import("../utils/config-resolver.js").FlagConfig<boolean, any>;
|
|
93
|
+
readonly anchor: import("../utils/config-resolver.js").FlagConfig<boolean, any>;
|
|
94
|
+
readonly 'preview-id': import("../utils/config-resolver.js").FlagConfig<string | undefined, any>;
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=flags.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../../../src/constants/flags.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;CA8IvB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;CAevB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;CAKrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;CAIvB,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;CAepB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface AdvancedOptions {
|
|
2
|
+
arioProcess: string;
|
|
3
|
+
maxTokenAmount?: string;
|
|
4
|
+
onDemand?: string;
|
|
5
|
+
ttlSeconds: string;
|
|
6
|
+
undername: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function promptArnsName(): Promise<string>;
|
|
9
|
+
export declare function promptUndername(): Promise<string>;
|
|
10
|
+
export declare function promptTtl(): Promise<string>;
|
|
11
|
+
export declare function promptArioProcess(): Promise<string>;
|
|
12
|
+
export declare function promptAdvancedOptions(): Promise<AdvancedOptions | null>;
|
|
13
|
+
//# sourceMappingURL=arns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arns.d.ts","sourceRoot":"","sources":["../../../src/prompts/arns.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAMtD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAKvD;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAMjD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAmBzD;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAoD7E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/prompts/deployment.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;CACxB;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,CAwBhE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface WalletConfig {
|
|
2
|
+
method: 'env' | 'file' | 'string';
|
|
3
|
+
privateKey?: string;
|
|
4
|
+
wallet?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function promptWalletMethod(): Promise<string>;
|
|
7
|
+
export declare function promptWalletFile(): Promise<string>;
|
|
8
|
+
export declare function promptPrivateKey(): Promise<string>;
|
|
9
|
+
export declare function promptSignerType(): Promise<string>;
|
|
10
|
+
export declare function getWalletConfig(): Promise<WalletConfig>;
|
|
11
|
+
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/prompts/wallet.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAA;IACjC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAS1D;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAMxD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAKxD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAWxD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC,CAY7D"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Flag } from '@oclif/core/lib/interfaces';
|
|
2
|
+
export type SignerType = 'arweave' | 'ethereum' | 'kyve' | 'polygon';
|
|
3
|
+
export interface DeployOptions {
|
|
4
|
+
'ario-process': string;
|
|
5
|
+
'arns-name': string;
|
|
6
|
+
'deploy-file': string;
|
|
7
|
+
'deploy-folder': string;
|
|
8
|
+
'private-key': string;
|
|
9
|
+
'sig-type': SignerType;
|
|
10
|
+
'ttl-seconds': string;
|
|
11
|
+
undername: string;
|
|
12
|
+
wallet: string;
|
|
13
|
+
}
|
|
14
|
+
export type DeployFlags = Partial<Record<keyof DeployOptions, Flag<string>>>;
|
|
15
|
+
export interface UploadResult {
|
|
16
|
+
id: string;
|
|
17
|
+
manifest?: {
|
|
18
|
+
paths: Record<string, {
|
|
19
|
+
id: string;
|
|
20
|
+
}>;
|
|
21
|
+
};
|
|
22
|
+
manifestResponse?: {
|
|
23
|
+
id: string;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export interface ArnsRecord {
|
|
27
|
+
processId: string;
|
|
28
|
+
type: string;
|
|
29
|
+
undernames?: string[];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AAEtD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAA;AAEpE,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAE5E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KACtC,CAAA;IACD,gBAAgB,CAAC,EAAE;QACjB,EAAE,EAAE,MAAM,CAAA;KACX,CAAA;CACF;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.test.d.ts","sourceRoot":"","sources":["../../../../src/utils/__tests__/constants.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration for a single flag with its associated prompt
|
|
3
|
+
*/
|
|
4
|
+
export type FlagConfig<T = any, F = any> = {
|
|
5
|
+
/** The oclif flag definition */
|
|
6
|
+
flag: F;
|
|
7
|
+
/** Optional prompt function to get the value interactively */
|
|
8
|
+
prompt?: () => Promise<T>;
|
|
9
|
+
/** Transform function to apply to the resolved value */
|
|
10
|
+
transform?: (value: T) => T;
|
|
11
|
+
/** Whether this flag triggers interactive mode when missing */
|
|
12
|
+
triggersInteractive?: boolean;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Map of flag configurations
|
|
16
|
+
*/
|
|
17
|
+
export type FlagConfigMap = Record<string, FlagConfig<any, any>>;
|
|
18
|
+
/**
|
|
19
|
+
* Extract the resolved config type from a FlagConfigMap
|
|
20
|
+
* Infers the actual type (string, number, boolean) and optionality from each FlagConfig
|
|
21
|
+
*/
|
|
22
|
+
export type ResolvedConfig<T extends FlagConfigMap> = {
|
|
23
|
+
[K in keyof T]: T[K] extends FlagConfig<infer U, any> ? U : any;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Options for resolveConfig
|
|
27
|
+
*/
|
|
28
|
+
export interface ResolveConfigOptions {
|
|
29
|
+
/** Whether to run in interactive mode */
|
|
30
|
+
interactive?: boolean;
|
|
31
|
+
/** Custom logic to determine if interactive mode should be enabled */
|
|
32
|
+
shouldBeInteractive?: (parsedFlags: Record<string, any>) => boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Resolves configuration by combining parsed CLI flags with interactive prompts
|
|
36
|
+
*
|
|
37
|
+
* @param flagConfigs - Map of flag names to their configurations
|
|
38
|
+
* @param parsedFlags - Parsed flags from this.parse()
|
|
39
|
+
* @param options - Resolution options
|
|
40
|
+
* @returns Fully resolved configuration object
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const config = await resolveConfig(
|
|
45
|
+
* {
|
|
46
|
+
* arnsName: {
|
|
47
|
+
* flag: globalFlags.arnsName,
|
|
48
|
+
* prompt: promptArnsName,
|
|
49
|
+
* triggersInteractive: true,
|
|
50
|
+
* },
|
|
51
|
+
* wallet: {
|
|
52
|
+
* flag: globalFlags.wallet,
|
|
53
|
+
* prompt: async () => (await getWalletConfig()).wallet,
|
|
54
|
+
* },
|
|
55
|
+
* },
|
|
56
|
+
* flags,
|
|
57
|
+
* {
|
|
58
|
+
* shouldBeInteractive: (flags) => !flags['arns-name'],
|
|
59
|
+
* }
|
|
60
|
+
* )
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
export declare function resolveConfig<T extends FlagConfigMap>(flagConfigs: T, parsedFlags: Record<string, any>, options?: ResolveConfigOptions): Promise<ResolvedConfig<T>>;
|
|
64
|
+
/**
|
|
65
|
+
* Helper to create a flag configuration with proper type inference
|
|
66
|
+
*/
|
|
67
|
+
export declare function createFlagConfig<T, F = any>(config: FlagConfig<T, F>): FlagConfig<T, F>;
|
|
68
|
+
/**
|
|
69
|
+
* Helper to extract just the flags from a FlagConfigMap for use in command static flags
|
|
70
|
+
*/
|
|
71
|
+
export declare function extractFlags<T extends FlagConfigMap>(flagConfigs: T): Record<string, any>;
|
|
72
|
+
//# sourceMappingURL=config-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-resolver.d.ts","sourceRoot":"","sources":["../../../src/utils/config-resolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI;IACzC,gCAAgC;IAChC,IAAI,EAAE,CAAC,CAAA;IACP,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAA;IACzB,wDAAwD;IACxD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAC3B,+DAA+D;IAC/D,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAEhE;;;GAGG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,aAAa,IAAI;KACnD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG;CAChE,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yCAAyC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAA;CACpE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,aAAa,CAAC,CAAC,SAAS,aAAa,EACzD,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChC,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAqC5B;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAEvF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,WAAW,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAOzF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,QAAgB,CAAA;AAEhD,eAAO,MAAM,OAAO,KAAK,CAAA;AACzB,eAAO,MAAM,OAAO,QAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/utils/path.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUnD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ArweaveSigner } from '@ar.io/sdk';
|
|
2
|
+
import { EthereumSigner } from '@ardrive/turbo-sdk';
|
|
3
|
+
import type { SignerType } from '../types/index.js';
|
|
4
|
+
export declare function createSigner(sigType: SignerType, deployKey: string): {
|
|
5
|
+
signer: EthereumSigner;
|
|
6
|
+
token: "ethereum";
|
|
7
|
+
} | {
|
|
8
|
+
signer: EthereumSigner;
|
|
9
|
+
token: "pol";
|
|
10
|
+
} | {
|
|
11
|
+
signer: ArweaveSigner;
|
|
12
|
+
token: "arweave";
|
|
13
|
+
} | {
|
|
14
|
+
signer: EthereumSigner;
|
|
15
|
+
token: "kyve";
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=signer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/utils/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEnD,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;EAqClE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { OnDemandFunding, type TurboAuthenticatedClient } from '@ardrive/turbo-sdk';
|
|
2
|
+
export declare function uploadFile(turbo: TurboAuthenticatedClient, filePath: string, options?: {
|
|
3
|
+
fundingMode?: OnDemandFunding;
|
|
4
|
+
}): Promise<string>;
|
|
5
|
+
export declare function uploadFolder(turbo: TurboAuthenticatedClient, folderPath: string, options?: {
|
|
6
|
+
fundingMode?: OnDemandFunding;
|
|
7
|
+
}): Promise<string>;
|
|
8
|
+
//# sourceMappingURL=uploader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploader.d.ts","sourceRoot":"","sources":["../../../src/utils/uploader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAGnF,wBAAsB,UAAU,CAC9B,KAAK,EAAE,wBAAwB,EAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IACR,WAAW,CAAC,EAAE,eAAe,CAAA;CAC9B,GACA,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,wBAAwB,EAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IACR,WAAW,CAAC,EAAE,eAAe,CAAA;CAC9B,GACA,OAAO,CAAC,MAAM,CAAC,CA0DjB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate TTL seconds
|
|
3
|
+
*/
|
|
4
|
+
export declare function validateTtl(value: string): string | true;
|
|
5
|
+
/**
|
|
6
|
+
* Validate undername
|
|
7
|
+
*/
|
|
8
|
+
export declare function validateUndername(value: string): string | true;
|
|
9
|
+
/**
|
|
10
|
+
* Validate ARIO process ID
|
|
11
|
+
*/
|
|
12
|
+
export declare function validateArioProcess(value: string): string | true;
|
|
13
|
+
/**
|
|
14
|
+
* Validate file path exists
|
|
15
|
+
*/
|
|
16
|
+
export declare function validateFileExists(value: string): string | true;
|
|
17
|
+
/**
|
|
18
|
+
* Validate folder path exists
|
|
19
|
+
*/
|
|
20
|
+
export declare function validateFolderExists(value: string): string | true;
|
|
21
|
+
/**
|
|
22
|
+
* Resolve ARIO process from shorthand to actual ID
|
|
23
|
+
*/
|
|
24
|
+
export declare function resolveArioProcess(value: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Validate ArNS name is not empty
|
|
27
|
+
*/
|
|
28
|
+
export declare function validateArnsName(value: string): string | true;
|
|
29
|
+
//# sourceMappingURL=validators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../../src/utils/validators.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO/D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAUxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM7D"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test Arweave wallet JWK
|
|
3
|
+
* Loaded from fixtures/test_wallet.json
|
|
4
|
+
*/
|
|
5
|
+
export declare const TEST_ARWEAVE_WALLET: any;
|
|
6
|
+
/**
|
|
7
|
+
* Test Ethereum private key
|
|
8
|
+
* This is a deterministic test key - DO NOT use for real transactions
|
|
9
|
+
*/
|
|
10
|
+
export declare const TEST_ETH_PRIVATE_KEY = "0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef";
|
|
11
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../tests/constants.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,eAAO,MAAM,mBAAmB,KAE/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,uEACqC,CAAA"}
|