@affinidi/cli 1.37.0 → 1.38.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/dist/commands/analytics.d.ts +4 -0
- package/dist/commands/analytics.js +21 -4
- package/dist/commands/analytics.js.map +1 -1
- package/dist/commands/config/index.d.ts +9 -0
- package/dist/commands/config/index.js +24 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/config/view.d.ts +16 -0
- package/dist/commands/config/view.js +60 -0
- package/dist/commands/config/view.js.map +1 -0
- package/dist/commands/create/index.d.ts +9 -0
- package/dist/commands/create/index.js +28 -0
- package/dist/commands/create/index.js.map +1 -0
- package/dist/commands/create/project.d.ts +4 -0
- package/dist/commands/create/project.js +29 -5
- package/dist/commands/create/project.js.map +1 -1
- package/dist/commands/create/schema.d.ts +2 -0
- package/dist/commands/create/schema.js +28 -10
- package/dist/commands/create/schema.js.map +1 -1
- package/dist/commands/generate-application/index.d.ts +2 -0
- package/dist/commands/generate-application/index.js +45 -13
- package/dist/commands/generate-application/index.js.map +1 -1
- package/dist/commands/issue-vc.d.ts +2 -0
- package/dist/commands/issue-vc.js +30 -7
- package/dist/commands/issue-vc.js.map +1 -1
- package/dist/commands/list/index.js +4 -1
- package/dist/commands/list/index.js.map +1 -1
- package/dist/commands/list/projects.d.ts +1 -2
- package/dist/commands/list/projects.js +38 -17
- package/dist/commands/list/projects.js.map +1 -1
- package/dist/commands/list/schemas.js +37 -7
- package/dist/commands/list/schemas.js.map +1 -1
- package/dist/commands/login/index.d.ts +4 -0
- package/dist/commands/login/index.js +31 -6
- package/dist/commands/login/index.js.map +1 -1
- package/dist/commands/logout/index.d.ts +4 -0
- package/dist/commands/logout/index.js +29 -7
- package/dist/commands/logout/index.js.map +1 -1
- package/dist/commands/show/index.js +4 -1
- package/dist/commands/show/index.js.map +1 -1
- package/dist/commands/show/project.d.ts +2 -3
- package/dist/commands/show/project.js +30 -24
- package/dist/commands/show/project.js.map +1 -1
- package/dist/commands/show/schema.d.ts +2 -0
- package/dist/commands/show/schema.js +24 -5
- package/dist/commands/show/schema.js.map +1 -1
- package/dist/commands/sign-up/index.js +1 -1
- package/dist/commands/sign-up/index.js.map +1 -1
- package/dist/commands/use/index.js +2 -1
- package/dist/commands/use/index.js.map +1 -1
- package/dist/commands/use/project.d.ts +2 -3
- package/dist/commands/use/project.js +22 -12
- package/dist/commands/use/project.js.map +1 -1
- package/dist/commands/verify-vc.d.ts +2 -0
- package/dist/commands/verify-vc.js +30 -5
- package/dist/commands/verify-vc.js.map +1 -1
- package/dist/constants.d.ts +1 -0
- package/dist/errors/index.d.ts +2 -1
- package/dist/errors/index.js +21 -4
- package/dist/errors/index.js.map +1 -1
- package/dist/middleware/display.d.ts +7 -0
- package/dist/middleware/display.js +72 -0
- package/dist/middleware/display.js.map +1 -0
- package/dist/render/texts.d.ts +2 -1
- package/dist/render/texts.js +5 -3
- package/dist/render/texts.js.map +1 -1
- package/dist/services/analytics/analytics.api.d.ts +1 -1
- package/dist/services/analytics/analytics.api.js.map +1 -1
- package/dist/services/config/index.d.ts +6 -1
- package/dist/services/config/index.js +52 -7
- package/dist/services/config/index.js.map +1 -1
- package/dist/services/issuance/parse.schema.url.js +1 -1
- package/dist/services/issuance/parse.schema.url.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Command } from '@oclif/core';
|
|
2
|
+
import { ViewFormat } from '../constants';
|
|
2
3
|
export declare const OPTIN_MESSAGE = "You have opted in to analytics";
|
|
3
4
|
export declare const OPTOUT_MESSAGE = "You have not opted in to analytics";
|
|
4
5
|
export default class Analytics extends Command {
|
|
@@ -10,5 +11,8 @@ export default class Analytics extends Command {
|
|
|
10
11
|
description: string;
|
|
11
12
|
options: string[];
|
|
12
13
|
}[];
|
|
14
|
+
static flags: {
|
|
15
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<ViewFormat>;
|
|
16
|
+
};
|
|
13
17
|
run(): Promise<void>;
|
|
14
18
|
}
|
|
@@ -4,24 +4,34 @@ exports.OPTOUT_MESSAGE = exports.OPTIN_MESSAGE = void 0;
|
|
|
4
4
|
const core_1 = require("@oclif/core");
|
|
5
5
|
const user_actions_1 = require("../user-actions");
|
|
6
6
|
const services_1 = require("../services");
|
|
7
|
+
const display_1 = require("../middleware/display");
|
|
7
8
|
exports.OPTIN_MESSAGE = 'You have opted in to analytics';
|
|
8
9
|
exports.OPTOUT_MESSAGE = 'You have not opted in to analytics';
|
|
9
10
|
class Analytics extends core_1.Command {
|
|
10
11
|
async run() {
|
|
11
|
-
const { args } = await this.parse(Analytics);
|
|
12
|
+
const { args, flags } = await this.parse(Analytics);
|
|
12
13
|
if (args.newValue != null) {
|
|
13
14
|
const wantsToOptIn = args.newValue === 'true';
|
|
14
15
|
services_1.analyticsService.setAnalyticsOptIn(wantsToOptIn);
|
|
15
|
-
|
|
16
|
+
(0, display_1.displayOutput)({
|
|
17
|
+
itemToDisplay: wantsToOptIn ? exports.OPTIN_MESSAGE : exports.OPTOUT_MESSAGE,
|
|
18
|
+
flag: flags.output,
|
|
19
|
+
});
|
|
16
20
|
return;
|
|
17
21
|
}
|
|
18
22
|
if (services_1.analyticsService.hasOptedInOrOut()) {
|
|
19
|
-
|
|
23
|
+
(0, display_1.displayOutput)({
|
|
24
|
+
itemToDisplay: services_1.analyticsService.hasAnalyticsOptIn() ? exports.OPTIN_MESSAGE : exports.OPTOUT_MESSAGE,
|
|
25
|
+
flag: flags.output,
|
|
26
|
+
});
|
|
20
27
|
return;
|
|
21
28
|
}
|
|
22
29
|
const wantsToOptIn = await (0, user_actions_1.analyticsConsentPrompt)();
|
|
23
30
|
services_1.analyticsService.setAnalyticsOptIn(wantsToOptIn);
|
|
24
|
-
|
|
31
|
+
(0, display_1.displayOutput)({
|
|
32
|
+
itemToDisplay: wantsToOptIn ? exports.OPTIN_MESSAGE : exports.OPTOUT_MESSAGE,
|
|
33
|
+
flag: flags.output,
|
|
34
|
+
});
|
|
25
35
|
}
|
|
26
36
|
}
|
|
27
37
|
exports.default = Analytics;
|
|
@@ -35,4 +45,11 @@ Analytics.args = [
|
|
|
35
45
|
options: ['true', 'false'],
|
|
36
46
|
},
|
|
37
47
|
];
|
|
48
|
+
Analytics.flags = {
|
|
49
|
+
output: core_1.Flags.enum({
|
|
50
|
+
char: 'o',
|
|
51
|
+
description: 'set flag to override default output format view',
|
|
52
|
+
options: ['plaintext', 'json'],
|
|
53
|
+
}),
|
|
54
|
+
};
|
|
38
55
|
//# sourceMappingURL=analytics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/commands/analytics.ts"],"names":[],"mappings":";;;AAAA,sCAA4C;AAE5C,kDAAwD;AACxD,0CAA8C;
|
|
1
|
+
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/commands/analytics.ts"],"names":[],"mappings":";;;AAAA,sCAA4C;AAE5C,kDAAwD;AACxD,0CAA8C;AAE9C,mDAAqD;AAExC,QAAA,aAAa,GAAG,gCAAgC,CAAA;AAChD,QAAA,cAAc,GAAG,oCAAoC,CAAA;AAElE,MAAqB,SAAU,SAAQ,cAAO;IAsBrC,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAEnD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAA;YAC7C,2BAAgB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;YAChD,IAAA,uBAAa,EAAC;gBACZ,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,qBAAa,CAAC,CAAC,CAAC,sBAAc;gBAC5D,IAAI,EAAE,KAAK,CAAC,MAAM;aACnB,CAAC,CAAA;YACF,OAAM;SACP;QAED,IAAI,2BAAgB,CAAC,eAAe,EAAE,EAAE;YACtC,IAAA,uBAAa,EAAC;gBACZ,aAAa,EAAE,2BAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,qBAAa,CAAC,CAAC,CAAC,sBAAc;gBACpF,IAAI,EAAE,KAAK,CAAC,MAAM;aACnB,CAAC,CAAA;YACF,OAAM;SACP;QAED,MAAM,YAAY,GAAG,MAAM,IAAA,qCAAsB,GAAE,CAAA;QACnD,2BAAgB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAChD,IAAA,uBAAa,EAAC;YACZ,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,qBAAa,CAAC,CAAC,CAAC,sBAAc;YAC5D,IAAI,EAAE,KAAK,CAAC,MAAM;SACnB,CAAC,CAAA;IACJ,CAAC;;AAjDH,4BAkDC;AAjDQ,qBAAW,GAAG,gCAAgC,CAAA;AAE9C,kBAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAA;AAElD,cAAI,GAAG;IACZ;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,uCAAuC;QACpD,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;KAC3B;CACF,CAAA;AAEM,eAAK,GAAG;IACb,MAAM,EAAE,YAAK,CAAC,IAAI,CAAa;QAC7B,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,iDAAiD;QAC9D,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Command, Interfaces } from '@oclif/core';
|
|
2
|
+
export default class Config extends Command {
|
|
3
|
+
static command: string;
|
|
4
|
+
static summary: string;
|
|
5
|
+
static usage: string;
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: Interfaces.Example[];
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const display_1 = require("../../middleware/display");
|
|
5
|
+
const texts_1 = require("../../render/texts");
|
|
6
|
+
class Config extends core_1.Command {
|
|
7
|
+
async run() {
|
|
8
|
+
(0, display_1.displayOutput)({
|
|
9
|
+
itemToDisplay: (0, texts_1.buildInvalidCommandUsage)(Config.command, Config.usage, Config.summary),
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.default = Config;
|
|
14
|
+
Config.command = 'affinidi config';
|
|
15
|
+
Config.summary = 'The config commmand allows to set various settings for cli.';
|
|
16
|
+
Config.usage = 'config [COMMAND] [ARGS...]';
|
|
17
|
+
Config.description = texts_1.configCommandDescription;
|
|
18
|
+
Config.examples = [
|
|
19
|
+
{
|
|
20
|
+
description: 'Configures output format view:',
|
|
21
|
+
command: '$ <%= config.bin %> <%= command.id %> view',
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/config/index.ts"],"names":[],"mappings":";;AAAA,sCAAiD;AACjD,sDAAwD;AAExD,8CAAuF;AAEvF,MAAqB,MAAO,SAAQ,cAAO;IAgBlC,KAAK,CAAC,GAAG;QACd,IAAA,uBAAa,EAAC;YACZ,aAAa,EAAE,IAAA,gCAAwB,EAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;SACtF,CAAC,CAAA;IACJ,CAAC;;AApBH,yBAqBC;AApBQ,cAAO,GAAG,iBAAiB,CAAA;AAE3B,cAAO,GAAG,6DAA6D,CAAA;AAEvE,YAAK,GAAG,4BAA4B,CAAA;AAEpC,kBAAW,GAAG,gCAAwB,CAAA;AAEtC,eAAQ,GAAyB;IACtC;QACE,WAAW,EAAE,gCAAgC;QAC7C,OAAO,EAAE,4CAA4C;KACtD;CACF,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
import { CliError } from '../../errors';
|
|
3
|
+
export default class View extends Command {
|
|
4
|
+
static command: string;
|
|
5
|
+
static description: string;
|
|
6
|
+
static examples: string[];
|
|
7
|
+
static usage: string;
|
|
8
|
+
static args: {
|
|
9
|
+
name: string;
|
|
10
|
+
required: boolean;
|
|
11
|
+
options: string[];
|
|
12
|
+
description: string;
|
|
13
|
+
}[];
|
|
14
|
+
run(): Promise<void>;
|
|
15
|
+
catch(error: CliError): Promise<void>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const http_status_codes_1 = require("http-status-codes");
|
|
5
|
+
const config_1 = require("../../services/config");
|
|
6
|
+
const errors_1 = require("../../errors");
|
|
7
|
+
const authentication_1 = require("../../middleware/authentication");
|
|
8
|
+
const display_1 = require("../../middleware/display");
|
|
9
|
+
const analytics_1 = require("../../services/analytics");
|
|
10
|
+
const user_management_1 = require("../../services/user-management");
|
|
11
|
+
class View extends core_1.Command {
|
|
12
|
+
async run() {
|
|
13
|
+
var _a, _b;
|
|
14
|
+
const { args } = await this.parse(View);
|
|
15
|
+
const { format } = args;
|
|
16
|
+
if (!(0, authentication_1.isAuthenticated)()) {
|
|
17
|
+
throw new errors_1.CliError(errors_1.Unauthorized, http_status_codes_1.StatusCodes.UNAUTHORIZED, 'userManagement');
|
|
18
|
+
}
|
|
19
|
+
const session = (0, user_management_1.getSession)();
|
|
20
|
+
config_1.configService.setOutputFormat(format);
|
|
21
|
+
(0, display_1.displayOutput)({ itemToDisplay: `Default output format view is set to ${format}` });
|
|
22
|
+
const analyticsData = {
|
|
23
|
+
name: 'CLI_VIEW_FORMAT_CONFIGURED',
|
|
24
|
+
category: 'APPLICATION',
|
|
25
|
+
component: 'Cli',
|
|
26
|
+
uuid: (_a = session === null || session === void 0 ? void 0 : session.account) === null || _a === void 0 ? void 0 : _a.id,
|
|
27
|
+
metadata: {
|
|
28
|
+
format,
|
|
29
|
+
commandId: 'affinidi.configView',
|
|
30
|
+
...(0, analytics_1.generateUserMetadata)((_b = session === null || session === void 0 ? void 0 : session.account) === null || _b === void 0 ? void 0 : _b.label),
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
await analytics_1.analyticsService.eventsControllerSend(analyticsData);
|
|
34
|
+
}
|
|
35
|
+
async catch(error) {
|
|
36
|
+
core_1.CliUx.ux.action.stop('failed');
|
|
37
|
+
const outputFormat = config_1.configService.getOutputFormat();
|
|
38
|
+
(0, display_1.displayOutput)({
|
|
39
|
+
itemToDisplay: (0, errors_1.getErrorOutput)(error, View.command, View.usage, View.description, outputFormat !== 'plaintext'),
|
|
40
|
+
err: true,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.default = View;
|
|
45
|
+
View.command = 'affinidi config view';
|
|
46
|
+
View.description = 'Use this command to configure the format of output';
|
|
47
|
+
View.examples = [
|
|
48
|
+
'<%= config.bin %> <%= command.id %> json',
|
|
49
|
+
'<%= config.bin %> <%= command.id %> plaintext',
|
|
50
|
+
];
|
|
51
|
+
View.usage = 'config view [plaintext | json]';
|
|
52
|
+
View.args = [
|
|
53
|
+
{
|
|
54
|
+
name: 'format',
|
|
55
|
+
required: true,
|
|
56
|
+
options: ['plaintext', 'json'],
|
|
57
|
+
description: 'format of the output',
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/config/view.ts"],"names":[],"mappings":";;AAAA,sCAA4C;AAC5C,yDAA+C;AAE/C,kDAAqD;AACrD,yCAAqE;AACrE,oEAAiE;AACjE,sDAAwD;AAExD,wDAAiF;AACjF,oEAA2D;AAE3D,MAAqB,IAAK,SAAQ,cAAO;IAqBhC,KAAK,CAAC,GAAG;;QACd,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,IAAA,gCAAe,GAAE,EAAE;YACtB,MAAM,IAAI,iBAAQ,CAAC,qBAAY,EAAE,+BAAW,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAA;SAC7E;QACD,MAAM,OAAO,GAAG,IAAA,4BAAU,GAAE,CAAA;QAE5B,sBAAa,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QACrC,IAAA,uBAAa,EAAC,EAAE,aAAa,EAAE,wCAAwC,MAAM,EAAE,EAAE,CAAC,CAAA;QAClF,MAAM,aAAa,GAAa;YAC9B,IAAI,EAAE,4BAA4B;YAClC,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,EAAE;YAC1B,QAAQ,EAAE;gBACR,MAAM;gBACN,SAAS,EAAE,qBAAqB;gBAChC,GAAG,IAAA,gCAAoB,EAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,KAAK,CAAC;aACjD;SACF,CAAA;QACD,MAAM,4BAAgB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAA;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe;QACzB,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9B,MAAM,YAAY,GAAG,sBAAa,CAAC,eAAe,EAAE,CAAA;QAEpD,IAAA,uBAAa,EAAC;YACZ,aAAa,EAAE,IAAA,uBAAc,EAC3B,KAAK,EACL,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,EAChB,YAAY,KAAK,WAAW,CAC7B;YACD,GAAG,EAAE,IAAI;SACV,CAAC,CAAA;IACJ,CAAC;;AA3DH,uBA4DC;AA3DQ,YAAO,GAAG,sBAAsB,CAAA;AAEhC,gBAAW,GAAG,oDAAoD,CAAA;AAElE,aAAQ,GAAG;IAChB,0CAA0C;IAC1C,+CAA+C;CAChD,CAAA;AAEM,UAAK,GAAG,gCAAgC,CAAA;AAExC,SAAI,GAAG;IACZ;QACE,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;QAC9B,WAAW,EAAE,sBAAsB;KACpC;CACF,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Command, Interfaces } from '@oclif/core';
|
|
2
|
+
export default class Create extends Command {
|
|
3
|
+
static command: string;
|
|
4
|
+
static summary: string;
|
|
5
|
+
static usage: string;
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: Interfaces.Example[];
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const display_1 = require("../../middleware/display");
|
|
5
|
+
const texts_1 = require("../../render/texts");
|
|
6
|
+
class Create extends core_1.Command {
|
|
7
|
+
async run() {
|
|
8
|
+
(0, display_1.displayOutput)({
|
|
9
|
+
itemToDisplay: (0, texts_1.buildInvalidCommandUsage)(Create.command, Create.usage, Create.summary),
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.default = Create;
|
|
14
|
+
Create.command = 'affinidi create';
|
|
15
|
+
Create.summary = 'Use this command to create a new Affinidi project.';
|
|
16
|
+
Create.usage = 'create [COMMAND] [ARGS...]';
|
|
17
|
+
Create.description = texts_1.listCommandDescription;
|
|
18
|
+
Create.examples = [
|
|
19
|
+
{
|
|
20
|
+
description: 'creates a new project:',
|
|
21
|
+
command: '$ <%= config.bin %> <%= command.id %> project',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
description: 'creates a new schemas:',
|
|
25
|
+
command: '$ <%= config.bin %> <%= command.id %> schema',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/create/index.ts"],"names":[],"mappings":";;AAAA,sCAAiD;AACjD,sDAAwD;AAExD,8CAAqF;AAErF,MAAqB,MAAO,SAAQ,cAAO;IAoBlC,KAAK,CAAC,GAAG;QACd,IAAA,uBAAa,EAAC;YACZ,aAAa,EAAE,IAAA,gCAAwB,EAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;SACtF,CAAC,CAAA;IACJ,CAAC;;AAxBH,yBAyBC;AAxBQ,cAAO,GAAG,iBAAiB,CAAA;AAE3B,cAAO,GAAG,oDAAoD,CAAA;AAE9D,YAAK,GAAG,4BAA4B,CAAA;AAEpC,kBAAW,GAAG,8BAAsB,CAAA;AAEpC,eAAQ,GAAyB;IACtC;QACE,WAAW,EAAE,wBAAwB;QACrC,OAAO,EAAE,+CAA+C;KACzD;IACD;QACE,WAAW,EAAE,wBAAwB;QACrC,OAAO,EAAE,8CAA8C;KACxD;CACF,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Command } from '@oclif/core';
|
|
2
2
|
import { CliError } from '../../errors';
|
|
3
|
+
import { ViewFormat } from '../../constants';
|
|
3
4
|
export default class Project extends Command {
|
|
4
5
|
static command: string;
|
|
5
6
|
static usage: string;
|
|
@@ -8,6 +9,9 @@ export default class Project extends Command {
|
|
|
8
9
|
static args: {
|
|
9
10
|
name: string;
|
|
10
11
|
}[];
|
|
12
|
+
static flags: {
|
|
13
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<ViewFormat>;
|
|
14
|
+
};
|
|
11
15
|
run(): Promise<void>;
|
|
12
16
|
catch(error: CliError): Promise<void>;
|
|
13
17
|
}
|
|
@@ -10,9 +10,11 @@ const user_management_1 = require("../../services/user-management");
|
|
|
10
10
|
const errors_1 = require("../../errors");
|
|
11
11
|
const analytics_1 = require("../../services/analytics");
|
|
12
12
|
const authentication_1 = require("../../middleware/authentication");
|
|
13
|
+
const display_1 = require("../../middleware/display");
|
|
14
|
+
const config_1 = require("../../services/config");
|
|
13
15
|
class Project extends core_1.Command {
|
|
14
16
|
async run() {
|
|
15
|
-
const { args } = await this.parse(Project);
|
|
17
|
+
const { args, flags } = await this.parse(Project);
|
|
16
18
|
if (!(0, authentication_1.isAuthenticated)()) {
|
|
17
19
|
throw new errors_1.CliError(errors_1.Unauthorized, http_status_codes_1.StatusCodes.UNAUTHORIZED, 'userManagement');
|
|
18
20
|
}
|
|
@@ -37,7 +39,7 @@ class Project extends core_1.Command {
|
|
|
37
39
|
name: 'CONSOLE_PROJECT_CREATED',
|
|
38
40
|
category: 'APPLICATION',
|
|
39
41
|
component: 'Cli',
|
|
40
|
-
uuid:
|
|
42
|
+
uuid: config_1.configService.getCurrentUser(),
|
|
41
43
|
metadata: {
|
|
42
44
|
projectId: projectData === null || projectData === void 0 ? void 0 : projectData.projectId,
|
|
43
45
|
commandId: 'affinidi.createProject',
|
|
@@ -45,12 +47,27 @@ class Project extends core_1.Command {
|
|
|
45
47
|
},
|
|
46
48
|
};
|
|
47
49
|
await analytics_1.analyticsService.eventsControllerSend(analyticsData);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
+
(0, display_1.displayOutput)({
|
|
51
|
+
itemToDisplay: chalk_1.default.red.bold('Please save the API key hash and DID URL somewhere safe. You would not be able to view them again.'),
|
|
52
|
+
flag: flags.output,
|
|
53
|
+
});
|
|
54
|
+
(0, display_1.displayOutput)({ itemToDisplay: JSON.stringify(projectDetails, null, ' '), flag: flags.output });
|
|
50
55
|
}
|
|
51
56
|
async catch(error) {
|
|
52
57
|
core_1.CliUx.ux.action.stop('failed');
|
|
53
|
-
|
|
58
|
+
const outputFormat = config_1.configService.getOutputFormat();
|
|
59
|
+
const optionsDisplay = {
|
|
60
|
+
itemToDisplay: (0, errors_1.getErrorOutput)(error, Project.command, Project.usage, Project.description, outputFormat !== 'plaintext'),
|
|
61
|
+
err: true,
|
|
62
|
+
};
|
|
63
|
+
try {
|
|
64
|
+
const { flags } = await this.parse(Project);
|
|
65
|
+
optionsDisplay.flag = flags.output;
|
|
66
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
67
|
+
}
|
|
68
|
+
catch (_) {
|
|
69
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
70
|
+
}
|
|
54
71
|
}
|
|
55
72
|
}
|
|
56
73
|
exports.default = Project;
|
|
@@ -59,4 +76,11 @@ Project.usage = 'create project [projectName]';
|
|
|
59
76
|
Project.description = 'Use this command to create a new Affinidi project.';
|
|
60
77
|
Project.examples = ['<%= config.bin %> <%= command.id %>'];
|
|
61
78
|
Project.args = [{ name: 'projectName' }];
|
|
79
|
+
Project.flags = {
|
|
80
|
+
output: core_1.Flags.enum({
|
|
81
|
+
char: 'o',
|
|
82
|
+
description: 'set flag to override default output format view',
|
|
83
|
+
options: ['plaintext', 'json'],
|
|
84
|
+
}),
|
|
85
|
+
};
|
|
62
86
|
//# sourceMappingURL=project.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/commands/create/project.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/commands/create/project.ts"],"names":[],"mappings":";;;AAAA,sCAAmD;AACnD,yDAA+C;AAC/C,0DAAyB;AAEzB,qDAAsD;AACtD,6CAAqE;AAErE,oEAA2D;AAC3D,yCAAqE;AAErE,wDAAiF;AACjF,oEAAiE;AACjE,sDAAwE;AACxE,kDAAqD;AAGrD,MAAqB,OAAQ,SAAQ,cAAO;IAmBnC,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,IAAA,gCAAe,GAAE,EAAE;YACtB,MAAM,IAAI,iBAAQ,CAAC,qBAAY,EAAE,+BAAW,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAA;SAC7E;QAED,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAA;QAE1B,IAAI,CAAC,WAAW,EAAE;YAChB,WAAW,GAAG,MAAM,IAAA,gCAAiB,GAAE,CAAA;SACxC;QACD,MAAM,OAAO,GAAG,IAAA,4BAAU,GAAE,CAAA;QAC5B,MAAM,KAAK,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAA;QAClC,MAAM,gBAAgB,GAAuB;YAC3C,IAAI,EAAE,WAAW;SAClB,CAAA;QACD,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACzC,MAAM,WAAW,GAAG,MAAM,qBAAU,CAAC,aAAa,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;QAC3E,MAAM,cAAc,GAAG,MAAM,qBAAU,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;QACvF,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;QAC/D,uBAAY,CAAC,GAAG,CAAC,qBAAU,CAAC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACxE,uBAAY,CAAC,GAAG,CAAC,qBAAU,CAAC,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACrE,uBAAY,CAAC,GAAG,CAAC,qBAAU,CAAC,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC5E,uBAAY,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAClE,MAAM,aAAa,GAAa;YAC9B,IAAI,EAAE,yBAAyB;YAC/B,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,sBAAa,CAAC,cAAc,EAAE;YACpC,QAAQ,EAAE;gBACR,SAAS,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS;gBACjC,SAAS,EAAE,wBAAwB;gBACnC,GAAG,IAAA,gCAAoB,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,KAAK,CAAC;aAChD;SACF,CAAA;QACD,MAAM,4BAAgB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAA;QAC1D,IAAA,uBAAa,EAAC;YACZ,aAAa,EAAE,eAAK,CAAC,GAAG,CAAC,IAAI,CAC3B,oGAAoG,CACrG;YACD,IAAI,EAAE,KAAK,CAAC,MAAM;SACnB,CAAC,CAAA;QACF,IAAA,uBAAa,EAAC,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;IAClG,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe;QACzB,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9B,MAAM,YAAY,GAAG,sBAAa,CAAC,eAAe,EAAE,CAAA;QACpD,MAAM,cAAc,GAAmB;YACrC,aAAa,EAAE,IAAA,uBAAc,EAC3B,KAAK,EACL,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,WAAW,EACnB,YAAY,KAAK,WAAW,CAC7B;YACD,GAAG,EAAE,IAAI;SACV,CAAA;QACD,IAAI;YACF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC3C,cAAc,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAA;YAClC,IAAA,uBAAa,EAAC,cAAc,CAAC,CAAA;SAC9B;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,uBAAa,EAAC,cAAc,CAAC,CAAA;SAC9B;IACH,CAAC;;AApFH,0BAqFC;AApFQ,eAAO,GAAG,yBAAyB,CAAA;AAEnC,aAAK,GAAG,8BAA8B,CAAA;AAEtC,mBAAW,GAAG,oDAAoD,CAAA;AAElE,gBAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAA;AAElD,YAAI,GAAG,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;AAEhC,aAAK,GAAG;IACb,MAAM,EAAE,YAAK,CAAC,IAAI,CAAa;QAC7B,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,iDAAiD;QAC9D,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Command } from '@oclif/core';
|
|
2
2
|
import { CliError } from '../../errors';
|
|
3
|
+
import { ViewFormat } from '../../constants';
|
|
3
4
|
export default class Schema extends Command {
|
|
4
5
|
static command: string;
|
|
5
6
|
static usage: string;
|
|
@@ -8,6 +9,7 @@ export default class Schema extends Command {
|
|
|
8
9
|
public: import("@oclif/core/lib/interfaces").OptionFlag<"false" | "true">;
|
|
9
10
|
description: import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
10
11
|
source: import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
12
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<ViewFormat>;
|
|
11
13
|
};
|
|
12
14
|
static args: {
|
|
13
15
|
name: string;
|
|
@@ -13,9 +13,11 @@ const errors_1 = require("../../errors");
|
|
|
13
13
|
const analytics_1 = require("../../services/analytics");
|
|
14
14
|
const user_management_1 = require("../../services/user-management");
|
|
15
15
|
const authentication_1 = require("../../middleware/authentication");
|
|
16
|
+
const display_1 = require("../../middleware/display");
|
|
17
|
+
const config_1 = require("../../services/config");
|
|
16
18
|
class Schema extends core_1.Command {
|
|
17
19
|
async run() {
|
|
18
|
-
var _a
|
|
20
|
+
var _a;
|
|
19
21
|
const { args, flags } = await this.parse(Schema);
|
|
20
22
|
if (!(0, authentication_1.isAuthenticated)()) {
|
|
21
23
|
throw new errors_1.CliError(errors_1.Unauthorized, http_status_codes_1.StatusCodes.UNAUTHORIZED, 'schema');
|
|
@@ -32,9 +34,9 @@ class Schema extends core_1.Command {
|
|
|
32
34
|
}
|
|
33
35
|
const regex = new RegExp(/^[0-9a-zA-Z]+$/);
|
|
34
36
|
if (!regex.test(schemaName)) {
|
|
35
|
-
|
|
37
|
+
throw new errors_1.CliError(errors_1.InvalidSchemaName, 0, 'schema');
|
|
36
38
|
}
|
|
37
|
-
const scope = flags.public ? 'public' : 'unlisted';
|
|
39
|
+
const scope = flags.public === 'true' ? 'public' : 'unlisted';
|
|
38
40
|
const params = {
|
|
39
41
|
apiKey: apiKeyhash,
|
|
40
42
|
authorDid: did,
|
|
@@ -44,7 +46,7 @@ class Schema extends core_1.Command {
|
|
|
44
46
|
};
|
|
45
47
|
const [version, revision] = await schema_manager_1.schemaManagerService.generateNextVersion({ type: schemaName, scope }, params);
|
|
46
48
|
const generateIdInput = {
|
|
47
|
-
namespace: flags.public ? undefined : did,
|
|
49
|
+
namespace: !flags.public ? undefined : did,
|
|
48
50
|
type: schemaName,
|
|
49
51
|
version,
|
|
50
52
|
revision,
|
|
@@ -89,22 +91,33 @@ class Schema extends core_1.Command {
|
|
|
89
91
|
name: 'VC_SCHEMA_CREATED',
|
|
90
92
|
category: 'APPLICATION',
|
|
91
93
|
component: 'Cli',
|
|
92
|
-
uuid: (
|
|
94
|
+
uuid: config_1.configService.getCurrentUser(),
|
|
93
95
|
metadata: {
|
|
94
96
|
schemaId: schemaInfo === null || schemaInfo === void 0 ? void 0 : schemaInfo.id,
|
|
95
97
|
commandId: 'affinidi.createSchema',
|
|
96
|
-
...(0, analytics_1.generateUserMetadata)((
|
|
98
|
+
...(0, analytics_1.generateUserMetadata)((_a = session === null || session === void 0 ? void 0 : session.account) === null || _a === void 0 ? void 0 : _a.label),
|
|
97
99
|
},
|
|
98
100
|
};
|
|
99
101
|
await analytics_1.analyticsService.eventsControllerSend(analyticsData);
|
|
100
|
-
|
|
102
|
+
(0, display_1.displayOutput)({ itemToDisplay: JSON.stringify(schemaInfo, null, ' '), flag: flags.output });
|
|
101
103
|
}
|
|
102
104
|
async catch(error) {
|
|
105
|
+
const err = error;
|
|
103
106
|
if (error instanceof SyntaxError) {
|
|
104
|
-
|
|
107
|
+
err.message = errors_1.JsonFileSyntaxError;
|
|
105
108
|
}
|
|
106
|
-
|
|
107
|
-
|
|
109
|
+
const outputFormat = config_1.configService.getOutputFormat();
|
|
110
|
+
const optionsDisplay = {
|
|
111
|
+
itemToDisplay: (0, errors_1.getErrorOutput)(error, Schema.command, Schema.usage, Schema.description, outputFormat !== 'plaintext'),
|
|
112
|
+
err: true,
|
|
113
|
+
};
|
|
114
|
+
try {
|
|
115
|
+
const { flags } = await this.parse(Schema);
|
|
116
|
+
optionsDisplay.flag = flags.output;
|
|
117
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
118
|
+
}
|
|
119
|
+
catch (_) {
|
|
120
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
108
121
|
}
|
|
109
122
|
}
|
|
110
123
|
}
|
|
@@ -125,6 +138,11 @@ Schema.flags = {
|
|
|
125
138
|
description: 'path to the json file with schema properties',
|
|
126
139
|
required: true,
|
|
127
140
|
}),
|
|
141
|
+
output: core_1.Flags.enum({
|
|
142
|
+
char: 'o',
|
|
143
|
+
description: 'set flag to override default output format view',
|
|
144
|
+
options: ['plaintext', 'json'],
|
|
145
|
+
}),
|
|
128
146
|
};
|
|
129
147
|
Schema.args = [{ name: 'schemaName' }];
|
|
130
148
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/commands/create/schema.ts"],"names":[],"mappings":";;;AAAA,sCAAmD;AACnD,mEAA4B;AAC5B,yDAA+C;AAE/C,kEAAoE;AACpE,6CAAyD;AAEzD,qDAAoD;AACpD,6EAKwD;AAExD,4FAAsF;AACtF,yCAOqB;AACrB,wDAAiF;AAEjF,oEAA2D;AAC3D,oEAAiE;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/commands/create/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Command } from '@oclif/core';
|
|
2
2
|
import { CliError } from '../../errors';
|
|
3
|
+
import { ViewFormat } from '../../constants';
|
|
3
4
|
export declare enum Platforms {
|
|
4
5
|
web = "web",
|
|
5
6
|
mobile = "mobile"
|
|
@@ -21,6 +22,7 @@ export default class GenerateApplication extends Command {
|
|
|
21
22
|
name: import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
22
23
|
'use-case': import("@oclif/core/lib/interfaces").OptionFlag<"portable-reputation" | "access-without-ownership-of-data" | "certification-and-verification" | "kyc-kyb">;
|
|
23
24
|
'with-proxy': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
25
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<ViewFormat>;
|
|
24
26
|
};
|
|
25
27
|
run(): Promise<void>;
|
|
26
28
|
catch(error: CliError): Promise<void>;
|
|
@@ -11,6 +11,8 @@ const texts_1 = require("../../render/texts");
|
|
|
11
11
|
const user_management_1 = require("../../services/user-management");
|
|
12
12
|
const analytics_1 = require("../../services/analytics");
|
|
13
13
|
const authentication_1 = require("../../middleware/authentication");
|
|
14
|
+
const display_1 = require("../../middleware/display");
|
|
15
|
+
const config_1 = require("../../services/config");
|
|
14
16
|
var Platforms;
|
|
15
17
|
(function (Platforms) {
|
|
16
18
|
Platforms["web"] = "web";
|
|
@@ -32,25 +34,26 @@ const UseCaseSources = {
|
|
|
32
34
|
exports.defaultAppName = 'my-app';
|
|
33
35
|
class GenerateApplication extends core_1.Command {
|
|
34
36
|
async run() {
|
|
37
|
+
var _a, _b;
|
|
35
38
|
const { flags } = await this.parse(GenerateApplication);
|
|
36
39
|
const { name, platform, 'use-case': useCase, 'with-proxy': withProxy } = flags;
|
|
37
40
|
if (!(0, authentication_1.isAuthenticated)()) {
|
|
38
41
|
throw new errors_1.CliError(errors_1.Unauthorized, http_status_codes_1.StatusCodes.UNAUTHORIZED, 'generator');
|
|
39
42
|
}
|
|
40
|
-
const
|
|
43
|
+
const userId = (_b = (_a = (0, user_management_1.getSession)()) === null || _a === void 0 ? void 0 : _a.account) === null || _b === void 0 ? void 0 : _b.id;
|
|
41
44
|
const analyticsData = {
|
|
42
45
|
name: 'APPLICATION_GENERATION_STARTED',
|
|
43
46
|
category: 'APPLICATION',
|
|
44
47
|
component: 'Cli',
|
|
45
|
-
uuid:
|
|
48
|
+
uuid: userId,
|
|
46
49
|
metadata: {
|
|
47
50
|
appName: name,
|
|
48
51
|
commandId: 'affinidi.generate-application',
|
|
49
|
-
...(0, analytics_1.generateUserMetadata)(
|
|
52
|
+
...(0, analytics_1.generateUserMetadata)(userId),
|
|
50
53
|
},
|
|
51
54
|
};
|
|
52
55
|
if (platform === Platforms.mobile) {
|
|
53
|
-
|
|
56
|
+
throw new errors_1.CliError(errors_1.NotSupportedPlatform, 0, 'reference-app');
|
|
54
57
|
}
|
|
55
58
|
core_1.CliUx.ux.action.start('Generating an application');
|
|
56
59
|
try {
|
|
@@ -62,14 +65,14 @@ class GenerateApplication extends core_1.Command {
|
|
|
62
65
|
case UseCasesAppNames.accessWithoutOwnershipOfData:
|
|
63
66
|
case UseCasesAppNames.portableReputation:
|
|
64
67
|
case UseCasesAppNames.kycKyb:
|
|
65
|
-
|
|
68
|
+
(0, display_1.displayOutput)({ itemToDisplay: 'Not implemented yet', flag: flags.output });
|
|
66
69
|
break;
|
|
67
70
|
default:
|
|
68
|
-
|
|
71
|
+
throw new errors_1.CliError(errors_1.InvalidUseCase, 0, 'reference-app');
|
|
69
72
|
}
|
|
70
73
|
}
|
|
71
74
|
catch (error) {
|
|
72
|
-
|
|
75
|
+
throw new errors_1.CliError(`Failed to generate an application: ${error.message}`, 0, 'reference-app');
|
|
73
76
|
}
|
|
74
77
|
try {
|
|
75
78
|
if (withProxy) {
|
|
@@ -77,7 +80,11 @@ class GenerateApplication extends core_1.Command {
|
|
|
77
80
|
}
|
|
78
81
|
}
|
|
79
82
|
catch (error) {
|
|
80
|
-
|
|
83
|
+
(0, display_1.displayOutput)({
|
|
84
|
+
itemToDisplay: `Failed to generate an application: ${error.message}`,
|
|
85
|
+
flag: flags.output,
|
|
86
|
+
err: true,
|
|
87
|
+
});
|
|
81
88
|
return;
|
|
82
89
|
}
|
|
83
90
|
this.setUpProject(name, withProxy);
|
|
@@ -85,20 +92,36 @@ class GenerateApplication extends core_1.Command {
|
|
|
85
92
|
await analytics_1.analyticsService.eventsControllerSend(analyticsData);
|
|
86
93
|
core_1.CliUx.ux.action.stop('\nApplication generated');
|
|
87
94
|
const appPath = path_1.default.resolve(`${process.cwd()}/${name}`);
|
|
88
|
-
|
|
95
|
+
(0, display_1.displayOutput)({
|
|
96
|
+
itemToDisplay: (0, texts_1.buildGeneratedAppNextStepsMessage)(name, appPath, withProxy),
|
|
97
|
+
flag: flags.output,
|
|
98
|
+
});
|
|
89
99
|
}
|
|
90
100
|
async catch(error) {
|
|
91
101
|
core_1.CliUx.ux.action.stop('failed');
|
|
92
|
-
|
|
102
|
+
const outputFormat = config_1.configService.getOutputFormat();
|
|
103
|
+
const optionsDisplay = {
|
|
104
|
+
itemToDisplay: (0, errors_1.getErrorOutput)(error, GenerateApplication.command, GenerateApplication.usage, GenerateApplication.description, outputFormat !== 'plaintext'),
|
|
105
|
+
err: true,
|
|
106
|
+
};
|
|
107
|
+
try {
|
|
108
|
+
const { flags } = await this.parse(GenerateApplication);
|
|
109
|
+
optionsDisplay.flag = flags.output;
|
|
110
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
111
|
+
}
|
|
112
|
+
catch (_) {
|
|
113
|
+
(0, display_1.displayOutput)(optionsDisplay);
|
|
114
|
+
}
|
|
93
115
|
}
|
|
94
|
-
setUpProject(name, withProxy) {
|
|
116
|
+
async setUpProject(name, withProxy) {
|
|
95
117
|
const activeProjectApiKey = services_1.vaultService.get(services_1.VAULT_KEYS.projectAPIKey);
|
|
96
118
|
const activeProjectDid = services_1.vaultService.get(services_1.VAULT_KEYS.projectDID);
|
|
97
119
|
const activeProjectId = services_1.vaultService.get(services_1.VAULT_KEYS.projectId);
|
|
120
|
+
const { flags } = await this.parse(GenerateApplication);
|
|
98
121
|
if (!activeProjectApiKey || !activeProjectDid || !activeProjectId) {
|
|
99
122
|
throw Error(errors_1.Unauthorized);
|
|
100
123
|
}
|
|
101
|
-
|
|
124
|
+
(0, display_1.displayOutput)({ itemToDisplay: `Setting up the project`, flag: flags.output });
|
|
102
125
|
try {
|
|
103
126
|
if (withProxy) {
|
|
104
127
|
services_1.Writer.write(path_1.default.join(name, '.env'), [
|
|
@@ -131,7 +154,11 @@ class GenerateApplication extends core_1.Command {
|
|
|
131
154
|
]);
|
|
132
155
|
}
|
|
133
156
|
catch (error) {
|
|
134
|
-
|
|
157
|
+
(0, display_1.displayOutput)({
|
|
158
|
+
itemToDisplay: `Failed to set up project: ${error.message}`,
|
|
159
|
+
flag: flags.output,
|
|
160
|
+
err: true,
|
|
161
|
+
});
|
|
135
162
|
}
|
|
136
163
|
}
|
|
137
164
|
async download(gitUrl, destination) {
|
|
@@ -171,5 +198,10 @@ GenerateApplication.flags = {
|
|
|
171
198
|
description: 'Add BE-proxy to protect credentials',
|
|
172
199
|
default: false,
|
|
173
200
|
}),
|
|
201
|
+
output: core_1.Flags.enum({
|
|
202
|
+
char: 'o',
|
|
203
|
+
description: 'set flag to override default output format view',
|
|
204
|
+
options: ['plaintext', 'json'],
|
|
205
|
+
}),
|
|
174
206
|
};
|
|
175
207
|
//# sourceMappingURL=index.js.map
|