@affinidi/cli 2.8.1 → 2.9.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.
Files changed (59) hide show
  1. package/README.md +2 -0
  2. package/dist/commands/iota/create-config.d.ts +19 -0
  3. package/dist/commands/iota/create-config.js +160 -0
  4. package/dist/commands/iota/create-config.js.map +1 -0
  5. package/dist/commands/iota/create-query.d.ts +13 -0
  6. package/dist/commands/iota/create-query.js +72 -0
  7. package/dist/commands/iota/create-query.js.map +1 -0
  8. package/dist/commands/iota/delete-config.d.ts +11 -0
  9. package/dist/commands/iota/delete-config.js +34 -0
  10. package/dist/commands/iota/delete-config.js.map +1 -0
  11. package/dist/commands/iota/delete-query.d.ts +12 -0
  12. package/dist/commands/iota/delete-query.js +39 -0
  13. package/dist/commands/iota/delete-query.js.map +1 -0
  14. package/dist/commands/iota/get-config.d.ts +10 -0
  15. package/dist/commands/iota/get-config.js +34 -0
  16. package/dist/commands/iota/get-config.js.map +1 -0
  17. package/dist/commands/iota/get-query.d.ts +11 -0
  18. package/dist/commands/iota/get-query.js +39 -0
  19. package/dist/commands/iota/get-query.js.map +1 -0
  20. package/dist/commands/iota/list-configs.d.ts +7 -0
  21. package/dist/commands/iota/list-configs.js +16 -0
  22. package/dist/commands/iota/list-configs.js.map +1 -0
  23. package/dist/commands/iota/list-queries.d.ts +10 -0
  24. package/dist/commands/iota/list-queries.js +34 -0
  25. package/dist/commands/iota/list-queries.js.map +1 -0
  26. package/dist/commands/iota/update-config.d.ts +20 -0
  27. package/dist/commands/iota/update-config.js +97 -0
  28. package/dist/commands/iota/update-config.js.map +1 -0
  29. package/dist/commands/iota/update-query.d.ts +13 -0
  30. package/dist/commands/iota/update-query.js +73 -0
  31. package/dist/commands/iota/update-query.js.map +1 -0
  32. package/dist/commands/wallet/create-wallet.d.ts +13 -0
  33. package/dist/commands/wallet/create-wallet.js +102 -0
  34. package/dist/commands/wallet/create-wallet.js.map +1 -0
  35. package/dist/commands/wallet/delete-wallet.d.ts +11 -0
  36. package/dist/commands/wallet/delete-wallet.js +34 -0
  37. package/dist/commands/wallet/delete-wallet.js.map +1 -0
  38. package/dist/commands/wallet/get-wallet.d.ts +10 -0
  39. package/dist/commands/wallet/get-wallet.js +34 -0
  40. package/dist/commands/wallet/get-wallet.js.map +1 -0
  41. package/dist/commands/wallet/list-wallets.d.ts +7 -0
  42. package/dist/commands/wallet/list-wallets.js +16 -0
  43. package/dist/commands/wallet/list-wallets.js.map +1 -0
  44. package/dist/commands/wallet/update-wallet.d.ts +12 -0
  45. package/dist/commands/wallet/update-wallet.js +65 -0
  46. package/dist/commands/wallet/update-wallet.js.map +1 -0
  47. package/dist/common/constants.d.ts +4 -0
  48. package/dist/common/constants.js +5 -0
  49. package/dist/common/constants.js.map +1 -1
  50. package/dist/services/affinidi/cwe/service.d.ts +12 -0
  51. package/dist/services/affinidi/cwe/service.js +59 -0
  52. package/dist/services/affinidi/cwe/service.js.map +1 -0
  53. package/dist/services/affinidi/errors.d.ts +1 -1
  54. package/dist/services/affinidi/errors.js +3 -0
  55. package/dist/services/affinidi/errors.js.map +1 -1
  56. package/dist/services/affinidi/iota/service.d.ts +18 -0
  57. package/dist/services/affinidi/iota/service.js +104 -0
  58. package/dist/services/affinidi/iota/service.js.map +1 -0
  59. package/package.json +9 -1
