@affinidi/cli 2.6.1 → 2.8.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/README.md +2 -2
- package/bin/dev.cmd +1 -1
- package/bin/dev.js +5 -0
- package/bin/run.js +5 -0
- package/dist/commands/generate/app.d.ts +7 -7
- package/dist/commands/generate/app.js +123 -81
- package/dist/commands/generate/app.js.map +1 -1
- package/dist/commands/iam/add-principal.d.ts +3 -3
- package/dist/commands/iam/add-principal.js +27 -31
- package/dist/commands/iam/add-principal.js.map +1 -1
- package/dist/commands/iam/get-policies.d.ts +4 -4
- package/dist/commands/iam/get-policies.js +27 -31
- package/dist/commands/iam/get-policies.js.map +1 -1
- package/dist/commands/iam/list-principals.d.ts +2 -2
- package/dist/commands/iam/list-principals.js +9 -14
- package/dist/commands/iam/list-principals.js.map +1 -1
- package/dist/commands/iam/remove-principal.d.ts +4 -3
- package/dist/commands/iam/remove-principal.js +27 -31
- package/dist/commands/iam/remove-principal.js.map +1 -1
- package/dist/commands/iam/update-policies.d.ts +5 -5
- package/dist/commands/iam/update-policies.js +44 -48
- package/dist/commands/iam/update-policies.js.map +1 -1
- package/dist/commands/login/add-user-to-group.d.ts +4 -4
- package/dist/commands/login/add-user-to-group.js +16 -21
- package/dist/commands/login/add-user-to-group.js.map +1 -1
- package/dist/commands/login/create-config.d.ts +11 -10
- package/dist/commands/login/create-config.js +46 -50
- package/dist/commands/login/create-config.js.map +1 -1
- package/dist/commands/login/create-group.d.ts +3 -3
- package/dist/commands/login/create-group.js +15 -20
- package/dist/commands/login/create-group.js.map +1 -1
- package/dist/commands/login/delete-config.d.ts +2 -2
- package/dist/commands/login/delete-config.js +14 -19
- package/dist/commands/login/delete-config.js.map +1 -1
- package/dist/commands/login/delete-group.d.ts +2 -2
- package/dist/commands/login/delete-group.js +14 -19
- package/dist/commands/login/delete-group.js.map +1 -1
- package/dist/commands/login/export-configs.d.ts +3 -3
- package/dist/commands/login/export-configs.js +21 -27
- package/dist/commands/login/export-configs.js.map +1 -1
- package/dist/commands/login/export-groups.d.ts +3 -3
- package/dist/commands/login/export-groups.js +21 -27
- package/dist/commands/login/export-groups.js.map +1 -1
- package/dist/commands/login/get-config.d.ts +3 -3
- package/dist/commands/login/get-config.js +14 -19
- package/dist/commands/login/get-config.js.map +1 -1
- package/dist/commands/login/get-group.d.ts +3 -3
- package/dist/commands/login/get-group.js +14 -19
- package/dist/commands/login/get-group.js.map +1 -1
- package/dist/commands/login/import-configs.d.ts +3 -3
- package/dist/commands/login/import-configs.js +33 -37
- package/dist/commands/login/import-configs.js.map +1 -1
- package/dist/commands/login/import-groups.d.ts +3 -3
- package/dist/commands/login/import-groups.js +21 -26
- package/dist/commands/login/import-groups.js.map +1 -1
- package/dist/commands/login/list-configs.d.ts +2 -2
- package/dist/commands/login/list-configs.js +7 -11
- package/dist/commands/login/list-configs.js.map +1 -1
- package/dist/commands/login/list-groups.d.ts +2 -2
- package/dist/commands/login/list-groups.js +7 -11
- package/dist/commands/login/list-groups.js.map +1 -1
- package/dist/commands/login/list-users-in-group.d.ts +5 -5
- package/dist/commands/login/list-users-in-group.js +24 -29
- package/dist/commands/login/list-users-in-group.js.map +1 -1
- package/dist/commands/login/remove-user-from-group.d.ts +3 -3
- package/dist/commands/login/remove-user-from-group.js +16 -21
- package/dist/commands/login/remove-user-from-group.js.map +1 -1
- package/dist/commands/login/update-config.d.ts +10 -10
- package/dist/commands/login/update-config.js +40 -45
- package/dist/commands/login/update-config.js.map +1 -1
- package/dist/commands/project/create-project.d.ts +4 -4
- package/dist/commands/project/create-project.js +16 -21
- package/dist/commands/project/create-project.js.map +1 -1
- package/dist/commands/project/get-active-project.d.ts +2 -2
- package/dist/commands/project/get-active-project.js +7 -11
- package/dist/commands/project/get-active-project.js.map +1 -1
- package/dist/commands/project/list-projects.d.ts +2 -2
- package/dist/commands/project/list-projects.js +7 -11
- package/dist/commands/project/list-projects.js.map +1 -1
- package/dist/commands/project/select-project.d.ts +3 -3
- package/dist/commands/project/select-project.js +20 -25
- package/dist/commands/project/select-project.js.map +1 -1
- package/dist/commands/project/update-project.d.ts +5 -5
- package/dist/commands/project/update-project.js +18 -23
- package/dist/commands/project/update-project.js.map +1 -1
- package/dist/commands/start.d.ts +1 -1
- package/dist/commands/start.js +13 -18
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/stop.d.ts +1 -1
- package/dist/commands/stop.js +13 -18
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/token/create-token.d.ts +10 -13
- package/dist/commands/token/create-token.js +56 -134
- package/dist/commands/token/create-token.js.map +1 -1
- package/dist/commands/token/delete-token.d.ts +2 -2
- package/dist/commands/token/delete-token.js +13 -17
- package/dist/commands/token/delete-token.js.map +1 -1
- package/dist/commands/token/get-token.d.ts +3 -3
- package/dist/commands/token/get-token.js +13 -17
- package/dist/commands/token/get-token.js.map +1 -1
- package/dist/commands/token/list-tokens.d.ts +2 -2
- package/dist/commands/token/list-tokens.js +7 -11
- package/dist/commands/token/list-tokens.js.map +1 -1
- package/dist/commands/token/update-token.d.ts +8 -7
- package/dist/commands/token/update-token.js +30 -33
- package/dist/commands/token/update-token.js.map +1 -1
- package/dist/commands/whoami.d.ts +1 -1
- package/dist/commands/whoami.js +7 -11
- package/dist/commands/whoami.js.map +1 -1
- package/dist/common/base-command.d.ts +1 -12
- package/dist/common/base-command.js +13 -17
- package/dist/common/base-command.js.map +1 -1
- package/dist/common/constants.js +12 -15
- package/dist/common/constants.js.map +1 -1
- package/dist/common/error-messages.js +1 -5
- package/dist/common/error-messages.js.map +1 -1
- package/dist/common/prompts.js +7 -11
- package/dist/common/prompts.js.map +1 -1
- package/dist/common/validators.js +15 -21
- package/dist/common/validators.js.map +1 -1
- package/dist/helpers/app.d.ts +38 -2
- package/dist/helpers/app.js +21 -28
- package/dist/helpers/app.js.map +1 -1
- package/dist/helpers/degit.js +6 -11
- package/dist/helpers/degit.js.map +1 -1
- package/dist/helpers/jwk.d.ts +1 -1
- package/dist/helpers/jwk.js +16 -24
- package/dist/helpers/jwk.js.map +1 -1
- package/dist/helpers/token.d.ts +29 -0
- package/dist/helpers/token.js +78 -0
- package/dist/helpers/token.js.map +1 -0
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/services/affinidi/auth/auth-result-page.js +1 -5
- package/dist/services/affinidi/auth/auth-result-page.js.map +1 -1
- package/dist/services/affinidi/auth/bff-auth-provider.d.ts +1 -1
- package/dist/services/affinidi/auth/bff-auth-provider.js +25 -30
- package/dist/services/affinidi/auth/bff-auth-provider.js.map +1 -1
- package/dist/services/affinidi/auth/types.d.ts +1 -1
- package/dist/services/affinidi/auth/types.js +1 -2
- package/dist/services/affinidi/bff-service.d.ts +5 -5
- package/dist/services/affinidi/bff-service.js +56 -61
- package/dist/services/affinidi/bff-service.js.map +1 -1
- package/dist/services/affinidi/bff-service.types.js +1 -2
- package/dist/services/affinidi/errors.js +21 -26
- package/dist/services/affinidi/errors.js.map +1 -1
- package/dist/services/affinidi/iam/iam.api.d.ts +21 -21
- package/dist/services/affinidi/iam/iam.api.js +6 -12
- package/dist/services/affinidi/iam/iam.api.js.map +1 -1
- package/dist/services/affinidi/iam/{index.d.ts → service.d.ts} +4 -4
- package/dist/services/affinidi/iam/{index.js → service.js} +36 -40
- package/dist/services/affinidi/iam/service.js.map +1 -0
- package/dist/services/affinidi/logger/console-logger-adapter.d.ts +1 -1
- package/dist/services/affinidi/logger/console-logger-adapter.js +1 -5
- package/dist/services/affinidi/logger/console-logger-adapter.js.map +1 -1
- package/dist/services/affinidi/logger/logger-adapter.js +1 -2
- package/dist/services/affinidi/vp-adapter/{index.d.ts → service.d.ts} +2 -2
- package/dist/services/affinidi/vp-adapter/{index.js → service.js} +38 -41
- package/dist/services/affinidi/vp-adapter/service.js.map +1 -0
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.d.ts +43 -43
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.js +8 -14
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.js.map +1 -1
- package/dist/services/credentials-vault.d.ts +0 -1
- package/dist/services/credentials-vault.js +15 -21
- package/dist/services/credentials-vault.js.map +1 -1
- package/dist/services/env-config.d.ts +1 -1
- package/dist/services/env-config.js +6 -10
- package/dist/services/env-config.js.map +1 -1
- package/dist/services/generator/auth0.d.ts +1 -1
- package/dist/services/generator/auth0.js +3 -8
- package/dist/services/generator/auth0.js.map +1 -1
- package/dist/services/generator/env-configurer.d.ts +12 -1
- package/dist/services/generator/env-configurer.js +15 -14
- package/dist/services/generator/env-configurer.js.map +1 -1
- package/package.json +40 -43
- package/theme.json +26 -0
- package/bin/dev +0 -17
- package/bin/run +0 -5
- package/dist/common/index.d.ts +0 -2
- package/dist/common/index.js +0 -8
- package/dist/common/index.js.map +0 -1
- package/dist/services/affinidi/iam/index.js.map +0 -1
- package/dist/services/affinidi/logger/index.d.ts +0 -2
- package/dist/services/affinidi/logger/index.js +0 -6
- package/dist/services/affinidi/logger/index.js.map +0 -1
- package/dist/services/affinidi/vp-adapter/index.js.map +0 -1
|
@@ -1,30 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const iam_1 = require("../../services/affinidi/iam");
|
|
12
|
-
class UpdateToken extends common_1.BaseCommand {
|
|
1
|
+
import { readFile } from 'fs/promises';
|
|
2
|
+
import { ux, Flags } from '@oclif/core';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
5
|
+
import { promptRequiredParameters } from '../../common/prompts.js';
|
|
6
|
+
import { INPUT_LIMIT } from '../../common/validators.js';
|
|
7
|
+
import { getKeyType, pemToJWK } from '../../helpers/jwk.js';
|
|
8
|
+
import { iamService } from '../../services/affinidi/iam/service.js';
|
|
9
|
+
import { SupportedAlgorithms } from '../../common/constants.js';
|
|
10
|
+
export class UpdateToken extends BaseCommand {
|
|
13
11
|
async run() {
|
|
14
12
|
const { flags } = await this.parse(UpdateToken);
|
|
15
|
-
const promptFlags = await
|
|
16
|
-
const schema =
|
|
17
|
-
'token-id':
|
|
18
|
-
name:
|
|
19
|
-
algorithm:
|
|
20
|
-
'key-id':
|
|
21
|
-
'public-key-file':
|
|
13
|
+
const promptFlags = await promptRequiredParameters(['token-id', 'name', 'key-id', 'public-key-file'], flags);
|
|
14
|
+
const schema = z.object({
|
|
15
|
+
'token-id': z.string().max(INPUT_LIMIT).uuid(),
|
|
16
|
+
name: z.string().min(8).max(INPUT_LIMIT),
|
|
17
|
+
algorithm: z.nativeEnum(SupportedAlgorithms),
|
|
18
|
+
'key-id': z.string().max(INPUT_LIMIT),
|
|
19
|
+
'public-key-file': z.string().max(INPUT_LIMIT),
|
|
22
20
|
});
|
|
23
21
|
const validatedFlags = schema.parse(promptFlags);
|
|
24
|
-
|
|
25
|
-
const publicKeyPEM = await
|
|
26
|
-
const jwk = await
|
|
27
|
-
const out = await
|
|
22
|
+
ux.action.start('Updating Personal Access Token');
|
|
23
|
+
const publicKeyPEM = await readFile(validatedFlags['public-key-file'], 'utf8');
|
|
24
|
+
const jwk = await pemToJWK(publicKeyPEM, validatedFlags.algorithm);
|
|
25
|
+
const out = await iamService.updateToken(validatedFlags['token-id'], {
|
|
28
26
|
name: validatedFlags.name,
|
|
29
27
|
authenticationMethod: {
|
|
30
28
|
type: 'PRIVATE_KEY',
|
|
@@ -36,7 +34,7 @@ class UpdateToken extends common_1.BaseCommand {
|
|
|
36
34
|
kid: validatedFlags['key-id'],
|
|
37
35
|
alg: validatedFlags.algorithm,
|
|
38
36
|
use: 'sig',
|
|
39
|
-
kty: jwk.kty ??
|
|
37
|
+
kty: jwk.kty ?? getKeyType(validatedFlags.algorithm),
|
|
40
38
|
n: jwk.n,
|
|
41
39
|
e: jwk.e,
|
|
42
40
|
},
|
|
@@ -45,39 +43,38 @@ class UpdateToken extends common_1.BaseCommand {
|
|
|
45
43
|
},
|
|
46
44
|
},
|
|
47
45
|
});
|
|
48
|
-
|
|
46
|
+
ux.action.stop('Updated successfully!');
|
|
49
47
|
if (!this.jsonEnabled())
|
|
50
48
|
this.logJson(out);
|
|
51
49
|
return out;
|
|
52
50
|
}
|
|
53
51
|
}
|
|
54
|
-
exports.UpdateToken = UpdateToken;
|
|
55
52
|
UpdateToken.summary = 'Updates a Personal Access Token (PAT)';
|
|
56
53
|
UpdateToken.examples = [
|
|
57
54
|
'<%= config.bin %> <%= command.id %> -i <uuid> -n MyNewToken -k MyKeyID -f publicKey.pem',
|
|
58
55
|
'<%= config.bin %> <%= command.id %> --token-id <uuid> --name "My new token" --key-id "My key ID" --public-key-file publicKey.pem --algorithm RS256',
|
|
59
56
|
];
|
|
60
57
|
UpdateToken.flags = {
|
|
61
|
-
'token-id':
|
|
58
|
+
'token-id': Flags.string({
|
|
62
59
|
char: 'i',
|
|
63
60
|
summary: 'ID of the Personal Access Token',
|
|
64
61
|
}),
|
|
65
|
-
name:
|
|
62
|
+
name: Flags.string({
|
|
66
63
|
char: 'n',
|
|
67
64
|
summary: 'Name of the Personal Access Token, at least 8 chars long',
|
|
68
65
|
}),
|
|
69
|
-
'key-id':
|
|
66
|
+
'key-id': Flags.string({
|
|
70
67
|
char: 'k',
|
|
71
68
|
summary: 'Identifier of the key (kid)',
|
|
72
69
|
}),
|
|
73
|
-
'public-key-file':
|
|
70
|
+
'public-key-file': Flags.string({
|
|
74
71
|
char: 'f',
|
|
75
72
|
summary: 'Location of the public key PEM file',
|
|
76
73
|
}),
|
|
77
|
-
algorithm:
|
|
74
|
+
algorithm: Flags.custom({
|
|
78
75
|
summary: 'The specific cryptographic algorithm used with the key',
|
|
79
|
-
options: Object.values(
|
|
80
|
-
default:
|
|
76
|
+
options: Object.values(SupportedAlgorithms),
|
|
77
|
+
default: SupportedAlgorithms.RS256,
|
|
81
78
|
})(),
|
|
82
79
|
};
|
|
83
80
|
//# sourceMappingURL=update-token.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-token.js","sourceRoot":"","sources":["../../../src/commands/token/update-token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update-token.js","sourceRoot":"","sources":["../../../src/commands/token/update-token.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/whoami.js
CHANGED
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const common_1 = require("../common");
|
|
6
|
-
const bff_service_1 = require("../services/affinidi/bff-service");
|
|
7
|
-
class WhoAmI extends common_1.BaseCommand {
|
|
1
|
+
import { ux } from '@oclif/core';
|
|
2
|
+
import { BaseCommand } from '../common/base-command.js';
|
|
3
|
+
import { bffService } from '../services/affinidi/bff-service.js';
|
|
4
|
+
export class WhoAmI extends BaseCommand {
|
|
8
5
|
async run() {
|
|
9
|
-
|
|
10
|
-
const data = await
|
|
11
|
-
|
|
6
|
+
ux.action.start('Retrieving user data');
|
|
7
|
+
const data = await bffService.whoami();
|
|
8
|
+
ux.action.stop('Retrieved successfully!');
|
|
12
9
|
if (!this.jsonEnabled())
|
|
13
10
|
this.logJson(data);
|
|
14
11
|
return data;
|
|
15
12
|
}
|
|
16
13
|
}
|
|
17
|
-
exports.WhoAmI = WhoAmI;
|
|
18
14
|
WhoAmI.summary = "Returns user's subject, projects, and token details from the current session.";
|
|
19
15
|
WhoAmI.examples = ['<%= config.bin %> <%= command.id %>'];
|
|
20
16
|
//# sourceMappingURL=whoami.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAEhE,MAAM,OAAO,MAAO,SAAQ,WAA0B;IAI7C,KAAK,CAAC,GAAG;QACd,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACvC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAA;QACtC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;QACzC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC3C,OAAO,IAAI,CAAA;IACb,CAAC;;AATM,cAAO,GAAG,+EAA+E,CAAA;AACzF,eAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Command, Interfaces } from '@oclif/core';
|
|
2
|
-
import chalk from 'chalk';
|
|
3
2
|
export type FlagsType<T extends typeof Command> = Interfaces.InferredFlags<(typeof BaseCommand)['baseFlags'] & T['flags']>;
|
|
4
3
|
export type ArgsType<T extends typeof Command> = Interfaces.InferredArgs<T['args']>;
|
|
5
4
|
export declare abstract class BaseCommand<T extends typeof Command> extends Command {
|
|
@@ -10,17 +9,7 @@ export declare abstract class BaseCommand<T extends typeof Command> extends Comm
|
|
|
10
9
|
};
|
|
11
10
|
protected flags: FlagsType<T>;
|
|
12
11
|
protected args: ArgsType<T>;
|
|
13
|
-
protected chalk: chalk.
|
|
14
|
-
supportsColor: false | chalk.ColorSupport;
|
|
15
|
-
Level: chalk.Level;
|
|
16
|
-
Color: ("black" | "red" | "green" | "yellow" | "blue" | "magenta" | "cyan" | "white" | "gray" | "grey" | "blackBright" | "redBright" | "greenBright" | "yellowBright" | "blueBright" | "magentaBright" | "cyanBright" | "whiteBright") | ("bgBlack" | "bgRed" | "bgGreen" | "bgYellow" | "bgBlue" | "bgMagenta" | "bgCyan" | "bgWhite" | "bgGray" | "bgGrey" | "bgBlackBright" | "bgRedBright" | "bgGreenBright" | "bgYellowBright" | "bgBlueBright" | "bgMagentaBright" | "bgCyanBright" | "bgWhiteBright");
|
|
17
|
-
ForegroundColor: "black" | "red" | "green" | "yellow" | "blue" | "magenta" | "cyan" | "white" | "gray" | "grey" | "blackBright" | "redBright" | "greenBright" | "yellowBright" | "blueBright" | "magentaBright" | "cyanBright" | "whiteBright";
|
|
18
|
-
BackgroundColor: "bgBlack" | "bgRed" | "bgGreen" | "bgYellow" | "bgBlue" | "bgMagenta" | "bgCyan" | "bgWhite" | "bgGray" | "bgGrey" | "bgBlackBright" | "bgRedBright" | "bgGreenBright" | "bgYellowBright" | "bgBlueBright" | "bgMagentaBright" | "bgCyanBright" | "bgWhiteBright";
|
|
19
|
-
Modifiers: "bold" | "hidden" | "reset" | "dim" | "italic" | "underline" | "inverse" | "strikethrough" | "visible";
|
|
20
|
-
stderr: chalk.Chalk & {
|
|
21
|
-
supportsColor: false | chalk.ColorSupport;
|
|
22
|
-
};
|
|
23
|
-
};
|
|
12
|
+
protected chalk: import("chalk").ChalkInstance;
|
|
24
13
|
init(): Promise<void>;
|
|
25
14
|
protected catch(err: Error & {
|
|
26
15
|
exitCode?: number;
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const zod_validation_error_1 = require("zod-validation-error");
|
|
10
|
-
class BaseCommand extends core_1.Command {
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { CLIError } from '@oclif/core/errors';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { ZodError } from 'zod';
|
|
5
|
+
import { fromZodError } from 'zod-validation-error';
|
|
6
|
+
export class BaseCommand extends Command {
|
|
11
7
|
constructor() {
|
|
12
8
|
super(...arguments);
|
|
13
|
-
this.chalk =
|
|
9
|
+
this.chalk = chalk;
|
|
14
10
|
}
|
|
15
11
|
async init() {
|
|
16
12
|
await super.init();
|
|
@@ -18,6 +14,7 @@ class BaseCommand extends core_1.Command {
|
|
|
18
14
|
flags: this.ctor.flags,
|
|
19
15
|
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
20
16
|
baseFlags: super.ctor.baseFlags,
|
|
17
|
+
enableJsonFlag: this.ctor.enableJsonFlag,
|
|
21
18
|
args: this.ctor.args,
|
|
22
19
|
strict: this.ctor.strict,
|
|
23
20
|
});
|
|
@@ -28,17 +25,17 @@ class BaseCommand extends core_1.Command {
|
|
|
28
25
|
}
|
|
29
26
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
30
27
|
async catch(err) {
|
|
31
|
-
if (err instanceof
|
|
28
|
+
if (err instanceof ZodError) {
|
|
32
29
|
let message = 'Invalid input parameters\n';
|
|
33
30
|
message +=
|
|
34
31
|
'Please, check the validity of entered values. Use flag --help to get details about input parameters.\n\n';
|
|
35
|
-
const validationError =
|
|
32
|
+
const validationError = fromZodError(err, {
|
|
36
33
|
issueSeparator: '\n- ',
|
|
37
34
|
prefix: 'Validation errors found',
|
|
38
35
|
prefixSeparator: ':\n- ',
|
|
39
36
|
});
|
|
40
37
|
message += validationError;
|
|
41
|
-
return super.catch(new
|
|
38
|
+
return super.catch(new CLIError(message));
|
|
42
39
|
}
|
|
43
40
|
return super.catch(err);
|
|
44
41
|
}
|
|
@@ -48,16 +45,15 @@ class BaseCommand extends core_1.Command {
|
|
|
48
45
|
return super.finally(_);
|
|
49
46
|
}
|
|
50
47
|
}
|
|
51
|
-
exports.BaseCommand = BaseCommand;
|
|
52
48
|
// add the --json flag
|
|
53
49
|
BaseCommand.enableJsonFlag = true;
|
|
54
50
|
// define flags that can be inherited by any command that extends BaseCommand
|
|
55
51
|
BaseCommand.baseFlags = {
|
|
56
|
-
'no-color':
|
|
52
|
+
'no-color': Flags.boolean({
|
|
57
53
|
summary: 'Disables color in the output. If you have trouble distinguishing colors, consider using this flag.',
|
|
58
54
|
helpGroup: 'GLOBAL',
|
|
59
55
|
}),
|
|
60
|
-
'no-input':
|
|
56
|
+
'no-input': Flags.boolean({
|
|
61
57
|
summary: 'Disables all the interactive prompts',
|
|
62
58
|
helpGroup: 'GLOBAL',
|
|
63
59
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/common/base-command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/common/base-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAc,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAOnD,MAAM,OAAgB,WAAsC,SAAQ,OAAO;IAA3E;;QAoBY,UAAK,GAAG,KAAK,CAAA;IAyCzB,CAAC;IAvCQ,KAAK,CAAC,IAAI;QACf,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;YACvC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACtB,0EAA0E;YAC1E,SAAS,EAAG,KAAK,CAAC,IAA2B,CAAC,SAAS;YACvD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;YACxC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SACzB,CAAC,CAAA;QACF,0EAA0E;QAC1E,IAAI,CAAC,KAAK,GAAG,KAAqB,CAAA;QAClC,0EAA0E;QAC1E,IAAI,CAAC,IAAI,GAAG,IAAmB,CAAA;IACjC,CAAC;IAED,+DAA+D;IACrD,KAAK,CAAC,KAAK,CAAC,GAAkC;QACtD,IAAI,GAAG,YAAY,QAAQ,EAAE,CAAC;YAC5B,IAAI,OAAO,GAAG,4BAA4B,CAAA;YAC1C,OAAO;gBACL,0GAA0G,CAAA;YAC5G,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,EAAE;gBACxC,cAAc,EAAE,MAAM;gBACtB,MAAM,EAAE,yBAAyB;gBACjC,eAAe,EAAE,OAAO;aACzB,CAAC,CAAA;YACF,OAAO,IAAI,eAAe,CAAA;YAC1B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3C,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC;IAED,+DAA+D;IACrD,KAAK,CAAC,OAAO,CAAC,CAAoB;QAC1C,8EAA8E;QAC9E,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;;AA3DD,sBAAsB;AACf,0BAAc,GAAG,IAAI,AAAP,CAAO;AAE5B,6EAA6E;AACtE,qBAAS,GAAG;IACjB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QACxB,OAAO,EAAE,oGAAoG;QAC7G,SAAS,EAAE,QAAQ;KACpB,CAAC;IACF,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QACxB,OAAO,EAAE,sCAAsC;QAC/C,SAAS,EAAE,QAAQ;KACpB,CAAC;CACH,AATe,CASf"}
|
package/dist/common/constants.js
CHANGED
|
@@ -1,36 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ServiceResourceIds = exports.RefAppProvider = exports.IdTokenClaimFormats = exports.PrincipalTypes = exports.SupportedKeyTypes = exports.SupportedAlgorithms = void 0;
|
|
4
|
-
var SupportedAlgorithms;
|
|
1
|
+
export var SupportedAlgorithms;
|
|
5
2
|
(function (SupportedAlgorithms) {
|
|
6
3
|
SupportedAlgorithms["RS256"] = "RS256";
|
|
7
4
|
SupportedAlgorithms["RS512"] = "RS512";
|
|
8
5
|
SupportedAlgorithms["ES256"] = "ES256";
|
|
9
6
|
SupportedAlgorithms["ES512"] = "ES512";
|
|
10
|
-
})(SupportedAlgorithms
|
|
11
|
-
var SupportedKeyTypes;
|
|
7
|
+
})(SupportedAlgorithms || (SupportedAlgorithms = {}));
|
|
8
|
+
export var SupportedKeyTypes;
|
|
12
9
|
(function (SupportedKeyTypes) {
|
|
13
10
|
SupportedKeyTypes["RSA"] = "RSA";
|
|
14
11
|
SupportedKeyTypes["EC"] = "EC";
|
|
15
|
-
})(SupportedKeyTypes
|
|
16
|
-
var PrincipalTypes;
|
|
12
|
+
})(SupportedKeyTypes || (SupportedKeyTypes = {}));
|
|
13
|
+
export var PrincipalTypes;
|
|
17
14
|
(function (PrincipalTypes) {
|
|
18
15
|
PrincipalTypes["TOKEN"] = "token";
|
|
19
16
|
PrincipalTypes["USER"] = "user";
|
|
20
|
-
})(PrincipalTypes
|
|
21
|
-
var IdTokenClaimFormats;
|
|
17
|
+
})(PrincipalTypes || (PrincipalTypes = {}));
|
|
18
|
+
export var IdTokenClaimFormats;
|
|
22
19
|
(function (IdTokenClaimFormats) {
|
|
23
20
|
IdTokenClaimFormats["ARRAY"] = "array";
|
|
24
21
|
IdTokenClaimFormats["MAP"] = "map";
|
|
25
|
-
})(IdTokenClaimFormats
|
|
26
|
-
var RefAppProvider;
|
|
22
|
+
})(IdTokenClaimFormats || (IdTokenClaimFormats = {}));
|
|
23
|
+
export var RefAppProvider;
|
|
27
24
|
(function (RefAppProvider) {
|
|
28
25
|
RefAppProvider["AFFINIDI"] = "affinidi";
|
|
29
26
|
RefAppProvider["AUTH0"] = "auth0";
|
|
30
|
-
})(RefAppProvider
|
|
31
|
-
var ServiceResourceIds;
|
|
27
|
+
})(RefAppProvider || (RefAppProvider = {}));
|
|
28
|
+
export var ServiceResourceIds;
|
|
32
29
|
(function (ServiceResourceIds) {
|
|
33
30
|
ServiceResourceIds["IAM_PROJECTS"] = "iam.resource.Projects";
|
|
34
31
|
ServiceResourceIds["VPA_CONFIGURATIONS"] = "vpa.resource.Configurations";
|
|
35
|
-
})(ServiceResourceIds
|
|
32
|
+
})(ServiceResourceIds || (ServiceResourceIds = {}));
|
|
36
33
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"
|
|
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,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.giveFlagInputErrorMessage = void 0;
|
|
4
|
-
function giveFlagInputErrorMessage(name) {
|
|
1
|
+
export function giveFlagInputErrorMessage(name) {
|
|
5
2
|
return `The --no-input flag disables interactive input. Please provide the value for "${name}" through a flag instead.`;
|
|
6
3
|
}
|
|
7
|
-
exports.giveFlagInputErrorMessage = giveFlagInputErrorMessage;
|
|
8
4
|
//# sourceMappingURL=error-messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-messages.js","sourceRoot":"","sources":["../../src/common/error-messages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error-messages.js","sourceRoot":"","sources":["../../src/common/error-messages.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,OAAO,iFAAiF,IAAI,2BAA2B,CAAA;AACzH,CAAC"}
|
package/dist/common/prompts.js
CHANGED
|
@@ -1,21 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const error_messages_1 = require("./error-messages");
|
|
7
|
-
const validators_1 = require("./validators");
|
|
8
|
-
async function promptRequiredParameters(requiredFlags, inputFlags) {
|
|
1
|
+
import { input } from '@inquirer/prompts';
|
|
2
|
+
import { CLIError } from '@oclif/core/errors';
|
|
3
|
+
import { giveFlagInputErrorMessage } from './error-messages.js';
|
|
4
|
+
import { INPUT_LIMIT, validateInputLength } from './validators.js';
|
|
5
|
+
export async function promptRequiredParameters(requiredFlags, inputFlags) {
|
|
9
6
|
for (const key in Object.keys(requiredFlags)) {
|
|
10
7
|
if (!inputFlags[requiredFlags[key]]) {
|
|
11
8
|
if (inputFlags['no-input']) {
|
|
12
|
-
throw new
|
|
9
|
+
throw new CLIError(giveFlagInputErrorMessage(requiredFlags[key]));
|
|
13
10
|
}
|
|
14
|
-
const validatedInput =
|
|
11
|
+
const validatedInput = validateInputLength(await input({ message: `Enter the value for ${requiredFlags[key]}` }), INPUT_LIMIT);
|
|
15
12
|
inputFlags[requiredFlags[key]] = validatedInput;
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
15
|
return inputFlags;
|
|
19
16
|
}
|
|
20
|
-
exports.promptRequiredParameters = promptRequiredParameters;
|
|
21
17
|
//# sourceMappingURL=prompts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/common/prompts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/common/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAElE,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,aAAuB,EACvB,UAA+B;IAE/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,QAAQ,CAAC,yBAAyB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC;YACD,MAAM,cAAc,GAAG,mBAAmB,CACxC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,uBAAuB,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EACrE,WAAW,CACZ,CAAA;YACD,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAA;QACjD,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC"}
|
|
@@ -1,31 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
exports.INPUT_LIMIT = 2000;
|
|
8
|
-
exports.TOKEN_LIMIT = 5000;
|
|
9
|
-
exports.PRESENTATION_DEFINITION_LIMIT = 5000;
|
|
10
|
-
function validateInputLength(text, maxLength) {
|
|
1
|
+
import { CLIError } from '@oclif/core/errors';
|
|
2
|
+
import z from 'zod';
|
|
3
|
+
export const INPUT_LIMIT = 2000;
|
|
4
|
+
export const TOKEN_LIMIT = 5000;
|
|
5
|
+
export const PRESENTATION_DEFINITION_LIMIT = 5000;
|
|
6
|
+
export function validateInputLength(text, maxLength) {
|
|
11
7
|
if (text.length > maxLength) {
|
|
12
|
-
throw new
|
|
8
|
+
throw new CLIError(`String must contain at most ${maxLength} character(s)`);
|
|
13
9
|
}
|
|
14
10
|
return text;
|
|
15
11
|
}
|
|
16
|
-
|
|
17
|
-
function split(text, delimiter) {
|
|
12
|
+
export function split(text, delimiter) {
|
|
18
13
|
return text.split(delimiter).filter((item) => item.length > 0);
|
|
19
14
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
statement: zod_1.default
|
|
15
|
+
export const policiesDataSchema = z.object({
|
|
16
|
+
version: z.string().max(INPUT_LIMIT),
|
|
17
|
+
statement: z
|
|
24
18
|
.object({
|
|
25
|
-
principal:
|
|
26
|
-
action:
|
|
27
|
-
resource:
|
|
28
|
-
effect:
|
|
19
|
+
principal: z.string().max(INPUT_LIMIT).array().length(1),
|
|
20
|
+
action: z.string().max(INPUT_LIMIT).array().nonempty(),
|
|
21
|
+
resource: z.string().max(INPUT_LIMIT).array().nonempty(),
|
|
22
|
+
effect: z.literal('Allow'),
|
|
29
23
|
})
|
|
30
24
|
.array()
|
|
31
25
|
.nonempty(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/common/validators.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/common/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAA;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAA;AAC/B,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAA;AAEjD,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,SAAiB;IACjE,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,QAAQ,CAAC,+BAA+B,SAAS,eAAe,CAAC,CAAA;IAC7E,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,SAAiB;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAChE,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC;IACpC,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QACtD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QACxD,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;KAC3B,CAAC;SACD,KAAK,EAAE;SACP,QAAQ,EAAE;CACd,CAAC,CAAA"}
|
package/dist/helpers/app.d.ts
CHANGED
|
@@ -1,7 +1,38 @@
|
|
|
1
1
|
export type AppsInformation = {
|
|
2
2
|
[key: string]: {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
redirectUris: {
|
|
4
|
+
callbackUrl: string;
|
|
5
|
+
logOutUrl?: string;
|
|
6
|
+
webOriginUrl?: string;
|
|
7
|
+
};
|
|
8
|
+
metadata: {
|
|
9
|
+
name: string;
|
|
10
|
+
description: string;
|
|
11
|
+
features?: string[];
|
|
12
|
+
idp: {
|
|
13
|
+
name: string;
|
|
14
|
+
link: string;
|
|
15
|
+
};
|
|
16
|
+
framework: {
|
|
17
|
+
name: string;
|
|
18
|
+
icon: string;
|
|
19
|
+
link: string;
|
|
20
|
+
};
|
|
21
|
+
language: {
|
|
22
|
+
name: string;
|
|
23
|
+
icon: string;
|
|
24
|
+
link: string;
|
|
25
|
+
};
|
|
26
|
+
library: {
|
|
27
|
+
name: string;
|
|
28
|
+
icon: string;
|
|
29
|
+
link: string;
|
|
30
|
+
};
|
|
31
|
+
token?: {
|
|
32
|
+
policy: {
|
|
33
|
+
actions: string[];
|
|
34
|
+
};
|
|
35
|
+
};
|
|
5
36
|
};
|
|
6
37
|
};
|
|
7
38
|
};
|
|
@@ -17,3 +48,8 @@ export declare function getSupportedAppsInformation(apps: AppsInformation): {
|
|
|
17
48
|
libraries: Map<string, string[]>;
|
|
18
49
|
};
|
|
19
50
|
export declare function getRedirectUri(apps: AppsInformation, appName: string): string;
|
|
51
|
+
export declare function getAppMetadataToken(apps: AppsInformation, appName: string): {
|
|
52
|
+
policy: {
|
|
53
|
+
actions: string[];
|
|
54
|
+
};
|
|
55
|
+
} | undefined;
|
package/dist/helpers/app.js
CHANGED
|
@@ -1,34 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const errors_1 = require("@oclif/core/lib/errors");
|
|
6
|
-
const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
7
|
-
function getAppName(framework, provider, library) {
|
|
1
|
+
import { CLIError } from '@oclif/core/errors';
|
|
2
|
+
import axios from 'axios';
|
|
3
|
+
export function getAppName(framework, provider, library) {
|
|
8
4
|
return `${provider}-${framework}-${library}`;
|
|
9
5
|
}
|
|
10
|
-
|
|
11
|
-
async function getApps(filePath) {
|
|
6
|
+
export async function getApps(filePath) {
|
|
12
7
|
const githubFileUrl = `https://api.github.com/repos/affinidi/reference-app-affinidi-vault/contents/${filePath}`;
|
|
8
|
+
// const githubFileUrl =
|
|
9
|
+
// 'https://api.github.com/repos/affinidi/reference-app-affinidi-vault/contents/samples/apps.json?ref=token-metadata'
|
|
13
10
|
try {
|
|
14
|
-
const response = await
|
|
11
|
+
const response = await axios.get(githubFileUrl);
|
|
15
12
|
if (response.data && response.data.content) {
|
|
16
13
|
const content = Buffer.from(response.data.content, 'base64').toString('utf-8');
|
|
17
14
|
const apps = JSON.parse(content);
|
|
18
15
|
return apps;
|
|
19
16
|
}
|
|
20
|
-
throw new
|
|
17
|
+
throw new CLIError('Unable to fetch supported apps');
|
|
21
18
|
}
|
|
22
19
|
catch (err) {
|
|
23
|
-
throw new
|
|
20
|
+
throw new CLIError('Unable to fetch supported apps');
|
|
24
21
|
}
|
|
25
22
|
}
|
|
26
|
-
|
|
27
|
-
function getSupportedSampleApps(appsInformation) {
|
|
23
|
+
export function getSupportedSampleApps(appsInformation) {
|
|
28
24
|
return Object.keys(appsInformation);
|
|
29
25
|
}
|
|
30
|
-
|
|
31
|
-
function getSupportedProviders(sampleApps) {
|
|
26
|
+
export function getSupportedProviders(sampleApps) {
|
|
32
27
|
try {
|
|
33
28
|
const providers = [];
|
|
34
29
|
for (const sampleApp of sampleApps) {
|
|
@@ -40,11 +35,10 @@ function getSupportedProviders(sampleApps) {
|
|
|
40
35
|
return providers;
|
|
41
36
|
}
|
|
42
37
|
catch (err) {
|
|
43
|
-
throw new
|
|
38
|
+
throw new CLIError('Unable to fetch supported providers');
|
|
44
39
|
}
|
|
45
40
|
}
|
|
46
|
-
|
|
47
|
-
function getSupportedFrameworks(sampleApps) {
|
|
41
|
+
export function getSupportedFrameworks(sampleApps) {
|
|
48
42
|
try {
|
|
49
43
|
const frameworks = new Map();
|
|
50
44
|
for (const sampleApp of sampleApps) {
|
|
@@ -62,11 +56,10 @@ function getSupportedFrameworks(sampleApps) {
|
|
|
62
56
|
return frameworks;
|
|
63
57
|
}
|
|
64
58
|
catch (err) {
|
|
65
|
-
throw new
|
|
59
|
+
throw new CLIError('Unable to fetch supported frameworks');
|
|
66
60
|
}
|
|
67
61
|
}
|
|
68
|
-
|
|
69
|
-
function getSupportedLibraries(sampleApps) {
|
|
62
|
+
export function getSupportedLibraries(sampleApps) {
|
|
70
63
|
try {
|
|
71
64
|
const libraries = new Map();
|
|
72
65
|
for (const sampleApp of sampleApps) {
|
|
@@ -85,20 +78,20 @@ function getSupportedLibraries(sampleApps) {
|
|
|
85
78
|
return libraries;
|
|
86
79
|
}
|
|
87
80
|
catch (err) {
|
|
88
|
-
throw new
|
|
81
|
+
throw new CLIError('Unable to fetch supported libraries');
|
|
89
82
|
}
|
|
90
83
|
}
|
|
91
|
-
|
|
92
|
-
function getSupportedAppsInformation(apps) {
|
|
84
|
+
export function getSupportedAppsInformation(apps) {
|
|
93
85
|
const sampleApps = getSupportedSampleApps(apps);
|
|
94
86
|
const providers = getSupportedProviders(sampleApps);
|
|
95
87
|
const frameworks = getSupportedFrameworks(sampleApps);
|
|
96
88
|
const libraries = getSupportedLibraries(sampleApps);
|
|
97
89
|
return { providers, frameworks, libraries };
|
|
98
90
|
}
|
|
99
|
-
|
|
100
|
-
function getRedirectUri(apps, appName) {
|
|
91
|
+
export function getRedirectUri(apps, appName) {
|
|
101
92
|
return apps[appName].redirectUris.callbackUrl;
|
|
102
93
|
}
|
|
103
|
-
|
|
94
|
+
export function getAppMetadataToken(apps, appName) {
|
|
95
|
+
return apps[appName].metadata.token;
|
|
96
|
+
}
|
|
104
97
|
//# sourceMappingURL=app.js.map
|
package/dist/helpers/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/helpers/app.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/helpers/app.ts"],"names":[],"mappings":"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"}
|