@backstage/cli 0.22.6-next.2 → 0.22.6-next.3
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/CHANGELOG.md +16 -0
- package/dist/cjs/{Lockfile-bc3a8337.cjs.js → Lockfile-eced6070.cjs.js} +1 -65
- package/dist/cjs/{build-93a11339.cjs.js → build-dc637c43.cjs.js} +16 -23
- package/dist/cjs/{buildBackend-cd8e2fb5.cjs.js → buildBackend-48fa438b.cjs.js} +6 -6
- package/dist/cjs/{buildWorkspace-9110c947.cjs.js → buildWorkspace-bc01ac87.cjs.js} +7 -15
- package/dist/cjs/{bump-534e6cf6.cjs.js → bump-5bd8d76e.cjs.js} +9 -9
- package/dist/cjs/{clean-61eae164.cjs.js → clean-16c34ac8.cjs.js} +7 -14
- package/dist/cjs/{clean-72451e81.cjs.js → clean-400943ae.cjs.js} +2 -2
- package/dist/cjs/{codeowners-9f57f2fb.cjs.js → codeowners-7125db8b.cjs.js} +2 -2
- package/dist/cjs/{config-c50ac1c0.cjs.js → config-cf13fcb5.cjs.js} +4 -4
- package/dist/cjs/{createDistWorkspace-e41d7df9.cjs.js → createDistWorkspace-ff351433.cjs.js} +10 -11
- package/dist/cjs/{createPlugin-e004e57e.cjs.js → createPlugin-9dd2b8b0.cjs.js} +5 -5
- package/dist/cjs/{diff-75d413d6.cjs.js → diff-b9310329.cjs.js} +2 -2
- package/dist/cjs/{docs-a3ad7273.cjs.js → docs-2fed969c.cjs.js} +4 -13
- package/dist/cjs/{entryPoints-5e73783d.cjs.js → entryPoints-0cc55995.cjs.js} +1 -1
- package/dist/cjs/{fix-bbe5fb62.cjs.js → fix-c32997bb.cjs.js} +4 -13
- package/dist/cjs/{index-c738a2bc.cjs.js → index-a4ecaef6.cjs.js} +2 -2
- package/dist/cjs/{index-f75043af.cjs.js → index-b4601a25.cjs.js} +44 -43
- package/dist/cjs/{index-b64ebbe5.cjs.js → index-d0e82a3e.cjs.js} +17 -23
- package/dist/cjs/{index-e751f7ff.cjs.js → index-e788983d.cjs.js} +15 -16
- package/dist/cjs/{info-0fb827ce.cjs.js → info-b0f86ac4.cjs.js} +4 -4
- package/dist/cjs/{install-756429c4.cjs.js → install-157c4d68.cjs.js} +4 -4
- package/dist/cjs/{lint-6a316d15.cjs.js → lint-63cb9027.cjs.js} +7 -8
- package/dist/cjs/{lint-e4d3b0ce.cjs.js → lint-74d30823.cjs.js} +8 -17
- package/dist/cjs/{lint-d0c16a43.cjs.js → lint-81716a04.cjs.js} +2 -2
- package/dist/cjs/{list-deprecations-7d034d6f.cjs.js → list-deprecations-7794807f.cjs.js} +4 -13
- package/dist/cjs/{new-3450da88.cjs.js → new-9002c3e3.cjs.js} +7 -17
- package/dist/cjs/{pack-51e9d18e.cjs.js → pack-c14e0e8a.cjs.js} +4 -4
- package/dist/cjs/{packageExports-8fc508ae.cjs.js → packageExports-50d8546d.cjs.js} +3 -18
- package/dist/cjs/{packageLintConfigs-2dd4bed3.cjs.js → packageLintConfigs-e755a908.cjs.js} +6 -12
- package/dist/cjs/{packageRole-44235057.cjs.js → packageRole-4a3dc7b6.cjs.js} +5 -6
- package/dist/cjs/{packageScripts-6c74fd59.cjs.js → packageScripts-c6721fac.cjs.js} +5 -22
- package/dist/cjs/{packages-d3d3cf04.cjs.js → packages-edc691e5.cjs.js} +3 -3
- package/dist/cjs/{paths-b1b0642b.cjs.js → paths-b16e8b79.cjs.js} +4 -4
- package/dist/cjs/{print-aed73507.cjs.js → print-47215164.cjs.js} +4 -13
- package/dist/cjs/{productionPack-fdf62126.cjs.js → productionPack-d569941a.cjs.js} +2 -2
- package/dist/cjs/{reactRouterDeps-bb13ea12.cjs.js → reactRouterDeps-a2bb1d62.cjs.js} +4 -21
- package/dist/cjs/role-55ce5ba5.cjs.js +25 -0
- package/dist/cjs/{run-a93ca9aa.cjs.js → run-fd7a8645.cjs.js} +2 -2
- package/dist/cjs/{schema-bcf03162.cjs.js → schema-61040063.cjs.js} +4 -13
- package/dist/cjs/{test-60e60b20.cjs.js → test-0ee48913.cjs.js} +11 -18
- package/dist/cjs/{test-a80c8387.cjs.js → test-98272529.cjs.js} +3 -3
- package/dist/cjs/{validate-6b1c2a85.cjs.js → validate-84db961e.cjs.js} +4 -13
- package/dist/index.cjs.js +1 -1
- package/package.json +8 -7
- package/dist/cjs/PackageGraph-e47555be.cjs.js +0 -250
- package/dist/cjs/packageRoles-e8484d59.cjs.js +0 -160
|
@@ -1,250 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var path = require('path');
|
|
4
|
-
var getPackages = require('@manypkg/get-packages');
|
|
5
|
-
var index = require('./index-f75043af.cjs.js');
|
|
6
|
-
var errors = require('@backstage/errors');
|
|
7
|
-
var child_process = require('child_process');
|
|
8
|
-
var util = require('util');
|
|
9
|
-
var Lockfile = require('./Lockfile-bc3a8337.cjs.js');
|
|
10
|
-
require('minimatch');
|
|
11
|
-
require('chalk');
|
|
12
|
-
require('./yarn-6cd89e16.cjs.js');
|
|
13
|
-
require('./run-a93ca9aa.cjs.js');
|
|
14
|
-
|
|
15
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
|
-
|
|
17
|
-
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
18
|
-
|
|
19
|
-
const execFile = util.promisify(child_process.execFile);
|
|
20
|
-
async function runGit(...args) {
|
|
21
|
-
var _a, _b;
|
|
22
|
-
try {
|
|
23
|
-
const { stdout } = await execFile("git", args, {
|
|
24
|
-
shell: true,
|
|
25
|
-
cwd: index.paths.targetRoot
|
|
26
|
-
});
|
|
27
|
-
return stdout.trim().split(/\r\n|\r|\n/);
|
|
28
|
-
} catch (error) {
|
|
29
|
-
errors.assertError(error);
|
|
30
|
-
if (error.stderr || typeof error.code === "number") {
|
|
31
|
-
const stderr = (_a = error.stderr) == null ? void 0 : _a.toString("utf8");
|
|
32
|
-
const msg = (_b = stderr == null ? void 0 : stderr.trim()) != null ? _b : `with exit code ${error.code}`;
|
|
33
|
-
throw new Error(`git ${args[0]} failed, ${msg}`);
|
|
34
|
-
}
|
|
35
|
-
throw new errors.ForwardedError("Unknown execution error", error);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
async function listChangedFiles(ref) {
|
|
39
|
-
if (!ref) {
|
|
40
|
-
throw new Error("ref is required");
|
|
41
|
-
}
|
|
42
|
-
let diffRef = ref;
|
|
43
|
-
try {
|
|
44
|
-
const [base] = await runGit("merge-base", "HEAD", ref);
|
|
45
|
-
diffRef = base;
|
|
46
|
-
} catch {
|
|
47
|
-
}
|
|
48
|
-
const tracked = await runGit("diff", "--name-only", diffRef);
|
|
49
|
-
const untracked = await runGit("ls-files", "--others", "--exclude-standard");
|
|
50
|
-
return Array.from(/* @__PURE__ */ new Set([...tracked, ...untracked]));
|
|
51
|
-
}
|
|
52
|
-
async function readFileAtRef(path, ref) {
|
|
53
|
-
let showRef = ref;
|
|
54
|
-
try {
|
|
55
|
-
const [base] = await runGit("merge-base", "HEAD", ref);
|
|
56
|
-
showRef = base;
|
|
57
|
-
} catch {
|
|
58
|
-
}
|
|
59
|
-
const { stdout } = await execFile("git", ["show", `${showRef}:${path}`], {
|
|
60
|
-
shell: true,
|
|
61
|
-
cwd: index.paths.targetRoot,
|
|
62
|
-
maxBuffer: 1024 * 1024 * 50
|
|
63
|
-
});
|
|
64
|
-
return stdout;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
class PackageGraph extends Map {
|
|
68
|
-
static async listTargetPackages() {
|
|
69
|
-
const { packages } = await getPackages.getPackages(index.paths.targetDir);
|
|
70
|
-
return packages;
|
|
71
|
-
}
|
|
72
|
-
static fromPackages(packages) {
|
|
73
|
-
const graph = new PackageGraph();
|
|
74
|
-
for (const pkg of packages) {
|
|
75
|
-
const name = pkg.packageJson.name;
|
|
76
|
-
const existingPkg = graph.get(name);
|
|
77
|
-
if (existingPkg) {
|
|
78
|
-
throw new Error(
|
|
79
|
-
`Duplicate package name '${name}' at ${pkg.dir} and ${existingPkg.dir}`
|
|
80
|
-
);
|
|
81
|
-
}
|
|
82
|
-
graph.set(name, {
|
|
83
|
-
name,
|
|
84
|
-
dir: pkg.dir,
|
|
85
|
-
packageJson: pkg.packageJson,
|
|
86
|
-
allLocalDependencies: /* @__PURE__ */ new Map(),
|
|
87
|
-
publishedLocalDependencies: /* @__PURE__ */ new Map(),
|
|
88
|
-
localDependencies: /* @__PURE__ */ new Map(),
|
|
89
|
-
localDevDependencies: /* @__PURE__ */ new Map(),
|
|
90
|
-
localOptionalDependencies: /* @__PURE__ */ new Map(),
|
|
91
|
-
allLocalDependents: /* @__PURE__ */ new Map(),
|
|
92
|
-
publishedLocalDependents: /* @__PURE__ */ new Map(),
|
|
93
|
-
localDependents: /* @__PURE__ */ new Map(),
|
|
94
|
-
localDevDependents: /* @__PURE__ */ new Map(),
|
|
95
|
-
localOptionalDependents: /* @__PURE__ */ new Map()
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
for (const node of graph.values()) {
|
|
99
|
-
for (const depName of Object.keys(node.packageJson.dependencies || {})) {
|
|
100
|
-
const depPkg = graph.get(depName);
|
|
101
|
-
if (depPkg) {
|
|
102
|
-
node.allLocalDependencies.set(depName, depPkg);
|
|
103
|
-
node.publishedLocalDependencies.set(depName, depPkg);
|
|
104
|
-
node.localDependencies.set(depName, depPkg);
|
|
105
|
-
depPkg.allLocalDependents.set(node.name, node);
|
|
106
|
-
depPkg.publishedLocalDependents.set(node.name, node);
|
|
107
|
-
depPkg.localDependents.set(node.name, node);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
for (const depName of Object.keys(
|
|
111
|
-
node.packageJson.devDependencies || {}
|
|
112
|
-
)) {
|
|
113
|
-
const depPkg = graph.get(depName);
|
|
114
|
-
if (depPkg) {
|
|
115
|
-
node.allLocalDependencies.set(depName, depPkg);
|
|
116
|
-
node.localDevDependencies.set(depName, depPkg);
|
|
117
|
-
depPkg.allLocalDependents.set(node.name, node);
|
|
118
|
-
depPkg.localDevDependents.set(node.name, node);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
for (const depName of Object.keys(
|
|
122
|
-
node.packageJson.optionalDependencies || {}
|
|
123
|
-
)) {
|
|
124
|
-
const depPkg = graph.get(depName);
|
|
125
|
-
if (depPkg) {
|
|
126
|
-
node.allLocalDependencies.set(depName, depPkg);
|
|
127
|
-
node.publishedLocalDependencies.set(depName, depPkg);
|
|
128
|
-
node.localOptionalDependencies.set(depName, depPkg);
|
|
129
|
-
depPkg.allLocalDependents.set(node.name, node);
|
|
130
|
-
depPkg.publishedLocalDependents.set(node.name, node);
|
|
131
|
-
depPkg.localOptionalDependents.set(node.name, node);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
return graph;
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* Traverses the package graph and collects a set of package names.
|
|
139
|
-
*
|
|
140
|
-
* The traversal starts at the provided list names, and continues
|
|
141
|
-
* throughout all the names returned by the `collectFn`, which is
|
|
142
|
-
* called once for each seen package.
|
|
143
|
-
*/
|
|
144
|
-
collectPackageNames(startingPackageNames, collectFn) {
|
|
145
|
-
const targets = /* @__PURE__ */ new Set();
|
|
146
|
-
const searchNames = startingPackageNames.slice();
|
|
147
|
-
while (searchNames.length) {
|
|
148
|
-
const name = searchNames.pop();
|
|
149
|
-
if (targets.has(name)) {
|
|
150
|
-
continue;
|
|
151
|
-
}
|
|
152
|
-
const node = this.get(name);
|
|
153
|
-
if (!node) {
|
|
154
|
-
throw new Error(`Package '${name}' not found`);
|
|
155
|
-
}
|
|
156
|
-
targets.add(name);
|
|
157
|
-
const collected = collectFn(node);
|
|
158
|
-
if (collected) {
|
|
159
|
-
searchNames.push(...collected);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
return targets;
|
|
163
|
-
}
|
|
164
|
-
async listChangedPackages(options) {
|
|
165
|
-
var _a, _b;
|
|
166
|
-
const changedFiles = await listChangedFiles(options.ref);
|
|
167
|
-
const dirMap = new Map(
|
|
168
|
-
Array.from(this.values()).map((pkg) => [
|
|
169
|
-
// relative from root, convert to posix, and add a / at the end
|
|
170
|
-
path__default["default"].relative(index.paths.targetRoot, pkg.dir).split(path__default["default"].sep).join(path__default["default"].posix.sep) + path__default["default"].posix.sep,
|
|
171
|
-
pkg
|
|
172
|
-
])
|
|
173
|
-
);
|
|
174
|
-
const packageDirs = Array.from(dirMap.keys());
|
|
175
|
-
const result = new Array();
|
|
176
|
-
let searchIndex = 0;
|
|
177
|
-
changedFiles.sort();
|
|
178
|
-
packageDirs.sort();
|
|
179
|
-
for (const packageDir of packageDirs) {
|
|
180
|
-
while (searchIndex < changedFiles.length && changedFiles[searchIndex] < packageDir) {
|
|
181
|
-
searchIndex += 1;
|
|
182
|
-
}
|
|
183
|
-
if ((_a = changedFiles[searchIndex]) == null ? void 0 : _a.startsWith(packageDir)) {
|
|
184
|
-
searchIndex += 1;
|
|
185
|
-
result.push(dirMap.get(packageDir));
|
|
186
|
-
while ((_b = changedFiles[searchIndex]) == null ? void 0 : _b.startsWith(packageDir)) {
|
|
187
|
-
searchIndex += 1;
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
if (changedFiles.includes("yarn.lock") && options.analyzeLockfile) {
|
|
192
|
-
let thisLockfile;
|
|
193
|
-
let otherLockfile;
|
|
194
|
-
try {
|
|
195
|
-
thisLockfile = await Lockfile.Lockfile.load(
|
|
196
|
-
index.paths.resolveTargetRoot("yarn.lock")
|
|
197
|
-
);
|
|
198
|
-
otherLockfile = Lockfile.Lockfile.parse(
|
|
199
|
-
await readFileAtRef("yarn.lock", options.ref)
|
|
200
|
-
);
|
|
201
|
-
} catch (error) {
|
|
202
|
-
console.warn(
|
|
203
|
-
`Failed to read lockfiles, assuming all packages have changed, ${error}`
|
|
204
|
-
);
|
|
205
|
-
return Array.from(this.values());
|
|
206
|
-
}
|
|
207
|
-
const diff = thisLockfile.diff(otherLockfile);
|
|
208
|
-
const graph = thisLockfile.createSimplifiedDependencyGraph();
|
|
209
|
-
{
|
|
210
|
-
const otherGraph = thisLockfile.createSimplifiedDependencyGraph();
|
|
211
|
-
for (const [name, dependencies] of otherGraph) {
|
|
212
|
-
const node = graph.get(name);
|
|
213
|
-
if (node) {
|
|
214
|
-
dependencies.forEach((d) => node.add(d));
|
|
215
|
-
} else {
|
|
216
|
-
graph.set(name, dependencies);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
const changedPackages = new Set(
|
|
221
|
-
[...diff.added, ...diff.changed, ...diff.removed].map((e) => e.name)
|
|
222
|
-
);
|
|
223
|
-
let changed = false;
|
|
224
|
-
do {
|
|
225
|
-
changed = false;
|
|
226
|
-
for (const [name, dependencies] of graph) {
|
|
227
|
-
if (changedPackages.has(name)) {
|
|
228
|
-
continue;
|
|
229
|
-
}
|
|
230
|
-
for (const dep of dependencies) {
|
|
231
|
-
if (changedPackages.has(dep)) {
|
|
232
|
-
changed = true;
|
|
233
|
-
changedPackages.add(name);
|
|
234
|
-
break;
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
} while (changed);
|
|
239
|
-
for (const node of this.values()) {
|
|
240
|
-
if (changedPackages.has(node.name) && !result.includes(node)) {
|
|
241
|
-
result.push(node);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
return result;
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
exports.PackageGraph = PackageGraph;
|
|
250
|
-
//# sourceMappingURL=PackageGraph-e47555be.cjs.js.map
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var zod = require('zod');
|
|
4
|
-
var fs = require('fs-extra');
|
|
5
|
-
var index = require('./index-f75043af.cjs.js');
|
|
6
|
-
|
|
7
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
-
|
|
9
|
-
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
10
|
-
|
|
11
|
-
const packageRoleInfos = [
|
|
12
|
-
{
|
|
13
|
-
role: "frontend",
|
|
14
|
-
platform: "web",
|
|
15
|
-
output: ["bundle"]
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
role: "backend",
|
|
19
|
-
platform: "node",
|
|
20
|
-
output: ["bundle"]
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
role: "cli",
|
|
24
|
-
platform: "node",
|
|
25
|
-
output: ["cjs"]
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
role: "web-library",
|
|
29
|
-
platform: "web",
|
|
30
|
-
output: ["types", "esm"]
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
role: "node-library",
|
|
34
|
-
platform: "node",
|
|
35
|
-
output: ["types", "cjs"]
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
role: "common-library",
|
|
39
|
-
platform: "common",
|
|
40
|
-
output: ["types", "esm", "cjs"]
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
role: "frontend-plugin",
|
|
44
|
-
platform: "web",
|
|
45
|
-
output: ["types", "esm"]
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
role: "frontend-plugin-module",
|
|
49
|
-
platform: "web",
|
|
50
|
-
output: ["types", "esm"]
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
role: "backend-plugin",
|
|
54
|
-
platform: "node",
|
|
55
|
-
output: ["types", "cjs"]
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
role: "backend-plugin-module",
|
|
59
|
-
platform: "node",
|
|
60
|
-
output: ["types", "cjs"]
|
|
61
|
-
}
|
|
62
|
-
];
|
|
63
|
-
function getRoleInfo(role) {
|
|
64
|
-
const roleInfo = packageRoleInfos.find((r) => r.role === role);
|
|
65
|
-
if (!roleInfo) {
|
|
66
|
-
throw new Error(`Unknown package role '${role}'`);
|
|
67
|
-
}
|
|
68
|
-
return roleInfo;
|
|
69
|
-
}
|
|
70
|
-
const readSchema = zod.z.object({
|
|
71
|
-
name: zod.z.string().optional(),
|
|
72
|
-
backstage: zod.z.object({
|
|
73
|
-
role: zod.z.string().optional()
|
|
74
|
-
}).optional()
|
|
75
|
-
});
|
|
76
|
-
function getRoleFromPackage(pkgJson) {
|
|
77
|
-
const pkg = readSchema.parse(pkgJson);
|
|
78
|
-
if (pkg.backstage) {
|
|
79
|
-
const { role } = pkg.backstage;
|
|
80
|
-
if (!role) {
|
|
81
|
-
throw new Error(
|
|
82
|
-
`Package ${pkg.name} must specify a role in the "backstage" field`
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
return getRoleInfo(role).role;
|
|
86
|
-
}
|
|
87
|
-
return void 0;
|
|
88
|
-
}
|
|
89
|
-
async function findRoleFromCommand(opts) {
|
|
90
|
-
var _a;
|
|
91
|
-
if (opts.role) {
|
|
92
|
-
return (_a = getRoleInfo(opts.role)) == null ? void 0 : _a.role;
|
|
93
|
-
}
|
|
94
|
-
const pkg = await fs__default["default"].readJson(index.paths.resolveTarget("package.json"));
|
|
95
|
-
const info = getRoleFromPackage(pkg);
|
|
96
|
-
if (!info) {
|
|
97
|
-
throw new Error(`Target package must have 'backstage.role' set`);
|
|
98
|
-
}
|
|
99
|
-
return info;
|
|
100
|
-
}
|
|
101
|
-
const detectionSchema = zod.z.object({
|
|
102
|
-
name: zod.z.string().optional(),
|
|
103
|
-
scripts: zod.z.object({
|
|
104
|
-
start: zod.z.string().optional(),
|
|
105
|
-
build: zod.z.string().optional()
|
|
106
|
-
}).optional(),
|
|
107
|
-
publishConfig: zod.z.object({
|
|
108
|
-
main: zod.z.string().optional(),
|
|
109
|
-
types: zod.z.string().optional(),
|
|
110
|
-
module: zod.z.string().optional()
|
|
111
|
-
}).optional(),
|
|
112
|
-
main: zod.z.string().optional(),
|
|
113
|
-
types: zod.z.string().optional(),
|
|
114
|
-
module: zod.z.string().optional()
|
|
115
|
-
});
|
|
116
|
-
function detectRoleFromPackage(pkgJson) {
|
|
117
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
|
|
118
|
-
const pkg = detectionSchema.parse(pkgJson);
|
|
119
|
-
if ((_b = (_a = pkg.scripts) == null ? void 0 : _a.start) == null ? void 0 : _b.includes("app:serve")) {
|
|
120
|
-
return "frontend";
|
|
121
|
-
}
|
|
122
|
-
if ((_d = (_c = pkg.scripts) == null ? void 0 : _c.build) == null ? void 0 : _d.includes("backend:bundle")) {
|
|
123
|
-
return "backend";
|
|
124
|
-
}
|
|
125
|
-
if (((_e = pkg.name) == null ? void 0 : _e.includes("plugin-")) && ((_f = pkg.name) == null ? void 0 : _f.includes("-backend-module-"))) {
|
|
126
|
-
return "backend-plugin-module";
|
|
127
|
-
}
|
|
128
|
-
if (((_g = pkg.name) == null ? void 0 : _g.includes("plugin-")) && ((_h = pkg.name) == null ? void 0 : _h.includes("-module-"))) {
|
|
129
|
-
return "frontend-plugin-module";
|
|
130
|
-
}
|
|
131
|
-
if ((_j = (_i = pkg.scripts) == null ? void 0 : _i.start) == null ? void 0 : _j.includes("plugin:serve")) {
|
|
132
|
-
return "frontend-plugin";
|
|
133
|
-
}
|
|
134
|
-
if ((_l = (_k = pkg.scripts) == null ? void 0 : _k.start) == null ? void 0 : _l.includes("backend:dev")) {
|
|
135
|
-
return "backend-plugin";
|
|
136
|
-
}
|
|
137
|
-
const mainEntry = ((_m = pkg.publishConfig) == null ? void 0 : _m.main) || pkg.main;
|
|
138
|
-
const moduleEntry = ((_n = pkg.publishConfig) == null ? void 0 : _n.module) || pkg.module;
|
|
139
|
-
const typesEntry = ((_o = pkg.publishConfig) == null ? void 0 : _o.types) || pkg.types;
|
|
140
|
-
if (typesEntry) {
|
|
141
|
-
if (mainEntry && moduleEntry) {
|
|
142
|
-
return "common-library";
|
|
143
|
-
}
|
|
144
|
-
if (moduleEntry || (mainEntry == null ? void 0 : mainEntry.endsWith(".esm.js"))) {
|
|
145
|
-
return "web-library";
|
|
146
|
-
}
|
|
147
|
-
if (mainEntry) {
|
|
148
|
-
return "node-library";
|
|
149
|
-
}
|
|
150
|
-
} else if (mainEntry) {
|
|
151
|
-
return "cli";
|
|
152
|
-
}
|
|
153
|
-
return void 0;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
exports.detectRoleFromPackage = detectRoleFromPackage;
|
|
157
|
-
exports.findRoleFromCommand = findRoleFromCommand;
|
|
158
|
-
exports.getRoleFromPackage = getRoleFromPackage;
|
|
159
|
-
exports.getRoleInfo = getRoleInfo;
|
|
160
|
-
//# sourceMappingURL=packageRoles-e8484d59.cjs.js.map
|