@postxl/generator 1.0.8 → 1.0.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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PackageName } from './branded.types';
|
|
2
2
|
export type PackageJsonConfig = {
|
|
3
3
|
/**
|
|
4
4
|
* Name of the package. Should contain `@postxl/` prefix.
|
|
@@ -34,23 +34,24 @@ export type PackageJsonConfig = {
|
|
|
34
34
|
* The package manager used in the project.
|
|
35
35
|
*/
|
|
36
36
|
packageManager?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Indicates whether the package is part of a PostXL workspace.
|
|
39
|
+
*
|
|
40
|
+
* If not, workspace dependencies will be replaced with latest published versions.
|
|
41
|
+
*/
|
|
42
|
+
isInPostXlWorkspace?: boolean;
|
|
37
43
|
};
|
|
38
|
-
export type PackageDependency = PackageDependency_Workspace | PackageDependency_Package
|
|
44
|
+
export type PackageDependency = PackageDependency_Workspace | PackageDependency_Package;
|
|
39
45
|
export type PackageDependency_Workspace = {
|
|
40
46
|
packageName: PackageName;
|
|
41
47
|
};
|
|
48
|
+
export declare function isPostXlWorkspacePackageName(packageName: PackageDependency): packageName is PackageDependency_Workspace;
|
|
42
49
|
export type PackageDependency_Package = {
|
|
43
50
|
packageName: string;
|
|
44
51
|
version: string;
|
|
45
52
|
};
|
|
46
|
-
export type PackageDependency_LocalProject = {
|
|
47
|
-
packageName: PackageName;
|
|
48
|
-
backendModuleName: BackendModuleName;
|
|
49
|
-
path: string;
|
|
50
|
-
};
|
|
51
|
-
export declare function isLocalProjectDependency(dependency: PackageDependency): dependency is PackageDependency_LocalProject;
|
|
52
53
|
export type PackageScript = {
|
|
53
54
|
name: string;
|
|
54
55
|
command: string;
|
|
55
56
|
};
|
|
56
|
-
export declare function generatePackageJson({ dependencies, devDependencies, scripts, name, description, type: pType, packageManager, }: PackageJsonConfig): string;
|
|
57
|
+
export declare function generatePackageJson({ dependencies, devDependencies, scripts, name, description, type: pType, packageManager, isInPostXlWorkspace, }: PackageJsonConfig): string;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.isPostXlWorkspacePackageName = isPostXlWorkspacePackageName;
|
|
4
4
|
exports.generatePackageJson = generatePackageJson;
|
|
5
|
-
function
|
|
6
|
-
return '
|
|
5
|
+
function isPostXlWorkspacePackageName(packageName) {
|
|
6
|
+
return !('version' in packageName) && packageName.packageName.startsWith('@postxl/');
|
|
7
7
|
}
|
|
8
|
-
function generatePackageJson({ dependencies, devDependencies, scripts, name, description, type: pType, packageManager, }) {
|
|
8
|
+
function generatePackageJson({ dependencies, devDependencies, scripts, name, description, type: pType, packageManager, isInPostXlWorkspace, }) {
|
|
9
9
|
return JSON.stringify({
|
|
10
10
|
name,
|
|
11
11
|
version: '0.0.0',
|
|
@@ -18,19 +18,22 @@ function generatePackageJson({ dependencies, devDependencies, scripts, name, des
|
|
|
18
18
|
.reduce((acc, script) => ({ ...acc, [script.name]: script.command }), {}),
|
|
19
19
|
packageManager,
|
|
20
20
|
dependencies: dependencies
|
|
21
|
-
.map(toDependency_Package)
|
|
21
|
+
.map((dependency) => toDependency_Package({ dependency, isInPostXlWorkspace }))
|
|
22
22
|
.toSorted((a, b) => a.packageName.localeCompare(b.packageName))
|
|
23
23
|
.reduce((acc, dep) => ({ ...acc, [dep.packageName]: dep.version }), {}),
|
|
24
24
|
devDependencies: devDependencies
|
|
25
|
-
.map(toDependency_Package)
|
|
25
|
+
.map((dependency) => toDependency_Package({ dependency, isInPostXlWorkspace }))
|
|
26
26
|
.toSorted((a, b) => a.packageName.localeCompare(b.packageName))
|
|
27
27
|
.reduce((acc, dep) => ({ ...acc, [dep.packageName]: dep.version }), {}),
|
|
28
28
|
license: 'UNLICENSED',
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
|
-
function toDependency_Package(dependency) {
|
|
31
|
+
function toDependency_Package({ dependency, isInPostXlWorkspace, }) {
|
|
32
32
|
if ('version' in dependency) {
|
|
33
33
|
return dependency;
|
|
34
34
|
}
|
|
35
|
+
if (!isInPostXlWorkspace) {
|
|
36
|
+
return { packageName: dependency.packageName, version: 'latest' };
|
|
37
|
+
}
|
|
35
38
|
return { packageName: dependency.packageName, version: 'workspace:^' };
|
|
36
39
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@postxl/generator",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "Core package that orchestrates the code generation of a PXL project",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -38,6 +38,8 @@
|
|
|
38
38
|
"directory": "packages/generator"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
+
"@typescript-eslint/eslint-plugin": "8.46.3",
|
|
42
|
+
"prettier": "3.7.4",
|
|
41
43
|
"diff": "8.0.2",
|
|
42
44
|
"globals": "16.5.0",
|
|
43
45
|
"isbinaryfile": "5.0.2",
|