@@ -0,0 +1,20 @@
1
+ import { IotaConfigurationDto } from '@affinidi-tdk/iota-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class UpdateIotaConfig extends BaseCommand<typeof UpdateIotaConfig> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ static flags: {
7
+ id: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ description: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'wallet-ari': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ 'token-max-age': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
+ 'response-webhook-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
+ 'enable-verification': import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ 'enable-consent-audit-log': import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ 'client-name': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
+ 'client-origin': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ 'client-logo': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ };
19
+ run(): Promise<IotaConfigurationDto>;
20
+ }
@@ -0,0 +1,97 @@
1
+ import { ux, Flags } from '@oclif/core';
2
+ import z from 'zod';
3
+ import { BaseCommand } from '../../common/base-command.js';
4
+ import { promptRequiredParameters } from '../../common/prompts.js';
5
+ import { INPUT_LIMIT } from '../../common/validators.js';
6
+ import { iotaService } from '../../services/affinidi/iota/service.js';
7
+ export class UpdateIotaConfig extends BaseCommand {
8
+ async run() {
9
+ const { flags } = await this.parse(UpdateIotaConfig);
10
+ const promptFlags = await promptRequiredParameters(['id'], flags);
11
+ const flagsSchema = z.object({ id: z.string().max(INPUT_LIMIT).uuid() });
12
+ const validatedFlags = flagsSchema.parse(promptFlags);
13
+ const data = {
14
+ name: promptFlags.name ?? undefined,
15
+ description: promptFlags.description ?? undefined,
16
+ walletAri: promptFlags['wallet-ari'] ?? undefined,
17
+ iotaResponseWebhookURL: promptFlags['response-webhook-url'] ?? undefined,
18
+ enableVerification: promptFlags['enable-verification'] ?? false,
19
+ enableConsentAuditLog: promptFlags['enable-consent-audit-log'] ?? false,
20
+ tokenMaxAge: promptFlags['token-max-age'] ?? undefined,
21
+ };
22
+ if (promptFlags['client-name'] || promptFlags['client-origin'] || promptFlags['client-logo']) {
23
+ data.clientMetadata = {
24
+ name: promptFlags['client-name'] ?? undefined,
25
+ origin: promptFlags['client-origin'] ?? undefined,
26
+ logo: promptFlags['client-logo'] ?? undefined,
27
+ };
28
+ }
29
+ const schema = z.object({
30
+ name: z.string().max(INPUT_LIMIT).optional(),
31
+ description: z.string().max(INPUT_LIMIT).optional(),
32
+ walletAri: z.string().min(1).max(INPUT_LIMIT).optional(),
33
+ enableVerification: z.boolean().optional(),
34
+ enableConsentAuditLog: z.boolean().optional(),
35
+ tokenMaxAge: z.number().min(1).max(10).optional(),
36
+ iotaResponseWebhookURL: z.string().max(INPUT_LIMIT).optional(),
37
+ clientMetadata: z
38
+ .object({
39
+ name: z.string().max(INPUT_LIMIT),
40
+ origin: z.string().max(INPUT_LIMIT),
41
+ logo: z.string().max(INPUT_LIMIT),
42
+ })
43
+ .optional(),
44
+ });
45
+ const configInput = schema.parse(data);
46
+ ux.action.start('Updating Affinidi Iota Framework configuration');
47
+ const output = await iotaService.updateIotaConfigById(validatedFlags.id, configInput);
48
+ ux.action.stop('Updated successfully!');
49
+ if (!this.jsonEnabled())
50
+ this.logJson(output);
51
+ return output;
52
+ }
53
+ }
54
+ UpdateIotaConfig.summary = 'Updates Affinidi Iota Framework configuration in your active project';
55
+ UpdateIotaConfig.examples = [
56
+ '<%= config.bin %> <%= command.id %> -i <value>',
57
+ '<%= config.bin %> <%= command.id %> --id <value>',
58
+ ];
59
+ UpdateIotaConfig.flags = {
60
+ id: Flags.string({
61
+ char: 'i',
62
+ summary: 'ID of the Affinidi Iota Framework configuration',
63
+ }),
64
+ name: Flags.string({
65
+ char: 'n',
66
+ summary: 'Name of the Affinidi Iota Framework configuration',
67
+ }),
68
+ description: Flags.string({
69
+ char: 'd',
70
+ summary: 'Description of the Affinidi Iota Framework configuration',
71
+ }),
72
+ 'wallet-ari': Flags.string({
73
+ summary: 'ARI of the wallet',
74
+ }),
75
+ 'token-max-age': Flags.integer({
76
+ summary: 'Token expiration time in seconds - integer between 1 and 10',
77
+ }),
78
+ 'response-webhook-url': Flags.string({
79
+ summary: 'Affinidi Iota Framework response webhook URL',
80
+ }),
81
+ 'enable-verification': Flags.boolean({
82
+ summary: 'Perform verification',
83
+ }),
84
+ 'enable-consent-audit-log': Flags.boolean({
85
+ summary: 'Log consents',
86
+ }),
87
+ 'client-name': Flags.string({
88
+ summary: 'Name, displayed in the consent page',
89
+ }),
90
+ 'client-origin': Flags.string({
91
+ summary: 'Domain, displayed in the consent page',
92
+ }),
93
+ 'client-logo': Flags.string({
94
+ summary: 'Application URL of a logo, displayed in the consent page',
95
+ }),
96
+ };
97
+ //# sourceMappingURL=update-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-config.js","sourceRoot":"","sources":["../../../src/commands/iota/update-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { PexQueryDto } from '@affinidi-tdk/iota-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class UpdateQuery extends BaseCommand<typeof UpdateQuery> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ static flags: {
7
+ 'configuration-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ 'query-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ description: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ file: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ };
12
+ run(): Promise<PexQueryDto>;
13
+ }
@@ -0,0 +1,73 @@
1
+ import { readFile } from 'fs/promises';
2
+ import { ux, Flags } from '@oclif/core';
3
+ import { CLIError } from '@oclif/core/errors';
4
+ import z from 'zod';
5
+ import { BaseCommand } from '../../common/base-command.js';
6
+ import { promptRequiredParameters } from '../../common/prompts.js';
7
+ import { INPUT_LIMIT, PRESENTATION_DEFINITION_LIMIT, validateInputLength } from '../../common/validators.js';
8
+ import { iotaService } from '../../services/affinidi/iota/service.js';
9
+ export class UpdateQuery extends BaseCommand {
10
+ async run() {
11
+ const { flags } = await this.parse(UpdateQuery);
12
+ const promptFlags = await promptRequiredParameters(['configuration-id', 'query-id'], flags);
13
+ const flagsSchema = z.object({
14
+ 'configuration-id': z.string().max(INPUT_LIMIT).uuid(),
15
+ 'query-id': z.string().max(INPUT_LIMIT).uuid(),
16
+ description: z.string().max(INPUT_LIMIT).optional(),
17
+ file: z.string().optional(),
18
+ });
19
+ const validatedFlags = flagsSchema.parse(promptFlags);
20
+ let data = {};
21
+ if (validatedFlags.file) {
22
+ const rawData = await readFile(validatedFlags.file, 'utf8');
23
+ try {
24
+ data = JSON.parse(rawData);
25
+ }
26
+ catch (error) {
27
+ throw new CLIError(`Provided file is not a valid JSON\n${error.message}`);
28
+ }
29
+ const vpDefinition = JSON.stringify(data);
30
+ validateInputLength(vpDefinition, PRESENTATION_DEFINITION_LIMIT);
31
+ data.vpDefinition = vpDefinition;
32
+ }
33
+ if (validatedFlags.description) {
34
+ data.description = validatedFlags.description;
35
+ }
36
+ const inputSchema = z.object({
37
+ description: z.string().optional(),
38
+ vpDefinition: z.string().optional(),
39
+ });
40
+ const input = inputSchema.parse(data);
41
+ ux.action.start('Updating PEX query');
42
+ const output = await iotaService.updatePexQueryById(validatedFlags['configuration-id'], validatedFlags['query-id'], input);
43
+ ux.action.stop('Updated successfully!');
44
+ if (!this.jsonEnabled())
45
+ this.logJson(output);
46
+ return output;
47
+ }
48
+ }
49
+ UpdateQuery.summary = 'Updates PEX query for your Affinidi Iota Framework configuration';
50
+ UpdateQuery.examples = [
51
+ '<%= config.bin %> <%= command.id %> -c <value> -i <value> -d <value> -f pexQuery.json',
52
+ '<%= config.bin %> <%= command.id %> --configuration-id <value> --query-id <value> -d <value> -f pexQuery.json',
53
+ '<%= config.bin %> <%= command.id %> --configuration-id <value> --query-id <value> --description <value> --file pexQuery.json',
54
+ ];
55
+ UpdateQuery.flags = {
56
+ 'configuration-id': Flags.string({
57
+ char: 'c',
58
+ summary: 'ID of the Affinidi Iota Framework configuration',
59
+ }),
60
+ 'query-id': Flags.string({
61
+ char: 'i',
62
+ summary: 'PEX query ID',
63
+ }),
64
+ description: Flags.string({
65
+ char: 'd',
66
+ summary: 'PEX query description',
67
+ }),
68
+ file: Flags.string({
69
+ char: 'f',
70
+ summary: 'Location of a json file containing PEX query',
71
+ }),
72
+ };
73
+ //# sourceMappingURL=update-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-query.js","sourceRoot":"","sources":["../../../src/commands/iota/update-query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { CreateWalletResponse } from '@affinidi-tdk/wallets-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class CreateWallet extends BaseCommand<typeof CreateWallet> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ static flags: {
7
+ name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ description: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
+ 'did-method': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'did-web-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ };
12
+ run(): Promise<CreateWalletResponse>;
13
+ }
@@ -0,0 +1,102 @@
1
+ var _a;
2
+ import { input, select } from '@inquirer/prompts';
3
+ import { ux, Flags } from '@oclif/core';
4
+ import { CLIError } from '@oclif/core/errors';
5
+ import z from 'zod';
6
+ import { BaseCommand } from '../../common/base-command.js';
7
+ import { DidMethods } from '../../common/constants.js';
8
+ import { giveFlagInputErrorMessage } from '../../common/error-messages.js';
9
+ import { INPUT_LIMIT, validateInputLength } from '../../common/validators.js';
10
+ import { cweService } from '../../services/affinidi/cwe/service.js';
11
+ export class CreateWallet extends BaseCommand {
12
+ async run() {
13
+ const { flags } = await this.parse(_a);
14
+ if (flags['no-input']) {
15
+ if (!flags['did-method']) {
16
+ throw new CLIError(giveFlagInputErrorMessage('did-method'));
17
+ }
18
+ if (flags['did-method'] === DidMethods.WEB && !flags['did-web-url']) {
19
+ throw new CLIError(giveFlagInputErrorMessage('did-web-url'));
20
+ }
21
+ }
22
+ const walletDidMethodChoices = Object.values(DidMethods).map((method) => ({
23
+ name: method,
24
+ value: method,
25
+ default: DidMethods.KEY,
26
+ }));
27
+ const name = flags.name ?? '';
28
+ const description = flags.description ?? '';
29
+ const didMethod = flags['did-method'] ?? (await select({ message: 'Select DID method of wallet', choices: walletDidMethodChoices }));
30
+ const isDidWeb = didMethod === DidMethods.WEB;
31
+ const didWebUrl = isDidWeb
32
+ ? flags['did-web-url'] ??
33
+ validateInputLength(await input({ message: 'Enter did:web URL (your applications domain)' }), INPUT_LIMIT)
34
+ : undefined;
35
+ const data = {
36
+ name,
37
+ description,
38
+ didMethod,
39
+ ...(isDidWeb && { didWebUrl }),
40
+ };
41
+ const schema = z
42
+ .object({
43
+ name: z.string().max(INPUT_LIMIT).optional(),
44
+ description: z.string().max(INPUT_LIMIT).optional(),
45
+ didMethod: z.nativeEnum(DidMethods).optional(),
46
+ didWebUrl: z.string().min(3).max(INPUT_LIMIT).optional(),
47
+ })
48
+ .refine((wallet) => {
49
+ if (wallet.didMethod === DidMethods.WEB && !wallet.didWebUrl) {
50
+ return false;
51
+ }
52
+ return true;
53
+ });
54
+ const createWalletInput = schema.parse(data);
55
+ ux.action.start('Creating wallet');
56
+ const output = await cweService.createWallet(createWalletInput);
57
+ ux.action.stop('Created successfully!');
58
+ if (!this.jsonEnabled())
59
+ this.logJson(output);
60
+ return output;
61
+ }
62
+ }
63
+ _a = CreateWallet;
64
+ CreateWallet.summary = 'Creates wallet in your active project';
65
+ CreateWallet.examples = [
66
+ '<%= config.bin %> <%= command.id %>',
67
+ '<%= config.bin %> <%= command.id %> --name <value> --description <value>',
68
+ '<%= config.bin %> <%= command.id %> --name <value> --description <value> --did-method key',
69
+ '<%= config.bin %> <%= command.id %> --name <value> --description <value> --did-method web --did-web-url <value>',
70
+ ];
71
+ CreateWallet.flags = {
72
+ name: Flags.string({
73
+ char: 'n',
74
+ summary: 'Name of the wallet',
75
+ }),
76
+ description: Flags.string({
77
+ char: 'd',
78
+ summary: 'Description of the wallet',
79
+ default: '',
80
+ }),
81
+ 'did-method': Flags.string({
82
+ char: 'm',
83
+ summary: 'DID method',
84
+ options: Object.values(DidMethods),
85
+ }),
86
+ 'did-web-url': Flags.string({
87
+ char: 'u',
88
+ summary: 'URL of the DID if DID method is did:web',
89
+ dependsOn: ['did-method'],
90
+ relationships: [
91
+ // Make this flag dependent on all of these flags
92
+ {
93
+ type: 'all',
94
+ flags: [
95
+ // Include `didWebUrl` but only when `method` is equal to `web`
96
+ { name: 'did-web-url', when: async (flags) => flags['did-method'] === DidMethods.WEB },
97
+ ],
98
+ },
99
+ ],
100
+ }),
101
+ };
102
+ //# sourceMappingURL=create-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-wallet.js","sourceRoot":"","sources":["../../../src/commands/wallet/create-wallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from '../../common/base-command.js';
2
+ export declare class DeleteWallet extends BaseCommand<typeof DeleteWallet> {
3
+ static summary: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ id: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ };
8
+ run(): Promise<{
9
+ id: string;
10
+ }>;
11
+ }
@@ -0,0 +1,34 @@
1
+ import { ux, Flags } from '@oclif/core';
2
+ import z from 'zod';
3
+ import { BaseCommand } from '../../common/base-command.js';
4
+ import { promptRequiredParameters } from '../../common/prompts.js';
5
+ import { INPUT_LIMIT } from '../../common/validators.js';
6
+ import { cweService } from '../../services/affinidi/cwe/service.js';
7
+ export class DeleteWallet extends BaseCommand {
8
+ async run() {
9
+ const { flags } = await this.parse(DeleteWallet);
10
+ const promptFlags = await promptRequiredParameters(['id'], flags);
11
+ const schema = z.object({
12
+ id: z.string().max(INPUT_LIMIT),
13
+ });
14
+ const validatedFlags = schema.parse(promptFlags);
15
+ ux.action.start('Deleting wallet');
16
+ await cweService.deleteWallet(validatedFlags.id);
17
+ ux.action.stop('Deleted successfully!');
18
+ if (!this.jsonEnabled())
19
+ this.logJson({ id: validatedFlags.id });
20
+ return { id: validatedFlags.id };
21
+ }
22
+ }
23
+ DeleteWallet.summary = 'Deletes wallet from your active project';
24
+ DeleteWallet.examples = [
25
+ '<%= config.bin %> <%= command.id %> -i <value>',
26
+ '<%= config.bin %> <%= command.id %> --id <value>',
27
+ ];
28
+ DeleteWallet.flags = {
29
+ id: Flags.string({
30
+ char: 'i',
31
+ summary: 'ID of the wallet',
32
+ }),
33
+ };
34
+ //# sourceMappingURL=delete-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-wallet.js","sourceRoot":"","sources":["../../../src/commands/wallet/delete-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAEnE,MAAM,OAAO,YAAa,SAAQ,WAAgC;IAazD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAChD,MAAM,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;QAEjE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;YACtB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC;SAChC,CAAC,CAAA;QACF,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAEhD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAClC,MAAM,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;QAChD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;QAChE,OAAO,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,CAAA;IAClC,CAAC;;AA3BM,oBAAO,GAAG,yCAAyC,CAAA;AACnD,qBAAQ,GAAG;IAChB,gDAAgD;IAChD,kDAAkD;CACnD,CAAA;AACM,kBAAK,GAAG;IACb,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,kBAAkB;KAC5B,CAAC;CACH,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { WalletDto } from '@affinidi-tdk/wallets-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class GetWallet extends BaseCommand<typeof GetWallet> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ static flags: {
7
+ id: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ };
9
+ run(): Promise<WalletDto>;
10
+ }
@@ -0,0 +1,34 @@
1
+ import { ux, Flags } from '@oclif/core';
2
+ import z from 'zod';
3
+ import { BaseCommand } from '../../common/base-command.js';
4
+ import { promptRequiredParameters } from '../../common/prompts.js';
5
+ import { INPUT_LIMIT } from '../../common/validators.js';
6
+ import { cweService } from '../../services/affinidi/cwe/service.js';
7
+ export class GetWallet extends BaseCommand {
8
+ async run() {
9
+ const { flags } = await this.parse(GetWallet);
10
+ const promptFlags = await promptRequiredParameters(['id'], flags);
11
+ const schema = z.object({
12
+ id: z.string().max(INPUT_LIMIT),
13
+ });
14
+ const validatedFlags = schema.parse(promptFlags);
15
+ ux.action.start('Fetching wallet details');
16
+ const output = await cweService.getWallet(validatedFlags.id);
17
+ ux.action.stop('Fetched successfully!');
18
+ if (!this.jsonEnabled())
19
+ this.logJson(output);
20
+ return output;
21
+ }
22
+ }
23
+ GetWallet.summary = 'Gets wallet details in your active project';
24
+ GetWallet.examples = [
25
+ '<%= config.bin %> <%= command.id %> -i <value>',
26
+ '<%= config.bin %> <%= command.id %> --id <value>',
27
+ ];
28
+ GetWallet.flags = {
29
+ id: Flags.string({
30
+ char: 'i',
31
+ summary: 'ID of the wallet',
32
+ }),
33
+ };
34
+ //# sourceMappingURL=get-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-wallet.js","sourceRoot":"","sources":["../../../src/commands/wallet/get-wallet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAEnE,MAAM,OAAO,SAAU,SAAQ,WAA6B;IAanD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;QAEjE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;YACtB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC;SAChC,CAAC,CAAA;QACF,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAEhD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC1C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;QAC5D,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC7C,OAAO,MAAM,CAAA;IACf,CAAC;;AA3BM,iBAAO,GAAG,4CAA4C,CAAA;AACtD,kBAAQ,GAAG;IAChB,gDAAgD;IAChD,kDAAkD;CACnD,CAAA;AACM,eAAK,GAAG;IACb,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,kBAAkB;KAC5B,CAAC;CACH,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { WalletsListDto } from '@affinidi-tdk/wallets-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class ListWallets extends BaseCommand<typeof ListWallets> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ run(): Promise<WalletsListDto>;
7
+ }
@@ -0,0 +1,16 @@
1
+ import { ux } from '@oclif/core';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ import { cweService } from '../../services/affinidi/cwe/service.js';
4
+ export class ListWallets extends BaseCommand {
5
+ async run() {
6
+ ux.action.start('Fetching wallets');
7
+ const output = await cweService.listWallets();
8
+ ux.action.stop('Fetched successfully!');
9
+ if (!this.jsonEnabled())
10
+ this.logJson(output);
11
+ return output;
12
+ }
13
+ }
14
+ ListWallets.summary = 'Lists wallets in your active project';
15
+ ListWallets.examples = ['<%= config.bin %> <%= command.id %>'];
16
+ //# sourceMappingURL=list-wallets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-wallets.js","sourceRoot":"","sources":["../../../src/commands/wallet/list-wallets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAEnE,MAAM,OAAO,WAAY,SAAQ,WAA+B;IAIvD,KAAK,CAAC,GAAG;QACd,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACnC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAA;QAC7C,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC7C,OAAO,MAAM,CAAA;IACf,CAAC;;AAVM,mBAAO,GAAG,sCAAsC,CAAA;AAChD,oBAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { WalletDto } from '@affinidi-tdk/wallets-client';
2
+ import { BaseCommand } from '../../common/base-command.js';
3
+ export declare class UpdateWallet extends BaseCommand<typeof UpdateWallet> {
4
+ static summary: string;
5
+ static examples: string[];
6
+ static flags: {
7
+ id: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ description: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ };
11
+ run(): Promise<WalletDto>;
12
+ }
@@ -0,0 +1,65 @@
1
+ import { ux, Flags } from '@oclif/core';
2
+ import { CLIError } from '@oclif/core/errors';
3
+ import z from 'zod';
4
+ import { BaseCommand } from '../../common/base-command.js';
5
+ import { giveFlagInputErrorMessage } from '../../common/error-messages.js';
6
+ import { promptRequiredParameters } from '../../common/prompts.js';
7
+ import { INPUT_LIMIT } from '../../common/validators.js';
8
+ import { cweService } from '../../services/affinidi/cwe/service.js';
9
+ export class UpdateWallet extends BaseCommand {
10
+ async run() {
11
+ const { flags } = await this.parse(UpdateWallet);
12
+ const promptFlags = await promptRequiredParameters(['id'], flags);
13
+ if (flags['no-input']) {
14
+ if (!flags.id)
15
+ throw new CLIError(giveFlagInputErrorMessage('id'));
16
+ if (!flags.name && !flags.description)
17
+ throw new CLIError(giveFlagInputErrorMessage('`name` or `description`'));
18
+ }
19
+ let data = {};
20
+ data = {
21
+ name: promptFlags.name,
22
+ description: promptFlags.description,
23
+ };
24
+ const schema = z
25
+ .object({
26
+ name: z.string().max(INPUT_LIMIT).optional(),
27
+ description: z.string().max(INPUT_LIMIT).optional(),
28
+ })
29
+ .refine((value) => {
30
+ if (!value.name && !value.description) {
31
+ return false;
32
+ }
33
+ return true;
34
+ }, {
35
+ message: 'at least one field `name` or `description` has to be provided',
36
+ });
37
+ const input = schema.parse(data);
38
+ ux.action.start('Updating wallet');
39
+ const output = await cweService.updateWallet(promptFlags.id, input);
40
+ ux.action.stop('Updated successfully!');
41
+ if (!this.jsonEnabled())
42
+ this.logJson(output);
43
+ return output;
44
+ }
45
+ }
46
+ UpdateWallet.summary = 'Updates wallet in your active project';
47
+ UpdateWallet.examples = [
48
+ '<%= config.bin %> <%= command.id %> -i <value>',
49
+ '<%= config.bin %> <%= command.id %> --id <value> --name <value> --description <value>',
50
+ ];
51
+ UpdateWallet.flags = {
52
+ id: Flags.string({
53
+ char: 'i',
54
+ summary: 'ID of the wallet',
55
+ }),
56
+ name: Flags.string({
57
+ char: 'n',
58
+ summary: 'Name of the wallet',
59
+ }),
60
+ description: Flags.string({
61
+ char: 'd',
62
+ summary: 'Description of the wallet',
63
+ }),
64
+ };
65
+ //# sourceMappingURL=update-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-wallet.js","sourceRoot":"","sources":["../../../src/commands/wallet/update-wallet.ts"],"names":[],"mappings":"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"}
@@ -29,3 +29,7 @@ export declare enum ServiceResourceIds {
29
29
  IAM_PROJECTS = "iam.resource.Projects",
30
30
  VPA_CONFIGURATIONS = "vpa.resource.Configurations"
31
31
  }
