Add .devcontainer + minor changes
This commit is contained in:
parent
99831ff824
commit
8aeff18162
16 changed files with 59 additions and 23 deletions
26
create.js
26
create.js
|
@ -7,14 +7,14 @@ const argv = require('minimist')(process.argv.slice(2));
|
|||
const appName = argv.name ?? 'app';
|
||||
const appPort = argv.port ?? '0';
|
||||
|
||||
const defaultContextDir = './';
|
||||
const defaultContextDir = '.';
|
||||
const rootDir = __dirname;
|
||||
const contextDir = `${argv._[0]}/` ?? defaultContextDir;
|
||||
const contextDir = `${argv._[0] ?? defaultContextDir}`;
|
||||
|
||||
// create app folder
|
||||
const appsDir = `${contextDir}/apps`;
|
||||
const uiDir = `${contextDir}/apps/${appName}-ui`;
|
||||
const apiDir = `${contextDir}/apps/${appName}-rest`;
|
||||
const restDir = `${contextDir}/apps/${appName}-rest`;
|
||||
|
||||
// prepare structure folders
|
||||
if (!fs.existsSync(uiDir)) {
|
||||
|
@ -24,8 +24,8 @@ if (!fs.existsSync(uiDir)) {
|
|||
fs.mkdirSync(appsDir);
|
||||
fs.mkdirSync(uiDir);
|
||||
fs.mkdirSync(`${uiDir}/src`);
|
||||
fs.mkdirSync(apiDir);
|
||||
fs.mkdirSync(`${apiDir}/src`);
|
||||
fs.mkdirSync(restDir);
|
||||
fs.mkdirSync(`${restDir}/src`);
|
||||
}
|
||||
|
||||
// copy folder content
|
||||
|
@ -38,7 +38,7 @@ try {
|
|||
force: true,
|
||||
recursive: true,
|
||||
});
|
||||
fs.cpSync(`${rootDir}/source/rest/`, apiDir, {
|
||||
fs.cpSync(`${rootDir}/source/rest/`, restDir, {
|
||||
force: true,
|
||||
recursive: true,
|
||||
});
|
||||
|
@ -55,29 +55,29 @@ fs.renameSync(`${contextDir}/gitignore`, `${contextDir}/.gitignore`);
|
|||
fs.renameSync(`${contextDir}/prettierrc`, `${contextDir}/.prettierrc`);
|
||||
fs.renameSync(`${contextDir}/.tsconfig.json`, `${contextDir}/tsconfig.json`);
|
||||
fs.renameSync(`${uiDir}/.tsconfig.json`, `${uiDir}/tsconfig.json`);
|
||||
fs.renameSync(`${apiDir}/.tsconfig.json`, `${apiDir}/tsconfig.json`);
|
||||
fs.renameSync(`${restDir}/.tsconfig.json`, `${restDir}/tsconfig.json`);
|
||||
|
||||
// replace in files
|
||||
replaceInFiles.sync({
|
||||
files: `./${contextDir}/**/*.{ts,tsx}`,
|
||||
from: /\/\/.\@ts\-nocheck\n/gm,
|
||||
files: [`${contextDir}/**/*`, `${contextDir}/.devcontainer/*`],
|
||||
from: /\/\/.@ts-nocheck\n/gm,
|
||||
to: '',
|
||||
});
|
||||
replaceInFiles.sync({
|
||||
files: `./${contextDir}/**/*`,
|
||||
files: [`${contextDir}/**/*`, `${contextDir}/.devcontainer/*`],
|
||||
from: /\$\(appName\)/gm,
|
||||
to: appName,
|
||||
});
|
||||
replaceInFiles.sync({
|
||||
files: `./${contextDir}/**/*`,
|
||||
files: [`${contextDir}/**/*`, `${contextDir}/.devcontainer/*`],
|
||||
from: /\$\(AppName\)/gm,
|
||||
to: appName.charAt(0).toUpperCase() + appName.slice(1),
|
||||
});
|
||||
replaceInFiles.sync({
|
||||
files: `./${contextDir}/**/*`,
|
||||
files: [`${contextDir}/**/*`, `${contextDir}/.devcontainer/*`],
|
||||
from: /\$\(appPort\)/gm,
|
||||
to: appPort,
|
||||
});
|
||||
|
||||
// install deps
|
||||
execSync(`pnpm i`, { cwd: `./${contextDir}` })
|
||||
execSync(`pnpm i`, { cwd: `${contextDir}` });
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue