@optimizely/ocp-cli-v2 2.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +51 -0
- package/bin/ocp.js +3 -0
- package/bin/run.js +3 -0
- package/dist/commands/accounts/whoami.d.ts +5 -0
- package/dist/commands/accounts/whoami.js +22 -0
- package/dist/commands/accounts/whoami.js.map +1 -0
- package/dist/commands/accounts/whois.d.ts +12 -0
- package/dist/commands/accounts/whois.js +57 -0
- package/dist/commands/accounts/whois.js.map +1 -0
- package/dist/commands/app/BaseBuildCommand.d.ts +37 -0
- package/dist/commands/app/BaseBuildCommand.js +255 -0
- package/dist/commands/app/BaseBuildCommand.js.map +1 -0
- package/dist/commands/app/abandon.d.ts +11 -0
- package/dist/commands/app/abandon.js +146 -0
- package/dist/commands/app/abandon.js.map +1 -0
- package/dist/commands/app/getLogLevel.d.ts +16 -0
- package/dist/commands/app/getLogLevel.js +66 -0
- package/dist/commands/app/getLogLevel.js.map +1 -0
- package/dist/commands/app/init.d.ts +27 -0
- package/dist/commands/app/init.js +326 -0
- package/dist/commands/app/init.js.map +1 -0
- package/dist/commands/app/logs.d.ts +24 -0
- package/dist/commands/app/logs.js +231 -0
- package/dist/commands/app/logs.js.map +1 -0
- package/dist/commands/app/package.d.ts +8 -0
- package/dist/commands/app/package.js +51 -0
- package/dist/commands/app/package.js.map +1 -0
- package/dist/commands/app/prepare.d.ts +16 -0
- package/dist/commands/app/prepare.js +119 -0
- package/dist/commands/app/prepare.js.map +1 -0
- package/dist/commands/app/register.d.ts +10 -0
- package/dist/commands/app/register.js +102 -0
- package/dist/commands/app/register.js.map +1 -0
- package/dist/commands/app/setLogLevel.d.ts +16 -0
- package/dist/commands/app/setLogLevel.js +83 -0
- package/dist/commands/app/setLogLevel.js.map +1 -0
- package/dist/commands/app/validate.d.ts +5 -0
- package/dist/commands/app/validate.js +26 -0
- package/dist/commands/app/validate.js.map +1 -0
- package/dist/commands/availability/list.d.ts +6 -0
- package/dist/commands/availability/list.js +32 -0
- package/dist/commands/availability/list.js.map +1 -0
- package/dist/commands/dev-server/start.d.ts +36 -0
- package/dist/commands/dev-server/start.js +209 -0
- package/dist/commands/dev-server/start.js.map +1 -0
- package/dist/commands/dev.d.ts +8 -0
- package/dist/commands/dev.js +12 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/directory/info.d.ts +13 -0
- package/dist/commands/directory/info.js +85 -0
- package/dist/commands/directory/info.js.map +1 -0
- package/dist/commands/directory/install.d.ts +12 -0
- package/dist/commands/directory/install.js +46 -0
- package/dist/commands/directory/install.js.map +1 -0
- package/dist/commands/directory/list.d.ts +14 -0
- package/dist/commands/directory/list.js +114 -0
- package/dist/commands/directory/list.js.map +1 -0
- package/dist/commands/directory/listFunctions.d.ts +15 -0
- package/dist/commands/directory/listFunctions.js +86 -0
- package/dist/commands/directory/listFunctions.js.map +1 -0
- package/dist/commands/directory/listGlobalFunctions.d.ts +13 -0
- package/dist/commands/directory/listGlobalFunctions.js +64 -0
- package/dist/commands/directory/listGlobalFunctions.js.map +1 -0
- package/dist/commands/directory/listInstalls.d.ts +15 -0
- package/dist/commands/directory/listInstalls.js +72 -0
- package/dist/commands/directory/listInstalls.js.map +1 -0
- package/dist/commands/directory/listSourceFunctions.d.ts +14 -0
- package/dist/commands/directory/listSourceFunctions.js +71 -0
- package/dist/commands/directory/listSourceFunctions.js.map +1 -0
- package/dist/commands/directory/publish.d.ts +15 -0
- package/dist/commands/directory/publish.js +201 -0
- package/dist/commands/directory/publish.js.map +1 -0
- package/dist/commands/directory/status.d.ts +11 -0
- package/dist/commands/directory/status.js +50 -0
- package/dist/commands/directory/status.js.map +1 -0
- package/dist/commands/directory/uninstall.d.ts +13 -0
- package/dist/commands/directory/uninstall.js +55 -0
- package/dist/commands/directory/uninstall.js.map +1 -0
- package/dist/commands/directory/unpublish.d.ts +17 -0
- package/dist/commands/directory/unpublish.js +187 -0
- package/dist/commands/directory/unpublish.js.map +1 -0
- package/dist/commands/directory/upgrade.d.ts +15 -0
- package/dist/commands/directory/upgrade.js +113 -0
- package/dist/commands/directory/upgrade.js.map +1 -0
- package/dist/commands/env/get.d.ts +5 -0
- package/dist/commands/env/get.js +23 -0
- package/dist/commands/env/get.js.map +1 -0
- package/dist/commands/env/set.d.ts +8 -0
- package/dist/commands/env/set.js +63 -0
- package/dist/commands/env/set.js.map +1 -0
- package/dist/commands/jobs/list.d.ts +27 -0
- package/dist/commands/jobs/list.js +245 -0
- package/dist/commands/jobs/list.js.map +1 -0
- package/dist/commands/jobs/runtimeStatus.d.ts +11 -0
- package/dist/commands/jobs/runtimeStatus.js +55 -0
- package/dist/commands/jobs/runtimeStatus.js.map +1 -0
- package/dist/commands/jobs/status.d.ts +11 -0
- package/dist/commands/jobs/status.js +57 -0
- package/dist/commands/jobs/status.js.map +1 -0
- package/dist/commands/jobs/terminate.d.ts +11 -0
- package/dist/commands/jobs/terminate.js +35 -0
- package/dist/commands/jobs/terminate.js.map +1 -0
- package/dist/commands/jobs/trigger.d.ts +14 -0
- package/dist/commands/jobs/trigger.js +47 -0
- package/dist/commands/jobs/trigger.js.map +1 -0
- package/dist/commands/review/list.d.ts +9 -0
- package/dist/commands/review/list.js +74 -0
- package/dist/commands/review/list.js.map +1 -0
- package/dist/commands/review/open.d.ts +8 -0
- package/dist/commands/review/open.js +32 -0
- package/dist/commands/review/open.js.map +1 -0
- package/dist/hooks/command-not-found.d.ts +3 -0
- package/dist/hooks/command-not-found.js +93 -0
- package/dist/hooks/command-not-found.js.map +1 -0
- package/dist/hooks/preupdate.d.ts +10 -0
- package/dist/hooks/preupdate.js +42 -0
- package/dist/hooks/preupdate.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/AppContext.d.ts +9 -0
- package/dist/lib/AppContext.js +43 -0
- package/dist/lib/AppContext.js.map +1 -0
- package/dist/lib/AppPackager.d.ts +17 -0
- package/dist/lib/AppPackager.js +57 -0
- package/dist/lib/AppPackager.js.map +1 -0
- package/dist/lib/AppUpdater.d.ts +11 -0
- package/dist/lib/AppUpdater.js +143 -0
- package/dist/lib/AppUpdater.js.map +1 -0
- package/dist/lib/AppUploader.d.ts +9 -0
- package/dist/lib/AppUploader.js +37 -0
- package/dist/lib/AppUploader.js.map +1 -0
- package/dist/lib/BuildPipeline.d.ts +24 -0
- package/dist/lib/BuildPipeline.js +26 -0
- package/dist/lib/BuildPipeline.js.map +1 -0
- package/dist/lib/BuildPipelineFactory.d.ts +10 -0
- package/dist/lib/BuildPipelineFactory.js +23 -0
- package/dist/lib/BuildPipelineFactory.js.map +1 -0
- package/dist/lib/Config.d.ts +15 -0
- package/dist/lib/Config.js +47 -0
- package/dist/lib/Config.js.map +1 -0
- package/dist/lib/CustomHelp.d.ts +19 -0
- package/dist/lib/CustomHelp.js +81 -0
- package/dist/lib/CustomHelp.js.map +1 -0
- package/dist/lib/DependencyStage.d.ts +1 -0
- package/dist/lib/DependencyStage.js +3 -0
- package/dist/lib/DependencyStage.js.map +1 -0
- package/dist/lib/EnvironmentalOutput.d.ts +1 -0
- package/dist/lib/EnvironmentalOutput.js +22 -0
- package/dist/lib/EnvironmentalOutput.js.map +1 -0
- package/dist/lib/Moria.d.ts +51 -0
- package/dist/lib/Moria.js +30 -0
- package/dist/lib/Moria.js.map +1 -0
- package/dist/lib/MoriaApi.d.ts +22 -0
- package/dist/lib/MoriaApi.js +74 -0
- package/dist/lib/MoriaApi.js.map +1 -0
- package/dist/lib/NodeBuildPipeline.d.ts +25 -0
- package/dist/lib/NodeBuildPipeline.js +60 -0
- package/dist/lib/NodeBuildPipeline.js.map +1 -0
- package/dist/lib/PackageManager.d.ts +242 -0
- package/dist/lib/PackageManager.js +511 -0
- package/dist/lib/PackageManager.js.map +1 -0
- package/dist/lib/Rivendell.d.ts +409 -0
- package/dist/lib/Rivendell.js +391 -0
- package/dist/lib/Rivendell.js.map +1 -0
- package/dist/lib/RivendellApi.d.ts +22 -0
- package/dist/lib/RivendellApi.js +159 -0
- package/dist/lib/RivendellApi.js.map +1 -0
- package/dist/lib/Shards.d.ts +3 -0
- package/dist/lib/Shards.js +41 -0
- package/dist/lib/Shards.js.map +1 -0
- package/dist/lib/StringUtils.d.ts +1 -0
- package/dist/lib/StringUtils.js +9 -0
- package/dist/lib/StringUtils.js.map +1 -0
- package/dist/lib/TeminalPassthru.d.ts +7 -0
- package/dist/lib/TeminalPassthru.js +12 -0
- package/dist/lib/TeminalPassthru.js.map +1 -0
- package/dist/lib/TerminalConfirm.d.ts +3 -0
- package/dist/lib/TerminalConfirm.js +31 -0
- package/dist/lib/TerminalConfirm.js.map +1 -0
- package/dist/lib/TerminalInput.d.ts +32 -0
- package/dist/lib/TerminalInput.js +207 -0
- package/dist/lib/TerminalInput.js.map +1 -0
- package/dist/lib/TerminalMenu.d.ts +34 -0
- package/dist/lib/TerminalMenu.js +186 -0
- package/dist/lib/TerminalMenu.js.map +1 -0
- package/dist/lib/TerminalOutput.d.ts +5 -0
- package/dist/lib/TerminalOutput.js +12 -0
- package/dist/lib/TerminalOutput.js.map +1 -0
- package/dist/lib/TerminalSpinner.d.ts +14 -0
- package/dist/lib/TerminalSpinner.js +69 -0
- package/dist/lib/TerminalSpinner.js.map +1 -0
- package/dist/lib/Tracking.d.ts +15 -0
- package/dist/lib/Tracking.js +19 -0
- package/dist/lib/Tracking.js.map +1 -0
- package/dist/lib/build.d.ts +5 -0
- package/dist/lib/build.js +41 -0
- package/dist/lib/build.js.map +1 -0
- package/dist/lib/die.d.ts +5 -0
- package/dist/lib/die.js +14 -0
- package/dist/lib/die.js.map +1 -0
- package/dist/lib/directoryExists.d.ts +1 -0
- package/dist/lib/directoryExists.js +9 -0
- package/dist/lib/directoryExists.js.map +1 -0
- package/dist/lib/formatBuildState.d.ts +2 -0
- package/dist/lib/formatBuildState.js +23 -0
- package/dist/lib/formatBuildState.js.map +1 -0
- package/dist/lib/formatError.d.ts +1 -0
- package/dist/lib/formatError.js +55 -0
- package/dist/lib/formatError.js.map +1 -0
- package/dist/lib/formatJobStatus.d.ts +3 -0
- package/dist/lib/formatJobStatus.js +28 -0
- package/dist/lib/formatJobStatus.js.map +1 -0
- package/dist/lib/formatReviewStatus.d.ts +4 -0
- package/dist/lib/formatReviewStatus.js +28 -0
- package/dist/lib/formatReviewStatus.js.map +1 -0
- package/dist/lib/formatTimstamp.d.ts +1 -0
- package/dist/lib/formatTimstamp.js +25 -0
- package/dist/lib/formatTimstamp.js.map +1 -0
- package/dist/lib/formatVersionState.d.ts +2 -0
- package/dist/lib/formatVersionState.js +37 -0
- package/dist/lib/formatVersionState.js.map +1 -0
- package/dist/lib/gatherAppEnv.d.ts +3 -0
- package/dist/lib/gatherAppEnv.js +71 -0
- package/dist/lib/gatherAppEnv.js.map +1 -0
- package/dist/lib/handleInterrupt.d.ts +1 -0
- package/dist/lib/handleInterrupt.js +17 -0
- package/dist/lib/handleInterrupt.js.map +1 -0
- package/dist/lib/jobRuntime.d.ts +3 -0
- package/dist/lib/jobRuntime.js +16 -0
- package/dist/lib/jobRuntime.js.map +1 -0
- package/dist/lib/migrateOptiCli.d.ts +1 -0
- package/dist/lib/migrateOptiCli.js +30 -0
- package/dist/lib/migrateOptiCli.js.map +1 -0
- package/dist/lib/parseDate.d.ts +2 -0
- package/dist/lib/parseDate.js +26 -0
- package/dist/lib/parseDate.js.map +1 -0
- package/dist/lib/templating/TemplateRenderer.d.ts +13 -0
- package/dist/lib/templating/TemplateRenderer.js +63 -0
- package/dist/lib/templating/TemplateRenderer.js.map +1 -0
- package/dist/lib/templating/fetchTemplatesManifest.d.ts +1 -0
- package/dist/lib/templating/fetchTemplatesManifest.js +9 -0
- package/dist/lib/templating/fetchTemplatesManifest.js.map +1 -0
- package/dist/lib/templating/types.d.ts +27 -0
- package/dist/lib/templating/types.js +3 -0
- package/dist/lib/templating/types.js.map +1 -0
- package/dist/oclif.manifest.json +1616 -0
- package/dist/utils/utils.d.ts +5 -0
- package/dist/utils/utils.js +61 -0
- package/dist/utils/utils.js.map +1 -0
- package/package.json +180 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseBuildCommand.js","sourceRoot":"","sources":["../../../src/commands/app/BaseBuildCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class Abandon extends Command {
|
|
3
|
+
static description: string;
|
|
4
|
+
static args: {
|
|
5
|
+
appVersion: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static flags: {
|
|
8
|
+
noPrompt: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const chalk = require("chalk");
|
|
4
|
+
const core_1 = require("@oclif/core");
|
|
5
|
+
const handleInterrupt_1 = require("../../lib/handleInterrupt");
|
|
6
|
+
const die_1 = require("../../lib/die");
|
|
7
|
+
const Rivendell_1 = require("../../lib/Rivendell");
|
|
8
|
+
const Shards_1 = require("../../lib/Shards");
|
|
9
|
+
const formatError_1 = require("../../lib/formatError");
|
|
10
|
+
const TerminalConfirm_1 = require("../../lib/TerminalConfirm");
|
|
11
|
+
const RivendellApi_1 = require("../../lib/RivendellApi");
|
|
12
|
+
var AppVersionState = Rivendell_1.Rivendell.AppVersionState;
|
|
13
|
+
var ApiError = RivendellApi_1.RivendellApi.ApiError;
|
|
14
|
+
const http2_1 = require("http2");
|
|
15
|
+
const ABANDONABLE_STATES = [
|
|
16
|
+
AppVersionState.NEW,
|
|
17
|
+
AppVersionState.BUILD_FAILED,
|
|
18
|
+
AppVersionState.PUBLISHED,
|
|
19
|
+
];
|
|
20
|
+
class Abandon extends core_1.Command {
|
|
21
|
+
async run() {
|
|
22
|
+
var _a, _b;
|
|
23
|
+
(0, handleInterrupt_1.handleInterrupt)();
|
|
24
|
+
const { args, flags } = await this.parse(Abandon);
|
|
25
|
+
const appVersion = args.appVersion;
|
|
26
|
+
const noPrompt = flags.noPrompt;
|
|
27
|
+
if (!/[\w-]+@\d+\.\d+\.\d+(?:-\w+\.\d+)?/.test(appVersion)) {
|
|
28
|
+
(0, die_1.die)('appVersion is required in the format of app@1.0.0');
|
|
29
|
+
}
|
|
30
|
+
const confirmed = await TerminalConfirm_1.TerminalConfirm.ask(chalk.red('Abandoning is not reversible. Are you sure you want to abandon? [y/n]'), noPrompt, true);
|
|
31
|
+
if (!confirmed) {
|
|
32
|
+
(0, die_1.die)('Operation cancelled.');
|
|
33
|
+
}
|
|
34
|
+
const [appId, version] = appVersion.split('@');
|
|
35
|
+
this.log(chalk.gray(`Abandoning version ${appVersion} ...`));
|
|
36
|
+
try {
|
|
37
|
+
const primaryAppVersion = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, 'us');
|
|
38
|
+
let manifest;
|
|
39
|
+
if (primaryAppVersion === null || primaryAppVersion === void 0 ? void 0 : primaryAppVersion.manifestJson) {
|
|
40
|
+
manifest = JSON.parse(primaryAppVersion.manifestJson);
|
|
41
|
+
}
|
|
42
|
+
const appVersionStates = new Map();
|
|
43
|
+
let shards = [];
|
|
44
|
+
if (manifest === null || manifest === void 0 ? void 0 : manifest.meta) {
|
|
45
|
+
shards = await (0, Shards_1.shardsFromManifest)(manifest);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
const allShards = (await Rivendell_1.Rivendell.shards()).map((s) => s.id);
|
|
49
|
+
for (const shard of allShards) {
|
|
50
|
+
try {
|
|
51
|
+
const appVer = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, shard);
|
|
52
|
+
if (appVer) {
|
|
53
|
+
appVersionStates.set(shard, appVer.state);
|
|
54
|
+
shards.push(shard);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
if (error instanceof ApiError &&
|
|
59
|
+
((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === http2_1.constants.HTTP_STATUS_NOT_FOUND) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
(0, die_1.die)(`Could not locate the appVersion in region: ${shard}, error: ${(0, formatError_1.formatError)(error)}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
let abandonable = false;
|
|
67
|
+
for (const shard of shards) {
|
|
68
|
+
try {
|
|
69
|
+
let appVersionState = appVersionStates.get(shard);
|
|
70
|
+
if (!appVersionState) {
|
|
71
|
+
const appVer = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, shard);
|
|
72
|
+
appVersionState = appVer.state;
|
|
73
|
+
appVersionStates.set(shard, appVersionState);
|
|
74
|
+
}
|
|
75
|
+
if (ABANDONABLE_STATES.includes(appVersionState)) {
|
|
76
|
+
abandonable = true;
|
|
77
|
+
}
|
|
78
|
+
else if (appVersionState !== AppVersionState.ABANDONED) {
|
|
79
|
+
this.error(chalk.red('AppVersion must be in an abandonable state in all regions. Exiting...'), { exit: 1 });
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
if (error instanceof ApiError &&
|
|
84
|
+
((_b = error.response) === null || _b === void 0 ? void 0 : _b.status) === http2_1.constants.HTTP_STATUS_NOT_FOUND) {
|
|
85
|
+
this.error(chalk.red(`Could not locate the appVersion in region: ${shard}.`), { exit: false });
|
|
86
|
+
const continueAnswer = await TerminalConfirm_1.TerminalConfirm.ask('Continue with other regions?', noPrompt, true);
|
|
87
|
+
if (!continueAnswer) {
|
|
88
|
+
(0, die_1.die)('Operation cancelled.');
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
throw error;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (!abandonable) {
|
|
97
|
+
this.log(chalk.yellow('AppVersion is already in an abandoned state in all regions. Exiting...'));
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (!shards.includes('us')) {
|
|
101
|
+
try {
|
|
102
|
+
await Rivendell_1.Rivendell.abandon(appId, version, 'us');
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
this.error(chalk.red(`Failed to abandon in the primary region, error ${(0, formatError_1.formatError)(error)}`));
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
for (const shard of shards) {
|
|
110
|
+
try {
|
|
111
|
+
if (!appVersionStates.get(shard))
|
|
112
|
+
continue;
|
|
113
|
+
const appVersionState = appVersionStates.get(shard);
|
|
114
|
+
if (appVersionState === AppVersionState.ABANDONED) {
|
|
115
|
+
this.log(chalk.yellow(`Already abandoned in region ${shard}. Skipping...`));
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
await Rivendell_1.Rivendell.abandon(appId, version, shard);
|
|
119
|
+
}
|
|
120
|
+
catch (error) {
|
|
121
|
+
(0, die_1.die)(`Failed to abandon in region ${shard}, error: ${(0, formatError_1.formatError)(error)}. Exiting...`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
this.log(chalk.green('Abandon completed in all regions'));
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
this.error(chalk.red(`Error while abandoning ${(0, formatError_1.formatError)(error)}`));
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
exports.default = Abandon;
|
|
132
|
+
Abandon.description = 'Abandon (cease processing) a specific app version that has not been published yet';
|
|
133
|
+
Abandon.args = {
|
|
134
|
+
appVersion: core_1.Args.string({
|
|
135
|
+
description: 'The App ID and version (e.g. my_app@1.0.0)',
|
|
136
|
+
required: true,
|
|
137
|
+
}),
|
|
138
|
+
};
|
|
139
|
+
Abandon.flags = {
|
|
140
|
+
noPrompt: core_1.Flags.boolean({
|
|
141
|
+
aliases: ['no-prompt'],
|
|
142
|
+
description: 'Use default answer to any prompt question (default is yes, except for destructive operations)',
|
|
143
|
+
default: false,
|
|
144
|
+
}),
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=abandon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abandon.js","sourceRoot":"","sources":["../../../src/commands/app/abandon.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class GetLogLevel extends Command {
|
|
3
|
+
static aliases: string[];
|
|
4
|
+
static summary: string;
|
|
5
|
+
static description: string;
|
|
6
|
+
static examples: string[];
|
|
7
|
+
static flags: {
|
|
8
|
+
trackerId: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
availability: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
};
|
|
11
|
+
static args: {
|
|
12
|
+
appVersion: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
13
|
+
};
|
|
14
|
+
run(): Promise<void>;
|
|
15
|
+
private render;
|
|
16
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const chalk = require("chalk");
|
|
5
|
+
const AppContext_1 = require("../../lib/AppContext");
|
|
6
|
+
const die_1 = require("../../lib/die");
|
|
7
|
+
const Rivendell_1 = require("../../lib/Rivendell");
|
|
8
|
+
const formatError_1 = require("../../lib/formatError");
|
|
9
|
+
class GetLogLevel extends core_1.Command {
|
|
10
|
+
async run() {
|
|
11
|
+
const { args, flags } = await this.parse(GetLogLevel);
|
|
12
|
+
const appVersion = args.appVersion;
|
|
13
|
+
const trackerId = flags['tracker-id'];
|
|
14
|
+
const availability = flags.availability || '';
|
|
15
|
+
try {
|
|
16
|
+
const context = (0, AppContext_1.appContext)(appVersion);
|
|
17
|
+
if (!context.appId || !context.version) {
|
|
18
|
+
(0, die_1.die)('App ID and version are required');
|
|
19
|
+
}
|
|
20
|
+
if (!trackerId && !(await Rivendell_1.Rivendell.isAdmin())) {
|
|
21
|
+
(0, die_1.die)('Tracker ID must be specified for developer role.');
|
|
22
|
+
}
|
|
23
|
+
const logLevelRecord = await Rivendell_1.Rivendell.getLogLevel(availability, context.appId, context.version, trackerId);
|
|
24
|
+
this.render(appVersion, logLevelRecord);
|
|
25
|
+
}
|
|
26
|
+
catch (e) {
|
|
27
|
+
(0, die_1.die)((0, formatError_1.formatError)(e));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
render(appVersion, record) {
|
|
31
|
+
if (record.trackerId) {
|
|
32
|
+
this.log(chalk.green(`install log level is currently set to ${record.logLevel}`));
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.log(chalk.green(`${appVersion} log level is currently set to ${record.logLevel}`));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.default = GetLogLevel;
|
|
40
|
+
GetLogLevel.aliases = ['app:get-log-level'];
|
|
41
|
+
GetLogLevel.summary = 'Get the log level of a particular app version or an installation';
|
|
42
|
+
GetLogLevel.description = `Get the log level for an app version (or install-specific if tracker ID is provided).
|
|
43
|
+
Developers must specify the tracker ID unless they are admins.`;
|
|
44
|
+
GetLogLevel.examples = [
|
|
45
|
+
'$ ocp app get-log-level my_app@1.0.0',
|
|
46
|
+
'$ ocp app get-log-level my_app@1.0.0 --tracker-id=my-tracker-id',
|
|
47
|
+
'$ ocp app get-log-level my_app@1.0.0 -a eu',
|
|
48
|
+
];
|
|
49
|
+
GetLogLevel.flags = {
|
|
50
|
+
trackerId: core_1.Flags.string({
|
|
51
|
+
aliases: ['tracker-id'],
|
|
52
|
+
description: 'The Tracker ID of the installed account (required for developers). If not provided, returns default log level for the app version',
|
|
53
|
+
}),
|
|
54
|
+
availability: core_1.Flags.string({
|
|
55
|
+
char: 'a',
|
|
56
|
+
description: 'The availability zone that will be targeted (default: us)',
|
|
57
|
+
default: 'us',
|
|
58
|
+
}),
|
|
59
|
+
};
|
|
60
|
+
GetLogLevel.args = {
|
|
61
|
+
appVersion: core_1.Args.string({
|
|
62
|
+
required: true,
|
|
63
|
+
description: 'The App ID and version (e.g. my_app@1.0.0)',
|
|
64
|
+
}),
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=getLogLevel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getLogLevel.js","sourceRoot":"","sources":["../../../src/commands/app/getLogLevel.ts"],"names":[],"mappings":";;AAAA,sCAAmD;AACnD,+BAA+B;AAC/B,qDAAkD;AAClD,uCAAoC;AACpC,mDAAgD;AAChD,uDAAoD;AAGpD,MAAqB,WAAY,SAAQ,cAAO;IAmCvC,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;QAE9C,IAAI;YACF,MAAM,OAAO,GAAG,IAAA,uBAAU,EAAC,UAAU,CAAC,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACtC,IAAA,SAAG,EAAC,iCAAiC,CAAC,CAAC;aACxC;YAED,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,qBAAS,CAAC,OAAO,EAAE,CAAC,EAAE;gBAC9C,IAAA,SAAG,EAAC,kDAAkD,CAAC,CAAC;aACzD;YAED,MAAM,cAAc,GAAG,MAAM,qBAAS,CAAC,WAAW,CAChD,YAAY,EACZ,OAAO,CAAC,KAAM,EACd,OAAO,CAAC,OAAQ,EAChB,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;SACzC;QAAC,OAAO,CAAM,EAAE;YACf,IAAA,SAAG,EAAC,IAAA,yBAAW,EAAC,CAAC,CAAC,CAAC,CAAC;SACrB;IACH,CAAC;IAEO,MAAM,CAAC,UAAkB,EAAE,MAAsB;QACvD,IAAI,MAAM,CAAC,SAAS,EAAE;YACpB,IAAI,CAAC,GAAG,CACN,KAAK,CAAC,KAAK,CAAC,yCAAyC,MAAM,CAAC,QAAQ,EAAE,CAAC,CACxE,CAAC;SACH;aAAM;YACL,IAAI,CAAC,GAAG,CACN,KAAK,CAAC,KAAK,CACT,GAAG,UAAU,kCAAkC,MAAM,CAAC,QAAQ,EAAE,CACjE,CACF,CAAC;SACH;IACH,CAAC;;AA5EH,8BA6EC;AA5Ee,mBAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC;AAEhC,mBAAO,GACnB,kEAAkE,CAAC;AAEvD,uBAAW,GAAG;+DACiC,CAAC;AAEhD,oBAAQ,GAAG;IACvB,sCAAsC;IACtC,iEAAiE;IACjE,4CAA4C;CAC7C,CAAC;AAEY,iBAAK,GAAG;IACpB,SAAS,EAAE,YAAK,CAAC,MAAM,CAAC;QACtB,OAAO,EAAE,CAAC,YAAY,CAAC;QACvB,WAAW,EACT,mIAAmI;KACtI,CAAC;IACF,YAAY,EAAE,YAAK,CAAC,MAAM,CAAC;QACzB,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,2DAA2D;QACxE,OAAO,EAAE,IAAI;KACd,CAAC;CACH,CAAC;AAEY,gBAAI,GAAG;IACnB,UAAU,EAAE,WAAI,CAAC,MAAM,CAAC;QACtB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,4CAA4C;KAC1D,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export declare const APP_ID_FORMAT: RegExp;
|
|
3
|
+
export declare const VERSION_FORMAT: RegExp;
|
|
4
|
+
export default class Create extends Command {
|
|
5
|
+
static description: string;
|
|
6
|
+
static args: {
|
|
7
|
+
id: import("@oclif/core/lib/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
8
|
+
};
|
|
9
|
+
private variables;
|
|
10
|
+
private variableId;
|
|
11
|
+
private manifest;
|
|
12
|
+
private substitutions;
|
|
13
|
+
private warnings;
|
|
14
|
+
private packageManager;
|
|
15
|
+
run(): Promise<void>;
|
|
16
|
+
private renderTemplate;
|
|
17
|
+
private get variable();
|
|
18
|
+
private get templateOptions();
|
|
19
|
+
private get question();
|
|
20
|
+
private askQuestion;
|
|
21
|
+
private onAnswer;
|
|
22
|
+
private getHint;
|
|
23
|
+
private validateInput;
|
|
24
|
+
private get suggestion();
|
|
25
|
+
private getLatestSDKVersion;
|
|
26
|
+
private getSDKVersions;
|
|
27
|
+
}
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.VERSION_FORMAT = exports.APP_ID_FORMAT = void 0;
|
|
4
|
+
const chalk = require("chalk");
|
|
5
|
+
const columnify = require("columnify");
|
|
6
|
+
const fs = require("fs");
|
|
7
|
+
const path = require("path");
|
|
8
|
+
const marked_terminal_1 = require("marked-terminal");
|
|
9
|
+
const title_case_1 = require("title-case");
|
|
10
|
+
const core_1 = require("@oclif/core");
|
|
11
|
+
const marked_1 = require("marked");
|
|
12
|
+
const terminal_kit_1 = require("terminal-kit");
|
|
13
|
+
const handleInterrupt_1 = require("../../lib/handleInterrupt");
|
|
14
|
+
const PackageManager_1 = require("../../lib/PackageManager");
|
|
15
|
+
const TeminalPassthru_1 = require("../../lib/TeminalPassthru");
|
|
16
|
+
const fetchTemplatesManifest_1 = require("../../lib/templating/fetchTemplatesManifest");
|
|
17
|
+
const TemplateRenderer_1 = require("../../lib/templating/TemplateRenderer");
|
|
18
|
+
const TerminalConfirm_1 = require("../../lib/TerminalConfirm");
|
|
19
|
+
const TerminalInput_1 = require("../../lib/TerminalInput");
|
|
20
|
+
const TerminalMenu_1 = require("../../lib/TerminalMenu");
|
|
21
|
+
const TerminalSpinner_1 = require("../../lib/TerminalSpinner");
|
|
22
|
+
const Config_1 = require("../../lib/Config");
|
|
23
|
+
const Rivendell_1 = require("../../lib/Rivendell");
|
|
24
|
+
const die_1 = require("../../lib/die");
|
|
25
|
+
const formatError_1 = require("../../lib/formatError");
|
|
26
|
+
exports.APP_ID_FORMAT = /^[a-z][a-z_0-9]{2,31}$/;
|
|
27
|
+
exports.VERSION_FORMAT = /^\d+\.\d+\.\d+(-(((dev|beta)(\.\d+)?)|private))?$/;
|
|
28
|
+
class Create extends core_1.Command {
|
|
29
|
+
constructor() {
|
|
30
|
+
super(...arguments);
|
|
31
|
+
this.variableId = 0;
|
|
32
|
+
this.substitutions = {};
|
|
33
|
+
this.warnings = [];
|
|
34
|
+
this.onAnswer = async (error, input) => {
|
|
35
|
+
if (error) {
|
|
36
|
+
terminal_kit_1.terminal.eraseDisplayBelow().nextLine(1);
|
|
37
|
+
this.error(chalk.red(error));
|
|
38
|
+
}
|
|
39
|
+
input = input.trim();
|
|
40
|
+
if (this.suggestion && input === '') {
|
|
41
|
+
input = this.suggestion;
|
|
42
|
+
}
|
|
43
|
+
if (!this.validateInput(input)) {
|
|
44
|
+
if (this.variable.required && input.length === 0) {
|
|
45
|
+
terminal_kit_1.terminal.red(' This value is required').nextLine(1);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
terminal_kit_1.terminal.red(` Invalid value for ${this.variable.name}`).nextLine(1);
|
|
49
|
+
}
|
|
50
|
+
if (this.variable.hidden) {
|
|
51
|
+
(0, die_1.die)(`Invalid value of '${this.variable.name}' field: ${input}. Contact support`);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
await this.askQuestion();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
if (!this.variable.hidden) {
|
|
59
|
+
(0, terminal_kit_1.terminal)(chalk.gray(this.question + ': '))
|
|
60
|
+
.white(input)
|
|
61
|
+
.nextLine(1);
|
|
62
|
+
}
|
|
63
|
+
this.substitutions[this.variable.name] = input;
|
|
64
|
+
this.variableId++;
|
|
65
|
+
if (!(await this.askQuestion())) {
|
|
66
|
+
await this.renderTemplate();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
this.getHint = (input) => {
|
|
71
|
+
if (input.trim() === '' && this.suggestion) {
|
|
72
|
+
return `[Enter] to accept ${this.suggestion}`;
|
|
73
|
+
}
|
|
74
|
+
switch (this.variable.name) {
|
|
75
|
+
case 'display_name':
|
|
76
|
+
if (input.length === 0) {
|
|
77
|
+
return chalk.yellow('Display Name is required');
|
|
78
|
+
}
|
|
79
|
+
break;
|
|
80
|
+
case 'app_id':
|
|
81
|
+
if (!input) {
|
|
82
|
+
return chalk.yellow('App ID is required');
|
|
83
|
+
}
|
|
84
|
+
else if (!input.match(/^[a-z]/)) {
|
|
85
|
+
return chalk.yellow('must start with a lower case letter');
|
|
86
|
+
}
|
|
87
|
+
else if (!input.match(/^[a-z_0-9]+$/)) {
|
|
88
|
+
return chalk.yellow('can only contain lower case letters, numbers, and underscores');
|
|
89
|
+
}
|
|
90
|
+
else if (input.match(/_$/)) {
|
|
91
|
+
return chalk.yellow('should not end with an underscore');
|
|
92
|
+
}
|
|
93
|
+
else if (input.length < 3 || input.length > 32) {
|
|
94
|
+
return chalk.yellow('must be between 3 and 32 characters long');
|
|
95
|
+
}
|
|
96
|
+
break;
|
|
97
|
+
case 'version':
|
|
98
|
+
if (!input.match(exports.VERSION_FORMAT)) {
|
|
99
|
+
return chalk.yellow('must be semver. -beta, -dev, -private pre-releases are allowed');
|
|
100
|
+
}
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
return '';
|
|
104
|
+
};
|
|
105
|
+
this.validateInput = (input) => {
|
|
106
|
+
if (!input) {
|
|
107
|
+
input = this.suggestion;
|
|
108
|
+
}
|
|
109
|
+
switch (this.variable.name) {
|
|
110
|
+
case 'app_id':
|
|
111
|
+
return exports.APP_ID_FORMAT.test(input);
|
|
112
|
+
case 'version':
|
|
113
|
+
return exports.VERSION_FORMAT.test(input);
|
|
114
|
+
}
|
|
115
|
+
if (this.variable.required && input.length === 0) {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
return true;
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
async run() {
|
|
122
|
+
try {
|
|
123
|
+
(0, handleInterrupt_1.handleInterrupt)();
|
|
124
|
+
this.manifest = await (0, fetchTemplatesManifest_1.fetchTemplatesManifest)();
|
|
125
|
+
this.variables = this.manifest.baseTemplateVariables;
|
|
126
|
+
this.variables.find((v) => v.name === 'vendor').suggest = (await Rivendell_1.Rivendell.whoami()).vendor;
|
|
127
|
+
this.variables.push({
|
|
128
|
+
name: 'template',
|
|
129
|
+
question: 'Select a template project',
|
|
130
|
+
});
|
|
131
|
+
if (!(await this.askQuestion())) {
|
|
132
|
+
process.exit(1);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
catch (e) {
|
|
136
|
+
(0, die_1.die)((0, formatError_1.formatError)(e));
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
async renderTemplate() {
|
|
140
|
+
const { app_id, template: templateName } = this.substitutions;
|
|
141
|
+
delete this.substitutions.template;
|
|
142
|
+
let fullPath;
|
|
143
|
+
if (fs.readdirSync(process.cwd()).length === 0) {
|
|
144
|
+
if (await TerminalConfirm_1.TerminalConfirm.ask(`Use current directory (${chalk.yellow(process.cwd())})?`)) {
|
|
145
|
+
fullPath = process.cwd();
|
|
146
|
+
this.log(chalk.gray(`Using ${chalk.yellow(fullPath)}`));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (!fullPath) {
|
|
150
|
+
const suggestion = app_id.replace(/_/g, '-');
|
|
151
|
+
let dirName = await TerminalInput_1.TerminalInput.ask(`Project directory name:`, {
|
|
152
|
+
defaultValue: suggestion,
|
|
153
|
+
});
|
|
154
|
+
while (fs.existsSync(path.resolve(dirName)) &&
|
|
155
|
+
fs.readdirSync(path.resolve(dirName)).length !== 0) {
|
|
156
|
+
this.log(chalk.red(`Directory ${path.resolve(dirName)} is not empty!`));
|
|
157
|
+
dirName = await TerminalInput_1.TerminalInput.ask(`Project directory name:`, {
|
|
158
|
+
defaultValue: suggestion,
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
fullPath = path.resolve(dirName);
|
|
162
|
+
this.log(chalk.gray('Creating directory', chalk.yellow(fullPath)));
|
|
163
|
+
fs.mkdirSync(fullPath);
|
|
164
|
+
}
|
|
165
|
+
// Prompt for package manager selection
|
|
166
|
+
const pmOptions = PackageManager_1.PACKAGE_MANAGERS.map((pm) => PackageManager_1.PackageManagerFactory.create(pm).displayName);
|
|
167
|
+
const pmSelection = await TerminalMenu_1.TerminalMenu.ask('Select your preferred package manager:', pmOptions, { layout: 'row' });
|
|
168
|
+
const selectedPmType = PackageManager_1.PACKAGE_MANAGERS[pmSelection.id];
|
|
169
|
+
this.packageManager = PackageManager_1.PackageManagerFactory.create(selectedPmType);
|
|
170
|
+
// add latest sdk versions to the substitutions
|
|
171
|
+
const spinner = new TerminalSpinner_1.TerminalSpinner().start(chalk.gray('Checking latest SDK versions...'));
|
|
172
|
+
await this.getSDKVersions();
|
|
173
|
+
const template = this.manifest.templates.find((t) => t.name === templateName);
|
|
174
|
+
await new TemplateRenderer_1.TemplateRenderer(fullPath, template, (status) => spinner.update(status)).render(this.substitutions);
|
|
175
|
+
spinner.stop();
|
|
176
|
+
this.log(chalk.gray(`Performing initial ${this.packageManager.displayName} install`));
|
|
177
|
+
this.packageManager.initProject(fullPath);
|
|
178
|
+
const result = TeminalPassthru_1.TerminalPassthru.exec(this.packageManager.installCommand());
|
|
179
|
+
if (result.status !== 0) {
|
|
180
|
+
this.log(chalk.red(`There was a problem running ${this.packageManager.displayName}. ` +
|
|
181
|
+
`Make sure ${this.packageManager.displayName} is installed and then run ` +
|
|
182
|
+
`${chalk.white(this.packageManager.installCommand())} from ${chalk.white(fullPath)} to install dependencies.`));
|
|
183
|
+
}
|
|
184
|
+
if (this.warnings.length > 0) {
|
|
185
|
+
this.warnings.forEach((warning) => this.warn(warning));
|
|
186
|
+
}
|
|
187
|
+
marked_1.marked.setOptions({
|
|
188
|
+
renderer: new marked_terminal_1.default(),
|
|
189
|
+
});
|
|
190
|
+
this.log('\n' +
|
|
191
|
+
(0, marked_1.marked)(`New OCP app project created at \`${fullPath}\`\n` +
|
|
192
|
+
'- View README.md for information on getting started\n' +
|
|
193
|
+
'- Check out the [documentation](https://docs.developers.optimizely.com/optimizely-connect-platform/docs)'));
|
|
194
|
+
}
|
|
195
|
+
get variable() {
|
|
196
|
+
return this.variables[this.variableId];
|
|
197
|
+
}
|
|
198
|
+
get templateOptions() {
|
|
199
|
+
return columnify(this.manifest.templates, {
|
|
200
|
+
columns: ['name', 'sp', 'summary'],
|
|
201
|
+
})
|
|
202
|
+
.split('\n')
|
|
203
|
+
.slice(1);
|
|
204
|
+
}
|
|
205
|
+
get question() {
|
|
206
|
+
if (this.suggestion) {
|
|
207
|
+
return `${this.variable.question} [${chalk.gray(this.suggestion)}]`;
|
|
208
|
+
}
|
|
209
|
+
if (this.variable.hint) {
|
|
210
|
+
return `${this.variable.question} (${chalk.gray(this.variable.hint)})`;
|
|
211
|
+
}
|
|
212
|
+
return this.variable.question;
|
|
213
|
+
}
|
|
214
|
+
async askQuestion() {
|
|
215
|
+
if (this.variables.length <= this.variableId)
|
|
216
|
+
return false;
|
|
217
|
+
if (this.variable.hidden) {
|
|
218
|
+
await this.onAnswer(undefined, this.variable.suggest || '');
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
221
|
+
switch (this.variable.name) {
|
|
222
|
+
case 'template': {
|
|
223
|
+
const index = (await TerminalMenu_1.TerminalMenu.ask(`${this.question}:`, this.templateOptions, {
|
|
224
|
+
layout: 'row',
|
|
225
|
+
})).id;
|
|
226
|
+
await this.onAnswer(undefined, this.manifest.templates[index].name);
|
|
227
|
+
break;
|
|
228
|
+
}
|
|
229
|
+
case 'category': {
|
|
230
|
+
const categories = [
|
|
231
|
+
'Commerce Platform',
|
|
232
|
+
'Point of Sale',
|
|
233
|
+
'Lead Capture',
|
|
234
|
+
'Advertising',
|
|
235
|
+
'Marketing',
|
|
236
|
+
'Channel',
|
|
237
|
+
'Loyalty & Rewards',
|
|
238
|
+
'Customer Experience',
|
|
239
|
+
'Analytics & Reporting',
|
|
240
|
+
'Surveys & Feedback',
|
|
241
|
+
'Reviews & Ratings',
|
|
242
|
+
'Content Management',
|
|
243
|
+
'Data Quality & Enrichment',
|
|
244
|
+
'Productivity',
|
|
245
|
+
'CRM',
|
|
246
|
+
'Accounting & Finance',
|
|
247
|
+
'CDP / DMP',
|
|
248
|
+
'Attribution & Linking',
|
|
249
|
+
'Testing & Utilities',
|
|
250
|
+
'Personalization & Content',
|
|
251
|
+
'Offers',
|
|
252
|
+
'Merchandising & Products',
|
|
253
|
+
'Site & Content Experience',
|
|
254
|
+
'Subscriptions',
|
|
255
|
+
'Audience Sync',
|
|
256
|
+
].sort();
|
|
257
|
+
await this.onAnswer(undefined, (await TerminalMenu_1.TerminalMenu.ask(`${this.question}:`, categories)).text);
|
|
258
|
+
break;
|
|
259
|
+
}
|
|
260
|
+
default: {
|
|
261
|
+
await this.onAnswer(undefined, await TerminalInput_1.TerminalInput.ask(`${this.question}:`, {
|
|
262
|
+
getHint: this.getHint,
|
|
263
|
+
validate: this.validateInput,
|
|
264
|
+
}));
|
|
265
|
+
break;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
return true;
|
|
269
|
+
}
|
|
270
|
+
get suggestion() {
|
|
271
|
+
switch (this.variable.name) {
|
|
272
|
+
case 'display_name': {
|
|
273
|
+
const argId = this.argv[0];
|
|
274
|
+
if (argId || fs.readdirSync(process.cwd()).length === 0) {
|
|
275
|
+
const dir = (0, title_case_1.default)(argId ||
|
|
276
|
+
path
|
|
277
|
+
.basename(process.cwd())
|
|
278
|
+
.replace(/[^a-zA-Z0-9]+/g, ' ')
|
|
279
|
+
.trim());
|
|
280
|
+
if (dir && this.validateInput(dir))
|
|
281
|
+
return dir;
|
|
282
|
+
}
|
|
283
|
+
break;
|
|
284
|
+
}
|
|
285
|
+
case 'app_id': {
|
|
286
|
+
const appId = (this.substitutions['display_name'] || '')
|
|
287
|
+
.toLowerCase()
|
|
288
|
+
.replace(/[^0-9a-z_]+/g, '_');
|
|
289
|
+
if (appId.length > 0 && this.validateInput(appId))
|
|
290
|
+
return appId;
|
|
291
|
+
break;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
return this.variable.suggest || '';
|
|
295
|
+
}
|
|
296
|
+
getLatestSDKVersion(versions, stage = 'stable') {
|
|
297
|
+
const major = Object.keys(versions)
|
|
298
|
+
.map((x) => parseInt(x, 10))
|
|
299
|
+
.sort()
|
|
300
|
+
.reverse()[0]
|
|
301
|
+
.toString();
|
|
302
|
+
return versions[major][stage];
|
|
303
|
+
}
|
|
304
|
+
async getSDKVersions(stage = 'stable') {
|
|
305
|
+
try {
|
|
306
|
+
const deps = await fetch((0, Config_1.getDependencyFileUrl)('node22'));
|
|
307
|
+
const json = (await deps.json());
|
|
308
|
+
this.substitutions['app_sdk_version'] = this.getLatestSDKVersion(json['@zaiusinc/app-sdk'], stage);
|
|
309
|
+
this.substitutions['node_sdk_version'] = this.getLatestSDKVersion(json['@zaiusinc/node-sdk'], stage);
|
|
310
|
+
}
|
|
311
|
+
catch (e) {
|
|
312
|
+
this.warnings.push('Error fetching sdk versions, defaulting to latest: ', e.message);
|
|
313
|
+
this.substitutions['app_sdk_version'] = 'latest';
|
|
314
|
+
this.substitutions['node_sdk_version'] = 'latest';
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
exports.default = Create;
|
|
319
|
+
Create.description = 'Create a new app project';
|
|
320
|
+
Create.args = {
|
|
321
|
+
id: core_1.Args.string({
|
|
322
|
+
required: false,
|
|
323
|
+
description: 'The app id / directory to create',
|
|
324
|
+
}),
|
|
325
|
+
};
|
|
326
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/app/init.ts"],"names":[],"mappings":"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"}
|