32
+ export declare enum DidMethods {
33
+ KEY = "key",
34
+ WEB = "web"
35
+ }
@@ -30,4 +30,9 @@ export var ServiceResourceIds;
30
30
  ServiceResourceIds["IAM_PROJECTS"] = "iam.resource.Projects";
31
31
  ServiceResourceIds["VPA_CONFIGURATIONS"] = "vpa.resource.Configurations";
32
32
  })(ServiceResourceIds || (ServiceResourceIds = {}));
33
+ export var DidMethods;
34
+ (function (DidMethods) {
35
+ DidMethods["KEY"] = "key";
36
+ DidMethods["WEB"] = "web";
37
+ })(DidMethods || (DidMethods = {}));
33
38
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;AACjB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,8BAAS,CAAA;AACX,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,kCAAW,CAAA;AACb,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAQD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;AACpD,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;AACjB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,8BAAS,CAAA;AACX,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,kCAAW,CAAA;AACb,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAQD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;AACpD,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,yBAAW,CAAA;AACb,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
@@ -0,0 +1,12 @@
1
+ import { WalletApi, WalletDto, WalletsListDto, CreateWalletInput, UpdateWalletInput, CreateWalletResponse } from '@affinidi-tdk/wallets-client';
2
+ declare class CweService {
3
+ private readonly client;
4
+ constructor(client?: WalletApi);
5
+ listWallets: () => Promise<WalletsListDto>;
6
+ getWallet: (id: string) => Promise<WalletDto>;
7
+ updateWallet: (id: string, input: UpdateWalletInput) => Promise<WalletDto>;
8
+ createWallet: (input: CreateWalletInput) => Promise<CreateWalletResponse>;
9
+ deleteWallet: (id: string) => Promise<void>;
10
+ }
11
+ declare const cweService: CweService;
12
+ export { cweService };