@nevermined-io/cli 1.3.2 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/base-command.d.ts +11 -1
- package/dist/base-command.d.ts.map +1 -1
- package/dist/base-command.js +14 -0
- package/dist/base-command.js.map +1 -1
- package/dist/commands/agents/register-agent-and-plan.d.ts.map +1 -1
- package/dist/commands/agents/register-agent-and-plan.js +5 -2
- package/dist/commands/agents/register-agent-and-plan.js.map +1 -1
- package/dist/commands/agents/register-agent.d.ts.map +1 -1
- package/dist/commands/agents/register-agent.js +5 -2
- package/dist/commands/agents/register-agent.js.map +1 -1
- package/dist/commands/agents/update-agent-metadata.d.ts.map +1 -1
- package/dist/commands/agents/update-agent-metadata.js +5 -2
- package/dist/commands/agents/update-agent-metadata.js.map +1 -1
- package/dist/commands/cards/delegate.d.ts +26 -0
- package/dist/commands/cards/delegate.d.ts.map +1 -0
- package/dist/commands/cards/delegate.js +87 -0
- package/dist/commands/cards/delegate.js.map +1 -0
- package/dist/commands/cards/enroll.d.ts +25 -0
- package/dist/commands/cards/enroll.d.ts.map +1 -0
- package/dist/commands/cards/enroll.js +88 -0
- package/dist/commands/cards/enroll.js.map +1 -0
- package/dist/commands/cards/setup.d.ts +28 -0
- package/dist/commands/cards/setup.d.ts.map +1 -0
- package/dist/commands/cards/setup.js +113 -0
- package/dist/commands/cards/setup.js.map +1 -0
- package/dist/commands/login.js +1 -26
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/organizations/get-my-memberships.d.ts +15 -0
- package/dist/commands/organizations/get-my-memberships.d.ts.map +1 -0
- package/dist/commands/organizations/get-my-memberships.js +25 -0
- package/dist/commands/organizations/get-my-memberships.js.map +1 -0
- package/dist/commands/organizations/get-organization-activity.d.ts +18 -0
- package/dist/commands/organizations/get-organization-activity.d.ts.map +1 -0
- package/dist/commands/organizations/get-organization-activity.js +32 -0
- package/dist/commands/organizations/get-organization-activity.js.map +1 -0
- package/dist/commands/plans/{set-proof-required.d.ts → set-onchain-mirror.d.ts} +4 -4
- package/dist/commands/plans/{set-proof-required.d.ts.map → set-onchain-mirror.d.ts.map} +1 -1
- package/dist/commands/plans/{set-proof-required.js → set-onchain-mirror.js} +7 -7
- package/dist/commands/plans/{set-proof-required.js.map → set-onchain-mirror.js.map} +1 -1
- package/dist/generator/command-generator.d.ts.map +1 -1
- package/dist/generator/command-generator.js +4 -2
- package/dist/generator/command-generator.js.map +1 -1
- package/dist/generator/generate.js +2 -2
- package/dist/generator/sync-check.js +2 -2
- package/dist/utils/browser.d.ts +14 -0
- package/dist/utils/browser.d.ts.map +1 -0
- package/dist/utils/browser.js +41 -0
- package/dist/utils/browser.js.map +1 -0
- package/dist/utils/orgs.d.ts +36 -0
- package/dist/utils/orgs.d.ts.map +1 -0
- package/dist/utils/orgs.js +65 -0
- package/dist/utils/orgs.js.map +1 -0
- package/dist/utils/widget-redirect-flow.d.ts +83 -0
- package/dist/utils/widget-redirect-flow.d.ts.map +1 -0
- package/dist/utils/widget-redirect-flow.js +259 -0
- package/dist/utils/widget-redirect-flow.js.map +1 -0
- package/oclif.manifest.json +431 -146
- package/package.json +4 -3
- package/dist/commands/plans/redeem-credits.d.ts +0 -21
- package/dist/commands/plans/redeem-credits.d.ts.map +0 -1
- package/dist/commands/plans/redeem-credits.js +0 -35
- package/dist/commands/plans/redeem-credits.js.map +0 -1
package/README.md
CHANGED
|
@@ -21,8 +21,8 @@ npx @nevermined-io/cli <command>
|
|
|
21
21
|
```bash
|
|
22
22
|
git clone https://github.com/nevermined-io/payments
|
|
23
23
|
cd payments/cli
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
pnpm install
|
|
25
|
+
pnpm build
|
|
26
26
|
./bin/run.js --help
|
|
27
27
|
```
|
|
28
28
|
|
|
@@ -178,19 +178,19 @@ nvm agents register-agent did:nvm:plan123 --config agent-config.json
|
|
|
178
178
|
### Building
|
|
179
179
|
|
|
180
180
|
```bash
|
|
181
|
-
|
|
181
|
+
pnpm build
|
|
182
182
|
```
|
|
183
183
|
|
|
184
184
|
### Testing
|
|
185
185
|
|
|
186
186
|
```bash
|
|
187
|
-
|
|
187
|
+
pnpm test
|
|
188
188
|
```
|
|
189
189
|
|
|
190
190
|
### Linting
|
|
191
191
|
|
|
192
192
|
```bash
|
|
193
|
-
|
|
193
|
+
pnpm lint
|
|
194
194
|
```
|
|
195
195
|
|
|
196
196
|
## License
|
package/dist/base-command.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Command } from '@oclif/core';
|
|
2
|
-
import { Payments } from '@nevermined-io/payments';
|
|
2
|
+
import { Payments, EnvironmentName } from '@nevermined-io/payments';
|
|
3
3
|
import { ConfigManager } from './utils/config-manager.js';
|
|
4
4
|
import { OutputFormatter } from './utils/output-formatter.js';
|
|
5
5
|
export declare abstract class BaseCommand extends Command {
|
|
@@ -11,6 +11,16 @@ export declare abstract class BaseCommand extends Command {
|
|
|
11
11
|
protected configManager: ConfigManager;
|
|
12
12
|
protected formatter: OutputFormatter;
|
|
13
13
|
protected payments?: Payments;
|
|
14
|
+
/**
|
|
15
|
+
* Environment + API key resolved by `initPayments()`. Stored here so
|
|
16
|
+
* subclasses that need to talk to the backend directly (e.g. commands
|
|
17
|
+
* that POST to endpoints the SDK does not yet wrap) don't have to
|
|
18
|
+
* re-implement the env-var-first → config-file fallback and
|
|
19
|
+
* accidentally diverge from the precedence the Payments instance was
|
|
20
|
+
* actually constructed with.
|
|
21
|
+
*/
|
|
22
|
+
protected resolvedEnvironment?: EnvironmentName;
|
|
23
|
+
protected resolvedNvmApiKey?: string;
|
|
14
24
|
init(): Promise<void>;
|
|
15
25
|
/**
|
|
16
26
|
* Initialize Payments SDK instance with configuration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-command.d.ts","sourceRoot":"","sources":["../src/base-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"base-command.d.ts","sourceRoot":"","sources":["../src/base-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,eAAe,EAAgB,MAAM,6BAA6B,CAAA;AAE3E,8BAAsB,WAAY,SAAQ,OAAO;IAC/C,MAAM,CAAC,SAAS;;;;MAiBf;IAED,SAAS,CAAC,aAAa,EAAG,aAAa,CAAA;IACvC,SAAS,CAAC,SAAS,EAAG,eAAe,CAAA;IACrC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC7B;;;;;;;OAOG;IACH,SAAS,CAAC,mBAAmB,CAAC,EAAE,eAAe,CAAA;IAC/C,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE9B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B;;OAEG;cACa,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC;IA6CjD;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAkDvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM1D;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAWlE;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;cACa,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAmB7D"}
|
package/dist/base-command.js
CHANGED
|
@@ -24,6 +24,16 @@ export class BaseCommand extends Command {
|
|
|
24
24
|
configManager;
|
|
25
25
|
formatter;
|
|
26
26
|
payments;
|
|
27
|
+
/**
|
|
28
|
+
* Environment + API key resolved by `initPayments()`. Stored here so
|
|
29
|
+
* subclasses that need to talk to the backend directly (e.g. commands
|
|
30
|
+
* that POST to endpoints the SDK does not yet wrap) don't have to
|
|
31
|
+
* re-implement the env-var-first → config-file fallback and
|
|
32
|
+
* accidentally diverge from the precedence the Payments instance was
|
|
33
|
+
* actually constructed with.
|
|
34
|
+
*/
|
|
35
|
+
resolvedEnvironment;
|
|
36
|
+
resolvedNvmApiKey;
|
|
27
37
|
async init() {
|
|
28
38
|
await super.init();
|
|
29
39
|
this.configManager = ConfigManager.getInstance();
|
|
@@ -61,6 +71,10 @@ export class BaseCommand extends Command {
|
|
|
61
71
|
nvmApiKey,
|
|
62
72
|
environment: environment,
|
|
63
73
|
});
|
|
74
|
+
// Expose for subclasses that need to talk to backend endpoints the
|
|
75
|
+
// SDK does not yet wrap — see `nvm cards setup/enroll/delegate`.
|
|
76
|
+
this.resolvedEnvironment = environment;
|
|
77
|
+
this.resolvedNvmApiKey = nvmApiKey;
|
|
64
78
|
return this.payments;
|
|
65
79
|
}
|
|
66
80
|
/**
|
package/dist/base-command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../src/base-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAmB,MAAM,yBAAyB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,eAAe,EAAgB,MAAM,6BAA6B,CAAA;AAE3E,MAAM,OAAgB,WAAY,SAAQ,OAAO;IAC/C,MAAM,CAAC,SAAS,GAAG;QACjB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,eAAe;YAC5B,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;YACnC,OAAO,EAAE,OAAO;SACjB,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAES,aAAa,CAAgB;IAC7B,SAAS,CAAkB;IAC3B,QAAQ,CAAW;
|
|
1
|
+
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../src/base-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-agent-and-plan.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/register-agent-and-plan.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,WAAW;IAC3D,OAAgB,WAAW,SAAoV;IAE/W,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"register-agent-and-plan.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/register-agent-and-plan.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,WAAW;IAC3D,OAAgB,WAAW,SAAoV;IAE/W,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;;;;;MAuBpB;IAIY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAalC"}
|
|
@@ -14,7 +14,10 @@ export default class RegisterAgentAndPlan extends BaseCommand {
|
|
|
14
14
|
description: "agentMetadata as JSON string",
|
|
15
15
|
required: true
|
|
16
16
|
}),
|
|
17
|
-
'agent-api': Flags.string({
|
|
17
|
+
'agent-api': Flags.string({
|
|
18
|
+
description: "agentApi as JSON string",
|
|
19
|
+
required: true
|
|
20
|
+
}),
|
|
18
21
|
'plan-metadata': Flags.string({
|
|
19
22
|
description: "planMetadata as JSON string",
|
|
20
23
|
required: true
|
|
@@ -33,7 +36,7 @@ export default class RegisterAgentAndPlan extends BaseCommand {
|
|
|
33
36
|
const { flags } = await this.parse(this.constructor);
|
|
34
37
|
const payments = await this.initPayments();
|
|
35
38
|
try {
|
|
36
|
-
const result = await payments.agents.registerAgentAndPlan(await this.parseJsonInput(flags['agent-metadata']), flags['agent-api'], await this.parseJsonInput(flags['plan-metadata']), await this.parseJsonInput(flags['price-config']), await this.parseJsonInput(flags['credits-config']), flags['access-limit']);
|
|
39
|
+
const result = await payments.agents.registerAgentAndPlan(await this.parseJsonInput(flags['agent-metadata']), await this.parseJsonInput(flags['agent-api']), await this.parseJsonInput(flags['plan-metadata']), await this.parseJsonInput(flags['price-config']), await this.parseJsonInput(flags['credits-config']), flags['access-limit']);
|
|
37
40
|
this.formatter.output(result);
|
|
38
41
|
}
|
|
39
42
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-agent-and-plan.js","sourceRoot":"","sources":["../../../src/commands/agents/register-agent-and-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,WAAW;IAC3D,MAAM,CAAU,WAAW,GAAG,iVAAiV,CAAA;IAE/W,MAAM,CAAU,QAAQ,GAAG;QACzB,sCAAsC;KACvC,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"register-agent-and-plan.js","sourceRoot":"","sources":["../../../src/commands/agents/register-agent-and-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,WAAW;IAC3D,MAAM,CAAU,WAAW,GAAG,iVAAiV,CAAA;IAE/W,MAAM,CAAU,QAAQ,GAAG;QACzB,sCAAsC;KACvC,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC;YAC5B,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC;YAC3B,WAAW,EAAE,4BAA4B;YACzC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;KAClD,CAAA;IAIM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAkB,CAAC,CAAA;QAE3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QAE1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;YAE5U,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;IACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-agent.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/register-agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,OAAgB,WAAW,SAAmb;IAE9c,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;;
|
|
1
|
+
{"version":3,"file":"register-agent.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/register-agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,OAAgB,WAAW,SAAmb;IAE9c,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;;MAWpB;IAIY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAalC"}
|
|
@@ -14,14 +14,17 @@ export default class RegisterAgent extends BaseCommand {
|
|
|
14
14
|
description: "agentMetadata as JSON string",
|
|
15
15
|
required: true
|
|
16
16
|
}),
|
|
17
|
-
'agent-api': Flags.string({
|
|
17
|
+
'agent-api': Flags.string({
|
|
18
|
+
description: "agentApi as JSON string",
|
|
19
|
+
required: true
|
|
20
|
+
}),
|
|
18
21
|
'payment-plans': Flags.string({ required: true }),
|
|
19
22
|
};
|
|
20
23
|
async run() {
|
|
21
24
|
const { flags } = await this.parse(this.constructor);
|
|
22
25
|
const payments = await this.initPayments();
|
|
23
26
|
try {
|
|
24
|
-
const result = await payments.agents.registerAgent(await this.parseJsonInput(flags['agent-metadata']), flags['agent-api'], flags['payment-plans']);
|
|
27
|
+
const result = await payments.agents.registerAgent(await this.parseJsonInput(flags['agent-metadata']), await this.parseJsonInput(flags['agent-api']), flags['payment-plans']);
|
|
25
28
|
this.formatter.output(result);
|
|
26
29
|
}
|
|
27
30
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-agent.js","sourceRoot":"","sources":["../../../src/commands/agents/register-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,MAAM,CAAU,WAAW,GAAG,gbAAgb,CAAA;IAE9c,MAAM,CAAU,QAAQ,GAAG;QACzB,6BAA6B;KAC9B,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"register-agent.js","sourceRoot":"","sources":["../../../src/commands/agents/register-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,MAAM,CAAU,WAAW,GAAG,gbAAgb,CAAA;IAE9c,MAAM,CAAU,QAAQ,GAAG;QACzB,6BAA6B;KAC9B,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KAClD,CAAA;IAIM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAkB,CAAC,CAAA;QAE3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QAE1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;YAE7K,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;IACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-agent-metadata.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/update-agent-metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,OAAgB,WAAW,SAAqE;IAEhG,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;
|
|
1
|
+
{"version":3,"file":"update-agent-metadata.d.ts","sourceRoot":"","sources":["../../../src/commands/agents/update-agent-metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,OAAgB,WAAW,SAAqE;IAEhG,OAAgB,QAAQ,WAEvB;IAED,OAAgB,KAAK;;;;;;MAUpB;IAED,OAAgB,IAAI;;MAKnB;IAGY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAalC"}
|
|
@@ -14,7 +14,10 @@ export default class UpdateAgentMetadata extends BaseCommand {
|
|
|
14
14
|
description: "agentMetadata as JSON string",
|
|
15
15
|
required: true
|
|
16
16
|
}),
|
|
17
|
-
'agent-api': Flags.string({
|
|
17
|
+
'agent-api': Flags.string({
|
|
18
|
+
description: "agentApi as JSON string",
|
|
19
|
+
required: true
|
|
20
|
+
}),
|
|
18
21
|
};
|
|
19
22
|
static args = {
|
|
20
23
|
agent: Args.string({
|
|
@@ -26,7 +29,7 @@ export default class UpdateAgentMetadata extends BaseCommand {
|
|
|
26
29
|
const { flags, args } = await this.parse(this.constructor);
|
|
27
30
|
const payments = await this.initPayments();
|
|
28
31
|
try {
|
|
29
|
-
const result = await payments.agents.updateAgentMetadata(args.agent, await this.parseJsonInput(flags['agent-metadata']), flags['agent-api']);
|
|
32
|
+
const result = await payments.agents.updateAgentMetadata(args.agent, await this.parseJsonInput(flags['agent-metadata']), await this.parseJsonInput(flags['agent-api']));
|
|
30
33
|
this.formatter.output(result);
|
|
31
34
|
}
|
|
32
35
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-agent-metadata.js","sourceRoot":"","sources":["../../../src/commands/agents/update-agent-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,MAAM,CAAU,WAAW,GAAG,kEAAkE,CAAA;IAEhG,MAAM,CAAU,QAAQ,GAAG;QACzB,8CAA8C;KAC/C,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"update-agent-metadata.js","sourceRoot":"","sources":["../../../src/commands/agents/update-agent-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,MAAM,CAAU,WAAW,GAAG,kEAAkE,CAAA;IAEhG,MAAM,CAAU,QAAQ,GAAG;QACzB,8CAA8C;KAC/C,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,SAAS;QACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,IAAI,GAAG;QACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAGM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAkB,CAAC,CAAA;QAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QAE1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;YAEvK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BaseCommand } from '../../base-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* Single-purpose delegation creation. Opens the chromeless
|
|
4
|
+
* `/embed/cards/delegate?paymentMethodId=<id>` page where the user
|
|
5
|
+
* fills in spending limit / duration / max-transactions and submits;
|
|
6
|
+
* the resulting `delegationId` is redirected back to a localhost
|
|
7
|
+
* callback.
|
|
8
|
+
*
|
|
9
|
+
* The combined `nvm cards setup` flow is preferred for first-time
|
|
10
|
+
* card setup; use this when the card already exists and only the
|
|
11
|
+
* delegation needs to be (re-)created.
|
|
12
|
+
*/
|
|
13
|
+
export default class CardsDelegate extends BaseCommand {
|
|
14
|
+
static description: string;
|
|
15
|
+
static examples: string[];
|
|
16
|
+
static flags: {
|
|
17
|
+
card: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
18
|
+
org: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
19
|
+
'no-browser': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
20
|
+
profile: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
21
|
+
format: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
22
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
23
|
+
};
|
|
24
|
+
run(): Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=delegate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate.d.ts","sourceRoot":"","sources":["../../../src/commands/cards/delegate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAOnD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,OAAgB,WAAW,SACuD;IAElF,OAAgB,QAAQ,WAIvB;IAED,OAAgB,KAAK;;;;;;;MAepB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAoDlC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { Environments } from '@nevermined-io/payments';
|
|
3
|
+
import { BaseCommand } from '../../base-command.js';
|
|
4
|
+
import { resolveOrgIdInteractive } from '../../utils/orgs.js';
|
|
5
|
+
import { mintSelfWidgetSession, runWidgetRedirectFlow, } from '../../utils/widget-redirect-flow.js';
|
|
6
|
+
/**
|
|
7
|
+
* Single-purpose delegation creation. Opens the chromeless
|
|
8
|
+
* `/embed/cards/delegate?paymentMethodId=<id>` page where the user
|
|
9
|
+
* fills in spending limit / duration / max-transactions and submits;
|
|
10
|
+
* the resulting `delegationId` is redirected back to a localhost
|
|
11
|
+
* callback.
|
|
12
|
+
*
|
|
13
|
+
* The combined `nvm cards setup` flow is preferred for first-time
|
|
14
|
+
* card setup; use this when the card already exists and only the
|
|
15
|
+
* delegation needs to be (re-)created.
|
|
16
|
+
*/
|
|
17
|
+
export default class CardsDelegate extends BaseCommand {
|
|
18
|
+
static description = 'Open the browser to create a spending delegation for an already-enrolled card.';
|
|
19
|
+
static examples = [
|
|
20
|
+
'<%= config.bin %> cards delegate --card pm_1234',
|
|
21
|
+
'<%= config.bin %> cards delegate --card pm_1234 --org org-abc-123',
|
|
22
|
+
'<%= config.bin %> cards delegate --card pm_1234 --no-browser',
|
|
23
|
+
];
|
|
24
|
+
static flags = {
|
|
25
|
+
...BaseCommand.baseFlags,
|
|
26
|
+
card: Flags.string({
|
|
27
|
+
description: 'paymentMethodId of the already-enrolled card to delegate from.',
|
|
28
|
+
required: true,
|
|
29
|
+
}),
|
|
30
|
+
org: Flags.string({
|
|
31
|
+
description: 'Organization id to scope the flow to. Required when the authenticated user belongs to multiple organizations and the terminal is non-interactive.',
|
|
32
|
+
required: false,
|
|
33
|
+
}),
|
|
34
|
+
'no-browser': Flags.boolean({
|
|
35
|
+
description: 'Print the delegation URL instead of opening the browser.',
|
|
36
|
+
default: false,
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
39
|
+
async run() {
|
|
40
|
+
try {
|
|
41
|
+
const { flags } = await this.parse(CardsDelegate);
|
|
42
|
+
const payments = await this.initPayments();
|
|
43
|
+
const { orgId } = await resolveOrgIdInteractive({
|
|
44
|
+
payments,
|
|
45
|
+
flagOrgId: flags.org,
|
|
46
|
+
log: (msg) => this.log(msg),
|
|
47
|
+
});
|
|
48
|
+
const environment = this.resolvedEnvironment;
|
|
49
|
+
const nvmApiKey = this.resolvedNvmApiKey;
|
|
50
|
+
const env = Environments[environment];
|
|
51
|
+
if (!env) {
|
|
52
|
+
this.error(`Unknown environment: ${String(environment)}`, { exit: 1 });
|
|
53
|
+
}
|
|
54
|
+
const result = await runWidgetRedirectFlow({
|
|
55
|
+
frontendUrl: env.frontend,
|
|
56
|
+
embedPath: '/embed/cards/delegate',
|
|
57
|
+
mintSession: async ({ returnUrl }) => {
|
|
58
|
+
const session = await mintSelfWidgetSession({
|
|
59
|
+
backendUrl: env.backend,
|
|
60
|
+
nvmApiKey,
|
|
61
|
+
orgId,
|
|
62
|
+
returnUrl,
|
|
63
|
+
});
|
|
64
|
+
if (session.isReturnUrlAllowed === false) {
|
|
65
|
+
throw new Error(`Backend rejected returnUrl ${returnUrl} — check the widget key's allowedOrigins or fall back to a localhost callback.`);
|
|
66
|
+
}
|
|
67
|
+
return { sessionToken: session.sessionToken };
|
|
68
|
+
},
|
|
69
|
+
extraSearchParams: { paymentMethodId: flags.card },
|
|
70
|
+
noBrowser: flags['no-browser'],
|
|
71
|
+
log: (msg) => this.log(msg),
|
|
72
|
+
successPageTitle: 'Delegation created',
|
|
73
|
+
timeoutMessage: 'Delegation creation timed out after 5 minutes. Please try again.',
|
|
74
|
+
});
|
|
75
|
+
const delegationId = result.query.delegationId;
|
|
76
|
+
if (!delegationId) {
|
|
77
|
+
this.error('Delegation callback was missing delegationId.', { exit: 1 });
|
|
78
|
+
}
|
|
79
|
+
this.formatter.success(`Delegation created. delegationId: ${delegationId}`);
|
|
80
|
+
this.formatter.output({ delegationId, paymentMethodId: flags.card, orgId });
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
this.handleError(error);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=delegate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../src/commands/cards/delegate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { BaseCommand } from '../../base-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* Single-purpose card enrolment. Opens the chromeless
|
|
4
|
+
* `/embed/cards/enroll` page in the browser, completes the
|
|
5
|
+
* tokenization step against the chosen provider, and redirects the
|
|
6
|
+
* resulting `paymentMethodId` back to a localhost callback.
|
|
7
|
+
*
|
|
8
|
+
* For the common case of "add a card AND a delegation in one flow",
|
|
9
|
+
* use `nvm cards setup` instead — the combined command emits both IDs
|
|
10
|
+
* in a single callback.
|
|
11
|
+
*/
|
|
12
|
+
export default class CardsEnroll extends BaseCommand {
|
|
13
|
+
static description: string;
|
|
14
|
+
static examples: string[];
|
|
15
|
+
static flags: {
|
|
16
|
+
org: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
17
|
+
'no-browser': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
18
|
+
provider: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
19
|
+
profile: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
20
|
+
format: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
21
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
22
|
+
};
|
|
23
|
+
run(): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=enroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enroll.d.ts","sourceRoot":"","sources":["../../../src/commands/cards/enroll.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAOnD;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,OAAgB,WAAW,SACyF;IAEpH,OAAgB,QAAQ,WAKvB;IAED,OAAgB,KAAK;;;;;;;MAgBpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAoDlC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { Environments } from '@nevermined-io/payments';
|
|
3
|
+
import { BaseCommand } from '../../base-command.js';
|
|
4
|
+
import { resolveOrgIdInteractive } from '../../utils/orgs.js';
|
|
5
|
+
import { mintSelfWidgetSession, runWidgetRedirectFlow, } from '../../utils/widget-redirect-flow.js';
|
|
6
|
+
/**
|
|
7
|
+
* Single-purpose card enrolment. Opens the chromeless
|
|
8
|
+
* `/embed/cards/enroll` page in the browser, completes the
|
|
9
|
+
* tokenization step against the chosen provider, and redirects the
|
|
10
|
+
* resulting `paymentMethodId` back to a localhost callback.
|
|
11
|
+
*
|
|
12
|
+
* For the common case of "add a card AND a delegation in one flow",
|
|
13
|
+
* use `nvm cards setup` instead — the combined command emits both IDs
|
|
14
|
+
* in a single callback.
|
|
15
|
+
*/
|
|
16
|
+
export default class CardsEnroll extends BaseCommand {
|
|
17
|
+
static description = 'Open the browser to enroll a credit/debit card and redirect the resulting paymentMethodId back to this terminal.';
|
|
18
|
+
static examples = [
|
|
19
|
+
'<%= config.bin %> cards enroll',
|
|
20
|
+
'<%= config.bin %> cards enroll --org org-abc-123',
|
|
21
|
+
'<%= config.bin %> cards enroll --provider braintree',
|
|
22
|
+
'<%= config.bin %> cards enroll --no-browser',
|
|
23
|
+
];
|
|
24
|
+
static flags = {
|
|
25
|
+
...BaseCommand.baseFlags,
|
|
26
|
+
org: Flags.string({
|
|
27
|
+
description: 'Organization id to scope the flow to. Required when the authenticated user belongs to multiple organizations and the terminal is non-interactive.',
|
|
28
|
+
required: false,
|
|
29
|
+
}),
|
|
30
|
+
'no-browser': Flags.boolean({
|
|
31
|
+
description: 'Print the enrolment URL instead of opening the browser.',
|
|
32
|
+
default: false,
|
|
33
|
+
}),
|
|
34
|
+
provider: Flags.string({
|
|
35
|
+
description: 'Tokenization provider used for the card enrolment step.',
|
|
36
|
+
options: ['stripe', 'braintree', 'visa'],
|
|
37
|
+
default: 'stripe',
|
|
38
|
+
}),
|
|
39
|
+
};
|
|
40
|
+
async run() {
|
|
41
|
+
try {
|
|
42
|
+
const { flags } = await this.parse(CardsEnroll);
|
|
43
|
+
const payments = await this.initPayments();
|
|
44
|
+
const { orgId } = await resolveOrgIdInteractive({
|
|
45
|
+
payments,
|
|
46
|
+
flagOrgId: flags.org,
|
|
47
|
+
log: (msg) => this.log(msg),
|
|
48
|
+
});
|
|
49
|
+
const environment = this.resolvedEnvironment;
|
|
50
|
+
const nvmApiKey = this.resolvedNvmApiKey;
|
|
51
|
+
const env = Environments[environment];
|
|
52
|
+
if (!env) {
|
|
53
|
+
this.error(`Unknown environment: ${String(environment)}`, { exit: 1 });
|
|
54
|
+
}
|
|
55
|
+
const result = await runWidgetRedirectFlow({
|
|
56
|
+
frontendUrl: env.frontend,
|
|
57
|
+
embedPath: '/embed/cards/enroll',
|
|
58
|
+
mintSession: async ({ returnUrl }) => {
|
|
59
|
+
const session = await mintSelfWidgetSession({
|
|
60
|
+
backendUrl: env.backend,
|
|
61
|
+
nvmApiKey,
|
|
62
|
+
orgId,
|
|
63
|
+
returnUrl,
|
|
64
|
+
});
|
|
65
|
+
if (session.isReturnUrlAllowed === false) {
|
|
66
|
+
throw new Error(`Backend rejected returnUrl ${returnUrl} — check the widget key's allowedOrigins or fall back to a localhost callback.`);
|
|
67
|
+
}
|
|
68
|
+
return { sessionToken: session.sessionToken };
|
|
69
|
+
},
|
|
70
|
+
extraSearchParams: { provider: flags.provider },
|
|
71
|
+
noBrowser: flags['no-browser'],
|
|
72
|
+
log: (msg) => this.log(msg),
|
|
73
|
+
successPageTitle: 'Card enrolled',
|
|
74
|
+
timeoutMessage: 'Card enrolment timed out after 5 minutes. Please try again.',
|
|
75
|
+
});
|
|
76
|
+
const paymentMethodId = result.query.paymentMethodId;
|
|
77
|
+
if (!paymentMethodId) {
|
|
78
|
+
this.error('Enrolment callback was missing paymentMethodId.', { exit: 1 });
|
|
79
|
+
}
|
|
80
|
+
this.formatter.success(`Card enrolled. paymentMethodId: ${paymentMethodId}`);
|
|
81
|
+
this.formatter.output({ paymentMethodId, orgId });
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
this.handleError(error);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=enroll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enroll.js","sourceRoot":"","sources":["../../../src/commands/cards/enroll.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { BaseCommand } from '../../base-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* Combined "set up a card for agent spend" flow. Opens the user's
|
|
4
|
+
* browser at the chromeless `/embed/cards/setup` page, where they
|
|
5
|
+
* enrol a card and create a spending delegation in one session, and
|
|
6
|
+
* receives `paymentMethodId` + `delegationId` back at a localhost
|
|
7
|
+
* callback the CLI starts for the duration of the flow.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors the `nvm login` UX: ephemeral HTTP server on a random port,
|
|
10
|
+
* URL printed (or browser opened), 5-minute timeout, single-use
|
|
11
|
+
* `state` echo for CSRF binding. The user must already be authenticated
|
|
12
|
+
* (`nvm login`) and must be a member of at least one organisation —
|
|
13
|
+
* the widgets feature is organisation-scoped (see issue #1671).
|
|
14
|
+
*/
|
|
15
|
+
export default class CardsSetup extends BaseCommand {
|
|
16
|
+
static description: string;
|
|
17
|
+
static examples: string[];
|
|
18
|
+
static flags: {
|
|
19
|
+
org: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
20
|
+
'no-browser': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
21
|
+
provider: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
22
|
+
profile: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
23
|
+
format: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
24
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
25
|
+
};
|
|
26
|
+
run(): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/commands/cards/setup.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAOnD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,OAAgB,WAAW,SAC0F;IAErH,OAAgB,QAAQ,WAIvB;IAED,OAAgB,KAAK;;;;;;;MAgBpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgFlC"}
|