@depup/nestjs__cli 11.0.24-depup.8 → 12.0.0-depup.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/README.md +6 -14
- package/actions/abstract.action.d.ts +1 -2
- package/actions/abstract.action.js +1 -5
- package/actions/add.action.d.ts +3 -4
- package/actions/add.action.js +44 -53
- package/actions/build.action.d.ts +18 -11
- package/actions/build.action.js +172 -79
- package/actions/deploy.action.d.ts +6 -0
- package/actions/deploy.action.js +51 -0
- package/actions/generate.action.d.ts +3 -3
- package/actions/generate.action.js +61 -59
- package/actions/index.d.ts +9 -7
- package/actions/index.js +9 -23
- package/actions/info.action.d.ts +18 -28
- package/actions/info.action.js +80 -60
- package/actions/new.action.d.ts +3 -3
- package/actions/new.action.js +108 -104
- package/actions/start.action.d.ts +4 -7
- package/actions/start.action.js +40 -47
- package/actions/upgrade.action.d.ts +6 -0
- package/actions/upgrade.action.js +53 -0
- package/bin/nest.js +11 -10
- package/changes.json +6 -38
- package/commands/abstract.command.d.ts +3 -3
- package/commands/abstract.command.js +2 -5
- package/commands/add.command.d.ts +3 -3
- package/commands/add.command.js +17 -20
- package/commands/build.command.d.ts +3 -3
- package/commands/build.command.js +52 -56
- package/commands/command.input.js +1 -2
- package/commands/command.loader.d.ts +2 -2
- package/commands/command.loader.js +29 -22
- package/commands/context/add.context.d.ts +7 -0
- package/commands/context/add.context.js +1 -0
- package/commands/context/build.context.d.ts +17 -0
- package/commands/context/build.context.js +1 -0
- package/commands/context/deploy.context.d.ts +7 -0
- package/commands/context/deploy.context.js +1 -0
- package/commands/context/generate.context.d.ts +18 -0
- package/commands/context/generate.context.js +1 -0
- package/commands/context/index.d.ts +7 -0
- package/commands/context/index.js +7 -0
- package/commands/context/new.context.d.ts +19 -0
- package/commands/context/new.context.js +1 -0
- package/commands/context/start.context.d.ts +22 -0
- package/commands/context/start.context.js +1 -0
- package/commands/context/upgrade.context.d.ts +11 -0
- package/commands/context/upgrade.context.js +1 -0
- package/commands/deploy.command.d.ts +5 -0
- package/commands/deploy.command.js +22 -0
- package/commands/generate.command.d.ts +3 -3
- package/commands/generate.command.js +35 -66
- package/commands/index.d.ts +3 -2
- package/commands/index.js +3 -18
- package/commands/info.command.d.ts +3 -3
- package/commands/info.command.js +4 -8
- package/commands/new.command.d.ts +3 -3
- package/commands/new.command.js +34 -36
- package/commands/start.command.d.ts +3 -3
- package/commands/start.command.js +48 -73
- package/commands/upgrade.command.d.ts +5 -0
- package/commands/upgrade.command.js +32 -0
- package/lib/compiler/assets-manager.d.ts +20 -8
- package/lib/compiler/assets-manager.js +199 -63
- package/lib/compiler/base-compiler.d.ts +5 -5
- package/lib/compiler/base-compiler.js +10 -13
- package/lib/compiler/compiler.d.ts +6 -6
- package/lib/compiler/compiler.js +7 -9
- package/lib/compiler/defaults/rspack-defaults.d.ts +3 -0
- package/lib/compiler/defaults/rspack-defaults.js +179 -0
- package/lib/compiler/defaults/swc-defaults.d.ts +5 -2
- package/lib/compiler/defaults/swc-defaults.js +22 -6
- package/lib/compiler/defaults/webpack-defaults.d.ts +2 -2
- package/lib/compiler/defaults/webpack-defaults.js +59 -19
- package/lib/compiler/helpers/append-extension.js +3 -6
- package/lib/compiler/helpers/copy-path-resolve.js +2 -5
- package/lib/compiler/helpers/delete-out-dir.d.ts +1 -1
- package/lib/compiler/helpers/delete-out-dir.js +45 -10
- package/lib/compiler/helpers/get-builder.d.ts +9 -7
- package/lib/compiler/helpers/get-builder.js +3 -6
- package/lib/compiler/helpers/get-effective-root-dir.d.ts +16 -0
- package/lib/compiler/helpers/get-effective-root-dir.js +56 -0
- package/lib/compiler/helpers/get-rspack-config-path.d.ts +10 -0
- package/lib/compiler/helpers/get-rspack-config-path.js +19 -0
- package/lib/compiler/helpers/get-tsc-config.path.d.ts +2 -3
- package/lib/compiler/helpers/get-tsc-config.path.js +6 -9
- package/lib/compiler/helpers/get-value-or-default.d.ts +2 -3
- package/lib/compiler/helpers/get-value-or-default.js +3 -8
- package/lib/compiler/helpers/get-webpack-config-path.d.ts +2 -3
- package/lib/compiler/helpers/get-webpack-config-path.js +4 -7
- package/lib/compiler/helpers/glob.d.ts +19 -0
- package/lib/compiler/helpers/glob.js +185 -0
- package/lib/compiler/helpers/manual-restart.js +4 -8
- package/lib/compiler/helpers/path-confinement.d.ts +33 -0
- package/lib/compiler/helpers/path-confinement.js +63 -0
- package/lib/compiler/helpers/tsconfig-provider.d.ts +7 -6
- package/lib/compiler/helpers/tsconfig-provider.js +32 -13
- package/lib/compiler/hooks/tsconfig-paths.hook.js +13 -13
- package/lib/compiler/interfaces/readonly-visitor.interface.js +1 -2
- package/lib/compiler/plugins/plugin-metadata-generator.d.ts +37 -1
- package/lib/compiler/plugins/plugin-metadata-generator.js +113 -13
- package/lib/compiler/plugins/plugin-metadata-printer.d.ts +1 -1
- package/lib/compiler/plugins/plugin-metadata-printer.js +5 -9
- package/lib/compiler/plugins/plugins-loader.d.ts +2 -2
- package/lib/compiler/plugins/plugins-loader.js +12 -12
- package/lib/compiler/rspack-compiler.d.ts +21 -0
- package/lib/compiler/rspack-compiler.js +111 -0
- package/lib/compiler/swc/constants.d.ts +0 -1
- package/lib/compiler/swc/constants.js +9 -13
- package/lib/compiler/swc/forked-type-checker.js +13 -18
- package/lib/compiler/swc/swc-compiler.d.ts +13 -6
- package/lib/compiler/swc/swc-compiler.js +116 -70
- package/lib/compiler/swc/type-checker-host.js +31 -24
- package/lib/compiler/typescript-loader.js +7 -9
- package/lib/compiler/watch-compiler.d.ts +5 -5
- package/lib/compiler/watch-compiler.js +13 -15
- package/lib/compiler/watchers/recursive-directory-watcher.d.ts +37 -0
- package/lib/compiler/watchers/recursive-directory-watcher.js +334 -0
- package/lib/compiler/webpack-compiler.d.ts +6 -7
- package/lib/compiler/webpack-compiler.js +46 -23
- package/lib/configuration/configuration.d.ts +16 -3
- package/lib/configuration/configuration.js +1 -2
- package/lib/configuration/configuration.loader.d.ts +1 -1
- package/lib/configuration/configuration.loader.js +1 -2
- package/lib/configuration/defaults.d.ts +2 -1
- package/lib/configuration/defaults.js +8 -10
- package/lib/configuration/index.d.ts +3 -3
- package/lib/configuration/index.js +3 -19
- package/lib/configuration/nest-configuration.loader.d.ts +3 -3
- package/lib/configuration/nest-configuration.loader.js +28 -29
- package/lib/package-managers/abstract.package-manager.d.ts +4 -4
- package/lib/package-managers/abstract.package-manager.js +21 -32
- package/lib/package-managers/bun.package-manager.d.ts +7 -0
- package/lib/package-managers/bun.package-manager.js +22 -0
- package/lib/package-managers/index.d.ts +9 -8
- package/lib/package-managers/index.js +9 -24
- package/lib/package-managers/npm.package-manager.d.ts +2 -2
- package/lib/package-managers/npm.package-manager.js +6 -10
- package/lib/package-managers/package-manager-commands.js +1 -2
- package/lib/package-managers/package-manager.d.ts +2 -1
- package/lib/package-managers/package-manager.factory.d.ts +2 -2
- package/lib/package-managers/package-manager.factory.js +23 -20
- package/lib/package-managers/package-manager.js +3 -5
- package/lib/package-managers/pnpm.package-manager.d.ts +2 -2
- package/lib/package-managers/pnpm.package-manager.js +6 -10
- package/lib/package-managers/project.dependency.js +1 -2
- package/lib/package-managers/yarn.package-manager.d.ts +2 -2
- package/lib/package-managers/yarn.package-manager.js +6 -10
- package/lib/questions/questions.d.ts +5 -1
- package/lib/questions/questions.js +2 -7
- package/lib/readers/file-system.reader.d.ts +1 -1
- package/lib/readers/file-system.reader.js +6 -9
- package/lib/readers/index.d.ts +2 -2
- package/lib/readers/index.js +2 -18
- package/lib/readers/reader.js +3 -5
- package/lib/runners/abstract.runner.js +40 -21
- package/lib/runners/bun.runner.d.ts +4 -0
- package/lib/runners/bun.runner.js +6 -0
- package/lib/runners/git.runner.d.ts +1 -1
- package/lib/runners/git.runner.js +2 -6
- package/lib/runners/index.d.ts +3 -3
- package/lib/runners/index.js +3 -19
- package/lib/runners/mau.runner.d.ts +8 -0
- package/lib/runners/mau.runner.js +10 -0
- package/lib/runners/npm.runner.d.ts +1 -1
- package/lib/runners/npm.runner.js +2 -6
- package/lib/runners/pnpm.runner.d.ts +1 -1
- package/lib/runners/pnpm.runner.js +2 -6
- package/lib/runners/runner.d.ts +2 -1
- package/lib/runners/runner.factory.d.ts +7 -6
- package/lib/runners/runner.factory.js +18 -20
- package/lib/runners/runner.js +3 -5
- package/lib/runners/schematic.runner.d.ts +1 -1
- package/lib/runners/schematic.runner.js +5 -7
- package/lib/runners/yarn.runner.d.ts +1 -1
- package/lib/runners/yarn.runner.js +2 -6
- package/lib/schematics/abstract.collection.d.ts +3 -3
- package/lib/schematics/abstract.collection.js +3 -5
- package/lib/schematics/collection.factory.d.ts +2 -2
- package/lib/schematics/collection.factory.js +9 -13
- package/lib/schematics/collection.js +2 -5
- package/lib/schematics/custom.collection.d.ts +2 -2
- package/lib/schematics/custom.collection.js +4 -8
- package/lib/schematics/index.d.ts +4 -4
- package/lib/schematics/index.js +4 -20
- package/lib/schematics/nest.collection.d.ts +3 -3
- package/lib/schematics/nest.collection.js +113 -109
- package/lib/schematics/schematic.option.js +10 -9
- package/lib/ui/banner.js +1 -4
- package/lib/ui/emojis.d.ts +17 -17
- package/lib/ui/emojis.js +19 -22
- package/lib/ui/errors.js +1 -4
- package/lib/ui/index.d.ts +5 -5
- package/lib/ui/index.js +5 -21
- package/lib/ui/messages.d.ts +8 -0
- package/lib/ui/messages.js +23 -18
- package/lib/ui/prefixes.js +3 -6
- package/lib/utils/extra-args-warning.js +3 -6
- package/lib/utils/formatting.js +1 -4
- package/lib/utils/get-default-tsconfig-path.js +4 -7
- package/lib/utils/gracefully-exit-on-prompt-error.js +1 -4
- package/lib/utils/is-esm-project.d.ts +5 -0
- package/lib/utils/is-esm-project.js +16 -0
- package/lib/utils/is-interactive.d.ts +8 -0
- package/lib/utils/is-interactive.js +10 -0
- package/lib/utils/is-module-available.js +3 -4
- package/lib/utils/load-configuration.d.ts +1 -1
- package/lib/utils/load-configuration.js +4 -7
- package/lib/utils/local-binaries.d.ts +2 -2
- package/lib/utils/local-binaries.js +8 -11
- package/lib/utils/mau.d.ts +14 -0
- package/lib/utils/mau.js +46 -0
- package/lib/utils/os-info.utils.js +1 -4
- package/lib/utils/project-utils.d.ts +1 -3
- package/lib/utils/project-utils.js +16 -28
- package/lib/utils/remaining-flags.d.ts +2 -2
- package/lib/utils/remaining-flags.js +13 -8
- package/lib/utils/tree-kill.js +7 -10
- package/lib/utils/type-assertions.js +1 -4
- package/package.json +64 -77
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.NestConfigurationLoader = void 0;
|
|
4
|
-
const readers_1 = require("../readers");
|
|
5
|
-
const defaults_1 = require("./defaults");
|
|
1
|
+
import { ReaderFileLackPermissionsError } from '../readers/index.js';
|
|
2
|
+
import { defaultConfiguration } from './defaults.js';
|
|
6
3
|
/**
|
|
7
4
|
* A cache table that maps some reader (by its name along with the config path)
|
|
8
5
|
* to a loaded configuration.
|
|
9
6
|
* This was added because several commands relies on the app's config in order
|
|
10
|
-
* to generate some
|
|
7
|
+
* to generate some dynamic content prior running the command itself.
|
|
11
8
|
*/
|
|
12
9
|
const loadedConfigsCache = new Map();
|
|
13
|
-
class NestConfigurationLoader {
|
|
10
|
+
export class NestConfigurationLoader {
|
|
11
|
+
reader;
|
|
14
12
|
constructor(reader) {
|
|
15
13
|
this.reader = reader;
|
|
16
14
|
}
|
|
@@ -20,42 +18,43 @@ class NestConfigurationLoader {
|
|
|
20
18
|
if (cachedConfig) {
|
|
21
19
|
return cachedConfig;
|
|
22
20
|
}
|
|
23
|
-
let loadedConfig;
|
|
21
|
+
let loadedConfig = defaultConfiguration;
|
|
24
22
|
const contentOrError = name
|
|
25
23
|
? this.reader.read(name)
|
|
26
|
-
: this.reader.readAnyOf([
|
|
27
|
-
'nest-cli.json',
|
|
28
|
-
'.nest-cli.json',
|
|
29
|
-
]);
|
|
24
|
+
: this.reader.readAnyOf(['nest-cli.json', '.nest-cli.json']);
|
|
30
25
|
if (contentOrError) {
|
|
31
|
-
const isMissingPermissionsError = contentOrError instanceof
|
|
26
|
+
const isMissingPermissionsError = contentOrError instanceof ReaderFileLackPermissionsError;
|
|
32
27
|
if (isMissingPermissionsError) {
|
|
33
28
|
console.error(contentOrError.message);
|
|
34
29
|
process.exit(1);
|
|
35
30
|
}
|
|
36
|
-
const
|
|
31
|
+
const configFilename = name ?? 'nest-cli.json';
|
|
32
|
+
let fileConfig;
|
|
33
|
+
try {
|
|
34
|
+
fileConfig = JSON.parse(contentOrError);
|
|
35
|
+
}
|
|
36
|
+
catch (err) {
|
|
37
|
+
const reason = err instanceof Error ? err.message : String(err);
|
|
38
|
+
throw new Error(`Could not parse Nest CLI configuration file "${configFilename}". Please, ensure that the file contains valid JSON. Reason: ${reason}`);
|
|
39
|
+
}
|
|
40
|
+
loadedConfig = {
|
|
41
|
+
...defaultConfiguration,
|
|
42
|
+
...fileConfig,
|
|
43
|
+
};
|
|
37
44
|
if (fileConfig.compilerOptions) {
|
|
38
|
-
loadedConfig = {
|
|
39
|
-
...
|
|
40
|
-
...fileConfig,
|
|
41
|
-
compilerOptions: {
|
|
42
|
-
...defaults_1.defaultConfiguration.compilerOptions,
|
|
43
|
-
...fileConfig.compilerOptions,
|
|
44
|
-
},
|
|
45
|
+
loadedConfig.compilerOptions = {
|
|
46
|
+
...defaultConfiguration.compilerOptions,
|
|
47
|
+
...fileConfig.compilerOptions,
|
|
45
48
|
};
|
|
46
49
|
}
|
|
47
|
-
|
|
48
|
-
loadedConfig = {
|
|
49
|
-
...
|
|
50
|
-
...fileConfig,
|
|
50
|
+
if (fileConfig.generateOptions) {
|
|
51
|
+
loadedConfig.generateOptions = {
|
|
52
|
+
...defaultConfiguration.generateOptions,
|
|
53
|
+
...fileConfig.generateOptions,
|
|
51
54
|
};
|
|
52
55
|
}
|
|
53
56
|
}
|
|
54
|
-
else {
|
|
55
|
-
loadedConfig = defaults_1.defaultConfiguration;
|
|
56
|
-
}
|
|
57
57
|
loadedConfigsCache.set(cacheEntryKey, loadedConfig);
|
|
58
58
|
return loadedConfig;
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
exports.NestConfigurationLoader = NestConfigurationLoader;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { AbstractRunner } from '../runners/abstract.runner';
|
|
2
|
-
import { PackageManagerCommands } from './package-manager-commands';
|
|
3
|
-
import { ProjectDependency } from './project.dependency';
|
|
1
|
+
import { AbstractRunner } from '../runners/abstract.runner.js';
|
|
2
|
+
import { PackageManagerCommands } from './package-manager-commands.js';
|
|
3
|
+
import { ProjectDependency } from './project.dependency.js';
|
|
4
4
|
export declare abstract class AbstractPackageManager {
|
|
5
5
|
protected runner: AbstractRunner;
|
|
6
6
|
constructor(runner: AbstractRunner);
|
|
@@ -19,7 +19,7 @@ export declare abstract class AbstractPackageManager {
|
|
|
19
19
|
upgradeDevelopment(dependencies: string[], tag: string): Promise<void>;
|
|
20
20
|
deleteProduction(dependencies: string[]): Promise<void>;
|
|
21
21
|
deleteDevelopment(dependencies: string[]): Promise<void>;
|
|
22
|
-
delete
|
|
22
|
+
private delete;
|
|
23
23
|
abstract get name(): string;
|
|
24
24
|
abstract get cli(): PackageManagerCommands;
|
|
25
25
|
}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const formatting_1 = require("../utils/formatting");
|
|
10
|
-
class AbstractPackageManager {
|
|
1
|
+
import { bold, gray, red } from 'ansis';
|
|
2
|
+
import { readFile } from 'fs/promises';
|
|
3
|
+
import ora from 'ora';
|
|
4
|
+
import { join } from 'path';
|
|
5
|
+
import { MESSAGES } from '../ui/index.js';
|
|
6
|
+
import { normalizeToKebabOrSnakeCase } from '../utils/formatting.js';
|
|
7
|
+
export class AbstractPackageManager {
|
|
8
|
+
runner;
|
|
11
9
|
constructor(runner) {
|
|
12
10
|
this.runner = runner;
|
|
13
11
|
}
|
|
@@ -17,28 +15,28 @@ class AbstractPackageManager {
|
|
|
17
15
|
interval: 120,
|
|
18
16
|
frames: ['▹▹▹▹▹', '▸▹▹▹▹', '▹▸▹▹▹', '▹▹▸▹▹', '▹▹▹▸▹', '▹▹▹▹▸'],
|
|
19
17
|
},
|
|
20
|
-
text:
|
|
18
|
+
text: MESSAGES.PACKAGE_MANAGER_INSTALLATION_IN_PROGRESS,
|
|
21
19
|
});
|
|
22
20
|
spinner.start();
|
|
23
21
|
try {
|
|
24
22
|
const commandArgs = `${this.cli.install} ${this.cli.silentFlag}`;
|
|
25
23
|
const collect = true;
|
|
26
|
-
const normalizedDirectory =
|
|
27
|
-
await this.runner.run(commandArgs, collect,
|
|
24
|
+
const normalizedDirectory = normalizeToKebabOrSnakeCase(directory);
|
|
25
|
+
await this.runner.run(commandArgs, collect, join(process.cwd(), normalizedDirectory));
|
|
28
26
|
spinner.succeed();
|
|
29
27
|
console.info();
|
|
30
|
-
console.info(
|
|
31
|
-
console.info(
|
|
28
|
+
console.info(MESSAGES.PACKAGE_MANAGER_INSTALLATION_SUCCEED(directory));
|
|
29
|
+
console.info(MESSAGES.GET_STARTED_INFORMATION);
|
|
32
30
|
console.info();
|
|
33
|
-
console.info(
|
|
34
|
-
console.info(
|
|
31
|
+
console.info(gray(MESSAGES.CHANGE_DIR_COMMAND(directory)));
|
|
32
|
+
console.info(gray(MESSAGES.START_COMMAND(packageManager)));
|
|
35
33
|
console.info();
|
|
36
34
|
}
|
|
37
35
|
catch {
|
|
38
36
|
spinner.fail();
|
|
39
37
|
const commandArgs = this.cli.install;
|
|
40
38
|
const commandToRun = this.runner.rawFullCommand(commandArgs);
|
|
41
|
-
console.error(
|
|
39
|
+
console.error(red(MESSAGES.PACKAGE_MANAGER_INSTALLATION_FAILED(bold(commandToRun))));
|
|
42
40
|
}
|
|
43
41
|
}
|
|
44
42
|
async version() {
|
|
@@ -58,7 +56,7 @@ class AbstractPackageManager {
|
|
|
58
56
|
interval: 120,
|
|
59
57
|
frames: ['▹▹▹▹▹', '▸▹▹▹▹', '▹▸▹▹▹', '▹▹▸▹▹', '▹▹▹▸▹', '▹▹▹▹▸'],
|
|
60
58
|
},
|
|
61
|
-
text:
|
|
59
|
+
text: MESSAGES.PACKAGE_MANAGER_PRODUCTION_INSTALLATION_IN_PROGRESS,
|
|
62
60
|
});
|
|
63
61
|
spinner.start();
|
|
64
62
|
try {
|
|
@@ -84,7 +82,7 @@ class AbstractPackageManager {
|
|
|
84
82
|
}
|
|
85
83
|
async getProduction() {
|
|
86
84
|
const packageJsonContent = await this.readPackageJson();
|
|
87
|
-
const packageJsonDependencies = packageJsonContent.dependencies;
|
|
85
|
+
const packageJsonDependencies = packageJsonContent.dependencies ?? {};
|
|
88
86
|
const dependencies = [];
|
|
89
87
|
for (const [name, version] of Object.entries(packageJsonDependencies)) {
|
|
90
88
|
dependencies.push({ name, version });
|
|
@@ -93,7 +91,7 @@ class AbstractPackageManager {
|
|
|
93
91
|
}
|
|
94
92
|
async getDevelopment() {
|
|
95
93
|
const packageJsonContent = await this.readPackageJson();
|
|
96
|
-
const packageJsonDevDependencies = packageJsonContent.devDependencies;
|
|
94
|
+
const packageJsonDevDependencies = packageJsonContent.devDependencies ?? {};
|
|
97
95
|
const dependencies = [];
|
|
98
96
|
for (const [name, version] of Object.entries(packageJsonDevDependencies)) {
|
|
99
97
|
dependencies.push({ name, version });
|
|
@@ -101,16 +99,8 @@ class AbstractPackageManager {
|
|
|
101
99
|
return dependencies;
|
|
102
100
|
}
|
|
103
101
|
async readPackageJson() {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
if (error !== undefined && error !== null) {
|
|
107
|
-
reject(error);
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
resolve(JSON.parse(buffer.toString()));
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
});
|
|
102
|
+
const buffer = await readFile(join(process.cwd(), 'package.json'));
|
|
103
|
+
return JSON.parse(buffer.toString());
|
|
114
104
|
}
|
|
115
105
|
async updateProduction(dependencies) {
|
|
116
106
|
const commandArguments = `${this.cli.update} ${dependencies.join(' ')}`;
|
|
@@ -148,4 +138,3 @@ class AbstractPackageManager {
|
|
|
148
138
|
await this.runner.run(commandArguments, collect);
|
|
149
139
|
}
|
|
150
140
|
}
|
|
151
|
-
exports.AbstractPackageManager = AbstractPackageManager;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
2
|
+
import { PackageManagerCommands } from './package-manager-commands.js';
|
|
3
|
+
export declare class BunPackageManager extends AbstractPackageManager {
|
|
4
|
+
constructor();
|
|
5
|
+
get name(): string;
|
|
6
|
+
get cli(): PackageManagerCommands;
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Runner, RunnerFactory } from '../runners/index.js';
|
|
2
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
3
|
+
import { PackageManager } from './package-manager.js';
|
|
4
|
+
export class BunPackageManager extends AbstractPackageManager {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(RunnerFactory.create(Runner.BUN));
|
|
7
|
+
}
|
|
8
|
+
get name() {
|
|
9
|
+
return PackageManager.BUN.toUpperCase();
|
|
10
|
+
}
|
|
11
|
+
get cli() {
|
|
12
|
+
return {
|
|
13
|
+
install: 'install',
|
|
14
|
+
add: 'add',
|
|
15
|
+
update: 'update',
|
|
16
|
+
remove: 'remove',
|
|
17
|
+
saveFlag: '--save',
|
|
18
|
+
saveDevFlag: '--dev',
|
|
19
|
+
silentFlag: '--silent',
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export * from './package-manager';
|
|
2
|
-
export * from './package-manager.factory';
|
|
3
|
-
export * from './abstract.package-manager';
|
|
4
|
-
export * from './npm.package-manager';
|
|
5
|
-
export * from './yarn.package-manager';
|
|
6
|
-
export * from './pnpm.package-manager';
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './
|
|
1
|
+
export * from './package-manager.js';
|
|
2
|
+
export * from './package-manager.factory.js';
|
|
3
|
+
export * from './abstract.package-manager.js';
|
|
4
|
+
export * from './npm.package-manager.js';
|
|
5
|
+
export * from './yarn.package-manager.js';
|
|
6
|
+
export * from './pnpm.package-manager.js';
|
|
7
|
+
export * from './bun.package-manager.js';
|
|
8
|
+
export * from './project.dependency.js';
|
|
9
|
+
export * from './package-manager-commands.js';
|
|
@@ -1,24 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./package-manager"), exports);
|
|
18
|
-
__exportStar(require("./package-manager.factory"), exports);
|
|
19
|
-
__exportStar(require("./abstract.package-manager"), exports);
|
|
20
|
-
__exportStar(require("./npm.package-manager"), exports);
|
|
21
|
-
__exportStar(require("./yarn.package-manager"), exports);
|
|
22
|
-
__exportStar(require("./pnpm.package-manager"), exports);
|
|
23
|
-
__exportStar(require("./project.dependency"), exports);
|
|
24
|
-
__exportStar(require("./package-manager-commands"), exports);
|
|
1
|
+
export * from './package-manager.js';
|
|
2
|
+
export * from './package-manager.factory.js';
|
|
3
|
+
export * from './abstract.package-manager.js';
|
|
4
|
+
export * from './npm.package-manager.js';
|
|
5
|
+
export * from './yarn.package-manager.js';
|
|
6
|
+
export * from './pnpm.package-manager.js';
|
|
7
|
+
export * from './bun.package-manager.js';
|
|
8
|
+
export * from './project.dependency.js';
|
|
9
|
+
export * from './package-manager-commands.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractPackageManager } from './abstract.package-manager';
|
|
2
|
-
import { PackageManagerCommands } from './package-manager-commands';
|
|
1
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
2
|
+
import { PackageManagerCommands } from './package-manager-commands.js';
|
|
3
3
|
export declare class NpmPackageManager extends AbstractPackageManager {
|
|
4
4
|
constructor();
|
|
5
5
|
get name(): string;
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const abstract_package_manager_1 = require("./abstract.package-manager");
|
|
6
|
-
const package_manager_1 = require("./package-manager");
|
|
7
|
-
class NpmPackageManager extends abstract_package_manager_1.AbstractPackageManager {
|
|
1
|
+
import { Runner, RunnerFactory } from '../runners/index.js';
|
|
2
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
3
|
+
import { PackageManager } from './package-manager.js';
|
|
4
|
+
export class NpmPackageManager extends AbstractPackageManager {
|
|
8
5
|
constructor() {
|
|
9
|
-
super(
|
|
6
|
+
super(RunnerFactory.create(Runner.NPM));
|
|
10
7
|
}
|
|
11
8
|
get name() {
|
|
12
|
-
return
|
|
9
|
+
return PackageManager.NPM.toUpperCase();
|
|
13
10
|
}
|
|
14
11
|
get cli() {
|
|
15
12
|
return {
|
|
@@ -23,4 +20,3 @@ class NpmPackageManager extends abstract_package_manager_1.AbstractPackageManage
|
|
|
23
20
|
};
|
|
24
21
|
}
|
|
25
22
|
}
|
|
26
|
-
exports.NpmPackageManager = NpmPackageManager;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractPackageManager } from './abstract.package-manager';
|
|
2
|
-
import { PackageManager } from './package-manager';
|
|
1
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
2
|
+
import { PackageManager } from './package-manager.js';
|
|
3
3
|
export declare class PackageManagerFactory {
|
|
4
4
|
static create(name: PackageManager | string): AbstractPackageManager;
|
|
5
5
|
static find(): Promise<AbstractPackageManager>;
|
|
@@ -1,41 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const pnpm_package_manager_1 = require("./pnpm.package-manager");
|
|
9
|
-
class PackageManagerFactory {
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import { NpmPackageManager } from './npm.package-manager.js';
|
|
3
|
+
import { PackageManager } from './package-manager.js';
|
|
4
|
+
import { YarnPackageManager } from './yarn.package-manager.js';
|
|
5
|
+
import { PnpmPackageManager } from './pnpm.package-manager.js';
|
|
6
|
+
import { BunPackageManager } from './bun.package-manager.js';
|
|
7
|
+
export class PackageManagerFactory {
|
|
10
8
|
static create(name) {
|
|
11
9
|
switch (name) {
|
|
12
|
-
case
|
|
13
|
-
return new
|
|
14
|
-
case
|
|
15
|
-
return new
|
|
16
|
-
case
|
|
17
|
-
return new
|
|
10
|
+
case PackageManager.NPM:
|
|
11
|
+
return new NpmPackageManager();
|
|
12
|
+
case PackageManager.YARN:
|
|
13
|
+
return new YarnPackageManager();
|
|
14
|
+
case PackageManager.PNPM:
|
|
15
|
+
return new PnpmPackageManager();
|
|
16
|
+
case PackageManager.BUN:
|
|
17
|
+
return new BunPackageManager();
|
|
18
18
|
default:
|
|
19
19
|
throw new Error(`Package manager ${name} is not managed.`);
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
static async find() {
|
|
23
|
-
const DEFAULT_PACKAGE_MANAGER =
|
|
23
|
+
const DEFAULT_PACKAGE_MANAGER = PackageManager.NPM;
|
|
24
24
|
try {
|
|
25
25
|
const files = await fs.promises.readdir(process.cwd());
|
|
26
26
|
const hasYarnLockFile = files.includes('yarn.lock');
|
|
27
27
|
if (hasYarnLockFile) {
|
|
28
|
-
return this.create(
|
|
28
|
+
return this.create(PackageManager.YARN);
|
|
29
29
|
}
|
|
30
30
|
const hasPnpmLockFile = files.includes('pnpm-lock.yaml');
|
|
31
31
|
if (hasPnpmLockFile) {
|
|
32
|
-
return this.create(
|
|
32
|
+
return this.create(PackageManager.PNPM);
|
|
33
|
+
}
|
|
34
|
+
const hasBunLockFile = ['bun.lock', 'bun.lockb'].some((lockFile) => files.includes(lockFile));
|
|
35
|
+
if (hasBunLockFile) {
|
|
36
|
+
return this.create(PackageManager.BUN);
|
|
33
37
|
}
|
|
34
38
|
return this.create(DEFAULT_PACKAGE_MANAGER);
|
|
35
39
|
}
|
|
36
|
-
catch
|
|
40
|
+
catch {
|
|
37
41
|
return this.create(DEFAULT_PACKAGE_MANAGER);
|
|
38
42
|
}
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
|
-
exports.PackageManagerFactory = PackageManagerFactory;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PackageManager = void 0;
|
|
4
|
-
var PackageManager;
|
|
1
|
+
export var PackageManager;
|
|
5
2
|
(function (PackageManager) {
|
|
6
3
|
PackageManager["NPM"] = "npm";
|
|
7
4
|
PackageManager["YARN"] = "yarn";
|
|
8
5
|
PackageManager["PNPM"] = "pnpm";
|
|
9
|
-
|
|
6
|
+
PackageManager["BUN"] = "bun";
|
|
7
|
+
})(PackageManager || (PackageManager = {}));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractPackageManager } from './abstract.package-manager';
|
|
2
|
-
import { PackageManagerCommands } from './package-manager-commands';
|
|
1
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
2
|
+
import { PackageManagerCommands } from './package-manager-commands.js';
|
|
3
3
|
export declare class PnpmPackageManager extends AbstractPackageManager {
|
|
4
4
|
constructor();
|
|
5
5
|
get name(): string;
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const abstract_package_manager_1 = require("./abstract.package-manager");
|
|
6
|
-
const package_manager_1 = require("./package-manager");
|
|
7
|
-
class PnpmPackageManager extends abstract_package_manager_1.AbstractPackageManager {
|
|
1
|
+
import { Runner, RunnerFactory } from '../runners/index.js';
|
|
2
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
3
|
+
import { PackageManager } from './package-manager.js';
|
|
4
|
+
export class PnpmPackageManager extends AbstractPackageManager {
|
|
8
5
|
constructor() {
|
|
9
|
-
super(
|
|
6
|
+
super(RunnerFactory.create(Runner.PNPM));
|
|
10
7
|
}
|
|
11
8
|
get name() {
|
|
12
|
-
return
|
|
9
|
+
return PackageManager.PNPM.toUpperCase();
|
|
13
10
|
}
|
|
14
11
|
// As of PNPM v5.3, all commands are shared with NPM v6.14.5. See: https://pnpm.js.org/en/pnpm-vs-npm
|
|
15
12
|
get cli() {
|
|
@@ -24,4 +21,3 @@ class PnpmPackageManager extends abstract_package_manager_1.AbstractPackageManag
|
|
|
24
21
|
};
|
|
25
22
|
}
|
|
26
23
|
}
|
|
27
|
-
exports.PnpmPackageManager = PnpmPackageManager;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractPackageManager } from './abstract.package-manager';
|
|
2
|
-
import { PackageManagerCommands } from './package-manager-commands';
|
|
1
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
2
|
+
import { PackageManagerCommands } from './package-manager-commands.js';
|
|
3
3
|
export declare class YarnPackageManager extends AbstractPackageManager {
|
|
4
4
|
constructor();
|
|
5
5
|
get name(): string;
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const abstract_package_manager_1 = require("./abstract.package-manager");
|
|
6
|
-
const package_manager_1 = require("./package-manager");
|
|
7
|
-
class YarnPackageManager extends abstract_package_manager_1.AbstractPackageManager {
|
|
1
|
+
import { Runner, RunnerFactory } from '../runners/index.js';
|
|
2
|
+
import { AbstractPackageManager } from './abstract.package-manager.js';
|
|
3
|
+
import { PackageManager } from './package-manager.js';
|
|
4
|
+
export class YarnPackageManager extends AbstractPackageManager {
|
|
8
5
|
constructor() {
|
|
9
|
-
super(
|
|
6
|
+
super(RunnerFactory.create(Runner.YARN));
|
|
10
7
|
}
|
|
11
8
|
get name() {
|
|
12
|
-
return
|
|
9
|
+
return PackageManager.YARN.toUpperCase();
|
|
13
10
|
}
|
|
14
11
|
get cli() {
|
|
15
12
|
return {
|
|
@@ -23,4 +20,3 @@ class YarnPackageManager extends abstract_package_manager_1.AbstractPackageManag
|
|
|
23
20
|
};
|
|
24
21
|
}
|
|
25
22
|
}
|
|
26
|
-
exports.YarnPackageManager = YarnPackageManager;
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
export declare const generateInput: (name: string, message: string) => (defaultAnswer: string) =>
|
|
1
|
+
export declare const generateInput: (name: string, message: string) => (defaultAnswer: string) => {
|
|
2
|
+
name: string;
|
|
3
|
+
message: string;
|
|
4
|
+
default: string;
|
|
5
|
+
};
|
|
2
6
|
export declare const generateSelect: (name: string) => (message: string) => (choices: string[]) => {
|
|
3
7
|
name: string;
|
|
4
8
|
message: string;
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateSelect = exports.generateInput = void 0;
|
|
4
|
-
const generateInput = (name, message) => {
|
|
1
|
+
export const generateInput = (name, message) => {
|
|
5
2
|
return (defaultAnswer) => ({
|
|
6
3
|
name,
|
|
7
4
|
message,
|
|
8
5
|
default: defaultAnswer,
|
|
9
6
|
});
|
|
10
7
|
};
|
|
11
|
-
|
|
12
|
-
const generateSelect = (name) => {
|
|
8
|
+
export const generateSelect = (name) => {
|
|
13
9
|
return (message) => {
|
|
14
10
|
return (choices) => {
|
|
15
11
|
const choicesFormatted = choices.map((choice) => ({
|
|
@@ -24,4 +20,3 @@ const generateSelect = (name) => {
|
|
|
24
20
|
};
|
|
25
21
|
};
|
|
26
22
|
};
|
|
27
|
-
exports.generateSelect = generateSelect;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const reader_1 = require("./reader");
|
|
7
|
-
class FileSystemReader {
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { ReaderFileLackPermissionsError } from './reader.js';
|
|
4
|
+
export class FileSystemReader {
|
|
5
|
+
directory;
|
|
8
6
|
constructor(directory) {
|
|
9
7
|
this.directory = directory;
|
|
10
8
|
}
|
|
@@ -34,7 +32,7 @@ class FileSystemReader {
|
|
|
34
32
|
continue;
|
|
35
33
|
}
|
|
36
34
|
if (firstFilePathFoundButWithInsufficientPermissions) {
|
|
37
|
-
return new
|
|
35
|
+
return new ReaderFileLackPermissionsError(firstFilePathFoundButWithInsufficientPermissions, readErr.code);
|
|
38
36
|
}
|
|
39
37
|
else {
|
|
40
38
|
return undefined;
|
|
@@ -43,4 +41,3 @@ class FileSystemReader {
|
|
|
43
41
|
}
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
|
-
exports.FileSystemReader = FileSystemReader;
|
package/lib/readers/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './reader';
|
|
2
|
-
export * from './file-system.reader';
|
|
1
|
+
export * from './reader.js';
|
|
2
|
+
export * from './file-system.reader.js';
|
package/lib/readers/index.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./reader"), exports);
|
|
18
|
-
__exportStar(require("./file-system.reader"), exports);
|
|
1
|
+
export * from './reader.js';
|
|
2
|
+
export * from './file-system.reader.js';
|
package/lib/readers/reader.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
class ReaderFileLackPermissionsError extends Error {
|
|
1
|
+
export class ReaderFileLackPermissionsError extends Error {
|
|
2
|
+
filePath;
|
|
3
|
+
fsErrorCode;
|
|
5
4
|
constructor(filePath, fsErrorCode) {
|
|
6
5
|
super(`File ${filePath} lacks read permissions!`);
|
|
7
6
|
this.filePath = filePath;
|
|
8
7
|
this.fsErrorCode = fsErrorCode;
|
|
9
8
|
}
|
|
10
9
|
}
|
|
11
|
-
exports.ReaderFileLackPermissionsError = ReaderFileLackPermissionsError;
|