@solidxai/solidctl 0.1.8 → 0.1.9
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/create-app/create-app.command.js +17 -6
- package/dist/commands/create-app/create-app.command.js.map +1 -1
- package/dist/commands/create-app/helpers.d.ts +1 -1
- package/dist/commands/create-app/helpers.js +21 -7
- package/dist/commands/create-app/helpers.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.registerCreateAppCommand = registerCreateAppCommand;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
8
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
9
|
+
const ora_1 = __importDefault(require("ora"));
|
|
9
10
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
10
11
|
const path_1 = __importDefault(require("path"));
|
|
11
12
|
const setup_questions_1 = require("./setup-questions");
|
|
@@ -32,26 +33,36 @@ function registerCreateAppCommand(program) {
|
|
|
32
33
|
console.log(chalk_1.default.red(`Error: Directory ${projectName} already exists.`));
|
|
33
34
|
process.exit(1);
|
|
34
35
|
}
|
|
35
|
-
console.log((0, helpers_1.prettyOutput)('\nStep 1', 'Setting up boilerplate for the backend'));
|
|
36
36
|
const templatesPath = (0, helpers_1.getTemplatesPath)();
|
|
37
|
+
const stepOutput = (stepLabel) => (line) => {
|
|
38
|
+
spinner.text = `${stepLabel} ${chalk_1.default.dim('> ' + line)}`;
|
|
39
|
+
};
|
|
40
|
+
let spinner = (0, ora_1.default)('Step 1: Setting up boilerplate for the backend...').start();
|
|
37
41
|
await (0, helpers_1.copyTemplate)(templatesPath, targetPath, helpers_1.EXCLUDED_DIRS_FOR_INITIAL_COPY);
|
|
38
|
-
await (0, helpers_1.copyAndInstallTemplate)(path_1.default.join(templatesPath, helpers_1.SOURCE_TEMPLATE_FOLDER_API), path_1.default.join(targetPath, helpers_1.TARGET_FOLDER_API), showLogs);
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
await (0, helpers_1.copyAndInstallTemplate)(path_1.default.join(templatesPath, helpers_1.SOURCE_TEMPLATE_FOLDER_API), path_1.default.join(targetPath, helpers_1.TARGET_FOLDER_API), showLogs, stepOutput('Step 1: Setting up boilerplate for the backend...'));
|
|
43
|
+
spinner.succeed('Step 1: Backend boilerplate ready');
|
|
44
|
+
spinner = (0, ora_1.default)('Step 2: Setting up boilerplate for the frontend...').start();
|
|
45
|
+
await (0, helpers_1.copyAndInstallTemplate)(path_1.default.join(templatesPath, helpers_1.SOURCE_TEMPLATE_FOLDER_UI), path_1.default.join(targetPath, helpers_1.TARGET_FOLDER_UI), showLogs, stepOutput('Step 2: Setting up boilerplate for the frontend...'));
|
|
46
|
+
spinner.succeed('Step 2: Frontend boilerplate ready');
|
|
47
|
+
spinner = (0, ora_1.default)('Step 3: Configuring project packages...').start();
|
|
41
48
|
(0, helpers_1.updatePackageName)(targetPath, helpers_1.TARGET_FOLDER_UI, `@${projectName}/${helpers_1.TARGET_FOLDER_UI}`);
|
|
42
49
|
(0, helpers_1.updatePackageName)(targetPath, helpers_1.TARGET_FOLDER_API, `@${projectName}/${helpers_1.TARGET_FOLDER_API}`);
|
|
43
50
|
(0, helpers_1.updatePortInPackageJson)(targetPath, helpers_1.TARGET_FOLDER_UI, answers.solidUiPort);
|
|
51
|
+
spinner.succeed('Step 3: Package configuration updated');
|
|
52
|
+
spinner = (0, ora_1.default)('Step 4: Generating environment files...').start();
|
|
44
53
|
const backendPath = path_1.default.join(targetPath, helpers_1.TARGET_FOLDER_API);
|
|
45
|
-
console.log((0, helpers_1.prettyOutput)('Step 3', `Generating .env file for the backend at ${chalk_1.default.cyan(backendPath)}`));
|
|
46
54
|
(0, helpers_1.generateEnvFileFromConfig)(backendPath, (0, helpers_1.getBackendEnvConfig)(answers));
|
|
47
55
|
const frontendPath = path_1.default.join(targetPath, helpers_1.TARGET_FOLDER_UI);
|
|
48
|
-
console.log((0, helpers_1.prettyOutput)('Step 4', `Generating .env file for the frontend at ${chalk_1.default.cyan(frontendPath)}`));
|
|
49
56
|
(0, helpers_1.generateEnvFileFromConfig)(frontendPath, (0, helpers_1.getFrontendEnvJson)(answers));
|
|
57
|
+
spinner.succeed('Step 4: Environment files generated');
|
|
50
58
|
console.log(chalk_1.default.green(`Project ${chalk_1.default.cyan(projectName)} created successfully!`));
|
|
51
59
|
console.log(chalk_1.default.cyan('\nEnsure the database is created and connection is established correctly.'));
|
|
52
60
|
console.log(chalk_1.default.cyan('\nNext steps:'));
|
|
53
61
|
console.log((0, helpers_1.prettyOutput)(`cd ${projectName}`, 'Navigate into the project root directory'));
|
|
54
62
|
console.log((0, helpers_1.prettyOutput)('npx @solidxai/solidctl@latest build && npx @solidxai/solidctl@latest seed', 'This will build the SolidX project and seed the database with the required metadata'));
|
|
63
|
+
console.log(chalk_1.default.yellow('Default Admin Credentials (created as part of the seed process):'));
|
|
64
|
+
console.log(chalk_1.default.magenta('Username:'), chalk_1.default.green('sa'));
|
|
65
|
+
console.log(chalk_1.default.magenta('Password:'), chalk_1.default.green('Admin@3214$'));
|
|
55
66
|
console.log(chalk_1.default.cyan('\nRun the api and frontend in separate terminals:'));
|
|
56
67
|
console.log(chalk_1.default.cyan('\n Terminal 1 (API):'));
|
|
57
68
|
console.log((0, helpers_1.prettyOutput)(`cd ${helpers_1.TARGET_FOLDER_API} && npm run solidx:dev`, `Starts the backend at http://localhost:${answers.solidApiPort} (docs at /docs)`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-app.command.js","sourceRoot":"","sources":["../../../src/commands/create-app/create-app.command.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"create-app.command.js","sourceRoot":"","sources":["../../../src/commands/create-app/create-app.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export declare const TARGET_FOLDER_API = "solid-api";
|
|
|
6
6
|
export declare const TARGET_FOLDER_UI = "solid-ui";
|
|
7
7
|
export declare const EXCLUDED_DIRS_FOR_INITIAL_COPY: string[];
|
|
8
8
|
export declare function getTemplatesPath(): string;
|
|
9
|
-
export declare function copyAndInstallTemplate(source: string, target: string, showLogs: boolean): Promise<void>;
|
|
9
|
+
export declare function copyAndInstallTemplate(source: string, target: string, showLogs: boolean, onOutput?: (line: string) => void): Promise<void>;
|
|
10
10
|
export declare function copyTemplate(source: string, target: string, excludedDirs?: string[]): Promise<void>;
|
|
11
11
|
export declare function updatePackageName(targetPath: string, subProject: string, packageName: string): void;
|
|
12
12
|
export declare function updatePortInPackageJson(targetPath: string, subProject: string, port: string): void;
|
|
@@ -15,6 +15,8 @@ exports.generateEnvFileFromConfig = generateEnvFileFromConfig;
|
|
|
15
15
|
exports.prettyOutput = prettyOutput;
|
|
16
16
|
const chalk_1 = __importDefault(require("chalk"));
|
|
17
17
|
const child_process_1 = require("child_process");
|
|
18
|
+
const util_1 = require("util");
|
|
19
|
+
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
18
20
|
const crypto_1 = __importDefault(require("crypto"));
|
|
19
21
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
20
22
|
const path_1 = __importDefault(require("path"));
|
|
@@ -36,22 +38,34 @@ function getTemplatesPath() {
|
|
|
36
38
|
}
|
|
37
39
|
return templatesPath;
|
|
38
40
|
}
|
|
39
|
-
async function copyAndInstallTemplate(source, target, showLogs) {
|
|
41
|
+
async function copyAndInstallTemplate(source, target, showLogs, onOutput) {
|
|
40
42
|
try {
|
|
41
43
|
await copyTemplate(source, target);
|
|
42
|
-
return installTemplate(target, showLogs);
|
|
44
|
+
return installTemplate(target, showLogs, onOutput);
|
|
43
45
|
}
|
|
44
46
|
catch (error) {
|
|
45
47
|
console.error(chalk_1.default.red('Error in copyAndInstallTemplate:'), error);
|
|
46
48
|
throw error;
|
|
47
49
|
}
|
|
48
50
|
}
|
|
49
|
-
function installTemplate(target, showLogs) {
|
|
51
|
+
async function installTemplate(target, showLogs, onOutput) {
|
|
50
52
|
try {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
const child = execAsync('npm install', { cwd: target });
|
|
54
|
+
if (showLogs && child.child.stdout && child.child.stderr) {
|
|
55
|
+
child.child.stdout.pipe(process.stdout);
|
|
56
|
+
child.child.stderr.pipe(process.stderr);
|
|
57
|
+
}
|
|
58
|
+
else if (onOutput) {
|
|
59
|
+
const handleData = (data) => {
|
|
60
|
+
const lines = data.toString().split(/\r?\n/).filter(Boolean);
|
|
61
|
+
const last = lines[lines.length - 1]?.trim();
|
|
62
|
+
if (last)
|
|
63
|
+
onOutput(last);
|
|
64
|
+
};
|
|
65
|
+
child.child.stdout?.on('data', handleData);
|
|
66
|
+
child.child.stderr?.on('data', handleData);
|
|
67
|
+
}
|
|
68
|
+
await child;
|
|
55
69
|
}
|
|
56
70
|
catch (error) {
|
|
57
71
|
console.error(chalk_1.default.red('Error during npm install in', target));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/create-app/helpers.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/create-app/helpers.ts"],"names":[],"mappings":"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"}
|