@trackunit/iris-app-sdk-rspack 1.7.25 → 1.7.28
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
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
## 1.7.28 (2025-10-10)
|
|
2
|
+
|
|
3
|
+
### 🧱 Updated Dependencies
|
|
4
|
+
|
|
5
|
+
- Updated iris-app-webpack-plugin to 1.7.28
|
|
6
|
+
|
|
7
|
+
## 1.7.27 (2025-10-10)
|
|
8
|
+
|
|
9
|
+
### 🧱 Updated Dependencies
|
|
10
|
+
|
|
11
|
+
- Updated iris-app-build-utilities to 1.7.27
|
|
12
|
+
- Updated iris-app-webpack-plugin to 1.7.27
|
|
13
|
+
- Updated iris-app-api to 1.7.27
|
|
14
|
+
- Updated shared-utils to 1.9.26
|
|
15
|
+
|
|
16
|
+
## 1.7.26 (2025-10-10)
|
|
17
|
+
|
|
18
|
+
### 🧱 Updated Dependencies
|
|
19
|
+
|
|
20
|
+
- Updated iris-app-build-utilities to 1.7.26
|
|
21
|
+
- Updated iris-app-webpack-plugin to 1.7.26
|
|
22
|
+
- Updated iris-app-api to 1.7.26
|
|
23
|
+
- Updated shared-utils to 1.9.25
|
|
24
|
+
|
|
1
25
|
## 1.7.25 (2025-10-09)
|
|
2
26
|
|
|
3
27
|
### 🧱 Updated Dependencies
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trackunit/iris-app-sdk-rspack",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.28",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
5
5
|
"repository": "https://github.com/Trackunit/manager",
|
|
6
6
|
"executors": "./executors.json",
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"pacote": "17.0.6",
|
|
17
17
|
"semver": "7.5.4",
|
|
18
18
|
"webpack-bundle-analyzer": "^4.8.0",
|
|
19
|
-
"@trackunit/iris-app-build-utilities": "1.7.
|
|
20
|
-
"@trackunit/shared-utils": "1.9.
|
|
21
|
-
"@trackunit/iris-app-api": "1.7.
|
|
22
|
-
"@trackunit/iris-app-webpack-plugin": "1.7.
|
|
19
|
+
"@trackunit/iris-app-build-utilities": "1.7.27",
|
|
20
|
+
"@trackunit/shared-utils": "1.9.26",
|
|
21
|
+
"@trackunit/iris-app-api": "1.7.27",
|
|
22
|
+
"@trackunit/iris-app-webpack-plugin": "1.7.28",
|
|
23
23
|
"tslib": "^2.6.2"
|
|
24
24
|
},
|
|
25
25
|
"types": "./src/index.d.ts",
|
|
@@ -38,27 +38,26 @@ const getDefaultConfig = async (mode, nxRootDir, appDir, irisAppManifest, contex
|
|
|
38
38
|
return null;
|
|
39
39
|
})
|
|
40
40
|
.filter(shared_utils_1.truthy);
|
|
41
|
-
const widgetIconPaths = irisAppManifest.extensions
|
|
42
|
-
|
|
41
|
+
const widgetIconPaths = irisAppManifest.extensions.flatMap(extension => {
|
|
42
|
+
const paths = [];
|
|
43
43
|
if (extension.type === "WIDGET_EXTENSION" &&
|
|
44
44
|
extension.footer?.poweredByImage &&
|
|
45
45
|
(0, iris_app_api_1.isImageByPath)(extension.footer.poweredByImage)) {
|
|
46
|
-
|
|
46
|
+
paths.push({
|
|
47
47
|
extensionId: extension.id,
|
|
48
48
|
path: extension.footer.poweredByImage.path,
|
|
49
49
|
sourceRoot: extension.sourceRoot,
|
|
50
|
-
};
|
|
50
|
+
});
|
|
51
51
|
}
|
|
52
52
|
if (extension.type === "WIDGET_EXTENSION" && extension.header.image && (0, iris_app_api_1.isIconByPath)(extension.header.image)) {
|
|
53
|
-
|
|
53
|
+
paths.push({
|
|
54
54
|
extensionId: extension.id,
|
|
55
55
|
path: extension.header.image.path,
|
|
56
56
|
sourceRoot: extension.sourceRoot,
|
|
57
|
-
};
|
|
57
|
+
});
|
|
58
58
|
}
|
|
59
|
-
return
|
|
60
|
-
})
|
|
61
|
-
.filter(shared_utils_1.truthy);
|
|
59
|
+
return paths;
|
|
60
|
+
});
|
|
62
61
|
const copyPatterns = [
|
|
63
62
|
...irisAppManifest.extensions
|
|
64
63
|
.filter(extension => mode === "production" && iris_app_api_1.serverSideExtensionTypes.includes(extension.type))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultRspackConfig.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/rspack/src/executors/utils/defaultRspackConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import { ExecutorContext } from \"@nx/devkit\";\nimport * as rspack from \"@rspack/core\";\nimport { IrisAppManifest, isIconByPath, isImageByPath, serverSideExtensionTypes } from \"@trackunit/iris-app-api\";\nimport {\n getAliasesFromTsConfig,\n getExposedExtensions,\n getIrisAppWebpackDevServer,\n getSharedDependencies,\n} from \"@trackunit/iris-app-build-utilities\";\nimport { TrackunitIrisAppWebpackPlugin } from \"@trackunit/iris-app-webpack-plugin\";\nimport { truthy } from \"@trackunit/shared-utils\";\nimport * as path from \"path\";\n\ntype RspackConfiguration = rspack.Configuration;\n\nlet BundleAnalyzerPlugin: rspack.WebpackPluginInstance | null = null;\nif (process.env.BUNDLE_ANALYSE === \"true\") {\n // doing require here to avoid dependency on webpack-bundle-analyzer directly\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const BundleAnalyzerPluginConstructor = require(\"webpack-bundle-analyzer\").BundleAnalyzerPlugin;\n BundleAnalyzerPlugin = new BundleAnalyzerPluginConstructor({ analyzerMode: \"static\" });\n}\n\n/**\n * Gets the default webpack config.\n *\n * @param mode mode either \"production\" or \"development\"\n * @param nxRootDir the root of the nx workspace\n * @param appDir the app directory\n * @param irisAppManifest the iris app manifest\n * @returns { Promise<RspackConfiguration> } the default webpack config\n */\nexport const getDefaultConfig = async (\n mode: \"production\" | \"development\",\n nxRootDir: string,\n appDir: string,\n irisAppManifest: IrisAppManifest,\n context: ExecutorContext\n): Promise<RspackConfiguration> => {\n const relativeAppDir = appDir.split(nxRootDir)[1] || \"<unknown appdir>\";\n const iconPaths = irisAppManifest.extensions\n .map(extension => {\n if (extension.type === \"FLEET_EXTENSION\" && extension.menuItem.image && isIconByPath(extension.menuItem.image)) {\n return {\n extensionId: extension.id,\n path: extension.menuItem.image.path,\n sourceRoot: extension.sourceRoot,\n };\n }\n return null;\n })\n .filter(truthy);\n const widgetIconPaths = irisAppManifest.extensions\n .map(extension => {\n if (\n extension.type === \"WIDGET_EXTENSION\" &&\n extension.footer?.poweredByImage &&\n isImageByPath(extension.footer.poweredByImage)\n ) {\n return {\n extensionId: extension.id,\n path: extension.footer.poweredByImage.path,\n sourceRoot: extension.sourceRoot,\n };\n }\n if (extension.type === \"WIDGET_EXTENSION\" && extension.header.image && isIconByPath(extension.header.image)) {\n return {\n extensionId: extension.id,\n path: extension.header.image.path,\n sourceRoot: extension.sourceRoot,\n };\n }\n\n return null;\n })\n .filter(truthy);\n\n const copyPatterns = [\n ...irisAppManifest.extensions\n .filter(extension => mode === \"production\" && serverSideExtensionTypes.includes(extension.type))\n .flatMap(extension => {\n const patterns: Array<{ from: string; to: string }> = [\n {\n //globs must use / in path to be valid\n from: path.resolve(nxRootDir, extension.sourceRoot.replace(/\\\\/g, \"/\")),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"serverside\", extension.id),\n },\n ];\n\n // Check if extension has dependencyDefinitionFile and add it to patterns if it exists\n if (\"dependencyDefinitionFile\" in extension && extension.dependencyDefinitionFile) {\n patterns.push({\n //globs must use / in path to be valid\n from: path.resolve(nxRootDir, extension.dependencyDefinitionFile.replace(/\\\\/g, \"/\")),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"serverside\", extension.id),\n });\n }\n\n return patterns;\n }),\n {\n //globs must use / in path to be valid\n from: path.join(appDir, \"assets/\").replace(/\\\\/g, \"/\"),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"assets\"),\n },\n ...[...iconPaths, ...widgetIconPaths].map(iconPath => ({\n //globs must use / in path to be valid\n from: path.join(nxRootDir, iconPath.sourceRoot, iconPath.path).replace(/\\\\/g, \"/\"),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, iconPath.extensionId, iconPath.path),\n })),\n ];\n const combinedConfig = async (incomingConfig: rspack.Configuration): Promise<rspack.Configuration> => {\n return {\n ...incomingConfig,\n mode: mode,\n output: {\n publicPath: \"auto\",\n path: path.join(nxRootDir, \"dist\", relativeAppDir),\n },\n target: \"web\",\n entry: {},\n devtool: false,\n devServer: await getIrisAppWebpackDevServer(),\n resolve: {\n extensions: [\".tsx\", \".ts\", \".jsx\", \".js\", \".json\"],\n alias: await getAliasesFromTsConfig({ nxRootDir }),\n },\n optimization:\n mode === \"production\"\n ? incomingConfig.optimization\n : {\n ...incomingConfig.optimization,\n splitChunks: {\n cacheGroups: {\n translations: {\n test: /[\\\\/]locales[\\\\/](.*?)[\\\\/]translation\\.json$/,\n name(module) {\n // Extract the language code from the path\n const match = module.identifier().match(/[\\\\/]locales[\\\\/](.*?)[\\\\/]translation\\.json$/);\n const language = match ? match[1] : \"unknown\";\n return `translations-${language}`;\n },\n chunks: \"all\",\n enforce: true,\n priority: 10,\n },\n },\n },\n },\n module: {\n rules: [\n {\n test: /\\.(jsx?|tsx?)$/,\n exclude: /(vendor|node_modules|dist)/,\n loader: \"builtin:swc-loader\",\n options: {\n jsc: {\n parser: {\n syntax: \"typescript\",\n jsx: true,\n },\n transform: {\n react: {\n runtime: \"automatic\",\n },\n },\n },\n },\n },\n {\n test: /\\.svg$/,\n issuer: /\\.[jt]sx?$/,\n oneOf: [\n {\n resourceQuery: /react/, // if import has ?react in the query so .svg?react\n use: [\n {\n loader: \"@svgr/webpack\",\n options: {\n typescript: true,\n svgo: false,\n titleProp: true,\n ref: true,\n exportType: \"named\",\n namedExport: \"ReactComponent\",\n },\n },\n ],\n },\n {\n type: \"asset\",\n generator: {\n filename: mode === \"production\" ? \"static/media/[hash][ext]\" : \"static/media/[name][ext]\",\n },\n },\n ],\n },\n {\n test: /\\.ico|.png|.jpe?g|.gif|.eot|.ttf|.woff|.woff2$/,\n type: \"asset\",\n },\n {\n test: /\\.(js|mjs)$/,\n include: [\n /node_modules\\/@apollo\\/client/,\n /node_modules\\/framer-motion/,\n /node_modules\\/uuid/,\n /node_modules\\/html-parse-stringify/,\n ],\n type: \"javascript/auto\",\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.(css|s[ac]ss)$/i,\n use: [\n \"style-loader\",\n \"css-loader\",\n {\n loader: \"postcss-loader\",\n options: {\n postcssOptions: {\n plugins: {\n \"postcss-import\": {},\n \"tailwindcss/nesting\": {},\n tailwindcss: {\n config: path.resolve(appDir, \"tailwind.config.js\"),\n },\n autoprefixer: {},\n },\n },\n },\n },\n ],\n },\n ],\n },\n plugins: [\n new rspack.container.ModuleFederationPlugin({\n name: irisAppManifest.moduleFederationName,\n filename: \"remoteEntry.js\",\n library: { type: \"global\", name: irisAppManifest.moduleFederationName },\n remotes: {},\n exposes: await getExposedExtensions({\n nxRootDir,\n manifest: irisAppManifest,\n }),\n shared: await getSharedDependencies({ manifest: irisAppManifest }),\n }),\n\n new TrackunitIrisAppWebpackPlugin({\n nxRootDir: nxRootDir,\n appDir,\n manifest: irisAppManifest,\n }),\n new rspack.DefinePlugin({\n \"process.env.IRIS_APP_SENTRY_DSN\": JSON.stringify(\"\"),\n \"process.env.IRIS_APP_VERSION\": JSON.stringify(\"\"),\n }),\n new rspack.CopyRspackPlugin({\n patterns: copyPatterns,\n }),\n BundleAnalyzerPlugin,\n ].filter(Boolean),\n };\n };\n\n return await combinedConfig({});\n};\n"]}
|
|
1
|
+
{"version":3,"file":"defaultRspackConfig.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/rspack/src/executors/utils/defaultRspackConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import { ExecutorContext } from \"@nx/devkit\";\nimport * as rspack from \"@rspack/core\";\nimport { IrisAppManifest, isIconByPath, isImageByPath, serverSideExtensionTypes } from \"@trackunit/iris-app-api\";\nimport {\n getAliasesFromTsConfig,\n getExposedExtensions,\n getIrisAppWebpackDevServer,\n getSharedDependencies,\n} from \"@trackunit/iris-app-build-utilities\";\nimport { TrackunitIrisAppWebpackPlugin } from \"@trackunit/iris-app-webpack-plugin\";\nimport { truthy } from \"@trackunit/shared-utils\";\nimport * as path from \"path\";\n\ntype RspackConfiguration = rspack.Configuration;\n\nlet BundleAnalyzerPlugin: rspack.WebpackPluginInstance | null = null;\nif (process.env.BUNDLE_ANALYSE === \"true\") {\n // doing require here to avoid dependency on webpack-bundle-analyzer directly\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const BundleAnalyzerPluginConstructor = require(\"webpack-bundle-analyzer\").BundleAnalyzerPlugin;\n BundleAnalyzerPlugin = new BundleAnalyzerPluginConstructor({ analyzerMode: \"static\" });\n}\n\n/**\n * Gets the default webpack config.\n *\n * @param mode mode either \"production\" or \"development\"\n * @param nxRootDir the root of the nx workspace\n * @param appDir the app directory\n * @param irisAppManifest the iris app manifest\n * @returns { Promise<RspackConfiguration> } the default webpack config\n */\nexport const getDefaultConfig = async (\n mode: \"production\" | \"development\",\n nxRootDir: string,\n appDir: string,\n irisAppManifest: IrisAppManifest,\n context: ExecutorContext\n): Promise<RspackConfiguration> => {\n const relativeAppDir = appDir.split(nxRootDir)[1] || \"<unknown appdir>\";\n const iconPaths = irisAppManifest.extensions\n .map(extension => {\n if (extension.type === \"FLEET_EXTENSION\" && extension.menuItem.image && isIconByPath(extension.menuItem.image)) {\n return {\n extensionId: extension.id,\n path: extension.menuItem.image.path,\n sourceRoot: extension.sourceRoot,\n };\n }\n return null;\n })\n .filter(truthy);\n const widgetIconPaths = irisAppManifest.extensions.flatMap(extension => {\n const paths = [];\n if (\n extension.type === \"WIDGET_EXTENSION\" &&\n extension.footer?.poweredByImage &&\n isImageByPath(extension.footer.poweredByImage)\n ) {\n paths.push({\n extensionId: extension.id,\n path: extension.footer.poweredByImage.path,\n sourceRoot: extension.sourceRoot,\n });\n }\n if (extension.type === \"WIDGET_EXTENSION\" && extension.header.image && isIconByPath(extension.header.image)) {\n paths.push({\n extensionId: extension.id,\n path: extension.header.image.path,\n sourceRoot: extension.sourceRoot,\n });\n }\n\n return paths;\n });\n\n const copyPatterns = [\n ...irisAppManifest.extensions\n .filter(extension => mode === \"production\" && serverSideExtensionTypes.includes(extension.type))\n .flatMap(extension => {\n const patterns: Array<{ from: string; to: string }> = [\n {\n //globs must use / in path to be valid\n from: path.resolve(nxRootDir, extension.sourceRoot.replace(/\\\\/g, \"/\")),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"serverside\", extension.id),\n },\n ];\n\n // Check if extension has dependencyDefinitionFile and add it to patterns if it exists\n if (\"dependencyDefinitionFile\" in extension && extension.dependencyDefinitionFile) {\n patterns.push({\n //globs must use / in path to be valid\n from: path.resolve(nxRootDir, extension.dependencyDefinitionFile.replace(/\\\\/g, \"/\")),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"serverside\", extension.id),\n });\n }\n\n return patterns;\n }),\n {\n //globs must use / in path to be valid\n from: path.join(appDir, \"assets/\").replace(/\\\\/g, \"/\"),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, \"assets\"),\n },\n ...[...iconPaths, ...widgetIconPaths].map(iconPath => ({\n //globs must use / in path to be valid\n from: path.join(nxRootDir, iconPath.sourceRoot, iconPath.path).replace(/\\\\/g, \"/\"),\n to: path.join(nxRootDir, \"dist\", relativeAppDir, iconPath.extensionId, iconPath.path),\n })),\n ];\n const combinedConfig = async (incomingConfig: rspack.Configuration): Promise<rspack.Configuration> => {\n return {\n ...incomingConfig,\n mode: mode,\n output: {\n publicPath: \"auto\",\n path: path.join(nxRootDir, \"dist\", relativeAppDir),\n },\n target: \"web\",\n entry: {},\n devtool: false,\n devServer: await getIrisAppWebpackDevServer(),\n resolve: {\n extensions: [\".tsx\", \".ts\", \".jsx\", \".js\", \".json\"],\n alias: await getAliasesFromTsConfig({ nxRootDir }),\n },\n optimization:\n mode === \"production\"\n ? incomingConfig.optimization\n : {\n ...incomingConfig.optimization,\n splitChunks: {\n cacheGroups: {\n translations: {\n test: /[\\\\/]locales[\\\\/](.*?)[\\\\/]translation\\.json$/,\n name(module) {\n // Extract the language code from the path\n const match = module.identifier().match(/[\\\\/]locales[\\\\/](.*?)[\\\\/]translation\\.json$/);\n const language = match ? match[1] : \"unknown\";\n return `translations-${language}`;\n },\n chunks: \"all\",\n enforce: true,\n priority: 10,\n },\n },\n },\n },\n module: {\n rules: [\n {\n test: /\\.(jsx?|tsx?)$/,\n exclude: /(vendor|node_modules|dist)/,\n loader: \"builtin:swc-loader\",\n options: {\n jsc: {\n parser: {\n syntax: \"typescript\",\n jsx: true,\n },\n transform: {\n react: {\n runtime: \"automatic\",\n },\n },\n },\n },\n },\n {\n test: /\\.svg$/,\n issuer: /\\.[jt]sx?$/,\n oneOf: [\n {\n resourceQuery: /react/, // if import has ?react in the query so .svg?react\n use: [\n {\n loader: \"@svgr/webpack\",\n options: {\n typescript: true,\n svgo: false,\n titleProp: true,\n ref: true,\n exportType: \"named\",\n namedExport: \"ReactComponent\",\n },\n },\n ],\n },\n {\n type: \"asset\",\n generator: {\n filename: mode === \"production\" ? \"static/media/[hash][ext]\" : \"static/media/[name][ext]\",\n },\n },\n ],\n },\n {\n test: /\\.ico|.png|.jpe?g|.gif|.eot|.ttf|.woff|.woff2$/,\n type: \"asset\",\n },\n {\n test: /\\.(js|mjs)$/,\n include: [\n /node_modules\\/@apollo\\/client/,\n /node_modules\\/framer-motion/,\n /node_modules\\/uuid/,\n /node_modules\\/html-parse-stringify/,\n ],\n type: \"javascript/auto\",\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.(css|s[ac]ss)$/i,\n use: [\n \"style-loader\",\n \"css-loader\",\n {\n loader: \"postcss-loader\",\n options: {\n postcssOptions: {\n plugins: {\n \"postcss-import\": {},\n \"tailwindcss/nesting\": {},\n tailwindcss: {\n config: path.resolve(appDir, \"tailwind.config.js\"),\n },\n autoprefixer: {},\n },\n },\n },\n },\n ],\n },\n ],\n },\n plugins: [\n new rspack.container.ModuleFederationPlugin({\n name: irisAppManifest.moduleFederationName,\n filename: \"remoteEntry.js\",\n library: { type: \"global\", name: irisAppManifest.moduleFederationName },\n remotes: {},\n exposes: await getExposedExtensions({\n nxRootDir,\n manifest: irisAppManifest,\n }),\n shared: await getSharedDependencies({ manifest: irisAppManifest }),\n }),\n\n new TrackunitIrisAppWebpackPlugin({\n nxRootDir: nxRootDir,\n appDir,\n manifest: irisAppManifest,\n }),\n new rspack.DefinePlugin({\n \"process.env.IRIS_APP_SENTRY_DSN\": JSON.stringify(\"\"),\n \"process.env.IRIS_APP_VERSION\": JSON.stringify(\"\"),\n }),\n new rspack.CopyRspackPlugin({\n patterns: copyPatterns,\n }),\n BundleAnalyzerPlugin,\n ].filter(Boolean),\n };\n };\n\n return await combinedConfig({});\n};\n"]}
|