npm package diff
Package: @forge/bundler
Versions: 6.1.4-next.6 - 6.1.4-next.7
Modified: package/out/metadata.js
Index: package/out/metadata.js
===================================================================
--- package/out/metadata.js
+++ package/out/metadata.js
@@ -7,88 +7,101 @@
const parser = tslib_1.__importStar(require("@babel/parser"));
const traverse_1 = tslib_1.__importDefault(require("@babel/traverse"));
const text_1 = require("./text");
const types_1 = require("./types");
-async function getMetadata(logger, files) {
- const metadata = (0, types_1.emptyMetadata)();
- const packageJson = await warnIfFailed(logger, async () => {
+class MetadataCollector {
+ logger;
+ metadata = (0, types_1.emptyMetadata)();
+ constructor(logger) {
+ this.logger = logger;
+ }
+ async processPackageJson() {
try {
await (0, promises_1.access)('package.json');
}
catch {
return undefined;
}
const packageFile = await (0, promises_1.readFile)('package.json', 'utf8');
- return JSON.parse(packageFile);
- });
- if (packageJson?.type === 'module') {
- metadata.esm = true;
+ const packageJson = JSON.parse(packageFile);
+ if (packageJson.type === 'module') {
+ this.metadata.esm = true;
+ }
}
- await Promise.all(files.map((filePath) => warnIfFailed(logger, async () => processFile(metadata, filePath))));
- return metadata;
-}
-exports.getMetadata = getMetadata;
-function packageFromImport(name) {
- const parts = name.split('/');
- if (parts.length === 0 || parts[0] === '') {
- return '';
+ static packageFromImport(name) {
+ const parts = name.split('/');
+ if (parts.length === 0 || parts[0] === '') {
+ return '';
+ }
+ if (parts[0].startsWith('@')) {
+ return `${parts[0]}/${parts[1]}`;
+ }
+ if (parts[0].startsWith('node:')) {
+ return parts[0].substring(5);
+ }
+ return parts[0];
}
- if (parts[0].startsWith('@')) {
- return `${parts[0]}/${parts[1]}`;
+ async processSourceFile(filePath) {
+ const ext = path_1.default.extname(filePath);
+ if (ext.match(/^\.[cm]?jsx?$/)) {
+ this.metadata.jsFiles++;
+ }
+ else if (ext.match(/^\.[cm]?tsx?$/)) {
+ this.metadata.tsFiles++;
+ }
+ else if (ext === '.json') {
+ return;
+ }
+ const source = await (0, promises_1.readFile)(filePath, 'utf8');
+ const ast = parser.parse(source, {
+ sourceType: 'module',
+ plugins: ['typescript', 'jsx']
+ });
+ (0, traverse_1.default)(ast, {
+ ImportDeclaration: ({ node }) => this.processImport(node)
+ });
}
- if (parts[0].startsWith('node:')) {
- return parts[0].substring(5);
- }
- return parts[0];
-}
-async function processFile(metadata, filePath) {
- const ext = path_1.default.extname(filePath);
- if (ext.match(/^\.[cm]?jsx?$/)) {
- metadata.jsFiles++;
- }
- else if (ext.match(/^\.[cm]?tsx?$/)) {
- metadata.tsFiles++;
- }
- else if (ext === '.json') {
- return;
- }
- const source = await (0, promises_1.readFile)(filePath, 'utf8');
- const ast = parser.parse(source, {
- sourceType: 'module',
- plugins: ['typescript', 'jsx']
- });
- (0, traverse_1.default)(ast, {
- ImportDeclaration: ({ node }) => {
- const packageName = packageFromImport(node.source.value);
- metadata.dependencies.add(packageName);
- if (packageName.startsWith('@forge/')) {
- for (const specifier of node.specifiers) {
- let member;
- switch (specifier.type) {
- case 'ImportDefaultSpecifier':
- case 'ImportNamespaceSpecifier':
- member = '*';
- break;
- case 'ImportSpecifier':
- switch (specifier.imported.type) {
- case 'Identifier':
- member = specifier.imported.name;
- break;
- case 'StringLiteral':
- member = specifier.imported.value;
- break;
- }
- }
- metadata.sdkImports.add(`${packageName}.${member}`);
+ processImport(node) {
+ const packageName = MetadataCollector.packageFromImport(node.source.value);
+ this.metadata.dependencies.add(packageName);
+ if (packageName.startsWith('@forge/')) {
+ for (const specifier of node.specifiers) {
+ let member;
+ switch (specifier.type) {
+ case 'ImportDefaultSpecifier':
+ case 'ImportNamespaceSpecifier':
+ member = '*';
+ break;
+ case 'ImportSpecifier':
+ switch (specifier.imported.type) {
+ case 'Identifier':
+ member = specifier.imported.name;
+ break;
+ case 'StringLiteral':
+ member = specifier.imported.value;
+ break;
+ }
}
+ this.metadata.sdkImports.add(`${packageName}.${member}`);
}
}
- });
-}
-async function warnIfFailed(logger, action) {
- try {
- return await action();
}
- catch (error) {
- logger.warn(text_1.Text.metadataFailed(error));
+ async collect({ files }) {
+ await this.warnIfFailed(() => this.processPackageJson());
+ await Promise.all(files.map((filePath) => this.warnIfFailed(() => this.processSourceFile(filePath))));
+ return this.metadata;
}
+ async warnIfFailed(action) {
+ try {
+ return await action();
+ }
+ catch (error) {
+ this.logger.debug(text_1.Text.metadataFailed(error));
+ this.metadata.errors++;
+ }
+ }
}
+async function getMetadata(logger, files) {
+ const collector = new MetadataCollector(logger);
+ return collector.collect({ files });
+}
+exports.getMetadata = getMetadata;
Modified: package/out/types.js
Index: package/out/types.js
===================================================================
--- package/out/types.js
+++ package/out/types.js
@@ -7,9 +7,10 @@
jsFiles: 0,
tsFiles: 0,
esm: false,
dependencies: new Set(),
- sdkImports: new Set()
+ sdkImports: new Set(),
+ errors: 0
};
}
exports.emptyMetadata = emptyMetadata;
function mergeMetadata(metadata1, metadata2) {
@@ -20,9 +21,10 @@
jsFiles: metadata1.jsFiles + metadata2.jsFiles,
tsFiles: metadata1.tsFiles + metadata2.tsFiles,
esm: metadata1.esm || metadata2.esm,
dependencies: new Set([...metadata1.dependencies, ...metadata2.dependencies]),
- sdkImports: new Set([...metadata1.sdkImports, ...metadata2.sdkImports])
+ sdkImports: new Set([...metadata1.sdkImports, ...metadata2.sdkImports]),
+ errors: metadata1.errors + metadata2.errors
};
}
exports.mergeMetadata = mergeMetadata;
class BundlerError extends cli_shared_1.UserError {
Modified: package/package.json
Index: package/package.json
===================================================================
--- package/package.json
+++ package/package.json
@@ -1,7 +1,7 @@
{
"name": "@forge/bundler",
- "version": "6.1.4-next.6",
+ "version": "6.1.4-next.7",
"description": "Default bundler for Forge apps",
"license": "SEE LICENSE IN LICENSE.txt",
"author": "Atlassian",
"main": "out/index.js",
@@ -19,8 +19,9 @@
"@babel/plugin-transform-numeric-separator": "^7.23.4",
"@babel/plugin-transform-optional-chaining": "^7.23.4",
"@babel/plugin-transform-react-jsx": "^7.23.4",
"@babel/traverse": "^7.24.0",
+ "@babel/types": "^7.24.0",
"@forge/cli-shared": "8.5.0-next.6",
"@forge/i18n": "0.0.7",
"@forge/lint": "5.11.0-next.6",
"@forge/manifest": "10.4.0-next.3",
Modified: package/out/metadata.d.ts.map
Index: package/out/metadata.d.ts.map
===================================================================
--- package/out/metadata.d.ts.map
+++ package/out/metadata.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAiB,MAAM,SAAS,CAAC;AASvE,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAqBjG"}
\ No newline at end of file
+{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,eAAe,EAAiB,MAAM,SAAS,CAAC;AAqJzD,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3F"}
\ No newline at end of file
Modified: package/out/runtime.d.ts.map
Index: package/out/runtime.d.ts.map
===================================================================
--- package/out/runtime.d.ts.map
+++ package/out/runtime.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAqD,MAAM,mBAAmB,CAAC;AAGpG,OAAO,EACL,YAAY,EACZ,OAAO,EAMR,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAiB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAMpE,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAoBtD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAsJD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,GACzB,OAAO,CAET"}
\ No newline at end of file
+{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAsB,MAAM,EAAiC,MAAM,mBAAmB,CAAC;AAG5G,OAAO,EAAE,OAAO,EAAkF,MAAM,SAAS,CAAC;AAGlH,OAAO,EAAiB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAMpE,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAoBtD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAsJD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAEpH"}
\ No newline at end of file
Modified: package/out/types.d.ts.map
Index: package/out/types.d.ts.map
===================================================================
--- package/out/types.d.ts.map
+++ package/out/types.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACzB,CAAC;AAEF,wBAAgB,aAAa,IAAI,eAAe,CAQ/C;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,GAAG,eAAe,CAWrG;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,oBAAY,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAEvF,oBAAY,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjD,oBAAY,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC,CAAC;AAEF,oBAAY,gBAAgB,GAAG,WAAW,GACxC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,GAAG;IACzC,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEJ,oBAAY,YAAY,GAAG;IACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,eAAe,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;CAC1G,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,IAAI,IAAI,IAAI,CAAC;CACd;AAED,oBAAY,kBAAkB,GAAG,cAAc,GAAG;IAChD,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,oBAAY,OAAO,GAAG;IACpB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACjF,CAAC;AAEF,qBAAa,YAAa,SAAQ,SAAS;CAAG"}
\ No newline at end of file
+{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,aAAa,IAAI,eAAe,CAS/C;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,GAAG,eAAe,CAYrG;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,oBAAY,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjD,oBAAY,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC,CAAC;AAEF,oBAAY,gBAAgB,GAAG,WAAW,GACxC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,GAAG;IACzC,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEJ,oBAAY,YAAY,GAAG;IACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,eAAe,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;CAC1G,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,IAAI,IAAI,IAAI,CAAC;CACd;AAED,oBAAY,kBAAkB,GAAG,cAAc,GAAG;IAChD,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,oBAAY,OAAO,GAAG;IACpB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACjF,CAAC;AAEF,qBAAa,YAAa,SAAQ,SAAS;CAAG"}
\ No newline at end of file
Modified: package/out/typescript.d.ts.map
Index: package/out/typescript.d.ts.map
===================================================================
--- package/out/typescript.d.ts.map
+++ package/out/typescript.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../src/typescript.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AASlC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAEnB,MAAM,SAAS,CAAC;AAGjB,aAAK,aAAa,GAAG,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AA6B/D,8BAAsB,iBAAkB,YAAW,OAAO;IAC5C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY;gBAApB,MAAM,EAAE,YAAY;IAEnD,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,aAAa;IAwB5E,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWnD,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;cAUhC,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBlG,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IA6BjD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA2DtF"}
\ No newline at end of file
+{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../src/typescript.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIlC,OAAO,EAA4B,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKrE,OAAO,EACL,OAAO,EACP,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAEnB,MAAM,SAAS,CAAC;AAGjB,aAAK,aAAa,GAAG,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AA6B/D,8BAAsB,iBAAkB,YAAW,OAAO;IAC5C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;IAE7C,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,aAAa;IAwB5E,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWnD,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;cAUhC,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBlG,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IA6BjD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA2DtF"}
\ No newline at end of file
Modified: package/out/webpack.d.ts.map
Index: package/out/webpack.d.ts.map
===================================================================
--- package/out/webpack.d.ts.map
+++ package/out/webpack.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"webpack.d.ts","sourceRoot":"","sources":["../src/webpack.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EACL,OAAO,EACP,YAAY,EAEZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,EAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,aAAa,GAAG,QAAQ,CAAC,GAAG,SAAS,GAC7E,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAkChC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAE3E;AAqBD,oBAAY,gBAAgB,GAAG,OAAO,CAAC,aAAa,GAAG;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAEvF,8BAAsB,cAAe,YAAW,OAAO;IACzC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY;gBAApB,MAAM,EAAE,YAAY;cAEnC,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC;IAkBjG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAyB9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,MAAM,EAAE;cA0BtC,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAsB7E,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAE1D,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAsCtF"}
\ No newline at end of file
+{"version":3,"file":"webpack.d.ts","sourceRoot":"","sources":["../src/webpack.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,MAAM,EAA4B,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EACL,OAAO,EAEP,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,EAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,aAAa,GAAG,QAAQ,CAAC,GAAG,SAAS,GAC7E,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAkChC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAE3E;AAqBD,oBAAY,gBAAgB,GAAG,OAAO,CAAC,aAAa,GAAG;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAEvF,8BAAsB,cAAe,YAAW,OAAO;IACzC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;cAE7B,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC;IAkBjG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAyB9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,MAAM,EAAE;cA0BtC,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAsB7E,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAE1D,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAsCtF"}
\ No newline at end of file
Modified: package/CHANGELOG.md
Large diffs are not rendered by default.
Modified: package/out/metadata.d.ts
Index: package/out/metadata.d.ts
===================================================================
--- package/out/metadata.d.ts
+++ package/out/metadata.d.ts
@@ -1,3 +1,4 @@
-import { BundleLogger, BundlerMetadata } from './types';
-export declare function getMetadata(logger: BundleLogger, files: string[]): Promise<BundlerMetadata>;
+import { Logger } from '@forge/cli-shared';
+import { BundlerMetadata } from './types';
+export declare function getMetadata(logger: Logger, files: string[]): Promise<BundlerMetadata>;
//# sourceMappingURL=metadata.d.ts.map
\ No newline at end of file
Modified: package/out/runtime.d.ts
Index: package/out/runtime.d.ts
===================================================================
--- package/out/runtime.d.ts
+++ package/out/runtime.d.ts
@@ -1,7 +1,7 @@
-import { ConfigReader } from '@forge/cli-shared';
-import { BundleLogger, Bundler } from './types';
+import { ConfigReader, Logger } from '@forge/cli-shared';
+import { Bundler } from './types';
import { WrapperProvider } from './wrapper-provider';
export declare const NODE_RUNTIME_CODE_FILE = "__forge__.cjs";
export declare function userCodePath(entryKey: string): string;
-export declare function getNodeBundler(logger: BundleLogger, wrapperProvider: WrapperProvider, configReader: ConfigReader): Bundler;
+export declare function getNodeBundler(logger: Logger, wrapperProvider: WrapperProvider, configReader: ConfigReader): Bundler;
//# sourceMappingURL=runtime.d.ts.map
\ No newline at end of file
Modified: package/out/types.d.ts
Index: package/out/types.d.ts
===================================================================
--- package/out/types.d.ts
+++ package/out/types.d.ts
@@ -1,21 +1,21 @@
-import { I18nResourceBundle, Logger, UserError } from '@forge/cli-shared';
+import { I18nResourceBundle, UserError } from '@forge/cli-shared';
import { Translations } from '@forge/manifest';
export declare type BundlerMetadata = {
modules?: string[];
jsFiles: number;
tsFiles: number;
esm: boolean;
dependencies: Set<string>;
sdkImports: Set<string>;
+ errors: number;
};
export declare function emptyMetadata(): BundlerMetadata;
export declare function mergeMetadata(metadata1: BundlerMetadata, metadata2: BundlerMetadata): BundlerMetadata;
export interface BundlerOutput {
outputDir: string;
metadata?: BundlerMetadata;
}
-export declare type BundleLogger = Pick<Logger, 'trace' | 'debug' | 'info' | 'warn' | 'error'>;
export declare type BundlerWatchMode = 'watch' | 'debug';
export declare type EntryPoint = {
name: string;
path: string;
Modified: package/out/typescript.d.ts
Index: package/out/typescript.d.ts
===================================================================
--- package/out/typescript.d.ts
+++ package/out/typescript.d.ts
@@ -1,13 +1,14 @@
/// <reference types="node" />
/// <reference types="node" />
import { ChildProcessByStdio } from 'child_process';
import { Readable } from 'stream';
-import { Bundler, BundleLogger, BundlerOutput, BundlerArgs, BundlerWatch, BundlerWatchArgs, BundlerWatchOutput } from './types';
+import { Logger } from '@forge/cli-shared';
+import { Bundler, BundlerOutput, BundlerArgs, BundlerWatch, BundlerWatchArgs, BundlerWatchOutput } from './types';
declare type OutputProcess = ChildProcessByStdio<null, Readable, null>;
export declare abstract class TypeScriptBundler implements Bundler {
- protected readonly logger: BundleLogger;
- constructor(logger: BundleLogger);
+ protected readonly logger: Logger;
+ constructor(logger: Logger);
protected runTypeScript(args: BundlerArgs, outputDir: string): OutputProcess;
protected isListedFile(line: string): string | null;
protected isAppFile(line: string): string | null;
protected getResult(args: BundlerArgs, outputDir: string, output?: string): Promise<BundlerOutput>;
Modified: package/out/webpack.d.ts
Index: package/out/webpack.d.ts
===================================================================
--- package/out/webpack.d.ts
+++ package/out/webpack.d.ts
@@ -1,15 +1,16 @@
import webpack from 'webpack';
+import { Logger } from '@forge/cli-shared';
import { CommonOutputOptions } from './config/common';
-import { Bundler, BundleLogger, BundlerOutput, BundlerArgs, BundlerWatch, BundlerWatchArgs, BundlerWatchOutput } from './types';
-export declare function handleWebpackCompilationResult(logger: BundleLogger, err: Error | null | undefined, stats: Pick<webpack.Stats, 'hasErrors' | 'hasWarnings' | 'toJson'> | undefined): asserts stats is webpack.Stats;
+import { Bundler, BundlerOutput, BundlerArgs, BundlerWatch, BundlerWatchArgs, BundlerWatchOutput } from './types';
+export declare function handleWebpackCompilationResult(logger: Logger, err: Error | null | undefined, stats: Pick<webpack.Stats, 'hasErrors' | 'hasWarnings' | 'toJson'> | undefined): asserts stats is webpack.Stats;
export declare function getCompiler(config: webpack.Configuration): webpack.Compiler;
export declare type ConfigWithOutput = webpack.Configuration & {
output: CommonOutputOptions;
};
export declare abstract class WebpackBundler implements Bundler {
- protected readonly logger: BundleLogger;
- constructor(logger: BundleLogger);
+ protected readonly logger: Logger;
+ constructor(logger: Logger);
protected getOutput(config: ConfigWithOutput, stats: webpack.Stats): Promise<BundlerOutput>;
protected isLocalModule(name: string): boolean;
protected localModules(stats: webpack.Stats): string[];
protected runCompiler(config: ConfigWithOutput): Promise<BundlerOutput>;