@backstage/cli 0.13.1-next.1 → 0.14.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/CHANGELOG.md +88 -0
- package/config/eslint.backend.js +1 -12
- package/config/eslint.js +6 -17
- package/config/jest.js +4 -3
- package/config/jestSucraseTransform.js +60 -39
- package/dist/cjs/PackageGraph-d7b9d768.cjs.js +143 -0
- package/dist/cjs/backend-7919a693.cjs.js +36 -0
- package/dist/cjs/build-29fe454d.cjs.js +59 -0
- package/dist/cjs/{build-cda9d14b.cjs.js → build-30d6e823.cjs.js} +9 -4
- package/dist/cjs/build-8fe538f0.cjs.js +173 -0
- package/dist/cjs/{build-a0537ac0.cjs.js → build-ef788e26.cjs.js} +9 -4
- package/dist/cjs/buildBackend-1727e26d.cjs.js +84 -0
- package/dist/cjs/buildWorkspace-cdb5a92d.cjs.js +54 -0
- package/dist/cjs/bump-3e73eb63.cjs.js +348 -0
- package/dist/cjs/{build-0e234c9c.cjs.js → bundle-cfe3be2c.cjs.js} +10 -49
- package/dist/cjs/{bundle-82ebca5c.cjs.js → bundle-f5e5afd4.cjs.js} +16 -11
- package/dist/cjs/{clean-2a744d8e.cjs.js → clean-677131a4.cjs.js} +2 -2
- package/dist/cjs/{config-08b1d0e3.cjs.js → config-147bac17.cjs.js} +3 -3
- package/dist/cjs/{create-3c1059f8.cjs.js → create-95febe68.cjs.js} +4 -4
- package/dist/cjs/createDistWorkspace-59a08943.cjs.js +211 -0
- package/dist/cjs/{createPlugin-98d2404a.cjs.js → createPlugin-fd799616.cjs.js} +4 -4
- package/dist/cjs/{dev-35175ac8.cjs.js → dev-70024fd0.cjs.js} +8 -33
- package/dist/cjs/{diff-0f4d8b16.cjs.js → diff-4cf33d7e.cjs.js} +8 -8
- package/dist/cjs/{docs-1df9fa22.cjs.js → docs-1ce5cd6c.cjs.js} +7 -4
- package/dist/cjs/index-1823ab16.cjs.js +94 -0
- package/dist/cjs/{index-db3186f9.cjs.js → index-2b8588e8.cjs.js} +88 -59
- package/dist/cjs/{index-4fd2a731.cjs.js → index-9879526e.cjs.js} +2 -2
- package/dist/cjs/index-ba0436fb.cjs.js +125 -0
- package/dist/cjs/{info-0c58ae61.cjs.js → info-da6c4aef.cjs.js} +3 -3
- package/dist/cjs/{install-8bc1ba18.cjs.js → install-28e7640d.cjs.js} +4 -4
- package/dist/cjs/lint-985567f6.cjs.js +92 -0
- package/dist/cjs/{lint-9da50914.cjs.js → lint-a9e3c169.cjs.js} +3 -3
- package/dist/cjs/lint-ad2a1c74.cjs.js +35 -0
- package/dist/cjs/{build-f89d7092.cjs.js → oldBuild-a88f7903.cjs.js} +11 -6
- package/dist/cjs/{pack-8ef0a3ba.cjs.js → pack-b252bbb6.cjs.js} +2 -2
- package/dist/cjs/packageRole-5f116d95.cjs.js +54 -0
- package/dist/cjs/packageRoles-f375a99e.cjs.js +158 -0
- package/dist/cjs/packageScripts-890cd7af.cjs.js +97 -0
- package/dist/cjs/{packager-89d7686b.cjs.js → packager-8f82846e.cjs.js} +141 -58
- package/dist/cjs/{packages-fd09251d.cjs.js → packages-572642d7.cjs.js} +5 -4
- package/dist/cjs/parallel-d8e5bcbf.cjs.js +171 -0
- package/dist/cjs/{paths-f273ca03.cjs.js → paths-8e0b151d.cjs.js} +20 -19
- package/dist/cjs/{print-bd48d728.cjs.js → print-b7e68297.cjs.js} +7 -4
- package/dist/cjs/{run-448b5912.cjs.js → run-d3528c59.cjs.js} +2 -2
- package/dist/cjs/{schema-c5b2f512.cjs.js → schema-0d43bb71.cjs.js} +7 -4
- package/dist/cjs/{serve-32362ee1.cjs.js → serve-b7ae013f.cjs.js} +8 -8
- package/dist/cjs/{serve-b11d7c66.cjs.js → serve-cd62a6bb.cjs.js} +9 -9
- package/dist/cjs/{server-114c20ca.cjs.js → server-894abd58.cjs.js} +2 -2
- package/dist/cjs/svgrTemplate-b7a4ee52.cjs.js +21 -0
- package/dist/cjs/{tasks-f57f3a8c.cjs.js → tasks-f55f3d7e.cjs.js} +2 -2
- package/dist/cjs/{testCommand-a0ab3b2f.cjs.js → testCommand-f9b311fb.cjs.js} +11 -4
- package/dist/cjs/{validate-dfd64471.cjs.js → validate-cff0ae61.cjs.js} +7 -4
- package/dist/index.cjs.js +1 -1
- package/package.json +31 -22
- package/templates/default-backend-plugin/package.json.hbs +1 -1
- package/templates/default-plugin/package.json.hbs +1 -1
- package/dist/cjs/PackageGraph-7a0d3a83.cjs.js +0 -73
- package/dist/cjs/buildWorkspace-5494b433.cjs.js +0 -35
- package/dist/cjs/bump-ab6e31e7.cjs.js +0 -240
- package/dist/cjs/index-c868bb2d.cjs.js +0 -106
- package/dist/cjs/lint-f037ffc0.cjs.js +0 -29
- package/dist/cjs/parallel-7e32a8d0.cjs.js +0 -25
- package/dist/cjs/svgrTemplate-f19e974c.cjs.js +0 -25
|
@@ -4,7 +4,7 @@ var fs = require('fs-extra');
|
|
|
4
4
|
var rollup = require('rollup');
|
|
5
5
|
var chalk = require('chalk');
|
|
6
6
|
var path = require('path');
|
|
7
|
-
var index = require('./index-
|
|
7
|
+
var index = require('./index-2b8588e8.cjs.js');
|
|
8
8
|
var peerDepsExternal = require('rollup-plugin-peer-deps-external');
|
|
9
9
|
var commonjs = require('@rollup/plugin-commonjs');
|
|
10
10
|
var resolve = require('@rollup/plugin-node-resolve');
|
|
@@ -15,7 +15,9 @@ var dts = require('rollup-plugin-dts');
|
|
|
15
15
|
var json = require('@rollup/plugin-json');
|
|
16
16
|
var yaml = require('@rollup/plugin-yaml');
|
|
17
17
|
var rollupPluginutils = require('rollup-pluginutils');
|
|
18
|
-
var svgrTemplate = require('./svgrTemplate-
|
|
18
|
+
var svgrTemplate = require('./svgrTemplate-b7a4ee52.cjs.js');
|
|
19
|
+
var parallel = require('./parallel-d8e5bcbf.cjs.js');
|
|
20
|
+
var packageRoles = require('./packageRoles-f375a99e.cjs.js');
|
|
19
21
|
|
|
20
22
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
23
|
|
|
@@ -96,13 +98,26 @@ var Output = /* @__PURE__ */ ((Output2) => {
|
|
|
96
98
|
})(Output || {});
|
|
97
99
|
|
|
98
100
|
async function makeRollupConfigs(options) {
|
|
101
|
+
var _a;
|
|
99
102
|
const configs = new Array();
|
|
103
|
+
const targetDir = (_a = options.targetDir) != null ? _a : index.paths.targetDir;
|
|
104
|
+
const onwarn = ({ code, message }) => {
|
|
105
|
+
if (code === "EMPTY_BUNDLE") {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
if (options.logPrefix) {
|
|
109
|
+
console.log(options.logPrefix + message);
|
|
110
|
+
} else {
|
|
111
|
+
console.log(message);
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
const distDir = path.resolve(targetDir, "dist");
|
|
100
115
|
if (options.outputs.has(Output.cjs) || options.outputs.has(Output.esm)) {
|
|
101
116
|
const output = new Array();
|
|
102
117
|
const mainFields = ["module", "main"];
|
|
103
118
|
if (options.outputs.has(Output.cjs)) {
|
|
104
119
|
output.push({
|
|
105
|
-
dir:
|
|
120
|
+
dir: distDir,
|
|
106
121
|
entryFileNames: "index.cjs.js",
|
|
107
122
|
chunkFileNames: "cjs/[name]-[hash].cjs.js",
|
|
108
123
|
format: "commonjs",
|
|
@@ -111,7 +126,7 @@ async function makeRollupConfigs(options) {
|
|
|
111
126
|
}
|
|
112
127
|
if (options.outputs.has(Output.esm)) {
|
|
113
128
|
output.push({
|
|
114
|
-
dir:
|
|
129
|
+
dir: distDir,
|
|
115
130
|
entryFileNames: "index.esm.js",
|
|
116
131
|
chunkFileNames: "esm/[name]-[hash].esm.js",
|
|
117
132
|
format: "module",
|
|
@@ -120,12 +135,14 @@ async function makeRollupConfigs(options) {
|
|
|
120
135
|
mainFields.unshift("browser");
|
|
121
136
|
}
|
|
122
137
|
configs.push({
|
|
123
|
-
input: "src/index.ts",
|
|
138
|
+
input: path.resolve(targetDir, "src/index.ts"),
|
|
124
139
|
output,
|
|
140
|
+
onwarn,
|
|
125
141
|
preserveEntrySignatures: "strict",
|
|
126
142
|
external: require("module").builtinModules,
|
|
127
143
|
plugins: [
|
|
128
144
|
peerDepsExternal__default["default"]({
|
|
145
|
+
packageJsonPath: path.resolve(targetDir, "package.json"),
|
|
129
146
|
includeDependencies: true
|
|
130
147
|
}),
|
|
131
148
|
resolve__default["default"]({ mainFields }),
|
|
@@ -162,92 +179,128 @@ async function makeRollupConfigs(options) {
|
|
|
162
179
|
});
|
|
163
180
|
}
|
|
164
181
|
if (options.outputs.has(Output.types) && !options.useApiExtractor) {
|
|
165
|
-
const typesInput = index.paths.resolveTargetRoot("dist-types", path.relative(index.paths.targetRoot,
|
|
182
|
+
const typesInput = index.paths.resolveTargetRoot("dist-types", path.relative(index.paths.targetRoot, targetDir), "src/index.d.ts");
|
|
166
183
|
const declarationsExist = await fs__default["default"].pathExists(typesInput);
|
|
167
184
|
if (!declarationsExist) {
|
|
168
|
-
const path$1 = path.relative(
|
|
185
|
+
const path$1 = path.relative(targetDir, typesInput);
|
|
169
186
|
throw new Error(`No declaration files found at ${path$1}, be sure to run ${chalk__default["default"].bgRed.white("yarn tsc")} to generate .d.ts files before packaging`);
|
|
170
187
|
}
|
|
171
188
|
configs.push({
|
|
172
189
|
input: typesInput,
|
|
173
190
|
output: {
|
|
174
|
-
file: "
|
|
191
|
+
file: path.resolve(distDir, "index.d.ts"),
|
|
175
192
|
format: "es"
|
|
176
193
|
},
|
|
194
|
+
onwarn,
|
|
177
195
|
plugins: [dts__default["default"]()]
|
|
178
196
|
});
|
|
179
197
|
}
|
|
180
198
|
return configs;
|
|
181
199
|
}
|
|
182
200
|
|
|
183
|
-
|
|
184
|
-
let apiExtractor;
|
|
185
|
-
function prepareApiExtractor() {
|
|
186
|
-
if (apiExtractor) {
|
|
187
|
-
return apiExtractor;
|
|
188
|
-
}
|
|
201
|
+
async function buildTypeDefinitionsWorker(workerData, sendMessage) {
|
|
189
202
|
try {
|
|
190
|
-
|
|
203
|
+
require("@microsoft/api-extractor");
|
|
191
204
|
} catch (error) {
|
|
192
205
|
throw new Error("Failed to resolve @microsoft/api-extractor, it must best installed as a dependency of your project in order to use experimental type builds");
|
|
193
206
|
}
|
|
207
|
+
const { dirname } = require("path");
|
|
208
|
+
const { entryPoints, workerConfigs, typescriptCompilerFolder } = workerData;
|
|
209
|
+
const apiExtractor = require("@microsoft/api-extractor");
|
|
210
|
+
const { Extractor, ExtractorConfig, CompilerState } = apiExtractor;
|
|
194
211
|
const {
|
|
195
212
|
PackageJsonLookup
|
|
196
213
|
} = require("@rushstack/node-core-library/lib/PackageJsonLookup");
|
|
197
214
|
const old = PackageJsonLookup.prototype.tryGetPackageJsonFilePathFor;
|
|
198
|
-
PackageJsonLookup.prototype.tryGetPackageJsonFilePathFor = function tryGetPackageJsonFilePathForPatch(path
|
|
199
|
-
if (path
|
|
215
|
+
PackageJsonLookup.prototype.tryGetPackageJsonFilePathFor = function tryGetPackageJsonFilePathForPatch(path) {
|
|
216
|
+
if (path.includes("@material-ui") && !dirname(path).endsWith("@material-ui")) {
|
|
200
217
|
return void 0;
|
|
201
218
|
}
|
|
202
|
-
return old.call(this, path
|
|
219
|
+
return old.call(this, path);
|
|
203
220
|
};
|
|
204
|
-
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
const
|
|
213
|
-
|
|
221
|
+
let compilerState;
|
|
222
|
+
for (const { extractorOptions, targetTypesDir } of workerConfigs) {
|
|
223
|
+
const extractorConfig = ExtractorConfig.prepare(extractorOptions);
|
|
224
|
+
if (!compilerState) {
|
|
225
|
+
compilerState = CompilerState.create(extractorConfig, {
|
|
226
|
+
additionalEntryPoints: entryPoints
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
const extractorResult = Extractor.invoke(extractorConfig, {
|
|
230
|
+
compilerState,
|
|
231
|
+
localBuild: false,
|
|
232
|
+
typescriptCompilerFolder,
|
|
233
|
+
showVerboseMessages: false,
|
|
234
|
+
showDiagnostics: false,
|
|
235
|
+
messageCallback: (message) => {
|
|
236
|
+
message.handled = true;
|
|
237
|
+
sendMessage({ message, targetTypesDir });
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
if (!extractorResult.succeeded) {
|
|
241
|
+
throw new Error(`Type definition build completed with ${extractorResult.errorCount} errors and ${extractorResult.warningCount} warnings`);
|
|
242
|
+
}
|
|
214
243
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
const ignoredMessages = /* @__PURE__ */ new Set(["tsdoc-undefined-tag", "ae-forgotten-export"]);
|
|
247
|
+
async function buildTypeDefinitions(targetDirs = [index.paths.targetDir]) {
|
|
248
|
+
const packageDirs = targetDirs.map((dir) => path.relative(index.paths.targetRoot, dir));
|
|
249
|
+
const entryPoints = await Promise.all(packageDirs.map(async (dir) => {
|
|
250
|
+
const entryPoint = index.paths.resolveTargetRoot("dist-types", dir, "src/index.d.ts");
|
|
251
|
+
const declarationsExist = await fs__default["default"].pathExists(entryPoint);
|
|
252
|
+
if (!declarationsExist) {
|
|
253
|
+
throw new Error(`No declaration files found at ${entryPoint}, be sure to run ${chalk__default["default"].bgRed.white("yarn tsc")} to generate .d.ts files before packaging`);
|
|
254
|
+
}
|
|
255
|
+
return entryPoint;
|
|
256
|
+
}));
|
|
257
|
+
const workerConfigs = packageDirs.map((packageDir) => {
|
|
258
|
+
const targetDir = index.paths.resolveTargetRoot(packageDir);
|
|
259
|
+
const targetTypesDir = index.paths.resolveTargetRoot("dist-types", packageDir);
|
|
260
|
+
const extractorOptions = {
|
|
261
|
+
configObject: {
|
|
262
|
+
mainEntryPointFilePath: path.resolve(targetTypesDir, "src/index.d.ts"),
|
|
263
|
+
bundledPackages: [],
|
|
264
|
+
compiler: {
|
|
265
|
+
skipLibCheck: true,
|
|
266
|
+
tsconfigFilePath: index.paths.resolveTargetRoot("tsconfig.json")
|
|
267
|
+
},
|
|
268
|
+
dtsRollup: {
|
|
269
|
+
enabled: true,
|
|
270
|
+
untrimmedFilePath: path.resolve(targetDir, "dist/index.alpha.d.ts"),
|
|
271
|
+
betaTrimmedFilePath: path.resolve(targetDir, "dist/index.beta.d.ts"),
|
|
272
|
+
publicTrimmedFilePath: path.resolve(targetDir, "dist/index.d.ts")
|
|
273
|
+
},
|
|
274
|
+
newlineKind: "lf",
|
|
275
|
+
projectFolder: targetDir
|
|
228
276
|
},
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
packageJsonFullPath: index.paths.resolveTarget("package.json")
|
|
277
|
+
configObjectFullPath: targetDir,
|
|
278
|
+
packageJsonFullPath: path.resolve(targetDir, "package.json")
|
|
279
|
+
};
|
|
280
|
+
return { extractorOptions, targetTypesDir };
|
|
234
281
|
});
|
|
235
282
|
const typescriptDir = index.paths.resolveTargetRoot("node_modules/typescript");
|
|
236
283
|
const hasTypescript = await fs__default["default"].pathExists(typescriptDir);
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
284
|
+
const typescriptCompilerFolder = hasTypescript ? typescriptDir : void 0;
|
|
285
|
+
await parallel.runWorkerThreads({
|
|
286
|
+
threadCount: 1,
|
|
287
|
+
workerData: {
|
|
288
|
+
entryPoints,
|
|
289
|
+
workerConfigs,
|
|
290
|
+
typescriptCompilerFolder
|
|
291
|
+
},
|
|
292
|
+
worker: buildTypeDefinitionsWorker,
|
|
293
|
+
onMessage: ({
|
|
294
|
+
message,
|
|
295
|
+
targetTypesDir
|
|
296
|
+
}) => {
|
|
244
297
|
if (ignoredMessages.has(message.messageId)) {
|
|
245
298
|
return;
|
|
246
299
|
}
|
|
247
300
|
let text = `${message.text} (${message.messageId})`;
|
|
248
301
|
if (message.sourceFilePath) {
|
|
249
302
|
text += " at ";
|
|
250
|
-
text += path.relative(
|
|
303
|
+
text += path.relative(targetTypesDir, message.sourceFilePath);
|
|
251
304
|
if (message.sourceFileLine) {
|
|
252
305
|
text += `:${message.sourceFileLine}`;
|
|
253
306
|
if (message.sourceFileColumn) {
|
|
@@ -264,9 +317,6 @@ async function buildTypeDefinitions() {
|
|
|
264
317
|
}
|
|
265
318
|
}
|
|
266
319
|
});
|
|
267
|
-
if (!extractorResult.succeeded) {
|
|
268
|
-
throw new Error(`Type definition build completed with ${extractorResult.errorCount} errors and ${extractorResult.warningCount} warnings`);
|
|
269
|
-
}
|
|
270
320
|
}
|
|
271
321
|
|
|
272
322
|
function formatErrorMessage(error) {
|
|
@@ -346,7 +396,40 @@ const buildPackage = async (options) => {
|
|
|
346
396
|
}
|
|
347
397
|
await Promise.all(buildTasks);
|
|
348
398
|
};
|
|
399
|
+
const buildPackages = async (options) => {
|
|
400
|
+
if (options.some((opt) => !opt.targetDir)) {
|
|
401
|
+
throw new Error("targetDir must be set for all build options");
|
|
402
|
+
}
|
|
403
|
+
const rollupConfigs = await Promise.all(options.map(makeRollupConfigs));
|
|
404
|
+
await Promise.all(options.map(({ targetDir }) => fs__default["default"].remove(path.resolve(targetDir, "dist"))));
|
|
405
|
+
const buildTasks = rollupConfigs.flat().map((opts) => () => rollupBuild(opts));
|
|
406
|
+
const typeDefinitionTargetDirs = options.filter(({ outputs, useApiExtractor }) => outputs.has(Output.types) && useApiExtractor).map((_) => _.targetDir);
|
|
407
|
+
if (typeDefinitionTargetDirs.length > 0) {
|
|
408
|
+
buildTasks.unshift(() => buildTypeDefinitions(typeDefinitionTargetDirs));
|
|
409
|
+
}
|
|
410
|
+
await parallel.runParallelWorkers({
|
|
411
|
+
items: buildTasks,
|
|
412
|
+
worker: async (task) => task()
|
|
413
|
+
});
|
|
414
|
+
};
|
|
415
|
+
function getOutputsForRole(role) {
|
|
416
|
+
const outputs = /* @__PURE__ */ new Set();
|
|
417
|
+
for (const output of packageRoles.getRoleInfo(role).output) {
|
|
418
|
+
if (output === "cjs") {
|
|
419
|
+
outputs.add(Output.cjs);
|
|
420
|
+
}
|
|
421
|
+
if (output === "esm") {
|
|
422
|
+
outputs.add(Output.esm);
|
|
423
|
+
}
|
|
424
|
+
if (output === "types") {
|
|
425
|
+
outputs.add(Output.types);
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
return outputs;
|
|
429
|
+
}
|
|
349
430
|
|
|
350
431
|
exports.Output = Output;
|
|
351
432
|
exports.buildPackage = buildPackage;
|
|
352
|
-
|
|
433
|
+
exports.buildPackages = buildPackages;
|
|
434
|
+
exports.getOutputsForRole = getOutputsForRole;
|
|
435
|
+
//# sourceMappingURL=packager-8f82846e.cjs.js.map
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var minimatch = require('minimatch');
|
|
4
4
|
var getPackages = require('@manypkg/get-packages');
|
|
5
|
-
var run = require('./run-
|
|
6
|
-
var index = require('./index-
|
|
5
|
+
var run = require('./run-d3528c59.cjs.js');
|
|
6
|
+
var index = require('./index-2b8588e8.cjs.js');
|
|
7
7
|
|
|
8
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
9
|
|
|
@@ -28,7 +28,8 @@ async function fetchPackageInfo(name) {
|
|
|
28
28
|
}
|
|
29
29
|
async function mapDependencies(targetDir, pattern) {
|
|
30
30
|
var _a;
|
|
31
|
-
const { packages } = await getPackages.getPackages(targetDir);
|
|
31
|
+
const { packages, root } = await getPackages.getPackages(targetDir);
|
|
32
|
+
packages.push(root);
|
|
32
33
|
const dependencyMap = /* @__PURE__ */ new Map();
|
|
33
34
|
for (const pkg of packages) {
|
|
34
35
|
const deps = DEP_TYPES.flatMap((t) => {
|
|
@@ -50,4 +51,4 @@ async function mapDependencies(targetDir, pattern) {
|
|
|
50
51
|
|
|
51
52
|
exports.fetchPackageInfo = fetchPackageInfo;
|
|
52
53
|
exports.mapDependencies = mapDependencies;
|
|
53
|
-
//# sourceMappingURL=packages-
|
|
54
|
+
//# sourceMappingURL=packages-572642d7.cjs.js.map
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var os = require('os');
|
|
4
|
+
var worker_threads = require('worker_threads');
|
|
5
|
+
|
|
6
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
7
|
+
|
|
8
|
+
var os__default = /*#__PURE__*/_interopDefaultLegacy(os);
|
|
9
|
+
|
|
10
|
+
const defaultParallelism = Math.ceil(os__default["default"].cpus().length / 2);
|
|
11
|
+
const PARALLEL_ENV_VAR = "BACKSTAGE_CLI_BUILD_PARALLEL";
|
|
12
|
+
function parseParallelismOption(parallel) {
|
|
13
|
+
if (parallel === void 0 || parallel === null) {
|
|
14
|
+
return defaultParallelism;
|
|
15
|
+
} else if (typeof parallel === "boolean") {
|
|
16
|
+
return parallel ? defaultParallelism : 1;
|
|
17
|
+
} else if (typeof parallel === "number" && Number.isInteger(parallel)) {
|
|
18
|
+
if (parallel < 1) {
|
|
19
|
+
return 1;
|
|
20
|
+
}
|
|
21
|
+
return parallel;
|
|
22
|
+
} else if (typeof parallel === "string") {
|
|
23
|
+
if (parallel === "true") {
|
|
24
|
+
return parseParallelismOption(true);
|
|
25
|
+
} else if (parallel === "false") {
|
|
26
|
+
return parseParallelismOption(false);
|
|
27
|
+
}
|
|
28
|
+
const parsed = Number(parallel);
|
|
29
|
+
if (Number.isInteger(parsed)) {
|
|
30
|
+
return parseParallelismOption(parsed);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
throw Error(`Parallel option value '${parallel}' is not a boolean or integer`);
|
|
34
|
+
}
|
|
35
|
+
function getEnvironmentParallelism() {
|
|
36
|
+
return parseParallelismOption(process.env[PARALLEL_ENV_VAR]);
|
|
37
|
+
}
|
|
38
|
+
async function runParallelWorkers(options) {
|
|
39
|
+
const { parallelismFactor = 1, parallelismSetting, items, worker } = options;
|
|
40
|
+
const parallelism = parallelismSetting ? parseParallelismOption(parallelismSetting) : getEnvironmentParallelism();
|
|
41
|
+
const sharedIterator = items[Symbol.iterator]();
|
|
42
|
+
const sharedIterable = {
|
|
43
|
+
[Symbol.iterator]: () => sharedIterator
|
|
44
|
+
};
|
|
45
|
+
const workerCount = Math.max(Math.floor(parallelismFactor * parallelism), 1);
|
|
46
|
+
return Promise.all(Array(workerCount).fill(0).map(async () => {
|
|
47
|
+
for (const value of sharedIterable) {
|
|
48
|
+
await worker(value);
|
|
49
|
+
}
|
|
50
|
+
}));
|
|
51
|
+
}
|
|
52
|
+
async function runWorkerQueueThreads(options) {
|
|
53
|
+
const items = Array.from(options.items);
|
|
54
|
+
const {
|
|
55
|
+
workerFactory,
|
|
56
|
+
workerData,
|
|
57
|
+
threadCount = Math.min(getEnvironmentParallelism(), items.length)
|
|
58
|
+
} = options;
|
|
59
|
+
const iterator = items[Symbol.iterator]();
|
|
60
|
+
const results = new Array();
|
|
61
|
+
let itemIndex = 0;
|
|
62
|
+
await Promise.all(Array(threadCount).fill(0).map(async () => {
|
|
63
|
+
const thread = new worker_threads.Worker(`(${workerQueueThread})(${workerFactory})`, {
|
|
64
|
+
eval: true,
|
|
65
|
+
workerData
|
|
66
|
+
});
|
|
67
|
+
return new Promise((resolve, reject) => {
|
|
68
|
+
thread.on("message", (message) => {
|
|
69
|
+
if (message.type === "start" || message.type === "result") {
|
|
70
|
+
if (message.type === "result") {
|
|
71
|
+
results[message.index] = message.result;
|
|
72
|
+
}
|
|
73
|
+
const { value, done } = iterator.next();
|
|
74
|
+
if (done) {
|
|
75
|
+
thread.postMessage({ type: "done" });
|
|
76
|
+
} else {
|
|
77
|
+
thread.postMessage({
|
|
78
|
+
type: "item",
|
|
79
|
+
index: itemIndex,
|
|
80
|
+
item: value
|
|
81
|
+
});
|
|
82
|
+
itemIndex += 1;
|
|
83
|
+
}
|
|
84
|
+
} else if (message.type === "error") {
|
|
85
|
+
const error = new Error(message.error.message);
|
|
86
|
+
error.name = message.error.name;
|
|
87
|
+
error.stack = message.error.stack;
|
|
88
|
+
reject(error);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
thread.on("error", reject);
|
|
92
|
+
thread.on("exit", (code) => {
|
|
93
|
+
if (code !== 0) {
|
|
94
|
+
reject(new Error(`Worker thread exited with code ${code}`));
|
|
95
|
+
} else {
|
|
96
|
+
resolve();
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
}));
|
|
101
|
+
return results;
|
|
102
|
+
}
|
|
103
|
+
function workerQueueThread(workerFuncFactory) {
|
|
104
|
+
const { parentPort, workerData } = require("worker_threads");
|
|
105
|
+
Promise.resolve().then(() => workerFuncFactory(workerData)).then((workerFunc) => {
|
|
106
|
+
parentPort.on("message", async (message) => {
|
|
107
|
+
if (message.type === "done") {
|
|
108
|
+
parentPort.close();
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (message.type === "item") {
|
|
112
|
+
try {
|
|
113
|
+
const result = await workerFunc(message.item);
|
|
114
|
+
parentPort.postMessage({
|
|
115
|
+
type: "result",
|
|
116
|
+
index: message.index,
|
|
117
|
+
result
|
|
118
|
+
});
|
|
119
|
+
} catch (error) {
|
|
120
|
+
parentPort.postMessage({ type: "error", error });
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
parentPort.postMessage({ type: "start" });
|
|
125
|
+
}, (error) => parentPort.postMessage({ type: "error", error }));
|
|
126
|
+
}
|
|
127
|
+
async function runWorkerThreads(options) {
|
|
128
|
+
const { worker, workerData, threadCount = 1, onMessage } = options;
|
|
129
|
+
return Promise.all(Array(threadCount).fill(0).map(async () => {
|
|
130
|
+
const thread = new worker_threads.Worker(`(${workerThread})(${worker})`, {
|
|
131
|
+
eval: true,
|
|
132
|
+
workerData
|
|
133
|
+
});
|
|
134
|
+
return new Promise((resolve, reject) => {
|
|
135
|
+
thread.on("message", (message) => {
|
|
136
|
+
if (message.type === "result") {
|
|
137
|
+
resolve(message.result);
|
|
138
|
+
} else if (message.type === "error") {
|
|
139
|
+
reject(message.error);
|
|
140
|
+
} else if (message.type === "message") {
|
|
141
|
+
onMessage == null ? void 0 : onMessage(message.message);
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
thread.on("error", reject);
|
|
145
|
+
thread.on("exit", (code) => {
|
|
146
|
+
reject(new Error(`Unexpected worker thread exit with code ${code}`));
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
}));
|
|
150
|
+
}
|
|
151
|
+
function workerThread(workerFunc) {
|
|
152
|
+
const { parentPort, workerData } = require("worker_threads");
|
|
153
|
+
const sendMessage = (message) => {
|
|
154
|
+
parentPort.postMessage({ type: "message", message });
|
|
155
|
+
};
|
|
156
|
+
workerFunc(workerData, sendMessage).then((result) => {
|
|
157
|
+
parentPort.postMessage({
|
|
158
|
+
type: "result",
|
|
159
|
+
index: 0,
|
|
160
|
+
result
|
|
161
|
+
});
|
|
162
|
+
}, (error) => {
|
|
163
|
+
parentPort.postMessage({ type: "error", error });
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
exports.getEnvironmentParallelism = getEnvironmentParallelism;
|
|
168
|
+
exports.runParallelWorkers = runParallelWorkers;
|
|
169
|
+
exports.runWorkerQueueThreads = runWorkerQueueThreads;
|
|
170
|
+
exports.runWorkerThreads = runWorkerThreads;
|
|
171
|
+
//# sourceMappingURL=parallel-d8e5bcbf.cjs.js.map
|
|
@@ -12,9 +12,9 @@ var nodeExternals = require('webpack-node-externals');
|
|
|
12
12
|
var cliCommon = require('@backstage/cli-common');
|
|
13
13
|
var getPackages = require('@manypkg/get-packages');
|
|
14
14
|
var MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
|
15
|
-
var svgrTemplate = require('./svgrTemplate-
|
|
16
|
-
var index = require('./index-
|
|
17
|
-
var run = require('./run-
|
|
15
|
+
var svgrTemplate = require('./svgrTemplate-b7a4ee52.cjs.js');
|
|
16
|
+
var index = require('./index-2b8588e8.cjs.js');
|
|
17
|
+
var run = require('./run-d3528c59.cjs.js');
|
|
18
18
|
var ESLintPlugin = require('eslint-webpack-plugin');
|
|
19
19
|
var pickBy = require('lodash/pickBy');
|
|
20
20
|
|
|
@@ -38,7 +38,8 @@ const optimization = (options) => {
|
|
|
38
38
|
minimize: !isDev,
|
|
39
39
|
minimizer: [
|
|
40
40
|
new ESBuildMinifyPlugin({
|
|
41
|
-
target: "es2019"
|
|
41
|
+
target: "es2019",
|
|
42
|
+
format: "iife"
|
|
42
43
|
})
|
|
43
44
|
],
|
|
44
45
|
runtimeChunk: "single",
|
|
@@ -262,7 +263,7 @@ async function createConfig(paths, options) {
|
|
|
262
263
|
const validBaseUrl = new URL(baseUrl);
|
|
263
264
|
if (checksEnabled) {
|
|
264
265
|
plugins.push(new ForkTsCheckerWebpackPlugin__default["default"]({
|
|
265
|
-
typescript: { configFile: paths.targetTsConfig }
|
|
266
|
+
typescript: { configFile: paths.targetTsConfig, memoryLimit: 4096 }
|
|
266
267
|
}), new ESLintPlugin__default["default"]({
|
|
267
268
|
context: paths.targetPath,
|
|
268
269
|
files: ["**", "!**/__tests__/**", "!**/?(*.)(spec|test).*"]
|
|
@@ -473,40 +474,40 @@ function nodeExternalsWithResolve(options) {
|
|
|
473
474
|
}
|
|
474
475
|
|
|
475
476
|
function resolveBundlingPaths(options) {
|
|
476
|
-
const { entry } = options;
|
|
477
|
+
const { entry, targetDir = index.paths.targetDir } = options;
|
|
477
478
|
const resolveTargetModule = (pathString) => {
|
|
478
479
|
for (const ext of ["mjs", "js", "ts", "tsx", "jsx"]) {
|
|
479
|
-
const filePath =
|
|
480
|
+
const filePath = path.resolve(targetDir, `${pathString}.${ext}`);
|
|
480
481
|
if (fs__default["default"].pathExistsSync(filePath)) {
|
|
481
482
|
return filePath;
|
|
482
483
|
}
|
|
483
484
|
}
|
|
484
|
-
return
|
|
485
|
+
return path.resolve(targetDir, `${pathString}.js`);
|
|
485
486
|
};
|
|
486
487
|
let targetPublic = void 0;
|
|
487
|
-
let targetHtml =
|
|
488
|
+
let targetHtml = path.resolve(targetDir, "public/index.html");
|
|
488
489
|
if (fs__default["default"].pathExistsSync(targetHtml)) {
|
|
489
|
-
targetPublic =
|
|
490
|
+
targetPublic = path.resolve(targetDir, "public");
|
|
490
491
|
} else {
|
|
491
|
-
targetHtml =
|
|
492
|
+
targetHtml = path.resolve(targetDir, `${entry}.html`);
|
|
492
493
|
if (!fs__default["default"].pathExistsSync(targetHtml)) {
|
|
493
494
|
targetHtml = index.paths.resolveOwn("templates/serve_index.html");
|
|
494
495
|
}
|
|
495
496
|
}
|
|
496
|
-
const targetRunFile =
|
|
497
|
+
const targetRunFile = path.resolve(targetDir, "src/run.ts");
|
|
497
498
|
const runFileExists = fs__default["default"].pathExistsSync(targetRunFile);
|
|
498
499
|
return {
|
|
499
500
|
targetHtml,
|
|
500
501
|
targetPublic,
|
|
501
|
-
targetPath:
|
|
502
|
+
targetPath: path.resolve(targetDir, "."),
|
|
502
503
|
targetRunFile: runFileExists ? targetRunFile : void 0,
|
|
503
|
-
targetDist:
|
|
504
|
-
targetAssets:
|
|
505
|
-
targetSrc:
|
|
506
|
-
targetDev:
|
|
504
|
+
targetDist: path.resolve(targetDir, "dist"),
|
|
505
|
+
targetAssets: path.resolve(targetDir, "assets"),
|
|
506
|
+
targetSrc: path.resolve(targetDir, "src"),
|
|
507
|
+
targetDev: path.resolve(targetDir, "dev"),
|
|
507
508
|
targetEntry: resolveTargetModule(entry),
|
|
508
509
|
targetTsConfig: index.paths.resolveTargetRoot("tsconfig.json"),
|
|
509
|
-
targetPackageJson:
|
|
510
|
+
targetPackageJson: path.resolve(targetDir, "package.json"),
|
|
510
511
|
rootNodeModules: index.paths.resolveTargetRoot("node_modules"),
|
|
511
512
|
root: index.paths.targetRoot
|
|
512
513
|
};
|
|
@@ -516,4 +517,4 @@ exports.createBackendConfig = createBackendConfig;
|
|
|
516
517
|
exports.createConfig = createConfig;
|
|
517
518
|
exports.resolveBaseUrl = resolveBaseUrl;
|
|
518
519
|
exports.resolveBundlingPaths = resolveBundlingPaths;
|
|
519
|
-
//# sourceMappingURL=paths-
|
|
520
|
+
//# sourceMappingURL=paths-8e0b151d.cjs.js.map
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var yaml = require('yaml');
|
|
4
4
|
var config$1 = require('@backstage/config');
|
|
5
|
-
var config = require('./config-
|
|
5
|
+
var config = require('./config-147bac17.cjs.js');
|
|
6
6
|
require('@backstage/config-loader');
|
|
7
|
-
require('./index-
|
|
7
|
+
require('./index-2b8588e8.cjs.js');
|
|
8
8
|
require('commander');
|
|
9
9
|
require('chalk');
|
|
10
10
|
require('fs-extra');
|
|
@@ -13,7 +13,10 @@ require('@backstage/cli-common');
|
|
|
13
13
|
require('@backstage/config/package.json');
|
|
14
14
|
require('@backstage/errors');
|
|
15
15
|
require('@manypkg/get-packages');
|
|
16
|
-
require('./PackageGraph-
|
|
16
|
+
require('./PackageGraph-d7b9d768.cjs.js');
|
|
17
|
+
require('path');
|
|
18
|
+
require('child_process');
|
|
19
|
+
require('util');
|
|
17
20
|
|
|
18
21
|
var print = async (cmd) => {
|
|
19
22
|
const { schema, appConfigs } = await config.loadCliConfig({
|
|
@@ -59,4 +62,4 @@ function serializeConfigData(appConfigs, schema, visibility) {
|
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
exports["default"] = print;
|
|
62
|
-
//# sourceMappingURL=print-
|
|
65
|
+
//# sourceMappingURL=print-b7e68297.cjs.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var child_process = require('child_process');
|
|
4
|
-
var index = require('./index-
|
|
4
|
+
var index = require('./index-2b8588e8.cjs.js');
|
|
5
5
|
var util = require('util');
|
|
6
6
|
var errors = require('@backstage/errors');
|
|
7
7
|
|
|
@@ -78,4 +78,4 @@ async function waitForExit(child, name) {
|
|
|
78
78
|
exports.run = run;
|
|
79
79
|
exports.runCheck = runCheck;
|
|
80
80
|
exports.runPlain = runPlain;
|
|
81
|
-
//# sourceMappingURL=run-
|
|
81
|
+
//# sourceMappingURL=run-d3528c59.cjs.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var yaml = require('yaml');
|
|
4
|
-
var config = require('./config-
|
|
4
|
+
var config = require('./config-147bac17.cjs.js');
|
|
5
5
|
var configLoader = require('@backstage/config-loader');
|
|
6
6
|
require('@backstage/config');
|
|
7
|
-
require('./index-
|
|
7
|
+
require('./index-2b8588e8.cjs.js');
|
|
8
8
|
require('commander');
|
|
9
9
|
require('chalk');
|
|
10
10
|
require('fs-extra');
|
|
@@ -13,7 +13,10 @@ require('@backstage/cli-common');
|
|
|
13
13
|
require('@backstage/config/package.json');
|
|
14
14
|
require('@backstage/errors');
|
|
15
15
|
require('@manypkg/get-packages');
|
|
16
|
-
require('./PackageGraph-
|
|
16
|
+
require('./PackageGraph-d7b9d768.cjs.js');
|
|
17
|
+
require('path');
|
|
18
|
+
require('child_process');
|
|
19
|
+
require('util');
|
|
17
20
|
|
|
18
21
|
var schema = async (cmd) => {
|
|
19
22
|
const { schema } = await config.loadCliConfig({
|
|
@@ -34,4 +37,4 @@ var schema = async (cmd) => {
|
|
|
34
37
|
};
|
|
35
38
|
|
|
36
39
|
exports["default"] = schema;
|
|
37
|
-
//# sourceMappingURL=schema-
|
|
40
|
+
//# sourceMappingURL=schema-0d43bb71.cjs.js.map
|