@dotcms/create-app 1.2.5 → 1.2.6-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -174
- package/index.js +1522 -0
- package/package.json +22 -25
- package/src/api/index.d.ts +0 -26
- package/src/api/index.js +0 -80
- package/src/api/index.js.map +0 -1
- package/src/asks.d.ts +0 -47
- package/src/asks.js +0 -222
- package/src/asks.js.map +0 -1
- package/src/constants/index.d.ts +0 -22
- package/src/constants/index.js +0 -151
- package/src/constants/index.js.map +0 -1
- package/src/errors/index.d.ts +0 -18
- package/src/errors/index.js +0 -40
- package/src/errors/index.js.map +0 -1
- package/src/git/index.d.ts +0 -8
- package/src/git/index.js +0 -64
- package/src/git/index.js.map +0 -1
- package/src/index.d.ts +0 -2
- package/src/index.js +0 -419
- package/src/index.js.map +0 -1
- package/src/types/index.d.ts +0 -69
- package/src/types/index.js +0 -3
- package/src/types/index.js.map +0 -1
- package/src/utils/index.d.ts +0 -78
- package/src/utils/index.js +0 -461
- package/src/utils/index.js.map +0 -1
- package/src/utils/validation.d.ts +0 -47
- package/src/utils/validation.js +0 -295
- package/src/utils/validation.js.map +0 -1
package/src/errors/index.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FailedToGetDemoSiteIdentifierError = exports.FailedToSetUpUVEConfig = exports.FailedToGetDotcmsTokenError = exports.FailedToDownloadDockerComposeError = exports.DockerCliNotInstalledError = exports.FailedToCreateFrontendProjectError = void 0;
|
|
4
|
-
class FailedToCreateFrontendProjectError extends Error {
|
|
5
|
-
constructor(framework) {
|
|
6
|
-
super(`Failed to create frontend project for framework: ${framework}. Please check if you have git installed and an active internet connection.`);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
exports.FailedToCreateFrontendProjectError = FailedToCreateFrontendProjectError;
|
|
10
|
-
class DockerCliNotInstalledError extends Error {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(`Please check if Docker CLI installed in you system!`);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
exports.DockerCliNotInstalledError = DockerCliNotInstalledError;
|
|
16
|
-
class FailedToDownloadDockerComposeError extends Error {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(`Failed to download the docker compose file`);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.FailedToDownloadDockerComposeError = FailedToDownloadDockerComposeError;
|
|
22
|
-
class FailedToGetDotcmsTokenError extends Error {
|
|
23
|
-
constructor() {
|
|
24
|
-
super(`Failed to get dotCMS API token. Please make sure if dotCMS container is running.`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.FailedToGetDotcmsTokenError = FailedToGetDotcmsTokenError;
|
|
28
|
-
class FailedToSetUpUVEConfig extends Error {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(`Failed to set up UVE configuration in DotCMS.`);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.FailedToSetUpUVEConfig = FailedToSetUpUVEConfig;
|
|
34
|
-
class FailedToGetDemoSiteIdentifierError extends Error {
|
|
35
|
-
constructor() {
|
|
36
|
-
super(`Failed to get demo site identifier from DotCMS.`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
exports.FailedToGetDemoSiteIdentifierError = FailedToGetDemoSiteIdentifierError;
|
|
40
|
-
//# sourceMappingURL=index.js.map
|
package/src/errors/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/sdk/create-app/src/errors/index.ts"],"names":[],"mappings":";;;AAAA,MAAa,kCAAmC,SAAQ,KAAK;IACzD,YAAY,SAAiB;QACzB,KAAK,CACD,oDAAoD,SAAS,6EAA6E,CAC7I,CAAC;IACN,CAAC;CACJ;AAND,gFAMC;AAED,MAAa,0BAA2B,SAAQ,KAAK;IACjD;QACI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACjE,CAAC;CACJ;AAJD,gEAIC;AAED,MAAa,kCAAmC,SAAQ,KAAK;IACzD;QACI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACxD,CAAC;CACJ;AAJD,gFAIC;AAED,MAAa,2BAA4B,SAAQ,KAAK;IAClD;QACI,KAAK,CAAC,kFAAkF,CAAC,CAAC;IAC9F,CAAC;CACJ;AAJD,kEAIC;AAED,MAAa,sBAAuB,SAAQ,KAAK;IAC7C;QACI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC3D,CAAC;CACJ;AAJD,wDAIC;AAED,MAAa,kCAAmC,SAAQ,KAAK;IACzD;QACI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC7D,CAAC;CACJ;AAJD,gFAIC"}
|
package/src/git/index.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { SupportedFrontEndFrameworks } from '../types';
|
|
2
|
-
export declare const cloneFrontEndSample: ({ framework, directory }: {
|
|
3
|
-
framework: SupportedFrontEndFrameworks;
|
|
4
|
-
directory: string;
|
|
5
|
-
}) => Promise<void>;
|
|
6
|
-
export declare function downloadDockerCompose(directory: string): Promise<void>;
|
|
7
|
-
export declare function moveDockerComposeOneLevelUp(directory: string): Promise<void>;
|
|
8
|
-
export declare function moveDockerComposeBack(directory: string): Promise<void>;
|
package/src/git/index.js
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cloneFrontEndSample = void 0;
|
|
4
|
-
exports.downloadDockerCompose = downloadDockerCompose;
|
|
5
|
-
exports.moveDockerComposeOneLevelUp = moveDockerComposeOneLevelUp;
|
|
6
|
-
exports.moveDockerComposeBack = moveDockerComposeBack;
|
|
7
|
-
const tslib_1 = require("tslib");
|
|
8
|
-
const execa_1 = require("execa");
|
|
9
|
-
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
10
|
-
const path_1 = tslib_1.__importDefault(require("path"));
|
|
11
|
-
const utils_1 = require("../utils");
|
|
12
|
-
const cloneFrontEndSample = async ({ framework, directory }) => {
|
|
13
|
-
// 1. Clone repository (sparse + blobless)
|
|
14
|
-
await (0, execa_1.execa)('git', ['clone', '--filter=blob:none', '--sparse', 'https://github.com/dotCMS/core.git', '.'], { cwd: directory });
|
|
15
|
-
// 2. Enable sparse checkout & select the folder
|
|
16
|
-
await (0, execa_1.execa)('git', ['sparse-checkout', 'set', `examples/${framework}`], {
|
|
17
|
-
cwd: directory
|
|
18
|
-
});
|
|
19
|
-
// await fs.ensureDir(path.join(directory, framework));
|
|
20
|
-
// 3. Checkout main branch (only the selected folder is downloaded)
|
|
21
|
-
await (0, execa_1.execa)('git', ['checkout', 'main'], {
|
|
22
|
-
cwd: directory
|
|
23
|
-
// stdio: 'inherit'
|
|
24
|
-
});
|
|
25
|
-
const src = path_1.default.join(directory, 'examples', `${framework}`);
|
|
26
|
-
const dest = directory;
|
|
27
|
-
// const dest = path.join(directory, framework);
|
|
28
|
-
// Ensure framework directory exists
|
|
29
|
-
// await fs.ensureDir(dest);
|
|
30
|
-
// Remove EVERYTHING in repo except the examples folder
|
|
31
|
-
const items = await fs_extra_1.default.readdir(directory);
|
|
32
|
-
for (const item of items) {
|
|
33
|
-
if (item !== 'examples') {
|
|
34
|
-
await fs_extra_1.default.remove(path_1.default.join(directory, item));
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
// Copy only the nextjs folder into the framework folder
|
|
38
|
-
await fs_extra_1.default.copy(src, dest, { overwrite: true });
|
|
39
|
-
// Remove the remaining examples folder
|
|
40
|
-
const allItems = await fs_extra_1.default.readdir(directory);
|
|
41
|
-
for (const item of allItems) {
|
|
42
|
-
if (item === 'examples') {
|
|
43
|
-
await fs_extra_1.default.remove(path_1.default.join(directory, item));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
exports.cloneFrontEndSample = cloneFrontEndSample;
|
|
48
|
-
async function downloadDockerCompose(directory) {
|
|
49
|
-
// 6. Download docker-compose file
|
|
50
|
-
const dockerUrl = 'https://raw.githubusercontent.com/dotCMS/core/main/docker/docker-compose-examples/single-node-demo-site/docker-compose.yml';
|
|
51
|
-
const dockerComposePath = path_1.default.join(directory, 'docker-compose.yml');
|
|
52
|
-
await (0, utils_1.downloadFile)(dockerUrl, dockerComposePath);
|
|
53
|
-
}
|
|
54
|
-
async function moveDockerComposeOneLevelUp(directory) {
|
|
55
|
-
const sourcePath = path_1.default.join(directory, 'docker-compose.yml');
|
|
56
|
-
const targetPath = path_1.default.join(directory, '..', 'docker-compose.yml');
|
|
57
|
-
await fs_extra_1.default.rename(sourcePath, targetPath);
|
|
58
|
-
}
|
|
59
|
-
async function moveDockerComposeBack(directory) {
|
|
60
|
-
const sourcePath = path_1.default.join(directory, '..', 'docker-compose.yml');
|
|
61
|
-
const targetPath = path_1.default.join(directory, 'docker-compose.yml');
|
|
62
|
-
await fs_extra_1.default.rename(sourcePath, targetPath);
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=index.js.map
|
package/src/git/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/sdk/create-app/src/git/index.ts"],"names":[],"mappings":"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"}
|
package/src/index.d.ts
DELETED
package/src/index.js
DELETED
|
@@ -1,419 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.createApp = createApp;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const cfonts_1 = tslib_1.__importDefault(require("cfonts"));
|
|
7
|
-
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
8
|
-
const commander_1 = require("commander");
|
|
9
|
-
const execa_1 = require("execa");
|
|
10
|
-
const ora_1 = tslib_1.__importDefault(require("ora"));
|
|
11
|
-
const ts_results_1 = require("ts-results");
|
|
12
|
-
const api_1 = require("./api");
|
|
13
|
-
const asks_1 = require("./asks");
|
|
14
|
-
const constants_1 = require("./constants");
|
|
15
|
-
const errors_1 = require("./errors");
|
|
16
|
-
const git_1 = require("./git");
|
|
17
|
-
const utils_1 = require("./utils");
|
|
18
|
-
const validation_1 = require("./utils/validation");
|
|
19
|
-
// Supported values
|
|
20
|
-
const program = new commander_1.Command();
|
|
21
|
-
program
|
|
22
|
-
.name('dotcms-create-app')
|
|
23
|
-
.description('dotCMS CLI for creating applications')
|
|
24
|
-
.version('0.1.0-beta');
|
|
25
|
-
program
|
|
26
|
-
.argument('[projectName]', 'Name of the project')
|
|
27
|
-
.option('-f, --framework <framework>', 'Framework to use [nextjs,astro,angular,angular-ssr]')
|
|
28
|
-
// directory flags
|
|
29
|
-
.option('-d, --directory <path>', 'Project directory')
|
|
30
|
-
// cloud / no-cloud
|
|
31
|
-
.option('--local', 'Use local dotCMS instance using docker')
|
|
32
|
-
// cloud options (if cloud selected)
|
|
33
|
-
.option('--url <url>', 'DotCMS instance url (skip in case of local)')
|
|
34
|
-
.option('-u, --username <username>', 'DotCMS instance username (skip in case of local)')
|
|
35
|
-
.option('-p, --password <password>', 'DotCMS instance password (skip in case of local)')
|
|
36
|
-
.action(async (projectName, options) => {
|
|
37
|
-
// welcome cli
|
|
38
|
-
printWelcomeScreen();
|
|
39
|
-
try {
|
|
40
|
-
// ✅ VALIDATE ALL CLI FLAGS IMMEDIATELY - BEFORE ANY INTERACTIVE PROMPTS
|
|
41
|
-
const validatedFramework = (0, validation_1.validateAndNormalizeFramework)(options.framework);
|
|
42
|
-
(0, validation_1.validateUrl)(options.url);
|
|
43
|
-
(0, validation_1.validateConflictingParameters)(options);
|
|
44
|
-
(0, validation_1.validateProjectName)(projectName); // Validate CLI flag if provided
|
|
45
|
-
// Get project name from CLI or prompt (prompt has built-in validation)
|
|
46
|
-
const projectNameFinal = projectName ?? (await (0, asks_1.askProjectName)());
|
|
47
|
-
const directoryInput = options.directory ?? (await (0, asks_1.askDirectory)());
|
|
48
|
-
const finalDirectory = await (0, asks_1.prepareDirectory)(directoryInput, projectNameFinal);
|
|
49
|
-
const selectedFramework = validatedFramework ?? (await (0, asks_1.askFramework)());
|
|
50
|
-
const isCloudInstanceSelected = options.local === undefined ? await (0, asks_1.askCloudOrLocalInstance)() : !options.local;
|
|
51
|
-
if (isCloudInstanceSelected) {
|
|
52
|
-
const urlInput = options.url ?? (await (0, asks_1.askDotcmsCloudUrl)());
|
|
53
|
-
// Validate and normalize URL (remove trailing slashes)
|
|
54
|
-
(0, validation_1.validateUrl)(urlInput);
|
|
55
|
-
const urlDotcmsInstance = (0, validation_1.normalizeUrl)(urlInput);
|
|
56
|
-
const healthApiURL = (0, utils_1.getDotcmsApisByBaseUrl)(urlDotcmsInstance).DOTCMS_HEALTH_API;
|
|
57
|
-
const emaConfigApiURL = (0, utils_1.getDotcmsApisByBaseUrl)(urlDotcmsInstance).DOTCMS_EMA_CONFIG_API;
|
|
58
|
-
const demoSiteApiURL = (0, utils_1.getDotcmsApisByBaseUrl)(urlDotcmsInstance).DOTCMS_DEMO_SITE;
|
|
59
|
-
const tokenApiUrl = (0, utils_1.getDotcmsApisByBaseUrl)(urlDotcmsInstance).DOTCMS_TOKEN_API;
|
|
60
|
-
const spinner = (0, ora_1.default)(`⏳ Connecting to dotCMS...`).start();
|
|
61
|
-
const healthCheckResult = await isDotcmsRunning(healthApiURL, constants_1.CLOUD_HEALTH_CHECK_RETRIES);
|
|
62
|
-
if (!healthCheckResult.ok) {
|
|
63
|
-
spinner.fail('dotCMS is not running on the following url ' +
|
|
64
|
-
urlDotcmsInstance +
|
|
65
|
-
'. Please check the url and try again.');
|
|
66
|
-
console.error(healthCheckResult.val);
|
|
67
|
-
process.exit(1);
|
|
68
|
-
}
|
|
69
|
-
spinner.succeed('Connected to dotCMS successfully');
|
|
70
|
-
// Authentication with retry on failure
|
|
71
|
-
let dotcmsToken;
|
|
72
|
-
let authAttempts = 0;
|
|
73
|
-
const MAX_AUTH_ATTEMPTS = 3;
|
|
74
|
-
while (authAttempts < MAX_AUTH_ATTEMPTS) {
|
|
75
|
-
authAttempts++;
|
|
76
|
-
const userNameDotCmsInstance = options.username ?? (await (0, asks_1.askUserNameForDotcmsCloud)());
|
|
77
|
-
const passwordDotCmsInstance = options.password ?? (await (0, asks_1.askPasswordForDotcmsCloud)());
|
|
78
|
-
dotcmsToken = await api_1.DotCMSApi.getAuthToken({
|
|
79
|
-
payload: {
|
|
80
|
-
user: userNameDotCmsInstance,
|
|
81
|
-
password: passwordDotCmsInstance,
|
|
82
|
-
expirationDays: '30',
|
|
83
|
-
label: 'token for frontend app'
|
|
84
|
-
},
|
|
85
|
-
url: tokenApiUrl
|
|
86
|
-
});
|
|
87
|
-
if (dotcmsToken.ok) {
|
|
88
|
-
spinner.succeed('Generated API authentication token');
|
|
89
|
-
break;
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
spinner.fail('Authentication failed');
|
|
93
|
-
console.error(dotcmsToken.val);
|
|
94
|
-
if (authAttempts < MAX_AUTH_ATTEMPTS) {
|
|
95
|
-
console.log(chalk_1.default.yellow(`\nAttempt ${authAttempts}/${MAX_AUTH_ATTEMPTS} - Please try again\n`));
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
console.log(chalk_1.default.red(`\nMaximum authentication attempts (${MAX_AUTH_ATTEMPTS}) reached. Exiting.\n`));
|
|
99
|
-
process.exit(1);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
if (!dotcmsToken || !dotcmsToken.ok) {
|
|
104
|
-
process.exit(1);
|
|
105
|
-
}
|
|
106
|
-
const demoSite = await api_1.DotCMSApi.getDemoSiteIdentifier({
|
|
107
|
-
siteName: 'demo.dotcms.com',
|
|
108
|
-
authenticationToken: dotcmsToken.val,
|
|
109
|
-
url: demoSiteApiURL
|
|
110
|
-
});
|
|
111
|
-
if (!demoSite.ok) {
|
|
112
|
-
spinner.fail('Failed to get demo site identifier from Dotcms.');
|
|
113
|
-
process.exit(1);
|
|
114
|
-
}
|
|
115
|
-
else {
|
|
116
|
-
spinner.succeed(`Retrieved site: Demo Site (${demoSite.val.entity.identifier})`);
|
|
117
|
-
}
|
|
118
|
-
const setUpUVE = await api_1.DotCMSApi.setupUVEConfig({
|
|
119
|
-
payload: {
|
|
120
|
-
configuration: {
|
|
121
|
-
hidden: false,
|
|
122
|
-
value: (0, utils_1.getUVEConfigValue)(`http://localhost:${(0, utils_1.getPortByFramework)(selectedFramework)}`)
|
|
123
|
-
}
|
|
124
|
-
},
|
|
125
|
-
siteId: demoSite.val.entity.identifier,
|
|
126
|
-
authenticationToken: dotcmsToken.val,
|
|
127
|
-
url: emaConfigApiURL
|
|
128
|
-
});
|
|
129
|
-
if (!setUpUVE.ok) {
|
|
130
|
-
spinner.fail('Failed to setup UVE configuration in Dotcms.');
|
|
131
|
-
process.exit(1);
|
|
132
|
-
}
|
|
133
|
-
else {
|
|
134
|
-
spinner.succeed(`Configured the Universal Visual Editor`);
|
|
135
|
-
}
|
|
136
|
-
await startScaffoldingFrontEnd({ spinner, selectedFramework, finalDirectory });
|
|
137
|
-
console.log(chalk_1.default.white(`✅ Project setup complete!`));
|
|
138
|
-
const relativePath = (0, utils_1.getDisplayPath)(finalDirectory, process.cwd());
|
|
139
|
-
displayFinalSteps({
|
|
140
|
-
host: urlDotcmsInstance,
|
|
141
|
-
relativePath,
|
|
142
|
-
token: dotcmsToken.val,
|
|
143
|
-
siteId: demoSite.val.entity.identifier,
|
|
144
|
-
selectedFramework: selectedFramework
|
|
145
|
-
});
|
|
146
|
-
return; // Successful completion - exit code 0
|
|
147
|
-
}
|
|
148
|
-
const spinner = (0, ora_1.default)(`Checking Docker availability...`).start();
|
|
149
|
-
// STEP 1 — Check if Docker is available
|
|
150
|
-
const dockerAvailable = await (0, utils_1.checkDockerAvailability)();
|
|
151
|
-
if (!dockerAvailable.ok) {
|
|
152
|
-
spinner.fail('Docker is not available');
|
|
153
|
-
console.error(dockerAvailable.val);
|
|
154
|
-
process.exit(1);
|
|
155
|
-
}
|
|
156
|
-
spinner.succeed('Docker is available');
|
|
157
|
-
// STEP 2 — Check if required ports are available
|
|
158
|
-
spinner.start('Checking port availability...');
|
|
159
|
-
const portsAvailable = await (0, utils_1.checkPortsAvailability)();
|
|
160
|
-
if (!portsAvailable.ok) {
|
|
161
|
-
spinner.fail('Required ports are busy');
|
|
162
|
-
console.error(portsAvailable.val);
|
|
163
|
-
process.exit(1);
|
|
164
|
-
}
|
|
165
|
-
spinner.succeed('All required ports are available');
|
|
166
|
-
// STEP 3 — Download docker-compose
|
|
167
|
-
spinner.start('Downloading Docker Compose configuration...');
|
|
168
|
-
const downloaded = await downloadTheDockerCompose({
|
|
169
|
-
directory: finalDirectory
|
|
170
|
-
});
|
|
171
|
-
if (!downloaded.ok) {
|
|
172
|
-
spinner.fail('Failed to download Docker Compose file.');
|
|
173
|
-
process.exit(1);
|
|
174
|
-
}
|
|
175
|
-
spinner.succeed('Docker Compose configuration downloaded');
|
|
176
|
-
// STEP 4 — Run docker-compose
|
|
177
|
-
spinner.start('Starting dotCMS containers...');
|
|
178
|
-
const ran = await runDockerCompose({ directory: finalDirectory });
|
|
179
|
-
if (!ran.ok) {
|
|
180
|
-
spinner.fail('Failed to start Docker containers');
|
|
181
|
-
const errorMessage = ran.val instanceof Error ? ran.val.message : String(ran.val);
|
|
182
|
-
console.error(chalk_1.default.red('\n❌ Docker Compose failed to start\n\n') +
|
|
183
|
-
chalk_1.default.white('Error details:\n') +
|
|
184
|
-
chalk_1.default.gray(errorMessage) +
|
|
185
|
-
'\n\n' +
|
|
186
|
-
chalk_1.default.yellow('Common solutions:\n') +
|
|
187
|
-
chalk_1.default.white(' • Ensure Docker Desktop is running\n') +
|
|
188
|
-
chalk_1.default.white(' • Try: ') +
|
|
189
|
-
chalk_1.default.cyan('docker compose down') +
|
|
190
|
-
chalk_1.default.white(' then run this command again\n') +
|
|
191
|
-
chalk_1.default.white(' • Check Docker logs for more details\n'));
|
|
192
|
-
process.exit(1);
|
|
193
|
-
}
|
|
194
|
-
spinner.succeed('dotCMS containers started successfully.');
|
|
195
|
-
spinner.start('Verifying if dotCMS is running...');
|
|
196
|
-
const healthCheckResult = await isDotcmsRunning(constants_1.DOTCMS_HEALTH_API, constants_1.LOCAL_HEALTH_CHECK_RETRIES);
|
|
197
|
-
if (!healthCheckResult.ok) {
|
|
198
|
-
spinner.fail('dotCMS failed to start properly');
|
|
199
|
-
console.error(healthCheckResult.val);
|
|
200
|
-
console.error(await (0, utils_1.getDockerDiagnostics)(finalDirectory));
|
|
201
|
-
process.exit(1);
|
|
202
|
-
}
|
|
203
|
-
spinner.succeed('dotCMS is running locally at http://localhost:8082');
|
|
204
|
-
spinner.succeed('Default credentials: admin@dotcms.com / admin');
|
|
205
|
-
const dotcmsToken = await api_1.DotCMSApi.getAuthToken({
|
|
206
|
-
payload: {
|
|
207
|
-
user: constants_1.DOTCMS_USER.username,
|
|
208
|
-
password: constants_1.DOTCMS_USER.password,
|
|
209
|
-
expirationDays: '30',
|
|
210
|
-
label: 'token for frontend app'
|
|
211
|
-
}
|
|
212
|
-
});
|
|
213
|
-
if (!dotcmsToken.ok) {
|
|
214
|
-
spinner.fail('Failed to get authentication token from Dotcms.');
|
|
215
|
-
process.exit(1);
|
|
216
|
-
}
|
|
217
|
-
else {
|
|
218
|
-
spinner.succeed('Generated API authentication token');
|
|
219
|
-
}
|
|
220
|
-
const demoSite = await api_1.DotCMSApi.getDemoSiteIdentifier({
|
|
221
|
-
siteName: 'demo.dotcms.com',
|
|
222
|
-
authenticationToken: dotcmsToken.val
|
|
223
|
-
});
|
|
224
|
-
if (!demoSite.ok) {
|
|
225
|
-
spinner.fail('Failed to get demo site identifier from Dotcms.');
|
|
226
|
-
process.exit(1);
|
|
227
|
-
}
|
|
228
|
-
else {
|
|
229
|
-
spinner.succeed(`Retrieved site: Demo Site (${demoSite.val.entity.identifier})`);
|
|
230
|
-
}
|
|
231
|
-
const setUpUVE = await api_1.DotCMSApi.setupUVEConfig({
|
|
232
|
-
payload: {
|
|
233
|
-
configuration: {
|
|
234
|
-
hidden: false,
|
|
235
|
-
value: (0, utils_1.getUVEConfigValue)(`http://localhost:${(0, utils_1.getPortByFramework)(selectedFramework)}`)
|
|
236
|
-
}
|
|
237
|
-
},
|
|
238
|
-
siteId: demoSite.val.entity.identifier,
|
|
239
|
-
authenticationToken: dotcmsToken.val
|
|
240
|
-
});
|
|
241
|
-
if (!setUpUVE.ok) {
|
|
242
|
-
spinner.fail('Failed to setup UVE configuration in Dotcms.');
|
|
243
|
-
process.exit(1);
|
|
244
|
-
}
|
|
245
|
-
else {
|
|
246
|
-
spinner.succeed(`Configured the Universal Visual Editor`);
|
|
247
|
-
}
|
|
248
|
-
// required since git requires empty directory
|
|
249
|
-
(0, git_1.moveDockerComposeOneLevelUp)(finalDirectory);
|
|
250
|
-
await startScaffoldingFrontEnd({ spinner, selectedFramework, finalDirectory });
|
|
251
|
-
(0, git_1.moveDockerComposeBack)(finalDirectory);
|
|
252
|
-
console.log(chalk_1.default.white(`✅ Project setup complete!`));
|
|
253
|
-
const relativePath = (0, utils_1.getDisplayPath)(finalDirectory, process.cwd());
|
|
254
|
-
displayFinalSteps({
|
|
255
|
-
host: 'http://localhost:8082',
|
|
256
|
-
relativePath,
|
|
257
|
-
token: dotcmsToken.val,
|
|
258
|
-
siteId: demoSite.val.entity.identifier,
|
|
259
|
-
selectedFramework: selectedFramework
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
catch (error) {
|
|
263
|
-
// Handle validation and other errors gracefully
|
|
264
|
-
if (error instanceof Error) {
|
|
265
|
-
console.error(error.message);
|
|
266
|
-
// Preserve stack trace for debugging when DEBUG mode is enabled
|
|
267
|
-
if (process.env.DEBUG) {
|
|
268
|
-
console.error('\n' + chalk_1.default.gray('Stack trace:'));
|
|
269
|
-
console.error(chalk_1.default.gray(error.stack || 'No stack trace available'));
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
else {
|
|
273
|
-
console.error(chalk_1.default.red('❌ An unexpected error occurred'));
|
|
274
|
-
console.error(String(error));
|
|
275
|
-
}
|
|
276
|
-
process.exit(1);
|
|
277
|
-
}
|
|
278
|
-
});
|
|
279
|
-
async function createApp() {
|
|
280
|
-
program.parse();
|
|
281
|
-
}
|
|
282
|
-
/* -------------------------------------------------------
|
|
283
|
-
* STEP FUNCTIONS (no spinner, only chalk)
|
|
284
|
-
* -----------------------------------------------------*/
|
|
285
|
-
async function scaffoldFrontendProject({ framework, directory }) {
|
|
286
|
-
try {
|
|
287
|
-
await (0, git_1.cloneFrontEndSample)({ directory, framework });
|
|
288
|
-
return (0, ts_results_1.Ok)(undefined);
|
|
289
|
-
}
|
|
290
|
-
catch (err) {
|
|
291
|
-
console.log(chalk_1.default.red(`❌ Failed to create ${framework} project. Please check git installation and network connection.` +
|
|
292
|
-
JSON.stringify(err)));
|
|
293
|
-
return (0, ts_results_1.Err)(new errors_1.FailedToCreateFrontendProjectError(framework));
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
async function downloadTheDockerCompose({ directory }) {
|
|
297
|
-
try {
|
|
298
|
-
// console.log(chalk.cyan(""));
|
|
299
|
-
await (0, git_1.downloadDockerCompose)(directory);
|
|
300
|
-
// console.log(chalk.green(`✔ docker-compose.yml downloaded successfully!\n`));
|
|
301
|
-
return (0, ts_results_1.Ok)(undefined);
|
|
302
|
-
}
|
|
303
|
-
catch (err) {
|
|
304
|
-
console.log(chalk_1.default.red('❌ Failed to download docker-compose.yml.' + JSON.stringify(err)));
|
|
305
|
-
return (0, ts_results_1.Err)(new errors_1.FailedToDownloadDockerComposeError());
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
async function runDockerCompose({ directory }) {
|
|
309
|
-
try {
|
|
310
|
-
// console.log(chalk.cyan("🐳 Starting Docker containers... (This might take some time)"));
|
|
311
|
-
await (0, execa_1.execa)('docker', ['compose', 'up', '-d'], { cwd: directory });
|
|
312
|
-
await (0, execa_1.execa)('docker', ['ps'], { cwd: directory });
|
|
313
|
-
// console.log(chalk.green("✔ Docker containers started successfully!\n"));
|
|
314
|
-
return (0, ts_results_1.Ok)(undefined);
|
|
315
|
-
}
|
|
316
|
-
catch (err) {
|
|
317
|
-
return (0, ts_results_1.Err)(err);
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
async function isDotcmsRunning(url, retries = 60) {
|
|
321
|
-
try {
|
|
322
|
-
// console.log(chalk.cyan("Waiting for DotCMS to be up ...."));
|
|
323
|
-
const res = await (0, utils_1.fetchWithRetry)(url ?? constants_1.DOTCMS_HEALTH_API, retries, 5000);
|
|
324
|
-
if (res && res.status === 200) {
|
|
325
|
-
// console.log(chalk.green("✔ DotCMS container started sucessfully!\n"));
|
|
326
|
-
return (0, ts_results_1.Ok)(true);
|
|
327
|
-
}
|
|
328
|
-
return (0, ts_results_1.Err)('dotCMS health check returned non-200 status');
|
|
329
|
-
}
|
|
330
|
-
catch (error) {
|
|
331
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
332
|
-
return (0, ts_results_1.Err)(errorMessage);
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
function displayFinalSteps({ selectedFramework, relativePath, token, siteId, host }) {
|
|
336
|
-
switch (selectedFramework) {
|
|
337
|
-
case 'nextjs': {
|
|
338
|
-
(0, utils_1.finalStepsForNextjs)({
|
|
339
|
-
projectPath: relativePath,
|
|
340
|
-
token: token,
|
|
341
|
-
siteId: siteId,
|
|
342
|
-
urlDotCMSInstance: host
|
|
343
|
-
});
|
|
344
|
-
break;
|
|
345
|
-
}
|
|
346
|
-
case 'angular': {
|
|
347
|
-
(0, utils_1.finalStepsForAngularAndAngularSSR)({
|
|
348
|
-
projectPath: relativePath,
|
|
349
|
-
token: token,
|
|
350
|
-
siteId: siteId,
|
|
351
|
-
urlDotCMSInstance: host
|
|
352
|
-
});
|
|
353
|
-
break;
|
|
354
|
-
}
|
|
355
|
-
case 'angular-ssr': {
|
|
356
|
-
(0, utils_1.finalStepsForAngularAndAngularSSR)({
|
|
357
|
-
projectPath: relativePath,
|
|
358
|
-
token: token,
|
|
359
|
-
siteId: siteId,
|
|
360
|
-
urlDotCMSInstance: host
|
|
361
|
-
});
|
|
362
|
-
break;
|
|
363
|
-
}
|
|
364
|
-
case 'astro': {
|
|
365
|
-
(0, utils_1.finalStepsForAstro)({
|
|
366
|
-
projectPath: relativePath,
|
|
367
|
-
token: token,
|
|
368
|
-
siteId: siteId,
|
|
369
|
-
urlDotCMSInstance: host
|
|
370
|
-
});
|
|
371
|
-
break;
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
async function startScaffoldingFrontEnd({ spinner, selectedFramework, finalDirectory }) {
|
|
376
|
-
spinner.start(`⏳ Scaffolding ${selectedFramework} project...`);
|
|
377
|
-
const created = await scaffoldFrontendProject({
|
|
378
|
-
framework: selectedFramework,
|
|
379
|
-
directory: finalDirectory
|
|
380
|
-
});
|
|
381
|
-
if (!created.ok) {
|
|
382
|
-
spinner.fail(`Failed to scaffold frontend project (${selectedFramework}).`);
|
|
383
|
-
process.exit(1);
|
|
384
|
-
}
|
|
385
|
-
// TODO need to insert here the dependices step
|
|
386
|
-
spinner.succeed(`Frontend project (${selectedFramework}) scaffolded successfully.`);
|
|
387
|
-
spinner.start(`📦 Installing dependencies...\n\n ${(0, utils_1.displayDependencies)(selectedFramework)}`);
|
|
388
|
-
const result = await (0, utils_1.installDependenciesForProject)(finalDirectory);
|
|
389
|
-
if (!result) {
|
|
390
|
-
spinner.fail(`Failed to install dependencies. Please check if npm is installed in your system`);
|
|
391
|
-
process.exit(1);
|
|
392
|
-
}
|
|
393
|
-
else {
|
|
394
|
-
spinner.succeed(`Dependencies installed`);
|
|
395
|
-
}
|
|
396
|
-
console.log('\n\n');
|
|
397
|
-
spinner.stop();
|
|
398
|
-
}
|
|
399
|
-
function printWelcomeScreen() {
|
|
400
|
-
cfonts_1.default.say('DOTCMS', {
|
|
401
|
-
font: 'block', // define the font face
|
|
402
|
-
align: 'left', // define text alignment
|
|
403
|
-
colors: ['system'], // define all colors
|
|
404
|
-
background: 'transparent', // define the background color, you can also use `backgroundColor` here as key
|
|
405
|
-
letterSpacing: 1, // define letter spacing
|
|
406
|
-
lineHeight: 1, // define the line height
|
|
407
|
-
space: true, // define if the output text should have empty lines on top and on the bottom
|
|
408
|
-
maxLength: '0', // define how many character can be on one line
|
|
409
|
-
gradient: false, // define your two gradient colors
|
|
410
|
-
independentGradient: false, // define if you want to recalculate the gradient for each new line
|
|
411
|
-
transitionGradient: false, // define if this is a transition between colors directly
|
|
412
|
-
rawMode: false, // define if the line breaks should be CRLF (`\r\n`) over the default LF (`\n`)
|
|
413
|
-
env: 'node' // define the environment cfonts is being executed in
|
|
414
|
-
});
|
|
415
|
-
console.log(chalk_1.default.white('\nWelcome to dotCMS CLI'));
|
|
416
|
-
console.log(chalk_1.default.bgGrey.white('\n ℹ️ Beta: Features may change \n'));
|
|
417
|
-
}
|
|
418
|
-
createApp();
|
|
419
|
-
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/sdk/create-app/src/index.ts"],"names":[],"mappings":"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"}
|
package/src/types/index.d.ts
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
export type SupportedFrontEndFrameworks = 'nextjs' | 'astro' | 'angular' | 'angular-ssr';
|
|
2
|
-
export type FrameworkChoices = {
|
|
3
|
-
name: string;
|
|
4
|
-
value: SupportedFrontEndFrameworks;
|
|
5
|
-
};
|
|
6
|
-
export interface GetUserTokenRequest {
|
|
7
|
-
user: string;
|
|
8
|
-
password: string;
|
|
9
|
-
expirationDays: string;
|
|
10
|
-
label: string;
|
|
11
|
-
}
|
|
12
|
-
export interface GetUserTokenResponse {
|
|
13
|
-
entity: {
|
|
14
|
-
token: string;
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
export interface UVEConfigRequest {
|
|
18
|
-
configuration: {
|
|
19
|
-
hidden: false;
|
|
20
|
-
value: string;
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
export interface UVEConfigResponse {
|
|
24
|
-
entity: 'Ok';
|
|
25
|
-
}
|
|
26
|
-
export interface DemoSiteResponse {
|
|
27
|
-
entity: {
|
|
28
|
-
addThis: string;
|
|
29
|
-
aliases: string;
|
|
30
|
-
archived: boolean;
|
|
31
|
-
default: boolean;
|
|
32
|
-
description: string;
|
|
33
|
-
embeddedDashboard: string | null;
|
|
34
|
-
googleAnalytics: string;
|
|
35
|
-
googleMap: string;
|
|
36
|
-
identifier: string;
|
|
37
|
-
inode: string;
|
|
38
|
-
keywords: string;
|
|
39
|
-
languageId: number;
|
|
40
|
-
live: boolean;
|
|
41
|
-
locked: boolean;
|
|
42
|
-
modDate: number;
|
|
43
|
-
modUser: string;
|
|
44
|
-
proxyUrlForEditMode: string | null;
|
|
45
|
-
runDashboard: boolean;
|
|
46
|
-
siteName: string;
|
|
47
|
-
siteThumbnail: string;
|
|
48
|
-
systemHost: boolean;
|
|
49
|
-
tagStorage: string;
|
|
50
|
-
working: boolean;
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
export type DotCmsCliOptions = {
|
|
54
|
-
name?: string;
|
|
55
|
-
framework?: 'nextjs' | 'astro' | 'angular' | 'angular-ssr';
|
|
56
|
-
directory?: string;
|
|
57
|
-
local?: boolean;
|
|
58
|
-
url?: string;
|
|
59
|
-
username?: string;
|
|
60
|
-
password?: string;
|
|
61
|
-
};
|
|
62
|
-
export interface FinalStepsOptions {
|
|
63
|
-
projectPath: string;
|
|
64
|
-
urlDotCMSInstance: string;
|
|
65
|
-
devCommand: string;
|
|
66
|
-
defaultPort: number;
|
|
67
|
-
envVariablesString: string;
|
|
68
|
-
envDirectory?: string;
|
|
69
|
-
}
|
package/src/types/index.js
DELETED
package/src/types/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/sdk/create-app/src/types/index.ts"],"names":[],"mappings":""}
|