├── .eslintrc.json
├── .github
└── workflows
│ └── build.yml
├── .gitignore
├── .npmrc
├── .prettierignore
├── .prettierrc
├── .vscode
└── extensions.json
├── README.md
├── apps
├── host
│ ├── project.json
│ ├── rspack.config.js
│ ├── src
│ │ ├── app
│ │ │ ├── app.component.html
│ │ │ ├── app.component.scss
│ │ │ ├── app.component.ts
│ │ │ ├── app.config.ts
│ │ │ ├── app.routes.ts
│ │ │ ├── footer.component.scss
│ │ │ └── footer.component.ts
│ │ ├── assets
│ │ │ └── .gitkeep
│ │ ├── bootstrap.ts
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── main.ts
│ │ └── styles.css
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ └── tsconfig.json
├── mfe1
│ ├── project.json
│ ├── rspack.config.js
│ ├── src
│ │ ├── app
│ │ │ ├── app.component.html
│ │ │ ├── app.component.scss
│ │ │ └── app.component.ts
│ │ ├── assets
│ │ │ └── .gitkeep
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── main.ts
│ │ └── styles.css
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ └── tsconfig.json
└── mfe2
│ ├── project.json
│ ├── rspack.config.js
│ ├── src
│ ├── app
│ │ ├── app.component.html
│ │ ├── app.component.scss
│ │ └── app.component.ts
│ ├── assets
│ │ └── .gitkeep
│ ├── favicon.ico
│ ├── index.html
│ ├── main.ts
│ └── styles.css
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ └── tsconfig.json
├── build.log
├── nx.json
├── package.json
├── perf.md
├── pnpm-lock.yaml
└── tsconfig.base.json
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 | "ignorePatterns": ["**/*"],
4 | "plugins": ["@nx"],
5 | "overrides": [
6 | {
7 | "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
8 | "rules": {
9 | "@nx/enforce-module-boundaries": [
10 | "error",
11 | {
12 | "enforceBuildableLibDependency": true,
13 | "allow": [],
14 | "depConstraints": [
15 | {
16 | "sourceTag": "*",
17 | "onlyDependOnLibsWithTags": ["*"]
18 | }
19 | ]
20 | }
21 | ]
22 | }
23 | },
24 | {
25 | "files": ["*.ts", "*.tsx"],
26 | "extends": ["plugin:@nx/typescript"],
27 | "rules": {}
28 | },
29 | {
30 | "files": ["*.js", "*.jsx"],
31 | "extends": ["plugin:@nx/javascript"],
32 | "rules": {}
33 | }
34 | ]
35 | }
36 |
--------------------------------------------------------------------------------
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 | name: build & log
2 | on: [push]
3 | jobs:
4 | build:
5 | runs-on: ubuntu-latest
6 | steps:
7 | - uses: actions/checkout@v4
8 | - uses: actions/setup-node@v4
9 | - uses: pnpm/action-setup@v3
10 | with:
11 | version: 8
12 | - run: sudo apt install hyperfine -y
13 | - run: pnpm install
14 | - run: pnpm nx run-many -t build build-wp build-es -p mfe1
15 | - run: echo "rspack" >> build.log && ls -lah dist/mfe1/rspack >> build.log
16 | - run: echo "webpack" >> build.log && ls -lah dist/mfe1/webpack >> build.log
17 | - run: echo "esbuild" >> build.log && ls -lah dist/mfe1/esbuild/browser >> build.log
18 | - run: cat build.log
19 | - run: hyperfine -n "Webpack" "pnpm nx build-wp mfe1" -n "Rspack" "pnpm nx build mfe1" -n "Esbuild" "pnpm nx build-es mfe1" --prepare "rm -rf .angular dist" --export-markdown perf.md
20 | - name: Commit & Push
21 | run: |
22 | git config --local user.email "bozonedouard@gmail.com"
23 | git config --local user.name "Edouard Bozon"
24 | git add build.log perf.md
25 | git commit -m "chore: update perf logs"
26 | git push
27 | env:
28 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See http://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # compiled output
4 | dist
5 | tmp
6 | /out-tsc
7 |
8 | # dependencies
9 | node_modules
10 |
11 | # IDEs and editors
12 | /.idea
13 | .project
14 | .classpath
15 | .c9/
16 | *.launch
17 | .settings/
18 | *.sublime-workspace
19 |
20 | # IDE - VSCode
21 | .vscode/*
22 | !.vscode/settings.json
23 | !.vscode/tasks.json
24 | !.vscode/launch.json
25 | !.vscode/extensions.json
26 |
27 | # misc
28 | /.sass-cache
29 | /connect.lock
30 | /coverage
31 | /libpeerconnection.log
32 | npm-debug.log
33 | yarn-error.log
34 | testem.log
35 | /typings
36 |
37 | # System Files
38 | .DS_Store
39 | Thumbs.db
40 |
41 | .nx/cache
42 | .angular
43 | @mf-types
44 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | strict-peer-dependencies=false
2 | auto-install-peers=true
3 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # Add files here to ignore them from prettier formatting
2 | /dist
3 | /coverage
4 | /.nx/cache
5 | .angular
6 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "singleQuote": true
3 | }
4 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "nrwl.angular-console",
4 | "esbenp.prettier-vscode",
5 | "firsttris.vscode-jest-runner"
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # ng-rspack
2 |
3 |
4 |
5 | ```
6 | nx run-many -t serve -p host,mfe1,mfe2
7 | ```
8 |
9 | - See [build.log](./build.log) for comparing bundle size between builds.
10 | - See [perf.md](./perf.md) for comparing performance between bundlers on the last build.
11 |
--------------------------------------------------------------------------------
/apps/host/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "host",
3 | "$schema": "../../node_modules/nx/schemas/project-schema.json",
4 | "projectType": "application",
5 | "prefix": "app",
6 | "sourceRoot": "apps/host/src",
7 | "tags": [],
8 | "targets": {
9 | "build": {
10 | "executor": "@nx/rspack:rspack",
11 | "outputs": ["{options.outputPath}"],
12 | "options": {
13 | "target": "web",
14 | "rspackConfig": "apps/host/rspack.config.js",
15 | "outputPath": "dist/host/rspack",
16 | "main": "apps/host/src/main.ts",
17 | "tsConfig": "apps/host/tsconfig.app.json",
18 | "assets": ["apps/host/src/favicon.ico", "apps/host/src/assets"]
19 | },
20 | "configurations": {
21 | "development": {
22 | "mode": "development"
23 | },
24 | "production": {
25 | "mode": "production",
26 | "optimization": true,
27 | "sourceMap": false
28 | }
29 | },
30 | "defaultConfiguration": "production"
31 | },
32 | "build-wp": {
33 | "executor": "@angular-devkit/build-angular:browser",
34 | "outputs": ["{options.outputPath}"],
35 | "options": {
36 | "outputPath": "dist/host/webpack",
37 | "index": "apps/host/src/index.html",
38 | "main": "apps/host/src/main.ts",
39 | "polyfills": ["zone.js"],
40 | "tsConfig": "apps/host/tsconfig.app.json",
41 | "assets": ["apps/host/src/favicon.ico", "apps/host/src/assets"],
42 | "styles": ["apps/host/src/styles.css"],
43 | "scripts": []
44 | },
45 | "configurations": {
46 | "production": {
47 | "outputHashing": "all",
48 | "extractLicenses": false
49 | },
50 | "development": {
51 | "buildOptimizer": false,
52 | "optimization": false,
53 | "vendorChunk": true,
54 | "extractLicenses": false,
55 | "sourceMap": true,
56 | "namedChunks": true
57 | }
58 | },
59 | "defaultConfiguration": "production"
60 | },
61 | "build-es": {
62 | "executor": "@nx/angular:application",
63 | "outputs": ["{options.outputPath}"],
64 | "options": {
65 | "outputPath": "dist/host/esbuild",
66 | "index": "apps/host/src/index.html",
67 | "browser": "apps/host/src/main.ts",
68 | "polyfills": ["zone.js"],
69 | "tsConfig": "apps/host/tsconfig.app.json",
70 | "assets": ["apps/host/src/favicon.ico", "apps/host/src/assets"],
71 | "styles": ["apps/host/src/styles.css"],
72 | "scripts": []
73 | },
74 | "configurations": {
75 | "production": {
76 | "outputHashing": "all",
77 | "extractLicenses": false
78 | },
79 | "development": {
80 | "optimization": false,
81 | "extractLicenses": false,
82 | "sourceMap": true
83 | }
84 | },
85 | "defaultConfiguration": "production"
86 | },
87 | "serve": {
88 | "executor": "@nx/rspack:dev-server",
89 | "options": {
90 | "port": 3000
91 | },
92 | "configurations": {
93 | "development": {
94 | "buildTarget": "host:build:development"
95 | }
96 | },
97 | "defaultConfiguration": "development"
98 | }
99 | }
100 | }
101 |
--------------------------------------------------------------------------------
/apps/host/rspack.config.js:
--------------------------------------------------------------------------------
1 | const { composePlugins, withNx, withWeb } = require('@nx/rspack');
2 | const {
3 | HtmlRspackPlugin,
4 | SwcJsMinimizerRspackPlugin,
5 | CopyRspackPlugin,
6 | javascript,
7 | } = require('@rspack/core');
8 | const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
9 | const lightningcss = require('lightningcss');
10 | const browserslist = require('browserslist');
11 | const terserPlugin = require('terser-webpack-plugin');
12 | const { AngularWebpackPlugin } = require('@ngtools/webpack');
13 | const { ProgressPlugin, CssExtractRspackPlugin } = require('@rspack/core');
14 | const {
15 | getSupportedBrowsers,
16 | } = require('@angular-devkit/build-angular/src/utils/supported-browsers');
17 | const {
18 | JavaScriptOptimizerPlugin,
19 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/javascript-optimizer-plugin');
20 | const {
21 | TransferSizePlugin,
22 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/transfer-size-plugin');
23 | const {
24 | CssOptimizerPlugin,
25 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/css-optimizer-plugin');
26 | const { ModuleFederationPlugin } = require('@module-federation/enhanced/rspack');
27 | const path = require('path');
28 | const { workspaceRoot } = require('@nx/devkit');
29 |
30 | /**
31 | * Angular CLI Webpack references:
32 | *
33 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/common.ts
34 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/styles.ts
35 | */
36 |
37 | const supportedBrowsers = getSupportedBrowsers();
38 |
39 | module.exports = composePlugins(withNx(), withWeb(), (baseConfig, ctx) => {
40 | /**
41 | * @type {import('@rspack/cli').Configuration}
42 | */
43 | const config = {
44 | ...baseConfig,
45 | mode: 'production',
46 | devtool: false,
47 | target: ['web', 'es2015'],
48 | entry: {
49 | polyfills: ['zone.js'],
50 | main: ['./src/main.ts'],
51 | },
52 | resolve: {
53 | extensions: ['.ts', '.tsx', '.mjs', '.js'],
54 | modules: ['node_modules'],
55 | mainFields: ['es2020', 'es2015', 'browser', 'module', 'main'],
56 | conditionNames: ['es2020', 'es2015', '...'],
57 | },
58 | context: __dirname,
59 | devServer: {
60 | client: {
61 | overlay: {
62 | errors: true,
63 | warnings: false,
64 | runtimeErrors: true,
65 | },
66 | },
67 | },
68 | node: false,
69 | output: {
70 | uniqueName: 'host',
71 | clean: true,
72 | path: path.resolve(workspaceRoot, ctx.options.outputPath),
73 | filename: '[name].[contenthash:20].js',
74 | chunkFilename: '[name].[contenthash:20].js',
75 | crossOriginLoading: 'anonymous',
76 | trustedTypes: 'angular#bundler',
77 | scriptType: 'module',
78 | },
79 | watch: false,
80 | experiments: {
81 | asyncWebAssembly: true,
82 | topLevelAwait: false,
83 | css: true,
84 | },
85 | module: {
86 | parser: {
87 | javascript: {
88 | requireContext: false,
89 | url: false,
90 | },
91 | },
92 | rules: [
93 | // Global assets
94 | {
95 | test: /\.?(sa|sc|c)ss$/,
96 | resourceQuery: /\?ngGlobalStyle/,
97 | use: [
98 | {
99 | loader: 'sass-loader',
100 | options: {
101 | api: 'modern-compiler',
102 | implementation: require.resolve('sass-embedded'),
103 | },
104 | },
105 | ],
106 | type: 'css',
107 | },
108 |
109 | // Component templates
110 | {
111 | test: /\.?(svg|html)$/,
112 | resourceQuery: /\?ngResource/,
113 | type: 'asset/source',
114 | },
115 | // Component styles
116 | {
117 | test: /\.?(sa|sc|c)ss$/,
118 | resourceQuery: /\?ngResource/,
119 | use: [
120 | {
121 | loader: require.resolve('raw-loader'),
122 | },
123 | {
124 | loader: 'sass-loader',
125 | options: {
126 | api: 'modern-compiler',
127 | implementation: require.resolve('sass-embedded'),
128 | },
129 | },
130 | ],
131 | },
132 | {
133 | // Mark files inside `rxjs/add` as containing side effects.
134 | // If this is fixed upstream and the fixed version becomes the minimum
135 | // supported version, this can be removed.
136 | test: /[/\\]rxjs[/\\]add[/\\].+\.js$/,
137 | sideEffects: true,
138 | },
139 | {
140 | test: /\.[cm]?[tj]sx?$/,
141 | // The below is needed due to a bug in `@babel/runtime`. See: https://github.com/babel/babel/issues/12824
142 | resolve: { fullySpecified: false },
143 | exclude: [
144 | /[\\/]node_modules[/\\](?:core-js|@babel|tslib|web-animations-js|web-streams-polyfill|whatwg-url)[/\\]/,
145 | ],
146 | use: [
147 | {
148 | loader: require.resolve(
149 | '@angular-devkit/build-angular/src/tools/babel/webpack-loader.js'
150 | ),
151 | options: {
152 | cacheDirectory: false,
153 | aot: true,
154 | optimize: true,
155 | supportedBrowsers,
156 | },
157 | },
158 | ],
159 | },
160 | {
161 | test: /\.[cm]?tsx?$/,
162 | use: [
163 | { loader: require.resolve('@ngtools/webpack/src/ivy/index.js') },
164 | ],
165 | exclude: [
166 | /[\\/]node_modules[/\\](?:css-loader|mini-css-extract-plugin|webpack-dev-server|webpack)[/\\]/,
167 | ],
168 | },
169 | ],
170 | },
171 | optimization: {
172 | minimize: true,
173 | minimizer: [
174 | new JavaScriptOptimizerPlugin({
175 | advanced: true,
176 | define: {
177 | ngDevMode: false,
178 | ngI18nClosureMode: false,
179 | ngJitMode: false,
180 | },
181 | keepIdentifierNames: false,
182 | removeLicenses: true,
183 | sourcemap: false,
184 | }),
185 | new TransferSizePlugin(),
186 | new CssOptimizerPlugin(),
187 | ],
188 | },
189 | plugins: [
190 | new StylesWebpackPlugin({
191 | root: __dirname,
192 | entryPoints: {
193 | styles: ['src/styles.css'],
194 | },
195 | preserveSymlinks: false,
196 | }),
197 | new CopyRspackPlugin({
198 | patterns: [
199 | {
200 | from: 'src/assets',
201 | to: '.',
202 | globOptions: {
203 | dot: false,
204 | },
205 | noErrorOnMissing: true,
206 | },
207 | {
208 | from: 'src/favicon.ico',
209 | to: '.',
210 | },
211 | ],
212 | }),
213 | new ProgressPlugin(),
214 | new CssExtractRspackPlugin(),
215 | new HtmlRspackPlugin({
216 | minify: false,
217 | inject: 'body',
218 | scriptLoading: 'module',
219 | template: 'src/index.html',
220 | }),
221 | new AngularWebpackPlugin({
222 | tsconfig: path.resolve(__dirname, 'tsconfig.app.json'),
223 | emitClassMetadata: false,
224 | emitNgModuleScope: false,
225 | jitMode: false,
226 | directTemplateLoading: true,
227 | compilerOptions: {
228 | sourceMap: false,
229 | declaration: false,
230 | declarationMap: false,
231 | preserveSymlinks: false,
232 | },
233 | inlineStyleFileExtension: 'css',
234 | }),
235 | new ModuleFederationPlugin({
236 | name: 'host',
237 | remotes: {
238 | mfe1: 'mfe1@http://localhost:3001/mf-manifest.json',
239 | mfe2: 'mfe2@http://localhost:3002/mf-manifest.json',
240 | },
241 | shared: ['@angular/core', '@angular/common', '@angular/router'],
242 | }),
243 | ],
244 | };
245 |
246 | return config;
247 | });
248 |
249 | /**
250 | * Ported from Angular CLI Webpack plugin.
251 | * https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/plugins/styles-webpack-plugin.ts
252 | */
253 | class StylesWebpackPlugin {
254 | options;
255 | compilation;
256 | constructor(options) {
257 | this.options = options;
258 | }
259 | apply(compiler) {
260 | const { entryPoints, preserveSymlinks, root } = this.options;
261 | const resolver = compiler.resolverFactory.get('global-styles', {
262 | conditionNames: ['sass', 'less', 'style'],
263 | mainFields: ['sass', 'less', 'style', 'main', '...'],
264 | extensions: ['.scss', '.sass', '.less', '.css'],
265 | restrictions: [/\.((le|sa|sc|c)ss)$/i],
266 | preferRelative: true,
267 | useSyncFileSystemCalls: true,
268 | symlinks: !preserveSymlinks,
269 | fileSystem: compiler.inputFileSystem,
270 | });
271 | const webpackOptions = compiler.options;
272 | compiler.hooks.environment.tap('styles-webpack-plugin', () => {
273 | const entrypoints = webpackOptions.entry;
274 | for (const [bundleName, paths] of Object.entries(entryPoints)) {
275 | entrypoints[bundleName] ??= {};
276 | const entryImport = (entrypoints[bundleName].import ??= []);
277 | for (const path of paths) {
278 | try {
279 | const resolvedPath = resolver.resolveSync({}, root, path);
280 | if (resolvedPath) {
281 | entryImport.push(`${resolvedPath}?ngGlobalStyle`);
282 | } else {
283 | console.error('Compilation cannot be undefined.');
284 | throw new Error(`Cannot resolve '${path}'.`);
285 | }
286 | } catch (error) {
287 | console.error('Compilation cannot be undefined.');
288 | throw error;
289 | }
290 | }
291 | }
292 | return entrypoints;
293 | });
294 | compiler.hooks.thisCompilation.tap(
295 | 'styles-webpack-plugin',
296 | (compilation) => {
297 | this.compilation = compilation;
298 | }
299 | );
300 | }
301 | }
302 |
--------------------------------------------------------------------------------
/apps/host/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
Welcome to the Host application
10 |
11 |
12 |
--------------------------------------------------------------------------------
/apps/host/src/app/app.component.scss:
--------------------------------------------------------------------------------
1 | nav {
2 | position: fixed;
3 | top:0;
4 | left:0;
5 | width: 100%;
6 | height: 44px;
7 | }
8 |
9 | nav ul {
10 | list-style-type: none;
11 | }
12 |
13 | nav ul li a {
14 | display: inline-block;
15 | padding: 8px;
16 | }
17 |
18 | a {
19 | text-decoration: none;
20 | }
21 |
22 | a.active {
23 | font-weight: bold;
24 | text-decoration: underline;
25 | }
26 |
27 | :host {
28 | display: block;
29 | text-align: center;
30 | max-width: 400px;
31 | margin: 8rem auto;
32 | background: #ffff;
33 | border-radius: 8px;
34 | padding: 20px 8px;
35 | box-shadow: 0px 0px 20px 5px #0000000f;
36 | }
37 |
38 | app-footer {
39 | position: fixed;
40 | bottom:20px;
41 | left:0;
42 | width: 100%;
43 | text-align: center;
44 | }
45 |
--------------------------------------------------------------------------------
/apps/host/src/app/app.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { FooterComponent } from './footer.component';
4 |
5 | @Component({
6 | standalone: true,
7 | imports: [RouterModule, FooterComponent],
8 | selector: 'app-root',
9 | templateUrl: './app.component.html',
10 | styleUrl: './app.component.scss',
11 | })
12 | export class AppComponent {}
13 |
--------------------------------------------------------------------------------
/apps/host/src/app/app.config.ts:
--------------------------------------------------------------------------------
1 | import { ApplicationConfig } from '@angular/core';
2 | import { provideRouter } from '@angular/router';
3 | import { appRoutes } from './app.routes';
4 |
5 | export const appConfig: ApplicationConfig = {
6 | providers: [provideRouter(appRoutes)],
7 | };
8 |
--------------------------------------------------------------------------------
/apps/host/src/app/app.routes.ts:
--------------------------------------------------------------------------------
1 | import { Route } from '@angular/router';
2 | // Todo: fix types
3 | // @ts-expect-error
4 | import { loadRemote } from '@module-federation/runtime';
5 |
6 | export const appRoutes: Route[] = [
7 | {
8 | path: 'mfe1',
9 | loadComponent: () => loadRemote('mfe1/app').then((m: any) => m.AppComponent),
10 | },
11 | {
12 | path: 'mfe2',
13 | loadComponent: () => loadRemote('mfe2/app').then((m: any) => m.AppComponent),
14 | },
15 | ];
16 |
--------------------------------------------------------------------------------
/apps/host/src/app/footer.component.scss:
--------------------------------------------------------------------------------
1 | :host {
2 | display: block;
3 | margin-top: 2rem;
4 | }
5 |
6 | a {
7 | text-decoration: none;
8 | font-weight: bold;
9 | }
10 |
11 | img {
12 | max-width: 28px;
13 | max-height: 28px;
14 | display: inline-block;
15 | margin: 0 4px;
16 | position: relative;
17 | top: 6px;
18 | }
19 |
--------------------------------------------------------------------------------
/apps/host/src/app/footer.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-footer',
5 | standalone: true,
6 | template: `
7 |
8 | 🧪 Experiment by
9 | Edouard Bozon using
10 |
11 | +
12 |
13 | +
14 |
17 | +
18 |
19 |
20 | `,
21 | styleUrl: './footer.component.scss',
22 | })
23 | export class FooterComponent {}
24 |
--------------------------------------------------------------------------------
/apps/host/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/host/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/host/src/bootstrap.ts:
--------------------------------------------------------------------------------
1 | import { bootstrapApplication } from '@angular/platform-browser';
2 | import { appConfig } from './app/app.config';
3 | import { AppComponent } from './app/app.component';
4 |
5 | export default bootstrapApplication(AppComponent, appConfig).catch((err) =>
6 | console.error(err)
7 | );
8 |
--------------------------------------------------------------------------------
/apps/host/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/host/src/favicon.ico
--------------------------------------------------------------------------------
/apps/host/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ng-rspack
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/apps/host/src/main.ts:
--------------------------------------------------------------------------------
1 | import('./bootstrap');
2 |
--------------------------------------------------------------------------------
/apps/host/src/styles.css:
--------------------------------------------------------------------------------
1 | body,
2 | html {
3 | margin: 0;
4 | padding: 0;
5 | font-family: 'Roboto', sans-serif;
6 | background-color: #f0f0f0;
7 | }
8 |
--------------------------------------------------------------------------------
/apps/host/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": [],
6 | "paths": {
7 | "*": ["./@mf-types/*"]
8 | }
9 | },
10 | "files": ["src/main.ts"],
11 | "include": ["src/**/*.d.ts"],
12 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
13 | }
14 |
--------------------------------------------------------------------------------
/apps/host/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["src/**/*.ts"],
4 | "compilerOptions": {},
5 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
6 | }
7 |
--------------------------------------------------------------------------------
/apps/host/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "useDefineForClassFields": false,
4 | "forceConsistentCasingInFileNames": true,
5 | "strict": true,
6 | "noImplicitOverride": true,
7 | "noPropertyAccessFromIndexSignature": true,
8 | "noImplicitReturns": true,
9 | "noFallthroughCasesInSwitch": true
10 | },
11 | "files": [],
12 | "include": [],
13 | "references": [
14 | {
15 | "path": "./tsconfig.editor.json"
16 | },
17 | {
18 | "path": "./tsconfig.app.json"
19 | }
20 | ],
21 | "angularCompilerOptions": {
22 | "enableI18nLegacyMessageIdFormat": false,
23 | "strictInjectionParameters": true,
24 | "strictInputAccessModifiers": true,
25 | "strictTemplates": true
26 | },
27 | "extends": "../../tsconfig.base.json"
28 | }
29 |
--------------------------------------------------------------------------------
/apps/mfe1/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mfe1",
3 | "$schema": "../../node_modules/nx/schemas/project-schema.json",
4 | "projectType": "application",
5 | "prefix": "app",
6 | "sourceRoot": "apps/mfe1/src",
7 | "tags": [],
8 | "targets": {
9 | "build": {
10 | "executor": "@nx/rspack:rspack",
11 | "outputs": ["{options.outputPath}"],
12 | "options": {
13 | "target": "web",
14 | "rspackConfig": "apps/mfe1/rspack.config.js",
15 | "outputPath": "dist/mfe1/rspack",
16 | "main": "apps/mfe1/src/main.ts",
17 | "tsConfig": "apps/mfe1/tsconfig.app.json",
18 | "assets": ["apps/mfe1/src/favicon.ico", "apps/mfe1/src/assets"]
19 | },
20 | "configurations": {
21 | "development": {
22 | "mode": "development"
23 | },
24 | "production": {
25 | "mode": "production",
26 | "optimization": true,
27 | "sourceMap": false
28 | }
29 | },
30 | "defaultConfiguration": "production"
31 | },
32 | "build-wp": {
33 | "executor": "@angular-devkit/build-angular:browser",
34 | "outputs": ["{options.outputPath}"],
35 | "options": {
36 | "outputPath": "dist/mfe1/webpack",
37 | "index": "apps/mfe1/src/index.html",
38 | "main": "apps/mfe1/src/main.ts",
39 | "polyfills": ["zone.js"],
40 | "tsConfig": "apps/mfe1/tsconfig.app.json",
41 | "assets": ["apps/mfe1/src/favicon.ico", "apps/mfe1/src/assets"],
42 | "styles": ["apps/mfe1/src/styles.css"],
43 | "scripts": []
44 | },
45 | "configurations": {
46 | "production": {
47 | "outputHashing": "all",
48 | "extractLicenses": false
49 | },
50 | "development": {
51 | "buildOptimizer": false,
52 | "optimization": false,
53 | "vendorChunk": true,
54 | "extractLicenses": false,
55 | "sourceMap": true,
56 | "namedChunks": true
57 | }
58 | },
59 | "defaultConfiguration": "production"
60 | },
61 | "build-es": {
62 | "executor": "@nx/angular:application",
63 | "outputs": ["{options.outputPath}"],
64 | "options": {
65 | "outputPath": "dist/mfe1/esbuild",
66 | "index": "apps/mfe1/src/index.html",
67 | "browser": "apps/mfe1/src/main.ts",
68 | "polyfills": ["zone.js"],
69 | "tsConfig": "apps/mfe1/tsconfig.app.json",
70 | "assets": ["apps/mfe1/src/favicon.ico", "apps/mfe1/src/assets"],
71 | "styles": ["apps/mfe1/src/styles.css"],
72 | "scripts": []
73 | },
74 | "configurations": {
75 | "production": {
76 | "outputHashing": "all",
77 | "extractLicenses": false
78 | },
79 | "development": {
80 | "optimization": false,
81 | "extractLicenses": false,
82 | "sourceMap": true
83 | }
84 | },
85 | "defaultConfiguration": "production"
86 | },
87 | "serve": {
88 | "executor": "@nx/rspack:dev-server",
89 | "options": {
90 | "port": 3001
91 | },
92 | "configurations": {
93 | "development": {
94 | "buildTarget": "mfe1:build:development"
95 | }
96 | },
97 | "defaultConfiguration": "development"
98 | }
99 | }
100 | }
101 |
--------------------------------------------------------------------------------
/apps/mfe1/rspack.config.js:
--------------------------------------------------------------------------------
1 | const { composePlugins, withNx, withWeb } = require('@nx/rspack');
2 | const {
3 | HtmlRspackPlugin,
4 | SwcJsMinimizerRspackPlugin,
5 | CopyRspackPlugin,
6 | javascript,
7 | } = require('@rspack/core');
8 | const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
9 | const lightningcss = require('lightningcss');
10 | const browserslist = require('browserslist');
11 | const terserPlugin = require('terser-webpack-plugin');
12 | const { AngularWebpackPlugin } = require('@ngtools/webpack');
13 | const { ProgressPlugin, CssExtractRspackPlugin } = require('@rspack/core');
14 | const {
15 | getSupportedBrowsers,
16 | } = require('@angular-devkit/build-angular/src/utils/supported-browsers');
17 | const {
18 | JavaScriptOptimizerPlugin,
19 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/javascript-optimizer-plugin');
20 | const {
21 | TransferSizePlugin,
22 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/transfer-size-plugin');
23 | const {
24 | CssOptimizerPlugin,
25 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/css-optimizer-plugin');
26 | const { ModuleFederationPlugin } = require('@module-federation/enhanced/rspack');
27 | const path = require('path');
28 | const { workspaceRoot } = require('@nx/devkit');
29 |
30 | /**
31 | * Angular CLI Webpack references:
32 | *
33 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/common.ts
34 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/styles.ts
35 | */
36 |
37 | const supportedBrowsers = getSupportedBrowsers();
38 |
39 | module.exports = composePlugins(withNx(), withWeb(), (baseConfig, ctx) => {
40 | /**
41 | * @type {import('@rspack/cli').Configuration}
42 | */
43 | const config = {
44 | ...baseConfig,
45 | mode: 'production',
46 | devtool: false,
47 | target: ['web', 'es2015'],
48 | entry: {
49 | polyfills: ['zone.js'],
50 | main: ['./src/main.ts'],
51 | },
52 | resolve: {
53 | extensions: ['.ts', '.tsx', '.mjs', '.js'],
54 | modules: ['node_modules'],
55 | mainFields: ['es2020', 'es2015', 'browser', 'module', 'main'],
56 | conditionNames: ['es2020', 'es2015', '...'],
57 | },
58 | context: __dirname,
59 | node: false,
60 | devServer: {
61 | headers: {
62 | "Access-Control-Allow-Origin": "*",
63 | "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, PATCH, OPTIONS",
64 | "Access-Control-Allow-Headers": "X-Requested-With, content-type, Authorization"
65 | },
66 | client: {
67 | overlay: {
68 | errors: true,
69 | warnings: false,
70 | runtimeErrors: true,
71 | },
72 | },
73 | },
74 | output: {
75 | uniqueName: 'mfe1',
76 | clean: true,
77 | path: path.resolve(workspaceRoot, ctx.options.outputPath),
78 | publicPath: 'http://localhost:3001/',
79 | filename: '[name].[contenthash:20].js',
80 | chunkFilename: '[name].[contenthash:20].js',
81 | crossOriginLoading: false,
82 | trustedTypes: 'angular#bundler',
83 | scriptType: 'module',
84 | },
85 | watch: false,
86 | experiments: {
87 | asyncWebAssembly: true,
88 | topLevelAwait: false,
89 | css: true,
90 | },
91 | module: {
92 | parser: {
93 | javascript: {
94 | requireContext: false,
95 | url: false,
96 | },
97 | },
98 | rules: [
99 | // Global assets
100 | {
101 | test: /\.?(sa|sc|c)ss$/,
102 | resourceQuery: /\?ngGlobalStyle/,
103 | use: [
104 | {
105 | loader: 'sass-loader',
106 | options: {
107 | api: 'modern-compiler',
108 | implementation: require.resolve('sass-embedded'),
109 | },
110 | },
111 | ],
112 | type: 'css',
113 | },
114 |
115 | // Component templates
116 | {
117 | test: /\.?(svg|html)$/,
118 | resourceQuery: /\?ngResource/,
119 | type: 'asset/source',
120 | },
121 | // Component styles
122 | {
123 | test: /\.?(sa|sc|c)ss$/,
124 | resourceQuery: /\?ngResource/,
125 | use: [
126 | {
127 | loader: require.resolve('raw-loader'),
128 | },
129 | {
130 | loader: 'sass-loader',
131 | options: {
132 | api: 'modern-compiler',
133 | implementation: require.resolve('sass-embedded'),
134 | },
135 | },
136 | ],
137 | },
138 | {
139 | // Mark files inside `rxjs/add` as containing side effects.
140 | // If this is fixed upstream and the fixed version becomes the minimum
141 | // supported version, this can be removed.
142 | test: /[/\\]rxjs[/\\]add[/\\].+\.js$/,
143 | sideEffects: true,
144 | },
145 | {
146 | test: /\.[cm]?[tj]sx?$/,
147 | // The below is needed due to a bug in `@babel/runtime`. See: https://github.com/babel/babel/issues/12824
148 | resolve: { fullySpecified: false },
149 | exclude: [
150 | /[\\/]node_modules[/\\](?:core-js|@babel|tslib|web-animations-js|web-streams-polyfill|whatwg-url)[/\\]/,
151 | ],
152 | use: [
153 | {
154 | loader: require.resolve(
155 | '@angular-devkit/build-angular/src/tools/babel/webpack-loader.js'
156 | ),
157 | options: {
158 | cacheDirectory: false,
159 | aot: true,
160 | optimize: true,
161 | supportedBrowsers,
162 | },
163 | },
164 | ],
165 | },
166 | {
167 | test: /\.[cm]?tsx?$/,
168 | use: [
169 | { loader: require.resolve('@ngtools/webpack/src/ivy/index.js') },
170 | ],
171 | exclude: [
172 | /[\\/]node_modules[/\\](?:css-loader|mini-css-extract-plugin|webpack-dev-server|webpack)[/\\]/,
173 | ],
174 | },
175 | ],
176 | },
177 | optimization: {
178 | minimize: true,
179 | minimizer: [
180 | new JavaScriptOptimizerPlugin({
181 | advanced: true,
182 | define: {
183 | ngDevMode: false,
184 | ngI18nClosureMode: false,
185 | ngJitMode: false,
186 | },
187 | keepIdentifierNames: false,
188 | removeLicenses: true,
189 | sourcemap: false,
190 | }),
191 | new TransferSizePlugin(),
192 | new CssOptimizerPlugin(),
193 | ],
194 | },
195 | plugins: [
196 | new StylesWebpackPlugin({
197 | root: __dirname,
198 | entryPoints: {
199 | styles: ['src/styles.css'],
200 | },
201 | preserveSymlinks: false,
202 | }),
203 | new CopyRspackPlugin({
204 | patterns: [
205 | {
206 | from: 'src/assets',
207 | to: '.',
208 | globOptions: {
209 | dot: false,
210 | },
211 | noErrorOnMissing: true,
212 | },
213 | {
214 | from: 'src/favicon.ico',
215 | to: '.',
216 | },
217 | ],
218 | }),
219 | new ProgressPlugin(),
220 | new CssExtractRspackPlugin(),
221 | new HtmlRspackPlugin({
222 | minify: false,
223 | inject: 'body',
224 | scriptLoading: 'module',
225 | template: 'src/index.html',
226 | }),
227 | new AngularWebpackPlugin({
228 | tsconfig: path.resolve(__dirname, 'tsconfig.app.json'),
229 | emitClassMetadata: false,
230 | emitNgModuleScope: false,
231 | jitMode: false,
232 | directTemplateLoading: true,
233 | compilerOptions: {
234 | sourceMap: false,
235 | declaration: false,
236 | declarationMap: false,
237 | preserveSymlinks: false,
238 | },
239 | inlineStyleFileExtension: 'css',
240 | }),
241 | new ModuleFederationPlugin({
242 | name: 'mfe1',
243 | exposes: {
244 | './app': './src/app/app.component.ts'
245 | },
246 | shared: ['@angular/core', '@angular/common', '@angular/router'],
247 | }),
248 | ],
249 | };
250 |
251 | return config;
252 | });
253 |
254 | /**
255 | * Ported from Angular CLI Webpack plugin.
256 | * https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/plugins/styles-webpack-plugin.ts
257 | */
258 | class StylesWebpackPlugin {
259 | options;
260 | compilation;
261 | constructor(options) {
262 | this.options = options;
263 | }
264 | apply(compiler) {
265 | const { entryPoints, preserveSymlinks, root } = this.options;
266 | const resolver = compiler.resolverFactory.get('global-styles', {
267 | conditionNames: ['sass', 'less', 'style'],
268 | mainFields: ['sass', 'less', 'style', 'main', '...'],
269 | extensions: ['.scss', '.sass', '.less', '.css'],
270 | restrictions: [/\.((le|sa|sc|c)ss)$/i],
271 | preferRelative: true,
272 | useSyncFileSystemCalls: true,
273 | symlinks: !preserveSymlinks,
274 | fileSystem: compiler.inputFileSystem,
275 | });
276 | const webpackOptions = compiler.options;
277 | compiler.hooks.environment.tap('styles-webpack-plugin', () => {
278 | const entrypoints = webpackOptions.entry;
279 | for (const [bundleName, paths] of Object.entries(entryPoints)) {
280 | entrypoints[bundleName] ??= {};
281 | const entryImport = (entrypoints[bundleName].import ??= []);
282 | for (const path of paths) {
283 | try {
284 | const resolvedPath = resolver.resolveSync({}, root, path);
285 | if (resolvedPath) {
286 | entryImport.push(`${resolvedPath}?ngGlobalStyle`);
287 | } else {
288 | console.error('Compilation cannot be undefined.');
289 | throw new Error(`Cannot resolve '${path}'.`);
290 | }
291 | } catch (error) {
292 | console.error('Compilation cannot be undefined.');
293 | throw error;
294 | }
295 | }
296 | }
297 | return entrypoints;
298 | });
299 | compiler.hooks.thisCompilation.tap(
300 | 'styles-webpack-plugin',
301 | (compilation) => {
302 | this.compilation = compilation;
303 | }
304 | );
305 | }
306 | }
307 |
--------------------------------------------------------------------------------
/apps/mfe1/src/app/app.component.html:
--------------------------------------------------------------------------------
1 | {{ title }}
2 |
3 |
4 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla nec nisl et elit dignissim cursus malesuada ac erat. Duis ac est at mauris euismod tempus. Curabitur a tristique est, a lacinia quam. Nulla finibus turpis in mauris consequat, vel placerat dolor fermentum. Vivamus ac tellus finibus, venenatis sapien mattis, interdum tellus. Phasellus lacinia metus ac fringilla dictum. In mollis tincidunt eros ut rutrum.
5 |
--------------------------------------------------------------------------------
/apps/mfe1/src/app/app.component.scss:
--------------------------------------------------------------------------------
1 | h2 {
2 | font-size: 1.4rem;
3 | margin-bottom: 2rem;
4 | margin-top: 1rem;
5 | text-decoration: underline;
6 | }
7 |
8 | img {
9 | width: 96px;
10 | display: inline-block;
11 | margin: 0 8px;
12 | }
13 |
14 | section {
15 | display: flex;
16 | justify-content: center;
17 | align-items: center;
18 | flex-direction: row-reverse;
19 | }
20 |
--------------------------------------------------------------------------------
/apps/mfe1/src/app/app.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | standalone: true,
5 | selector: 'app-root',
6 | templateUrl: './app.component.html',
7 | styleUrl: './app.component.scss',
8 | })
9 | export class AppComponent {
10 | title = 'mfe1';
11 | }
12 |
--------------------------------------------------------------------------------
/apps/mfe1/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/mfe1/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/mfe1/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/mfe1/src/favicon.ico
--------------------------------------------------------------------------------
/apps/mfe1/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ng-rspack
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/apps/mfe1/src/main.ts:
--------------------------------------------------------------------------------
1 | import { bootstrapApplication } from '@angular/platform-browser';
2 | import { AppComponent } from './app/app.component';
3 |
4 | bootstrapApplication(AppComponent).catch((err) =>
5 | console.error(err)
6 | );
7 |
--------------------------------------------------------------------------------
/apps/mfe1/src/styles.css:
--------------------------------------------------------------------------------
1 | body,
2 | html {
3 | margin: 0;
4 | padding: 0;
5 | font-family: 'Roboto', sans-serif;
6 | background-color: #f0f0f0;
7 | }
8 |
--------------------------------------------------------------------------------
/apps/mfe1/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": []
6 | },
7 | "files": ["src/main.ts"],
8 | "include": ["src/**/*.d.ts"],
9 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/apps/mfe1/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["src/**/*.ts"],
4 | "compilerOptions": {},
5 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
6 | }
7 |
--------------------------------------------------------------------------------
/apps/mfe1/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "useDefineForClassFields": false,
4 | "forceConsistentCasingInFileNames": true,
5 | "strict": true,
6 | "noImplicitOverride": true,
7 | "noPropertyAccessFromIndexSignature": true,
8 | "noImplicitReturns": true,
9 | "noFallthroughCasesInSwitch": true
10 | },
11 | "files": [],
12 | "include": [],
13 | "references": [
14 | {
15 | "path": "./tsconfig.editor.json"
16 | },
17 | {
18 | "path": "./tsconfig.app.json"
19 | }
20 | ],
21 | "angularCompilerOptions": {
22 | "enableI18nLegacyMessageIdFormat": false,
23 | "strictInjectionParameters": true,
24 | "strictInputAccessModifiers": true,
25 | "strictTemplates": true
26 | },
27 | "extends": "../../tsconfig.base.json"
28 | }
29 |
--------------------------------------------------------------------------------
/apps/mfe2/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mfe2",
3 | "$schema": "../../node_modules/nx/schemas/project-schema.json",
4 | "projectType": "application",
5 | "prefix": "app",
6 | "sourceRoot": "apps/mfe2/src",
7 | "tags": [],
8 | "targets": {
9 | "build": {
10 | "executor": "@nx/rspack:rspack",
11 | "outputs": ["{options.outputPath}"],
12 | "options": {
13 | "target": "web",
14 | "rspackConfig": "apps/mfe2/rspack.config.js",
15 | "outputPath": "dist/mfe2/rspack",
16 | "main": "apps/mfe2/src/main.ts",
17 | "tsConfig": "apps/mfe2/tsconfig.app.json",
18 | "assets": ["apps/mfe2/src/favicon.ico", "apps/mfe2/src/assets"]
19 | },
20 | "configurations": {
21 | "development": {
22 | "mode": "development"
23 | },
24 | "production": {
25 | "mode": "production",
26 | "optimization": true,
27 | "sourceMap": false
28 | }
29 | },
30 | "defaultConfiguration": "production"
31 | },
32 | "build-wp": {
33 | "executor": "@angular-devkit/build-angular:browser",
34 | "outputs": ["{options.outputPath}"],
35 | "options": {
36 | "outputPath": "dist/mfe2/webpack",
37 | "index": "apps/mfe2/src/index.html",
38 | "main": "apps/mfe2/src/main.ts",
39 | "polyfills": ["zone.js"],
40 | "tsConfig": "apps/mfe2/tsconfig.app.json",
41 | "assets": ["apps/mfe2/src/favicon.ico", "apps/mfe2/src/assets"],
42 | "styles": ["apps/mfe2/src/styles.css"],
43 | "scripts": []
44 | },
45 | "configurations": {
46 | "production": {
47 | "outputHashing": "all",
48 | "extractLicenses": false
49 | },
50 | "development": {
51 | "buildOptimizer": false,
52 | "optimization": false,
53 | "vendorChunk": true,
54 | "extractLicenses": false,
55 | "sourceMap": true,
56 | "namedChunks": true
57 | }
58 | },
59 | "defaultConfiguration": "production"
60 | },
61 | "build-es": {
62 | "executor": "@nx/angular:application",
63 | "outputs": ["{options.outputPath}"],
64 | "options": {
65 | "outputPath": "dist/mfe2/esbuild",
66 | "index": "apps/mfe2/src/index.html",
67 | "browser": "apps/mfe2/src/main.ts",
68 | "polyfills": ["zone.js"],
69 | "tsConfig": "apps/mfe2/tsconfig.app.json",
70 | "assets": ["apps/mfe2/src/favicon.ico", "apps/mfe2/src/assets"],
71 | "styles": ["apps/mfe2/src/styles.css"],
72 | "scripts": []
73 | },
74 | "configurations": {
75 | "production": {
76 | "outputHashing": "all",
77 | "extractLicenses": false
78 | },
79 | "development": {
80 | "optimization": false,
81 | "extractLicenses": false,
82 | "sourceMap": true
83 | }
84 | },
85 | "defaultConfiguration": "production"
86 | },
87 | "serve": {
88 | "executor": "@nx/rspack:dev-server",
89 | "options": {
90 | "port": 3002
91 | },
92 | "configurations": {
93 | "development": {
94 | "buildTarget": "mfe2:build:development"
95 | }
96 | },
97 | "defaultConfiguration": "development"
98 | }
99 | }
100 | }
101 |
--------------------------------------------------------------------------------
/apps/mfe2/rspack.config.js:
--------------------------------------------------------------------------------
1 | const { composePlugins, withNx, withWeb } = require('@nx/rspack');
2 | const {
3 | HtmlRspackPlugin,
4 | SwcJsMinimizerRspackPlugin,
5 | CopyRspackPlugin,
6 | javascript,
7 | } = require('@rspack/core');
8 | const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
9 | const lightningcss = require('lightningcss');
10 | const browserslist = require('browserslist');
11 | const terserPlugin = require('terser-webpack-plugin');
12 | const { AngularWebpackPlugin } = require('@ngtools/webpack');
13 | const { ProgressPlugin, CssExtractRspackPlugin } = require('@rspack/core');
14 | const {
15 | getSupportedBrowsers,
16 | } = require('@angular-devkit/build-angular/src/utils/supported-browsers');
17 | const {
18 | JavaScriptOptimizerPlugin,
19 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/javascript-optimizer-plugin');
20 | const {
21 | TransferSizePlugin,
22 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/transfer-size-plugin');
23 | const {
24 | CssOptimizerPlugin,
25 | } = require('@angular-devkit/build-angular/src/tools/webpack/plugins/css-optimizer-plugin');
26 | const { ModuleFederationPlugin } = require('@module-federation/enhanced/rspack');
27 | const path = require('path');
28 | const { workspaceRoot } = require('@nx/devkit');
29 |
30 | /**
31 | * Angular CLI Webpack references:
32 | *
33 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/common.ts
34 | * - https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/configs/styles.ts
35 | */
36 |
37 | const supportedBrowsers = getSupportedBrowsers();
38 |
39 | module.exports = composePlugins(withNx(), withWeb(), (baseConfig, ctx) => {
40 | /**
41 | * @type {import('@rspack/cli').Configuration}
42 | */
43 | const config = {
44 | ...baseConfig,
45 | mode: 'production',
46 | devtool: false,
47 | target: ['web', 'es2015'],
48 | entry: {
49 | polyfills: ['zone.js'],
50 | main: ['./src/main.ts'],
51 | },
52 | resolve: {
53 | extensions: ['.ts', '.tsx', '.mjs', '.js'],
54 | modules: ['node_modules'],
55 | mainFields: ['es2020', 'es2015', 'browser', 'module', 'main'],
56 | conditionNames: ['es2020', 'es2015', '...'],
57 | },
58 | context: __dirname,
59 | node: false,
60 | devServer: {
61 | headers: {
62 | "Access-Control-Allow-Origin": "*",
63 | "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, PATCH, OPTIONS",
64 | "Access-Control-Allow-Headers": "X-Requested-With, content-type, Authorization"
65 | },
66 | client: {
67 | overlay: {
68 | errors: true,
69 | warnings: false,
70 | runtimeErrors: true,
71 | },
72 | },
73 | },
74 | output: {
75 | uniqueName: 'mfe2',
76 | clean: true,
77 | path: path.resolve(workspaceRoot, ctx.options.outputPath),
78 | publicPath: 'http://localhost:3002/',
79 | filename: '[name].[contenthash:20].js',
80 | chunkFilename: '[name].[contenthash:20].js',
81 | crossOriginLoading: false,
82 | trustedTypes: 'angular#bundler',
83 | scriptType: 'module',
84 | },
85 | watch: false,
86 | experiments: {
87 | asyncWebAssembly: true,
88 | topLevelAwait: false,
89 | css: true,
90 | },
91 | module: {
92 | parser: {
93 | javascript: {
94 | requireContext: false,
95 | url: false,
96 | },
97 | },
98 | rules: [
99 | // Global assets
100 | {
101 | test: /\.?(sa|sc|c)ss$/,
102 | resourceQuery: /\?ngGlobalStyle/,
103 | use: [
104 | {
105 | loader: 'sass-loader',
106 | options: {
107 | api: 'modern-compiler',
108 | implementation: require.resolve('sass-embedded'),
109 | },
110 | },
111 | ],
112 | type: 'css',
113 | },
114 |
115 | // Component templates
116 | {
117 | test: /\.?(svg|html)$/,
118 | resourceQuery: /\?ngResource/,
119 | type: 'asset/source',
120 | },
121 | // Component styles
122 | {
123 | test: /\.?(sa|sc|c)ss$/,
124 | resourceQuery: /\?ngResource/,
125 | use: [
126 | {
127 | loader: require.resolve('raw-loader'),
128 | },
129 | {
130 | loader: 'sass-loader',
131 | options: {
132 | api: 'modern-compiler',
133 | implementation: require.resolve('sass-embedded'),
134 | },
135 | },
136 | ],
137 | },
138 | {
139 | // Mark files inside `rxjs/add` as containing side effects.
140 | // If this is fixed upstream and the fixed version becomes the minimum
141 | // supported version, this can be removed.
142 | test: /[/\\]rxjs[/\\]add[/\\].+\.js$/,
143 | sideEffects: true,
144 | },
145 | {
146 | test: /\.[cm]?[tj]sx?$/,
147 | // The below is needed due to a bug in `@babel/runtime`. See: https://github.com/babel/babel/issues/12824
148 | resolve: { fullySpecified: false },
149 | exclude: [
150 | /[\\/]node_modules[/\\](?:core-js|@babel|tslib|web-animations-js|web-streams-polyfill|whatwg-url)[/\\]/,
151 | ],
152 | use: [
153 | {
154 | loader: require.resolve(
155 | '@angular-devkit/build-angular/src/tools/babel/webpack-loader.js'
156 | ),
157 | options: {
158 | cacheDirectory: false,
159 | aot: true,
160 | optimize: true,
161 | supportedBrowsers,
162 | },
163 | },
164 | ],
165 | },
166 | {
167 | test: /\.[cm]?tsx?$/,
168 | use: [
169 | { loader: require.resolve('@ngtools/webpack/src/ivy/index.js') },
170 | ],
171 | exclude: [
172 | /[\\/]node_modules[/\\](?:css-loader|mini-css-extract-plugin|webpack-dev-server|webpack)[/\\]/,
173 | ],
174 | },
175 | ],
176 | },
177 | optimization: {
178 | minimize: true,
179 | minimizer: [
180 | new JavaScriptOptimizerPlugin({
181 | advanced: true,
182 | define: {
183 | ngDevMode: false,
184 | ngI18nClosureMode: false,
185 | ngJitMode: false,
186 | },
187 | keepIdentifierNames: false,
188 | removeLicenses: true,
189 | sourcemap: false,
190 | }),
191 | new TransferSizePlugin(),
192 | new CssOptimizerPlugin(),
193 | ],
194 | },
195 | plugins: [
196 | new StylesWebpackPlugin({
197 | root: __dirname,
198 | entryPoints: {
199 | styles: ['src/styles.css'],
200 | },
201 | preserveSymlinks: false,
202 | }),
203 | new CopyRspackPlugin({
204 | patterns: [
205 | {
206 | from: 'src/assets',
207 | to: '.',
208 | globOptions: {
209 | dot: false,
210 | },
211 | noErrorOnMissing: true,
212 | },
213 | {
214 | from: 'src/favicon.ico',
215 | to: '.',
216 | },
217 | ],
218 | }),
219 | new ProgressPlugin(),
220 | new CssExtractRspackPlugin(),
221 | new HtmlRspackPlugin({
222 | minify: false,
223 | inject: 'body',
224 | scriptLoading: 'module',
225 | template: 'src/index.html',
226 | }),
227 | new AngularWebpackPlugin({
228 | tsconfig: path.resolve(__dirname, 'tsconfig.app.json'),
229 | emitClassMetadata: false,
230 | emitNgModuleScope: false,
231 | jitMode: false,
232 | directTemplateLoading: true,
233 | compilerOptions: {
234 | sourceMap: false,
235 | declaration: false,
236 | declarationMap: false,
237 | preserveSymlinks: false,
238 | },
239 | inlineStyleFileExtension: 'css',
240 | }),
241 | new ModuleFederationPlugin({
242 | name: 'mfe2',
243 | exposes: {
244 | './app': './src/app/app.component.ts'
245 | },
246 | shared: ['@angular/core', '@angular/common', '@angular/router'],
247 | }),
248 | ],
249 | };
250 |
251 | return config;
252 | });
253 |
254 | /**
255 | * Ported from Angular CLI Webpack plugin.
256 | * https://github.com/angular/angular-cli/blob/main/packages/angular_devkit/build_angular/src/tools/webpack/plugins/styles-webpack-plugin.ts
257 | */
258 | class StylesWebpackPlugin {
259 | options;
260 | compilation;
261 | constructor(options) {
262 | this.options = options;
263 | }
264 | apply(compiler) {
265 | const { entryPoints, preserveSymlinks, root } = this.options;
266 | const resolver = compiler.resolverFactory.get('global-styles', {
267 | conditionNames: ['sass', 'less', 'style'],
268 | mainFields: ['sass', 'less', 'style', 'main', '...'],
269 | extensions: ['.scss', '.sass', '.less', '.css'],
270 | restrictions: [/\.((le|sa|sc|c)ss)$/i],
271 | preferRelative: true,
272 | useSyncFileSystemCalls: true,
273 | symlinks: !preserveSymlinks,
274 | fileSystem: compiler.inputFileSystem,
275 | });
276 | const webpackOptions = compiler.options;
277 | compiler.hooks.environment.tap('styles-webpack-plugin', () => {
278 | const entrypoints = webpackOptions.entry;
279 | for (const [bundleName, paths] of Object.entries(entryPoints)) {
280 | entrypoints[bundleName] ??= {};
281 | const entryImport = (entrypoints[bundleName].import ??= []);
282 | for (const path of paths) {
283 | try {
284 | const resolvedPath = resolver.resolveSync({}, root, path);
285 | if (resolvedPath) {
286 | entryImport.push(`${resolvedPath}?ngGlobalStyle`);
287 | } else {
288 | console.error('Compilation cannot be undefined.');
289 | throw new Error(`Cannot resolve '${path}'.`);
290 | }
291 | } catch (error) {
292 | console.error('Compilation cannot be undefined.');
293 | throw error;
294 | }
295 | }
296 | }
297 | return entrypoints;
298 | });
299 | compiler.hooks.thisCompilation.tap(
300 | 'styles-webpack-plugin',
301 | (compilation) => {
302 | this.compilation = compilation;
303 | }
304 | );
305 | }
306 | }
307 |
--------------------------------------------------------------------------------
/apps/mfe2/src/app/app.component.html:
--------------------------------------------------------------------------------
1 | {{ title }}
2 |
3 | Mauris mollis dictum augue sed dictum. Integer fringilla, quam a elementum faucibus, turpis ipsum placerat mauris, aliquam tincidunt dui magna in nisi. Duis tincidunt urna vitae tortor venenatis, et sollicitudin quam pharetra. Integer pretium massa ligula, facilisis gravida massa varius ac. Aliquam gravida, arcu id lacinia tincidunt, odio ex commodo massa, et tincidunt tortor felis in nisl. Mauris nec ligula eget nisl aliquet rhoncus. Mauris laoreet vehicula maximus.
4 |
--------------------------------------------------------------------------------
/apps/mfe2/src/app/app.component.scss:
--------------------------------------------------------------------------------
1 | h2 {
2 | font-size: 1.4rem;
3 | margin-bottom: 2rem;
4 | margin-top: 1rem;
5 | text-decoration: underline;
6 | }
7 |
8 | img {
9 | width: 96px;
10 | display: inline-block;
11 | margin: 0 8px;
12 | }
13 |
14 | section {
15 | display: flex;
16 | justify-content: center;
17 | align-items: center;
18 | flex-direction: row-reverse;
19 | }
20 |
--------------------------------------------------------------------------------
/apps/mfe2/src/app/app.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | standalone: true,
5 | selector: 'app-root',
6 | templateUrl: './app.component.html',
7 | styleUrl: './app.component.scss',
8 | })
9 | export class AppComponent {
10 | title = 'mfe2';
11 | }
12 |
--------------------------------------------------------------------------------
/apps/mfe2/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/mfe2/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/mfe2/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/edbzn/ng-rspack/728cb9196a6a6fa22ce2f4b0cf2c8cbc644dc6cb/apps/mfe2/src/favicon.ico
--------------------------------------------------------------------------------
/apps/mfe2/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ng-rspack
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/apps/mfe2/src/main.ts:
--------------------------------------------------------------------------------
1 | import { bootstrapApplication } from '@angular/platform-browser';
2 | import { AppComponent } from './app/app.component';
3 |
4 | bootstrapApplication(AppComponent).catch((err) =>
5 | console.error(err)
6 | );
7 |
--------------------------------------------------------------------------------
/apps/mfe2/src/styles.css:
--------------------------------------------------------------------------------
1 | body,
2 | html {
3 | margin: 0;
4 | padding: 0;
5 | font-family: 'Roboto', sans-serif;
6 | background-color: #f0f0f0;
7 | }
8 |
--------------------------------------------------------------------------------
/apps/mfe2/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": []
6 | },
7 | "files": ["src/main.ts"],
8 | "include": ["src/**/*.d.ts"],
9 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/apps/mfe2/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["src/**/*.ts"],
4 | "compilerOptions": {},
5 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
6 | }
7 |
--------------------------------------------------------------------------------
/apps/mfe2/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "useDefineForClassFields": false,
4 | "forceConsistentCasingInFileNames": true,
5 | "strict": true,
6 | "noImplicitOverride": true,
7 | "noPropertyAccessFromIndexSignature": true,
8 | "noImplicitReturns": true,
9 | "noFallthroughCasesInSwitch": true
10 | },
11 | "files": [],
12 | "include": [],
13 | "references": [
14 | {
15 | "path": "./tsconfig.editor.json"
16 | },
17 | {
18 | "path": "./tsconfig.app.json"
19 | }
20 | ],
21 | "angularCompilerOptions": {
22 | "enableI18nLegacyMessageIdFormat": false,
23 | "strictInjectionParameters": true,
24 | "strictInputAccessModifiers": true,
25 | "strictTemplates": true
26 | },
27 | "extends": "../../tsconfig.base.json"
28 | }
29 |
--------------------------------------------------------------------------------
/build.log:
--------------------------------------------------------------------------------
1 | total 480K
2 | drwxr-xr-x 2 runner docker 4.0K May 1 11:07 .
3 | drwxr-xr-x 3 runner docker 4.0K May 1 11:07 ..
4 | -rw-r--r-- 1 runner docker 566 May 1 11:07 index.html
5 | -rw-r--r-- 1 runner docker 422K May 1 11:07 main.a3ed9c5b82f3d83228d8.js
6 | -rw-r--r-- 1 runner docker 33K May 1 11:07 polyfills.61249712ff98a87fea6a.js
7 | -rw-r--r-- 1 runner docker 499 May 1 11:07 styles.1620bfe86cca3951a762.js
8 | -rw-r--r-- 1 runner docker 86 May 1 11:07 styles.ea198d9757440874694a.css
9 | total 480K
10 | drwxr-xr-x 2 runner docker 4.0K May 1 11:11 .
11 | drwxr-xr-x 3 runner docker 4.0K May 1 11:11 ..
12 | -rw-r--r-- 1 runner docker 566 May 1 11:11 index.html
13 | -rw-r--r-- 1 runner docker 422K May 1 11:11 main.a3ed9c5b82f3d83228d8.js
14 | -rw-r--r-- 1 runner docker 33K May 1 11:11 polyfills.61249712ff98a87fea6a.js
15 | -rw-r--r-- 1 runner docker 499 May 1 11:11 styles.1620bfe86cca3951a762.js
16 | -rw-r--r-- 1 runner docker 86 May 1 11:11 styles.ea198d9757440874694a.css
17 | total 480K
18 | drwxr-xr-x 2 runner docker 4.0K May 1 11:56 .
19 | drwxr-xr-x 3 runner docker 4.0K May 1 11:56 ..
20 | -rw-r--r-- 1 runner docker 566 May 1 11:56 index.html
21 | -rw-r--r-- 1 runner docker 421K May 1 11:56 main.bc68a9280c84297332b5.js
22 | -rw-r--r-- 1 runner docker 33K May 1 11:56 polyfills.60fe1a4e932056ef2c8f.js
23 | -rw-r--r-- 1 runner docker 499 May 1 11:56 styles.1620bfe86cca3951a762.js
24 | -rw-r--r-- 1 runner docker 86 May 1 11:56 styles.ea198d9757440874694a.css
25 | total 480K
26 | drwxr-xr-x 2 runner docker 4.0K May 1 11:59 .
27 | drwxr-xr-x 3 runner docker 4.0K May 1 11:59 ..
28 | -rw-r--r-- 1 runner docker 566 May 1 11:59 index.html
29 | -rw-r--r-- 1 runner docker 421K May 1 11:59 main.f45a5ed4b2cda7770f92.js
30 | -rw-r--r-- 1 runner docker 33K May 1 11:59 polyfills.20dc7a7b65695a6fa4c7.js
31 | -rw-r--r-- 1 runner docker 499 May 1 11:59 styles.1620bfe86cca3951a762.js
32 | -rw-r--r-- 1 runner docker 84 May 1 11:59 styles.8caa6477d1586f6b9492.css
33 | total 480K
34 | drwxr-xr-x 2 runner docker 4.0K May 1 12:36 .
35 | drwxr-xr-x 3 runner docker 4.0K May 1 12:36 ..
36 | -rw-r--r-- 1 runner docker 455 May 1 12:36 index.html
37 | -rw-r--r-- 1 runner docker 421K May 1 12:36 main.f45a5ed4b2cda7770f92.js
38 | -rw-r--r-- 1 runner docker 33K May 1 12:36 polyfills.20dc7a7b65695a6fa4c7.js
39 | -rw-r--r-- 1 runner docker 499 May 1 12:36 styles.1620bfe86cca3951a762.js
40 | -rw-r--r-- 1 runner docker 84 May 1 12:36 styles.8caa6477d1586f6b9492.css
41 | total 480K
42 | drwxr-xr-x 2 runner docker 4.0K May 1 12:49 .
43 | drwxr-xr-x 3 runner docker 4.0K May 1 12:49 ..
44 | -rw-r--r-- 1 runner docker 455 May 1 12:49 index.html
45 | -rw-r--r-- 1 runner docker 421K May 1 12:49 main.f45a5ed4b2cda7770f92.js
46 | -rw-r--r-- 1 runner docker 33K May 1 12:49 polyfills.20dc7a7b65695a6fa4c7.js
47 | -rw-r--r-- 1 runner docker 499 May 1 12:49 styles.1620bfe86cca3951a762.js
48 | -rw-r--r-- 1 runner docker 84 May 1 12:49 styles.8caa6477d1586f6b9492.css
49 | total 480K
50 | drwxr-xr-x 2 runner docker 4.0K May 1 12:50 .
51 | drwxr-xr-x 3 runner docker 4.0K May 1 12:50 ..
52 | -rw-r--r-- 1 runner docker 455 May 1 12:50 index.html
53 | -rw-r--r-- 1 runner docker 421K May 1 12:50 main.f45a5ed4b2cda7770f92.js
54 | -rw-r--r-- 1 runner docker 33K May 1 12:50 polyfills.20dc7a7b65695a6fa4c7.js
55 | -rw-r--r-- 1 runner docker 499 May 1 12:50 styles.1620bfe86cca3951a762.js
56 | -rw-r--r-- 1 runner docker 84 May 1 12:50 styles.8caa6477d1586f6b9492.css
57 |
58 | NX Running targets build, build-wp, build-es for project ng-rspack:
59 |
60 | - ng-rspack
61 |
62 |
63 |
64 | ::group::✅ > nx run ng-rspack:build-es:production
65 |
66 | - Building...
67 |
68 | Initial chunk files | Names | Raw size | Estimated transfer size
69 | main-MNAIRYWO.js | main | 180.65 kB | 48.62 kB
70 | polyfills-7NI4OVGA.js | polyfills | 33.10 kB | 10.72 kB
71 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
72 |
73 | | Initial total | 213.84 kB | 59.42 kB
74 |
75 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
76 |
77 | Application bundle generation complete. [10.382 seconds]
78 |
79 | ::endgroup::
80 | ::group::✅ > nx run ng-rspack:build:production
81 |
82 | PublicPath: (none)
83 | asset index.html 455 bytes [emitted]
84 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
85 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
86 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
87 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
88 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
89 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
90 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
91 | orphan modules [orphan] 149 modules
92 | runtime modules 7 modules
93 | + 91 modules
94 | Rspack 0.6.3 compiled successfully in 13.12 s (389a9154226210f70563)
95 | ::endgroup::
96 | ::group::✅ > nx run ng-rspack:build-wp:production
97 |
98 | - Generating browser application bundles (phase: setup)...
99 | ✔ Browser application bundle generation complete.
100 | ✔ Browser application bundle generation complete.
101 | - Copying assets...
102 | ✔ Copying assets complete.
103 | - Generating index html...
104 | ✔ Index html generation complete.
105 |
106 | Initial chunk files | Names | Raw size | Estimated transfer size
107 | main.e68e7cbf8feae6b6.js | main | 179.83 kB | 48.18 kB
108 | polyfills.217bf7d4eff80d0e.js | polyfills | 33.37 kB | 10.73 kB
109 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
110 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
111 |
112 | | Initial total | 214.16 kB | 59.46 kB
113 |
114 | Build at: 2024-05-02T09:27:50.404Z - Hash: 610c6efabecb6db3 - Time: 17132ms
115 | ::endgroup::
116 |
117 |
118 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
119 |
120 |
121 | total 480K
122 | drwxr-xr-x 2 runner docker 4.0K May 2 09:27 .
123 | drwxr-xr-x 5 runner docker 4.0K May 2 09:27 ..
124 | -rw-r--r-- 1 runner docker 455 May 2 09:27 index.html
125 | -rw-r--r-- 1 runner docker 421K May 2 09:27 main.f45a5ed4b2cda7770f92.js
126 | -rw-r--r-- 1 runner docker 33K May 2 09:27 polyfills.20dc7a7b65695a6fa4c7.js
127 | -rw-r--r-- 1 runner docker 499 May 2 09:27 styles.1620bfe86cca3951a762.js
128 | -rw-r--r-- 1 runner docker 84 May 2 09:27 styles.8caa6477d1586f6b9492.css
129 | total 268K
130 | drwxr-xr-x 2 runner docker 4.0K May 2 09:27 .
131 | drwxr-xr-x 5 runner docker 4.0K May 2 09:27 ..
132 | -rw-r--r-- 1 runner docker 13K May 2 09:27 3rdpartylicenses.txt
133 | -rw-r--r-- 1 runner docker 15K May 2 09:27 favicon.ico
134 | -rw-r--r-- 1 runner docker 809 May 2 09:27 index.html
135 | -rw-r--r-- 1 runner docker 180K May 2 09:27 main.e68e7cbf8feae6b6.js
136 | -rw-r--r-- 1 runner docker 34K May 2 09:27 polyfills.217bf7d4eff80d0e.js
137 | -rw-r--r-- 1 runner docker 896 May 2 09:27 runtime.6c9861ca6e26c512.js
138 | -rw-r--r-- 1 runner docker 85 May 2 09:27 styles.9cc1c87275a936d2.css
139 | total 28K
140 | drwxr-xr-x 3 runner docker 4.0K May 2 09:27 .
141 | drwxr-xr-x 5 runner docker 4.0K May 2 09:27 ..
142 | -rw-r--r-- 1 runner docker 14K May 2 09:27 3rdpartylicenses.txt
143 | drwxr-xr-x 2 runner docker 4.0K May 2 09:27 browser
144 |
145 | NX Running targets build, build-wp, build-es for project ng-rspack:
146 |
147 | - ng-rspack
148 |
149 |
150 |
151 | ::group::✅ > nx run ng-rspack:build-es:production
152 |
153 | - Building...
154 |
155 | Initial chunk files | Names | Raw size | Estimated transfer size
156 | main-MNAIRYWO.js | main | 180.65 kB | 48.62 kB
157 | polyfills-7NI4OVGA.js | polyfills | 33.10 kB | 10.72 kB
158 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
159 |
160 | | Initial total | 213.84 kB | 59.42 kB
161 |
162 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
163 |
164 | Application bundle generation complete. [10.613 seconds]
165 |
166 | ::endgroup::
167 | ::group::✅ > nx run ng-rspack:build:production
168 |
169 | PublicPath: (none)
170 | asset index.html 455 bytes [emitted]
171 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
172 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
173 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
174 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
175 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
176 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
177 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
178 | orphan modules [orphan] 149 modules
179 | runtime modules 7 modules
180 | + 91 modules
181 | Rspack 0.6.3 compiled successfully in 13.51 s (389a9154226210f70563)
182 | ::endgroup::
183 | ::group::✅ > nx run ng-rspack:build-wp:production
184 |
185 | - Generating browser application bundles (phase: setup)...
186 | ✔ Browser application bundle generation complete.
187 | ✔ Browser application bundle generation complete.
188 | - Copying assets...
189 | ✔ Copying assets complete.
190 | - Generating index html...
191 | ✔ Index html generation complete.
192 |
193 | Initial chunk files | Names | Raw size | Estimated transfer size
194 | main.e68e7cbf8feae6b6.js | main | 179.83 kB | 48.18 kB
195 | polyfills.217bf7d4eff80d0e.js | polyfills | 33.37 kB | 10.73 kB
196 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
197 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
198 |
199 | | Initial total | 214.16 kB | 59.46 kB
200 |
201 | Build at: 2024-05-02T09:29:26.131Z - Hash: 610c6efabecb6db3 - Time: 17640ms
202 | ::endgroup::
203 |
204 |
205 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
206 |
207 |
208 | total 480K
209 | drwxr-xr-x 2 runner docker 4.0K May 2 09:29 .
210 | drwxr-xr-x 5 runner docker 4.0K May 2 09:29 ..
211 | -rw-r--r-- 1 runner docker 455 May 2 09:29 index.html
212 | -rw-r--r-- 1 runner docker 421K May 2 09:29 main.f45a5ed4b2cda7770f92.js
213 | -rw-r--r-- 1 runner docker 33K May 2 09:29 polyfills.20dc7a7b65695a6fa4c7.js
214 | -rw-r--r-- 1 runner docker 499 May 2 09:29 styles.1620bfe86cca3951a762.js
215 | -rw-r--r-- 1 runner docker 84 May 2 09:29 styles.8caa6477d1586f6b9492.css
216 | total 268K
217 | drwxr-xr-x 2 runner docker 4.0K May 2 09:29 .
218 | drwxr-xr-x 5 runner docker 4.0K May 2 09:29 ..
219 | -rw-r--r-- 1 runner docker 13K May 2 09:29 3rdpartylicenses.txt
220 | -rw-r--r-- 1 runner docker 15K May 2 09:29 favicon.ico
221 | -rw-r--r-- 1 runner docker 809 May 2 09:29 index.html
222 | -rw-r--r-- 1 runner docker 180K May 2 09:29 main.e68e7cbf8feae6b6.js
223 | -rw-r--r-- 1 runner docker 34K May 2 09:29 polyfills.217bf7d4eff80d0e.js
224 | -rw-r--r-- 1 runner docker 896 May 2 09:29 runtime.6c9861ca6e26c512.js
225 | -rw-r--r-- 1 runner docker 85 May 2 09:29 styles.9cc1c87275a936d2.css
226 | total 252K
227 | drwxr-xr-x 2 runner docker 4.0K May 2 09:29 .
228 | drwxr-xr-x 3 runner docker 4.0K May 2 09:29 ..
229 | -rw-r--r-- 1 runner docker 15K May 2 09:29 favicon.ico
230 | -rw-r--r-- 1 runner docker 713 May 2 09:29 index.html
231 | -rw-r--r-- 1 runner docker 181K May 2 09:29 main-MNAIRYWO.js
232 | -rw-r--r-- 1 runner docker 34K May 2 09:29 polyfills-7NI4OVGA.js
233 | -rw-r--r-- 1 runner docker 85 May 2 09:29 styles-IXCL2UTK.css
234 |
235 | NX Running targets build, build-wp, build-es for project ng-rspack:
236 |
237 | - ng-rspack
238 |
239 |
240 |
241 | ::group::✅ > nx run ng-rspack:build-es:production
242 |
243 | - Building...
244 |
245 | Initial chunk files | Names | Raw size | Estimated transfer size
246 | main-MNAIRYWO.js | main | 180.65 kB | 48.62 kB
247 | polyfills-7NI4OVGA.js | polyfills | 33.10 kB | 10.72 kB
248 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
249 |
250 | | Initial total | 213.84 kB | 59.42 kB
251 |
252 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
253 |
254 | Application bundle generation complete. [10.918 seconds]
255 |
256 | ::endgroup::
257 | ::group::✅ > nx run ng-rspack:build:production
258 |
259 | PublicPath: (none)
260 | asset index.html 455 bytes [emitted]
261 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
262 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
263 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
264 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
265 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
266 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
267 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
268 | orphan modules [orphan] 149 modules
269 | runtime modules 7 modules
270 | + 91 modules
271 | Rspack 0.6.3 compiled successfully in 13.99 s (389a9154226210f70563)
272 | ::endgroup::
273 | ::group::✅ > nx run ng-rspack:build-wp:production
274 |
275 | - Generating browser application bundles (phase: setup)...
276 | ✔ Browser application bundle generation complete.
277 | ✔ Browser application bundle generation complete.
278 | - Copying assets...
279 | ✔ Copying assets complete.
280 | - Generating index html...
281 | ✔ Index html generation complete.
282 |
283 | Initial chunk files | Names | Raw size | Estimated transfer size
284 | main.e68e7cbf8feae6b6.js | main | 179.83 kB | 48.18 kB
285 | polyfills.217bf7d4eff80d0e.js | polyfills | 33.37 kB | 10.73 kB
286 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
287 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
288 |
289 | | Initial total | 214.16 kB | 59.46 kB
290 |
291 | Build at: 2024-05-02T09:39:55.202Z - Hash: 610c6efabecb6db3 - Time: 18155ms
292 | ::endgroup::
293 |
294 |
295 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
296 |
297 |
298 | total 480K
299 | drwxr-xr-x 2 runner docker 4.0K May 2 09:39 .
300 | drwxr-xr-x 5 runner docker 4.0K May 2 09:39 ..
301 | -rw-r--r-- 1 runner docker 455 May 2 09:39 index.html
302 | -rw-r--r-- 1 runner docker 421K May 2 09:39 main.f45a5ed4b2cda7770f92.js
303 | -rw-r--r-- 1 runner docker 33K May 2 09:39 polyfills.20dc7a7b65695a6fa4c7.js
304 | -rw-r--r-- 1 runner docker 499 May 2 09:39 styles.1620bfe86cca3951a762.js
305 | -rw-r--r-- 1 runner docker 84 May 2 09:39 styles.8caa6477d1586f6b9492.css
306 | total 268K
307 | drwxr-xr-x 2 runner docker 4.0K May 2 09:39 .
308 | drwxr-xr-x 5 runner docker 4.0K May 2 09:39 ..
309 | -rw-r--r-- 1 runner docker 13K May 2 09:39 3rdpartylicenses.txt
310 | -rw-r--r-- 1 runner docker 15K May 2 09:39 favicon.ico
311 | -rw-r--r-- 1 runner docker 809 May 2 09:39 index.html
312 | -rw-r--r-- 1 runner docker 180K May 2 09:39 main.e68e7cbf8feae6b6.js
313 | -rw-r--r-- 1 runner docker 34K May 2 09:39 polyfills.217bf7d4eff80d0e.js
314 | -rw-r--r-- 1 runner docker 896 May 2 09:39 runtime.6c9861ca6e26c512.js
315 | -rw-r--r-- 1 runner docker 85 May 2 09:39 styles.9cc1c87275a936d2.css
316 | total 252K
317 | drwxr-xr-x 2 runner docker 4.0K May 2 09:39 .
318 | drwxr-xr-x 3 runner docker 4.0K May 2 09:39 ..
319 | -rw-r--r-- 1 runner docker 15K May 2 09:39 favicon.ico
320 | -rw-r--r-- 1 runner docker 713 May 2 09:39 index.html
321 | -rw-r--r-- 1 runner docker 181K May 2 09:39 main-MNAIRYWO.js
322 | -rw-r--r-- 1 runner docker 34K May 2 09:39 polyfills-7NI4OVGA.js
323 | -rw-r--r-- 1 runner docker 85 May 2 09:39 styles-IXCL2UTK.css
324 |
325 | NX Running targets build, build-wp, build-es for project ng-rspack:
326 |
327 | - ng-rspack
328 |
329 |
330 |
331 | ::group::✅ > nx run ng-rspack:build-es:production
332 |
333 | - Building...
334 |
335 | Initial chunk files | Names | Raw size | Estimated transfer size
336 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
337 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
338 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
339 |
340 | | Initial total | 216.02 kB | 59.71 kB
341 |
342 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
343 |
344 | Application bundle generation complete. [10.964 seconds]
345 |
346 | ::endgroup::
347 | ::group::❌ > nx run ng-rspack:build:production
348 |
349 | PublicPath: (none)
350 | asset favicon.ico 14.7 KiB [emitted]
351 | asset index.html 455 bytes [emitted]
352 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
353 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
354 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
355 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
356 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
357 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
358 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
359 | orphan modules [orphan] 149 modules
360 | runtime modules 7 modules
361 | + 91 modules
362 |
363 | ERROR in × unable to locate '/home/runner/work/ng-rspack/ng-rspack/src/assets/**/*' glob
364 |
365 | ERROR in × unable to locate '/home/runner/work/ng-rspack/ng-rspack/src/assets/**/*' glob
366 |
367 | Rspack 0.6.3 compiled with 2 errors in 13.61 s (389a9154226210f70563)
368 | ::endgroup::
369 | ::group::✅ > nx run ng-rspack:build-wp:production
370 |
371 | - Generating browser application bundles (phase: setup)...
372 | ✔ Browser application bundle generation complete.
373 | ✔ Browser application bundle generation complete.
374 | - Copying assets...
375 | ✔ Copying assets complete.
376 | - Generating index html...
377 | ✔ Index html generation complete.
378 |
379 | Initial chunk files | Names | Raw size | Estimated transfer size
380 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
381 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
382 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
383 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
384 |
385 | | Initial total | 215.06 kB | 59.77 kB
386 |
387 | Build at: 2024-05-02T09:58:27.951Z - Hash: 610c6efabecb6db3 - Time: 17785ms
388 | ::endgroup::
389 |
390 |
391 | NX Running targets build, build-wp, build-es for project ng-rspack failed
392 |
393 | Failed tasks:
394 |
395 | - ng-rspack:build:production
396 |
397 | total 496K
398 | drwxr-xr-x 2 runner docker 4.0K May 2 09:58 .
399 | drwxr-xr-x 5 runner docker 4.0K May 2 09:58 ..
400 | -rw-r--r-- 1 runner docker 15K May 2 09:58 favicon.ico
401 | -rw-r--r-- 1 runner docker 455 May 2 09:58 index.html
402 | -rw-r--r-- 1 runner docker 421K May 2 09:58 main.f45a5ed4b2cda7770f92.js
403 | -rw-r--r-- 1 runner docker 33K May 2 09:58 polyfills.20dc7a7b65695a6fa4c7.js
404 | -rw-r--r-- 1 runner docker 499 May 2 09:58 styles.1620bfe86cca3951a762.js
405 | -rw-r--r-- 1 runner docker 84 May 2 09:58 styles.8caa6477d1586f6b9492.css
406 | total 256K
407 | drwxr-xr-x 2 runner docker 4.0K May 2 09:58 .
408 | drwxr-xr-x 5 runner docker 4.0K May 2 09:58 ..
409 | -rw-r--r-- 1 runner docker 15K May 2 09:58 favicon.ico
410 | -rw-r--r-- 1 runner docker 809 May 2 09:58 index.html
411 | -rw-r--r-- 1 runner docker 181K May 2 09:58 main.fc8be2d7e6197ab2.js
412 | -rw-r--r-- 1 runner docker 34K May 2 09:58 polyfills.65a06fed85d785f0.js
413 | -rw-r--r-- 1 runner docker 896 May 2 09:58 runtime.6c9861ca6e26c512.js
414 | -rw-r--r-- 1 runner docker 85 May 2 09:58 styles.9cc1c87275a936d2.css
415 | total 252K
416 | drwxr-xr-x 2 runner docker 4.0K May 2 09:58 .
417 | drwxr-xr-x 3 runner docker 4.0K May 2 09:58 ..
418 | -rw-r--r-- 1 runner docker 15K May 2 09:58 favicon.ico
419 | -rw-r--r-- 1 runner docker 713 May 2 09:58 index.html
420 | -rw-r--r-- 1 runner docker 183K May 2 09:58 main-NVHNK5VX.js
421 | -rw-r--r-- 1 runner docker 34K May 2 09:58 polyfills-6GG4SJ5I.js
422 | -rw-r--r-- 1 runner docker 85 May 2 09:58 styles-IXCL2UTK.css
423 |
424 | NX Running targets build, build-wp, build-es for project ng-rspack:
425 |
426 | - ng-rspack
427 |
428 |
429 |
430 | ::group::✅ > nx run ng-rspack:build-es:production
431 |
432 | - Building...
433 |
434 | Initial chunk files | Names | Raw size | Estimated transfer size
435 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
436 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
437 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
438 |
439 | | Initial total | 216.02 kB | 59.71 kB
440 |
441 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
442 |
443 | Application bundle generation complete. [10.940 seconds]
444 |
445 | ::endgroup::
446 | ::group::✅ > nx run ng-rspack:build:production
447 |
448 | PublicPath: (none)
449 | asset favicon.ico 14.7 KiB [emitted]
450 | asset index.html 455 bytes [emitted]
451 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
452 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
453 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
454 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
455 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
456 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
457 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
458 | orphan modules [orphan] 149 modules
459 | runtime modules 7 modules
460 | + 91 modules
461 | Rspack 0.6.3 compiled successfully in 13.26 s (389a9154226210f70563)
462 | ::endgroup::
463 | ::group::✅ > nx run ng-rspack:build-wp:production
464 |
465 | - Generating browser application bundles (phase: setup)...
466 | ✔ Browser application bundle generation complete.
467 | ✔ Browser application bundle generation complete.
468 | - Copying assets...
469 | ✔ Copying assets complete.
470 | - Generating index html...
471 | ✔ Index html generation complete.
472 |
473 | Initial chunk files | Names | Raw size | Estimated transfer size
474 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
475 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
476 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
477 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
478 |
479 | | Initial total | 215.06 kB | 59.77 kB
480 |
481 | Build at: 2024-05-02T10:02:08.450Z - Hash: 610c6efabecb6db3 - Time: 17537ms
482 | ::endgroup::
483 |
484 |
485 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
486 |
487 |
488 | total 496K
489 | drwxr-xr-x 2 runner docker 4.0K May 2 10:02 .
490 | drwxr-xr-x 5 runner docker 4.0K May 2 10:02 ..
491 | -rw-r--r-- 1 runner docker 15K May 2 10:02 favicon.ico
492 | -rw-r--r-- 1 runner docker 455 May 2 10:02 index.html
493 | -rw-r--r-- 1 runner docker 421K May 2 10:02 main.f45a5ed4b2cda7770f92.js
494 | -rw-r--r-- 1 runner docker 33K May 2 10:02 polyfills.20dc7a7b65695a6fa4c7.js
495 | -rw-r--r-- 1 runner docker 499 May 2 10:02 styles.1620bfe86cca3951a762.js
496 | -rw-r--r-- 1 runner docker 84 May 2 10:02 styles.8caa6477d1586f6b9492.css
497 | total 256K
498 | drwxr-xr-x 2 runner docker 4.0K May 2 10:02 .
499 | drwxr-xr-x 5 runner docker 4.0K May 2 10:02 ..
500 | -rw-r--r-- 1 runner docker 15K May 2 10:02 favicon.ico
501 | -rw-r--r-- 1 runner docker 809 May 2 10:02 index.html
502 | -rw-r--r-- 1 runner docker 181K May 2 10:02 main.fc8be2d7e6197ab2.js
503 | -rw-r--r-- 1 runner docker 34K May 2 10:02 polyfills.65a06fed85d785f0.js
504 | -rw-r--r-- 1 runner docker 896 May 2 10:02 runtime.6c9861ca6e26c512.js
505 | -rw-r--r-- 1 runner docker 85 May 2 10:02 styles.9cc1c87275a936d2.css
506 | total 252K
507 | drwxr-xr-x 2 runner docker 4.0K May 2 10:02 .
508 | drwxr-xr-x 3 runner docker 4.0K May 2 10:02 ..
509 | -rw-r--r-- 1 runner docker 15K May 2 10:02 favicon.ico
510 | -rw-r--r-- 1 runner docker 713 May 2 10:02 index.html
511 | -rw-r--r-- 1 runner docker 183K May 2 10:02 main-NVHNK5VX.js
512 | -rw-r--r-- 1 runner docker 34K May 2 10:02 polyfills-6GG4SJ5I.js
513 | -rw-r--r-- 1 runner docker 85 May 2 10:02 styles-IXCL2UTK.css
514 |
515 | NX Running targets build, build-wp, build-es for project ng-rspack:
516 |
517 | - ng-rspack
518 |
519 |
520 |
521 | ::group::✅ > nx run ng-rspack:build-es:production
522 |
523 | - Building...
524 |
525 | Initial chunk files | Names | Raw size | Estimated transfer size
526 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
527 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
528 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
529 |
530 | | Initial total | 216.02 kB | 59.71 kB
531 |
532 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
533 |
534 | Application bundle generation complete. [10.955 seconds]
535 |
536 | ::endgroup::
537 | ::group::✅ > nx run ng-rspack:build:production
538 |
539 | PublicPath: (none)
540 | asset favicon.ico 14.7 KiB [emitted]
541 | asset index.html 455 bytes [emitted]
542 | asset main.d093cf36117883182993.js 418 KiB [emitted] (name: main)
543 | asset polyfills.265ca2abb957aaffce32.js 33.4 KiB [emitted] (name: polyfills)
544 | asset styles.3a1ac1a1549ee6732218.js 497 bytes [emitted] (name: styles)
545 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
546 | Entrypoint styles 581 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.3a1ac1a1549ee6732218.js 497 bytes
547 | Entrypoint polyfills 33.4 KiB = polyfills.265ca2abb957aaffce32.js
548 | Entrypoint main 418 KiB = main.d093cf36117883182993.js
549 | orphan modules [orphan] 149 modules
550 | runtime modules 7 modules
551 | + 91 modules
552 | Rspack 0.6.3 compiled successfully in 18.72 s (edf36199ba433e38f48d)
553 | ::endgroup::
554 | ::group::✅ > nx run ng-rspack:build-wp:production
555 |
556 | - Generating browser application bundles (phase: setup)...
557 | ✔ Browser application bundle generation complete.
558 | ✔ Browser application bundle generation complete.
559 | - Copying assets...
560 | ✔ Copying assets complete.
561 | - Generating index html...
562 | ✔ Index html generation complete.
563 |
564 | Initial chunk files | Names | Raw size | Estimated transfer size
565 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
566 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
567 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
568 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
569 |
570 | | Initial total | 215.06 kB | 59.77 kB
571 |
572 | Build at: 2024-05-02T10:28:14.447Z - Hash: 610c6efabecb6db3 - Time: 19033ms
573 | ::endgroup::
574 |
575 |
576 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
577 |
578 |
579 | total 492K
580 | drwxr-xr-x 2 runner docker 4.0K May 2 10:28 .
581 | drwxr-xr-x 5 runner docker 4.0K May 2 10:28 ..
582 | -rw-r--r-- 1 runner docker 15K May 2 10:28 favicon.ico
583 | -rw-r--r-- 1 runner docker 455 May 2 10:28 index.html
584 | -rw-r--r-- 1 runner docker 419K May 2 10:28 main.d093cf36117883182993.js
585 | -rw-r--r-- 1 runner docker 34K May 2 10:28 polyfills.265ca2abb957aaffce32.js
586 | -rw-r--r-- 1 runner docker 497 May 2 10:28 styles.3a1ac1a1549ee6732218.js
587 | -rw-r--r-- 1 runner docker 84 May 2 10:28 styles.8caa6477d1586f6b9492.css
588 | total 256K
589 | drwxr-xr-x 2 runner docker 4.0K May 2 10:28 .
590 | drwxr-xr-x 5 runner docker 4.0K May 2 10:28 ..
591 | -rw-r--r-- 1 runner docker 15K May 2 10:28 favicon.ico
592 | -rw-r--r-- 1 runner docker 809 May 2 10:28 index.html
593 | -rw-r--r-- 1 runner docker 181K May 2 10:28 main.fc8be2d7e6197ab2.js
594 | -rw-r--r-- 1 runner docker 34K May 2 10:28 polyfills.65a06fed85d785f0.js
595 | -rw-r--r-- 1 runner docker 896 May 2 10:28 runtime.6c9861ca6e26c512.js
596 | -rw-r--r-- 1 runner docker 85 May 2 10:28 styles.9cc1c87275a936d2.css
597 | total 252K
598 | drwxr-xr-x 2 runner docker 4.0K May 2 10:28 .
599 | drwxr-xr-x 3 runner docker 4.0K May 2 10:28 ..
600 | -rw-r--r-- 1 runner docker 15K May 2 10:28 favicon.ico
601 | -rw-r--r-- 1 runner docker 713 May 2 10:28 index.html
602 | -rw-r--r-- 1 runner docker 183K May 2 10:28 main-NVHNK5VX.js
603 | -rw-r--r-- 1 runner docker 34K May 2 10:28 polyfills-6GG4SJ5I.js
604 | -rw-r--r-- 1 runner docker 85 May 2 10:28 styles-IXCL2UTK.css
605 |
606 | NX Running targets build, build-wp, build-es for project ng-rspack:
607 |
608 | - ng-rspack
609 |
610 |
611 |
612 | ::group::✅ > nx run ng-rspack:build-es:production
613 |
614 | - Building...
615 |
616 | Initial chunk files | Names | Raw size | Estimated transfer size
617 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
618 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
619 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
620 |
621 | | Initial total | 216.02 kB | 59.71 kB
622 |
623 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
624 |
625 | Application bundle generation complete. [11.084 seconds]
626 |
627 | ::endgroup::
628 | ::group::✅ > nx run ng-rspack:build:production
629 |
630 | PublicPath: (none)
631 | asset favicon.ico 14.7 KiB [emitted]
632 | asset index.html 455 bytes [emitted]
633 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
634 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
635 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
636 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
637 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
638 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
639 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
640 | orphan modules [orphan] 149 modules
641 | runtime modules 7 modules
642 | + 91 modules
643 | Rspack 0.6.3 compiled successfully in 13.85 s (389a9154226210f70563)
644 | ::endgroup::
645 | ::group::✅ > nx run ng-rspack:build-wp:production
646 |
647 | - Generating browser application bundles (phase: setup)...
648 | ✔ Browser application bundle generation complete.
649 | ✔ Browser application bundle generation complete.
650 | - Copying assets...
651 | ✔ Copying assets complete.
652 | - Generating index html...
653 | ✔ Index html generation complete.
654 |
655 | Initial chunk files | Names | Raw size | Estimated transfer size
656 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
657 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
658 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
659 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
660 |
661 | | Initial total | 215.06 kB | 59.77 kB
662 |
663 | Build at: 2024-05-02T12:37:11.552Z - Hash: 610c6efabecb6db3 - Time: 18139ms
664 | ::endgroup::
665 |
666 |
667 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
668 |
669 |
670 | total 496K
671 | drwxr-xr-x 2 runner docker 4.0K May 2 12:37 .
672 | drwxr-xr-x 5 runner docker 4.0K May 2 12:37 ..
673 | -rw-r--r-- 1 runner docker 15K May 2 12:37 favicon.ico
674 | -rw-r--r-- 1 runner docker 455 May 2 12:37 index.html
675 | -rw-r--r-- 1 runner docker 421K May 2 12:37 main.f45a5ed4b2cda7770f92.js
676 | -rw-r--r-- 1 runner docker 33K May 2 12:37 polyfills.20dc7a7b65695a6fa4c7.js
677 | -rw-r--r-- 1 runner docker 499 May 2 12:37 styles.1620bfe86cca3951a762.js
678 | -rw-r--r-- 1 runner docker 84 May 2 12:37 styles.8caa6477d1586f6b9492.css
679 | total 256K
680 | drwxr-xr-x 2 runner docker 4.0K May 2 12:37 .
681 | drwxr-xr-x 5 runner docker 4.0K May 2 12:37 ..
682 | -rw-r--r-- 1 runner docker 15K May 2 12:37 favicon.ico
683 | -rw-r--r-- 1 runner docker 809 May 2 12:37 index.html
684 | -rw-r--r-- 1 runner docker 181K May 2 12:37 main.fc8be2d7e6197ab2.js
685 | -rw-r--r-- 1 runner docker 34K May 2 12:37 polyfills.65a06fed85d785f0.js
686 | -rw-r--r-- 1 runner docker 896 May 2 12:37 runtime.6c9861ca6e26c512.js
687 | -rw-r--r-- 1 runner docker 85 May 2 12:37 styles.9cc1c87275a936d2.css
688 | total 252K
689 | drwxr-xr-x 2 runner docker 4.0K May 2 12:37 .
690 | drwxr-xr-x 3 runner docker 4.0K May 2 12:37 ..
691 | -rw-r--r-- 1 runner docker 15K May 2 12:37 favicon.ico
692 | -rw-r--r-- 1 runner docker 713 May 2 12:37 index.html
693 | -rw-r--r-- 1 runner docker 183K May 2 12:37 main-NVHNK5VX.js
694 | -rw-r--r-- 1 runner docker 34K May 2 12:37 polyfills-6GG4SJ5I.js
695 | -rw-r--r-- 1 runner docker 85 May 2 12:37 styles-IXCL2UTK.css
696 |
697 | NX Running targets build, build-wp, build-es for project ng-rspack:
698 |
699 | - ng-rspack
700 |
701 |
702 |
703 | ::group::✅ > nx run ng-rspack:build-es:production
704 |
705 | - Building...
706 |
707 | Initial chunk files | Names | Raw size | Estimated transfer size
708 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
709 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
710 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
711 |
712 | | Initial total | 216.02 kB | 59.71 kB
713 |
714 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
715 |
716 | Application bundle generation complete. [10.832 seconds]
717 |
718 | ::endgroup::
719 | ::group::✅ > nx run ng-rspack:build:production
720 |
721 | PublicPath: (none)
722 | asset favicon.ico 14.7 KiB [emitted]
723 | asset index.html 455 bytes [emitted]
724 | asset main.f45a5ed4b2cda7770f92.js 421 KiB [emitted] (name: main)
725 | asset polyfills.20dc7a7b65695a6fa4c7.js 32.8 KiB [emitted] (name: polyfills)
726 | asset styles.1620bfe86cca3951a762.js 499 bytes [emitted] (name: styles)
727 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
728 | Entrypoint styles 583 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.1620bfe86cca3951a762.js 499 bytes
729 | Entrypoint polyfills 32.8 KiB = polyfills.20dc7a7b65695a6fa4c7.js
730 | Entrypoint main 421 KiB = main.f45a5ed4b2cda7770f92.js
731 | orphan modules [orphan] 149 modules
732 | runtime modules 7 modules
733 | + 91 modules
734 | Rspack 0.6.3 compiled successfully in 13.00 s (389a9154226210f70563)
735 | ::endgroup::
736 | ::group::✅ > nx run ng-rspack:build-wp:production
737 |
738 | - Generating browser application bundles (phase: setup)...
739 | ✔ Browser application bundle generation complete.
740 | ✔ Browser application bundle generation complete.
741 | - Copying assets...
742 | ✔ Copying assets complete.
743 | - Generating index html...
744 | ✔ Index html generation complete.
745 |
746 | Initial chunk files | Names | Raw size | Estimated transfer size
747 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
748 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
749 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
750 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
751 |
752 | | Initial total | 215.06 kB | 59.77 kB
753 |
754 | Build at: 2024-05-02T12:39:01.744Z - Hash: 610c6efabecb6db3 - Time: 17340ms
755 | ::endgroup::
756 |
757 |
758 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
759 |
760 |
761 | total 496K
762 | drwxr-xr-x 2 runner docker 4.0K May 2 12:38 .
763 | drwxr-xr-x 5 runner docker 4.0K May 2 12:39 ..
764 | -rw-r--r-- 1 runner docker 15K May 2 12:38 favicon.ico
765 | -rw-r--r-- 1 runner docker 455 May 2 12:38 index.html
766 | -rw-r--r-- 1 runner docker 421K May 2 12:38 main.f45a5ed4b2cda7770f92.js
767 | -rw-r--r-- 1 runner docker 33K May 2 12:38 polyfills.20dc7a7b65695a6fa4c7.js
768 | -rw-r--r-- 1 runner docker 499 May 2 12:38 styles.1620bfe86cca3951a762.js
769 | -rw-r--r-- 1 runner docker 84 May 2 12:38 styles.8caa6477d1586f6b9492.css
770 | total 256K
771 | drwxr-xr-x 2 runner docker 4.0K May 2 12:39 .
772 | drwxr-xr-x 5 runner docker 4.0K May 2 12:39 ..
773 | -rw-r--r-- 1 runner docker 15K May 2 12:39 favicon.ico
774 | -rw-r--r-- 1 runner docker 809 May 2 12:39 index.html
775 | -rw-r--r-- 1 runner docker 181K May 2 12:39 main.fc8be2d7e6197ab2.js
776 | -rw-r--r-- 1 runner docker 34K May 2 12:39 polyfills.65a06fed85d785f0.js
777 | -rw-r--r-- 1 runner docker 896 May 2 12:39 runtime.6c9861ca6e26c512.js
778 | -rw-r--r-- 1 runner docker 85 May 2 12:39 styles.9cc1c87275a936d2.css
779 | total 252K
780 | drwxr-xr-x 2 runner docker 4.0K May 2 12:38 .
781 | drwxr-xr-x 3 runner docker 4.0K May 2 12:38 ..
782 | -rw-r--r-- 1 runner docker 15K May 2 12:38 favicon.ico
783 | -rw-r--r-- 1 runner docker 713 May 2 12:38 index.html
784 | -rw-r--r-- 1 runner docker 183K May 2 12:38 main-NVHNK5VX.js
785 | -rw-r--r-- 1 runner docker 34K May 2 12:38 polyfills-6GG4SJ5I.js
786 | -rw-r--r-- 1 runner docker 85 May 2 12:38 styles-IXCL2UTK.css
787 |
788 | NX Running targets build, build-wp, build-es for project ng-rspack:
789 |
790 | - ng-rspack
791 |
792 |
793 |
794 | ::group::✅ > nx run ng-rspack:build-es:production
795 |
796 | - Building...
797 |
798 | Initial chunk files | Names | Raw size | Estimated transfer size
799 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
800 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
801 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
802 |
803 | | Initial total | 216.02 kB | 59.71 kB
804 |
805 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
806 |
807 | Application bundle generation complete. [10.762 seconds]
808 |
809 | ::endgroup::
810 | ::group::✅ > nx run ng-rspack:build:production
811 |
812 | PublicPath: (none)
813 | asset favicon.ico 14.7 KiB [emitted]
814 | asset index.html 590 bytes [emitted]
815 | asset main.67ebc856a00876c8c2c7.js 412 KiB [emitted] (name: main)
816 | asset polyfills.81267c3ee4e2c91c00f7.js 33.6 KiB [emitted] (name: polyfills)
817 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
818 | asset styles.b4cc15e8ccf7f9ca0b59.js 488 bytes [emitted] (name: styles)
819 | Entrypoint styles 572 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.b4cc15e8ccf7f9ca0b59.js 488 bytes
820 | Entrypoint polyfills 33.6 KiB = polyfills.81267c3ee4e2c91c00f7.js
821 | Entrypoint main 412 KiB = main.67ebc856a00876c8c2c7.js
822 | orphan modules [orphan] 149 modules
823 | runtime modules 7 modules
824 | + 91 modules
825 | Rspack 0.6.3 compiled successfully in 17.46 s (907b1f252bff9dea1540)
826 | ::endgroup::
827 | ::group::✅ > nx run ng-rspack:build-wp:production
828 |
829 | - Generating browser application bundles (phase: setup)...
830 | ✔ Browser application bundle generation complete.
831 | ✔ Browser application bundle generation complete.
832 | - Copying assets...
833 | ✔ Copying assets complete.
834 | - Generating index html...
835 | ✔ Index html generation complete.
836 |
837 | Initial chunk files | Names | Raw size | Estimated transfer size
838 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
839 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
840 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
841 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
842 |
843 | | Initial total | 215.06 kB | 59.77 kB
844 |
845 | Build at: 2024-05-02T16:24:41.695Z - Hash: 610c6efabecb6db3 - Time: 19463ms
846 | ::endgroup::
847 |
848 |
849 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
850 |
851 |
852 | total 488K
853 | drwxr-xr-x 2 runner docker 4.0K May 2 16:24 .
854 | drwxr-xr-x 5 runner docker 4.0K May 2 16:24 ..
855 | -rw-r--r-- 1 runner docker 15K May 2 16:24 favicon.ico
856 | -rw-r--r-- 1 runner docker 590 May 2 16:24 index.html
857 | -rw-r--r-- 1 runner docker 413K May 2 16:24 main.67ebc856a00876c8c2c7.js
858 | -rw-r--r-- 1 runner docker 34K May 2 16:24 polyfills.81267c3ee4e2c91c00f7.js
859 | -rw-r--r-- 1 runner docker 84 May 2 16:24 styles.8caa6477d1586f6b9492.css
860 | -rw-r--r-- 1 runner docker 488 May 2 16:24 styles.b4cc15e8ccf7f9ca0b59.js
861 | total 256K
862 | drwxr-xr-x 2 runner docker 4.0K May 2 16:24 .
863 | drwxr-xr-x 5 runner docker 4.0K May 2 16:24 ..
864 | -rw-r--r-- 1 runner docker 15K May 2 16:24 favicon.ico
865 | -rw-r--r-- 1 runner docker 809 May 2 16:24 index.html
866 | -rw-r--r-- 1 runner docker 181K May 2 16:24 main.fc8be2d7e6197ab2.js
867 | -rw-r--r-- 1 runner docker 34K May 2 16:24 polyfills.65a06fed85d785f0.js
868 | -rw-r--r-- 1 runner docker 896 May 2 16:24 runtime.6c9861ca6e26c512.js
869 | -rw-r--r-- 1 runner docker 85 May 2 16:24 styles.9cc1c87275a936d2.css
870 | total 252K
871 | drwxr-xr-x 2 runner docker 4.0K May 2 16:24 .
872 | drwxr-xr-x 3 runner docker 4.0K May 2 16:24 ..
873 | -rw-r--r-- 1 runner docker 15K May 2 16:24 favicon.ico
874 | -rw-r--r-- 1 runner docker 713 May 2 16:24 index.html
875 | -rw-r--r-- 1 runner docker 183K May 2 16:24 main-NVHNK5VX.js
876 | -rw-r--r-- 1 runner docker 34K May 2 16:24 polyfills-6GG4SJ5I.js
877 | -rw-r--r-- 1 runner docker 85 May 2 16:24 styles-IXCL2UTK.css
878 |
879 | NX Running targets build, build-wp, build-es for project ng-rspack:
880 |
881 | - ng-rspack
882 |
883 |
884 |
885 | ::group::✅ > nx run ng-rspack:build-es:production
886 |
887 | - Building...
888 |
889 | Initial chunk files | Names | Raw size | Estimated transfer size
890 | main-NVHNK5VX.js | main | 182.66 kB | 48.81 kB
891 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
892 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
893 |
894 | | Initial total | 216.02 kB | 59.71 kB
895 |
896 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
897 |
898 | Application bundle generation complete. [11.011 seconds]
899 |
900 | ::endgroup::
901 | ::group::✅ > nx run ng-rspack:build:production
902 |
903 | PublicPath: (none)
904 | asset favicon.ico 14.7 KiB [emitted]
905 | asset index.html 590 bytes [emitted]
906 | asset main.ac8d4338302bfa1d9b2f.js 412 KiB [emitted] (name: main)
907 | asset polyfills.5586a662b959ea0998d0.js 33.6 KiB [emitted] (name: polyfills)
908 | asset styles.6709cf6768d751163011.js 488 bytes [emitted] (name: styles)
909 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
910 | Entrypoint styles 572 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.6709cf6768d751163011.js 488 bytes
911 | Entrypoint polyfills 33.6 KiB = polyfills.5586a662b959ea0998d0.js
912 | Entrypoint main 412 KiB = main.ac8d4338302bfa1d9b2f.js
913 | orphan modules [orphan] 149 modules
914 | runtime modules 7 modules
915 | + 91 modules
916 | Rspack 0.6.3 compiled successfully in 17.70 s (6427c00eb50a65e141c4)
917 | ::endgroup::
918 | ::group::✅ > nx run ng-rspack:build-wp:production
919 |
920 | - Generating browser application bundles (phase: setup)...
921 | ✔ Browser application bundle generation complete.
922 | ✔ Browser application bundle generation complete.
923 | - Copying assets...
924 | ✔ Copying assets complete.
925 | - Generating index html...
926 | ✔ Index html generation complete.
927 |
928 | Initial chunk files | Names | Raw size | Estimated transfer size
929 | main.fc8be2d7e6197ab2.js | main | 180.60 kB | 48.41 kB
930 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
931 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
932 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
933 |
934 | | Initial total | 215.06 kB | 59.77 kB
935 |
936 | Build at: 2024-05-03T06:16:42.288Z - Hash: 610c6efabecb6db3 - Time: 18969ms
937 | ::endgroup::
938 |
939 |
940 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
941 |
942 |
943 | total 488K
944 | drwxr-xr-x 2 runner docker 4.0K May 3 06:16 .
945 | drwxr-xr-x 5 runner docker 4.0K May 3 06:16 ..
946 | -rw-r--r-- 1 runner docker 15K May 3 06:16 favicon.ico
947 | -rw-r--r-- 1 runner docker 590 May 3 06:16 index.html
948 | -rw-r--r-- 1 runner docker 413K May 3 06:16 main.ac8d4338302bfa1d9b2f.js
949 | -rw-r--r-- 1 runner docker 34K May 3 06:16 polyfills.5586a662b959ea0998d0.js
950 | -rw-r--r-- 1 runner docker 488 May 3 06:16 styles.6709cf6768d751163011.js
951 | -rw-r--r-- 1 runner docker 84 May 3 06:16 styles.8caa6477d1586f6b9492.css
952 | total 256K
953 | drwxr-xr-x 2 runner docker 4.0K May 3 06:16 .
954 | drwxr-xr-x 5 runner docker 4.0K May 3 06:16 ..
955 | -rw-r--r-- 1 runner docker 15K May 3 06:16 favicon.ico
956 | -rw-r--r-- 1 runner docker 809 May 3 06:16 index.html
957 | -rw-r--r-- 1 runner docker 181K May 3 06:16 main.fc8be2d7e6197ab2.js
958 | -rw-r--r-- 1 runner docker 34K May 3 06:16 polyfills.65a06fed85d785f0.js
959 | -rw-r--r-- 1 runner docker 896 May 3 06:16 runtime.6c9861ca6e26c512.js
960 | -rw-r--r-- 1 runner docker 85 May 3 06:16 styles.9cc1c87275a936d2.css
961 | total 252K
962 | drwxr-xr-x 2 runner docker 4.0K May 3 06:16 .
963 | drwxr-xr-x 3 runner docker 4.0K May 3 06:16 ..
964 | -rw-r--r-- 1 runner docker 15K May 3 06:16 favicon.ico
965 | -rw-r--r-- 1 runner docker 713 May 3 06:16 index.html
966 | -rw-r--r-- 1 runner docker 183K May 3 06:16 main-NVHNK5VX.js
967 | -rw-r--r-- 1 runner docker 34K May 3 06:16 polyfills-6GG4SJ5I.js
968 | -rw-r--r-- 1 runner docker 85 May 3 06:16 styles-IXCL2UTK.css
969 |
970 | NX Running targets build, build-wp, build-es for project ng-rspack:
971 |
972 | - ng-rspack
973 |
974 |
975 |
976 | ::group::✅ > nx run ng-rspack:build-es:production
977 |
978 | - Building...
979 |
980 | Initial chunk files | Names | Raw size | Estimated transfer size
981 | main-KD4QAICK.js | main | 182.92 kB | 48.82 kB
982 | polyfills-6GG4SJ5I.js | polyfills | 33.28 kB | 10.82 kB
983 | styles-IXCL2UTK.css | styles | 85 bytes | 85 bytes
984 |
985 | | Initial total | 216.27 kB | 59.73 kB
986 |
987 | Output location: /home/runner/work/ng-rspack/ng-rspack/dist/ng-rspack/esbuild
988 |
989 | Application bundle generation complete. [10.333 seconds]
990 |
991 | ::endgroup::
992 | ::group::✅ > nx run ng-rspack:build:production
993 |
994 | PublicPath: (none)
995 | asset favicon.ico 14.7 KiB [emitted]
996 | asset index.html 590 bytes [emitted]
997 | asset main.40a3807255e2da884155.js 413 KiB [emitted] (name: main)
998 | asset polyfills.d3f6aca39a6537afe693.js 33.6 KiB [emitted] (name: polyfills)
999 | asset styles.8caa6477d1586f6b9492.css 84 bytes [emitted] (name: styles)
1000 | asset styles.947def69ce0b54a66431.js 488 bytes [emitted] (name: styles)
1001 | Entrypoint styles 572 bytes = styles.8caa6477d1586f6b9492.css 84 bytes styles.947def69ce0b54a66431.js 488 bytes
1002 | Entrypoint polyfills 33.6 KiB = polyfills.d3f6aca39a6537afe693.js
1003 | Entrypoint main 413 KiB = main.40a3807255e2da884155.js
1004 | orphan modules [orphan] 149 modules
1005 | runtime modules 7 modules
1006 | + 92 modules
1007 | Rspack 0.6.3 compiled successfully in 18.41 s (f022848e42f033a3fe26)
1008 | ::endgroup::
1009 | ::group::✅ > nx run ng-rspack:build-wp:production
1010 |
1011 | - Generating browser application bundles (phase: setup)...
1012 | ✔ Browser application bundle generation complete.
1013 | ✔ Browser application bundle generation complete.
1014 | - Copying assets...
1015 | ✔ Copying assets complete.
1016 | - Generating index html...
1017 | ✔ Index html generation complete.
1018 |
1019 | Initial chunk files | Names | Raw size | Estimated transfer size
1020 | main.234af0b273f6001b.js | main | 180.87 kB | 48.40 kB
1021 | polyfills.65a06fed85d785f0.js | polyfills | 33.50 kB | 10.82 kB
1022 | runtime.6c9861ca6e26c512.js | runtime | 896 bytes | 508 bytes
1023 | styles.9cc1c87275a936d2.css | styles | 85 bytes | 51 bytes
1024 |
1025 | | Initial total | 215.33 kB | 59.76 kB
1026 |
1027 | Build at: 2024-05-03T07:35:10.927Z - Hash: 926da32f5a0ed53b - Time: 19888ms
1028 | ::endgroup::
1029 |
1030 |
1031 | NX Successfully ran targets build, build-wp, build-es for project ng-rspack
1032 |
1033 |
1034 | total 488K
1035 | drwxr-xr-x 2 runner docker 4.0K May 3 07:35 .
1036 | drwxr-xr-x 5 runner docker 4.0K May 3 07:35 ..
1037 | -rw-r--r-- 1 runner docker 15K May 3 07:35 favicon.ico
1038 | -rw-r--r-- 1 runner docker 590 May 3 07:35 index.html
1039 | -rw-r--r-- 1 runner docker 413K May 3 07:35 main.40a3807255e2da884155.js
1040 | -rw-r--r-- 1 runner docker 34K May 3 07:35 polyfills.d3f6aca39a6537afe693.js
1041 | -rw-r--r-- 1 runner docker 84 May 3 07:35 styles.8caa6477d1586f6b9492.css
1042 | -rw-r--r-- 1 runner docker 488 May 3 07:35 styles.947def69ce0b54a66431.js
1043 | total 256K
1044 | drwxr-xr-x 2 runner docker 4.0K May 3 07:35 .
1045 | drwxr-xr-x 5 runner docker 4.0K May 3 07:35 ..
1046 | -rw-r--r-- 1 runner docker 15K May 3 07:35 favicon.ico
1047 | -rw-r--r-- 1 runner docker 809 May 3 07:35 index.html
1048 | -rw-r--r-- 1 runner docker 181K May 3 07:35 main.234af0b273f6001b.js
1049 | -rw-r--r-- 1 runner docker 34K May 3 07:35 polyfills.65a06fed85d785f0.js
1050 | -rw-r--r-- 1 runner docker 896 May 3 07:35 runtime.6c9861ca6e26c512.js
1051 | -rw-r--r-- 1 runner docker 85 May 3 07:35 styles.9cc1c87275a936d2.css
1052 | total 252K
1053 | drwxr-xr-x 2 runner docker 4.0K May 3 07:35 .
1054 | drwxr-xr-x 3 runner docker 4.0K May 3 07:35 ..
1055 | -rw-r--r-- 1 runner docker 15K May 3 07:35 favicon.ico
1056 | -rw-r--r-- 1 runner docker 713 May 3 07:35 index.html
1057 | -rw-r--r-- 1 runner docker 183K May 3 07:35 main-KD4QAICK.js
1058 | -rw-r--r-- 1 runner docker 34K May 3 07:35 polyfills-6GG4SJ5I.js
1059 | -rw-r--r-- 1 runner docker 85 May 3 07:35 styles-IXCL2UTK.css
1060 | total 488K
1061 | drwxr-xr-x 2 runner docker 4.0K May 3 07:50 .
1062 | drwxr-xr-x 5 runner docker 4.0K May 3 07:50 ..
1063 | -rw-r--r-- 1 runner docker 15K May 3 07:50 favicon.ico
1064 | -rw-r--r-- 1 runner docker 590 May 3 07:50 index.html
1065 | -rw-r--r-- 1 runner docker 413K May 3 07:50 main.40a3807255e2da884155.js
1066 | -rw-r--r-- 1 runner docker 34K May 3 07:50 polyfills.d3f6aca39a6537afe693.js
1067 | -rw-r--r-- 1 runner docker 84 May 3 07:50 styles.8caa6477d1586f6b9492.css
1068 | -rw-r--r-- 1 runner docker 488 May 3 07:50 styles.947def69ce0b54a66431.js
1069 | total 256K
1070 | drwxr-xr-x 2 runner docker 4.0K May 3 07:50 .
1071 | drwxr-xr-x 5 runner docker 4.0K May 3 07:50 ..
1072 | -rw-r--r-- 1 runner docker 15K May 3 07:50 favicon.ico
1073 | -rw-r--r-- 1 runner docker 809 May 3 07:50 index.html
1074 | -rw-r--r-- 1 runner docker 181K May 3 07:50 main.234af0b273f6001b.js
1075 | -rw-r--r-- 1 runner docker 34K May 3 07:50 polyfills.65a06fed85d785f0.js
1076 | -rw-r--r-- 1 runner docker 896 May 3 07:50 runtime.6c9861ca6e26c512.js
1077 | -rw-r--r-- 1 runner docker 85 May 3 07:50 styles.9cc1c87275a936d2.css
1078 | total 252K
1079 | drwxr-xr-x 2 runner docker 4.0K May 3 07:50 .
1080 | drwxr-xr-x 3 runner docker 4.0K May 3 07:50 ..
1081 | -rw-r--r-- 1 runner docker 15K May 3 07:50 favicon.ico
1082 | -rw-r--r-- 1 runner docker 713 May 3 07:50 index.html
1083 | -rw-r--r-- 1 runner docker 183K May 3 07:50 main-KD4QAICK.js
1084 | -rw-r--r-- 1 runner docker 34K May 3 07:50 polyfills-6GG4SJ5I.js
1085 | -rw-r--r-- 1 runner docker 85 May 3 07:50 styles-IXCL2UTK.css
1086 | total 488K
1087 | drwxr-xr-x 2 runner docker 4.0K May 3 08:20 .
1088 | drwxr-xr-x 5 runner docker 4.0K May 3 08:20 ..
1089 | -rw-r--r-- 1 runner docker 15K May 3 08:20 favicon.ico
1090 | -rw-r--r-- 1 runner docker 590 May 3 08:20 index.html
1091 | -rw-r--r-- 1 runner docker 413K May 3 08:20 main.40a3807255e2da884155.js
1092 | -rw-r--r-- 1 runner docker 34K May 3 08:20 polyfills.d3f6aca39a6537afe693.js
1093 | -rw-r--r-- 1 runner docker 84 May 3 08:20 styles.8caa6477d1586f6b9492.css
1094 | -rw-r--r-- 1 runner docker 488 May 3 08:20 styles.947def69ce0b54a66431.js
1095 | total 256K
1096 | drwxr-xr-x 2 runner docker 4.0K May 3 08:20 .
1097 | drwxr-xr-x 5 runner docker 4.0K May 3 08:20 ..
1098 | -rw-r--r-- 1 runner docker 15K May 3 08:20 favicon.ico
1099 | -rw-r--r-- 1 runner docker 809 May 3 08:20 index.html
1100 | -rw-r--r-- 1 runner docker 181K May 3 08:20 main.234af0b273f6001b.js
1101 | -rw-r--r-- 1 runner docker 34K May 3 08:20 polyfills.65a06fed85d785f0.js
1102 | -rw-r--r-- 1 runner docker 896 May 3 08:20 runtime.6c9861ca6e26c512.js
1103 | -rw-r--r-- 1 runner docker 85 May 3 08:20 styles.9cc1c87275a936d2.css
1104 | total 252K
1105 | drwxr-xr-x 2 runner docker 4.0K May 3 08:20 .
1106 | drwxr-xr-x 3 runner docker 4.0K May 3 08:20 ..
1107 | -rw-r--r-- 1 runner docker 15K May 3 08:20 favicon.ico
1108 | -rw-r--r-- 1 runner docker 713 May 3 08:20 index.html
1109 | -rw-r--r-- 1 runner docker 183K May 3 08:20 main-KD4QAICK.js
1110 | -rw-r--r-- 1 runner docker 34K May 3 08:20 polyfills-6GG4SJ5I.js
1111 | -rw-r--r-- 1 runner docker 85 May 3 08:20 styles-IXCL2UTK.css
1112 | total 488K
1113 | drwxr-xr-x 2 runner docker 4.0K May 3 08:30 .
1114 | drwxr-xr-x 5 runner docker 4.0K May 3 08:30 ..
1115 | -rw-r--r-- 1 runner docker 15K May 3 08:30 favicon.ico
1116 | -rw-r--r-- 1 runner docker 590 May 3 08:30 index.html
1117 | -rw-r--r-- 1 runner docker 415K May 3 08:30 main.414fc0b065c146b68450.js
1118 | -rw-r--r-- 1 runner docker 33K May 3 08:30 polyfills.0086550284fc5c174ad6.js
1119 | -rw-r--r-- 1 runner docker 499 May 3 08:30 styles.1620bfe86cca3951a762.js
1120 | -rw-r--r-- 1 runner docker 84 May 3 08:30 styles.8caa6477d1586f6b9492.css
1121 | total 256K
1122 | drwxr-xr-x 2 runner docker 4.0K May 3 08:30 .
1123 | drwxr-xr-x 5 runner docker 4.0K May 3 08:30 ..
1124 | -rw-r--r-- 1 runner docker 15K May 3 08:30 favicon.ico
1125 | -rw-r--r-- 1 runner docker 809 May 3 08:30 index.html
1126 | -rw-r--r-- 1 runner docker 181K May 3 08:30 main.234af0b273f6001b.js
1127 | -rw-r--r-- 1 runner docker 34K May 3 08:30 polyfills.65a06fed85d785f0.js
1128 | -rw-r--r-- 1 runner docker 896 May 3 08:30 runtime.6c9861ca6e26c512.js
1129 | -rw-r--r-- 1 runner docker 85 May 3 08:30 styles.9cc1c87275a936d2.css
1130 | total 252K
1131 | drwxr-xr-x 2 runner docker 4.0K May 3 08:30 .
1132 | drwxr-xr-x 3 runner docker 4.0K May 3 08:30 ..
1133 | -rw-r--r-- 1 runner docker 15K May 3 08:30 favicon.ico
1134 | -rw-r--r-- 1 runner docker 713 May 3 08:30 index.html
1135 | -rw-r--r-- 1 runner docker 183K May 3 08:30 main-KD4QAICK.js
1136 | -rw-r--r-- 1 runner docker 34K May 3 08:30 polyfills-6GG4SJ5I.js
1137 | -rw-r--r-- 1 runner docker 85 May 3 08:30 styles-IXCL2UTK.css
1138 | total 488K
1139 | drwxr-xr-x 2 runner docker 4.0K May 5 07:45 .
1140 | drwxr-xr-x 5 runner docker 4.0K May 5 07:45 ..
1141 | -rw-r--r-- 1 runner docker 15K May 5 07:45 favicon.ico
1142 | -rw-r--r-- 1 runner docker 590 May 5 07:45 index.html
1143 | -rw-r--r-- 1 runner docker 415K May 5 07:45 main.5867769d7ad1047c3f14.js
1144 | -rw-r--r-- 1 runner docker 33K May 5 07:45 polyfills.267aea1f3c06c8d1ff19.js
1145 | -rw-r--r-- 1 runner docker 84 May 5 07:45 styles.57b01f490964266cb50e.css
1146 | -rw-r--r-- 1 runner docker 499 May 5 07:45 styles.d0bec9656a0186495ff1.js
1147 | total 256K
1148 | drwxr-xr-x 2 runner docker 4.0K May 5 07:45 .
1149 | drwxr-xr-x 5 runner docker 4.0K May 5 07:45 ..
1150 | -rw-r--r-- 1 runner docker 15K May 5 07:45 favicon.ico
1151 | -rw-r--r-- 1 runner docker 809 May 5 07:45 index.html
1152 | -rw-r--r-- 1 runner docker 181K May 5 07:45 main.234af0b273f6001b.js
1153 | -rw-r--r-- 1 runner docker 34K May 5 07:45 polyfills.65a06fed85d785f0.js
1154 | -rw-r--r-- 1 runner docker 896 May 5 07:45 runtime.6c9861ca6e26c512.js
1155 | -rw-r--r-- 1 runner docker 85 May 5 07:45 styles.9cc1c87275a936d2.css
1156 | total 252K
1157 | drwxr-xr-x 2 runner docker 4.0K May 5 07:45 .
1158 | drwxr-xr-x 3 runner docker 4.0K May 5 07:45 ..
1159 | -rw-r--r-- 1 runner docker 15K May 5 07:45 favicon.ico
1160 | -rw-r--r-- 1 runner docker 713 May 5 07:45 index.html
1161 | -rw-r--r-- 1 runner docker 183K May 5 07:45 main-KD4QAICK.js
1162 | -rw-r--r-- 1 runner docker 34K May 5 07:45 polyfills-6GG4SJ5I.js
1163 | -rw-r--r-- 1 runner docker 85 May 5 07:45 styles-IXCL2UTK.css
1164 | total 488K
1165 | drwxr-xr-x 2 runner docker 4.0K May 17 06:43 .
1166 | drwxr-xr-x 5 runner docker 4.0K May 17 06:43 ..
1167 | -rw-r--r-- 1 runner docker 15K May 17 06:43 favicon.ico
1168 | -rw-r--r-- 1 runner docker 590 May 17 06:43 index.html
1169 | -rw-r--r-- 1 runner docker 415K May 17 06:43 main.c91a9cdc70954c595e22.js
1170 | -rw-r--r-- 1 runner docker 33K May 17 06:43 polyfills.ff67025650e784610eb7.js
1171 | -rw-r--r-- 1 runner docker 84 May 17 06:43 styles.619576f9d5f1a6fc8d6f.css
1172 | -rw-r--r-- 1 runner docker 499 May 17 06:43 styles.a5f63b4da4d9424f86ea.js
1173 | total 256K
1174 | drwxr-xr-x 2 runner docker 4.0K May 17 06:43 .
1175 | drwxr-xr-x 5 runner docker 4.0K May 17 06:43 ..
1176 | -rw-r--r-- 1 runner docker 15K May 17 06:43 favicon.ico
1177 | -rw-r--r-- 1 runner docker 809 May 17 06:43 index.html
1178 | -rw-r--r-- 1 runner docker 182K May 17 06:43 main.c3a802e2c2d6b6cc.js
1179 | -rw-r--r-- 1 runner docker 34K May 17 06:43 polyfills.b8d62ff7be6a01fe.js
1180 | -rw-r--r-- 1 runner docker 896 May 17 06:43 runtime.6c9861ca6e26c512.js
1181 | -rw-r--r-- 1 runner docker 85 May 17 06:43 styles.9cc1c87275a936d2.css
1182 | total 252K
1183 | drwxr-xr-x 2 runner docker 4.0K May 17 06:43 .
1184 | drwxr-xr-x 3 runner docker 4.0K May 17 06:43 ..
1185 | -rw-r--r-- 1 runner docker 15K May 17 06:43 favicon.ico
1186 | -rw-r--r-- 1 runner docker 713 May 17 06:43 index.html
1187 | -rw-r--r-- 1 runner docker 184K May 17 06:43 main-BW2E7W2F.js
1188 | -rw-r--r-- 1 runner docker 34K May 17 06:43 polyfills-BL375M6J.js
1189 | -rw-r--r-- 1 runner docker 85 May 17 06:43 styles-IXCL2UTK.css
1190 | rspack \n
1191 | total 468K
1192 | drwxr-xr-x 2 runner docker 4.0K Jul 2 07:43 .
1193 | drwxr-xr-x 5 runner docker 4.0K Jul 2 07:43 ..
1194 | -rw-r--r-- 1 runner docker 15K Jul 2 07:43 favicon.ico
1195 | -rw-r--r-- 1 runner docker 590 Jul 2 07:43 index.html
1196 | -rw-r--r-- 1 runner docker 396K Jul 2 07:43 main.9d6c4a7ef06a440f2f1f.js
1197 | -rw-r--r-- 1 runner docker 34K Jul 2 07:43 polyfills.09ccf75527eaf59b0d6c.js
1198 | -rw-r--r-- 1 runner docker 617 Jul 2 07:43 styles.e0e7fda7ebfe4a6f6d6e.js
1199 | -rw-r--r-- 1 runner docker 84 Jul 2 07:43 styles.ef645d29da02e6aca141.css
1200 | webpack \n
1201 | total 256K
1202 | drwxr-xr-x 2 runner docker 4.0K Jul 2 07:43 .
1203 | drwxr-xr-x 5 runner docker 4.0K Jul 2 07:43 ..
1204 | -rw-r--r-- 1 runner docker 15K Jul 2 07:43 favicon.ico
1205 | -rw-r--r-- 1 runner docker 809 Jul 2 07:43 index.html
1206 | -rw-r--r-- 1 runner docker 182K Jul 2 07:43 main.a93b483def359c1e.js
1207 | -rw-r--r-- 1 runner docker 34K Jul 2 07:43 polyfills.6e67a244f817e3e4.js
1208 | -rw-r--r-- 1 runner docker 896 Jul 2 07:43 runtime.6c9861ca6e26c512.js
1209 | -rw-r--r-- 1 runner docker 85 Jul 2 07:43 styles.9cc1c87275a936d2.css
1210 | esbuild \n
1211 | total 252K
1212 | drwxr-xr-x 2 runner docker 4.0K Jul 2 07:43 .
1213 | drwxr-xr-x 3 runner docker 4.0K Jul 2 07:43 ..
1214 | -rw-r--r-- 1 runner docker 15K Jul 2 07:43 favicon.ico
1215 | -rw-r--r-- 1 runner docker 713 Jul 2 07:43 index.html
1216 | -rw-r--r-- 1 runner docker 184K Jul 2 07:43 main-HPEBSWYP.js
1217 | -rw-r--r-- 1 runner docker 34K Jul 2 07:43 polyfills-PSWKUJN4.js
1218 | -rw-r--r-- 1 runner docker 85 Jul 2 07:43 styles-IXCL2UTK.css
1219 | rspack \n
1220 | total 256K
1221 | drwxr-xr-x 2 runner docker 4.0K Jul 2 10:10 .
1222 | drwxr-xr-x 5 runner docker 4.0K Jul 2 10:10 ..
1223 | -rw-r--r-- 1 runner docker 15K Jul 2 10:10 favicon.ico
1224 | -rw-r--r-- 1 runner docker 590 Jul 2 10:10 index.html
1225 | -rw-r--r-- 1 runner docker 181K Jul 2 10:10 main.8402a08083f9ffd7f5d6.js
1226 | -rw-r--r-- 1 runner docker 34K Jul 2 10:10 polyfills.491890645d75044cefc4.js
1227 | -rw-r--r-- 1 runner docker 553 Jul 2 10:10 styles.24bed197f0b82bcfbe25.js
1228 | -rw-r--r-- 1 runner docker 85 Jul 2 10:10 styles.9772180243f969fe9c99.css
1229 | webpack \n
1230 | total 256K
1231 | drwxr-xr-x 2 runner docker 4.0K Jul 2 10:10 .
1232 | drwxr-xr-x 5 runner docker 4.0K Jul 2 10:10 ..
1233 | -rw-r--r-- 1 runner docker 15K Jul 2 10:10 favicon.ico
1234 | -rw-r--r-- 1 runner docker 809 Jul 2 10:10 index.html
1235 | -rw-r--r-- 1 runner docker 182K Jul 2 10:10 main.a93b483def359c1e.js
1236 | -rw-r--r-- 1 runner docker 34K Jul 2 10:10 polyfills.6e67a244f817e3e4.js
1237 | -rw-r--r-- 1 runner docker 896 Jul 2 10:10 runtime.6c9861ca6e26c512.js
1238 | -rw-r--r-- 1 runner docker 85 Jul 2 10:10 styles.9cc1c87275a936d2.css
1239 | esbuild \n
1240 | total 252K
1241 | drwxr-xr-x 2 runner docker 4.0K Jul 2 10:10 .
1242 | drwxr-xr-x 3 runner docker 4.0K Jul 2 10:10 ..
1243 | -rw-r--r-- 1 runner docker 15K Jul 2 10:10 favicon.ico
1244 | -rw-r--r-- 1 runner docker 713 Jul 2 10:10 index.html
1245 | -rw-r--r-- 1 runner docker 184K Jul 2 10:10 main-HPEBSWYP.js
1246 | -rw-r--r-- 1 runner docker 34K Jul 2 10:10 polyfills-PSWKUJN4.js
1247 | -rw-r--r-- 1 runner docker 85 Jul 2 10:10 styles-IXCL2UTK.css
1248 | rspack
1249 | total 256K
1250 | drwxr-xr-x 2 runner docker 4.0K Jul 3 11:50 .
1251 | drwxr-xr-x 5 runner docker 4.0K Jul 3 11:50 ..
1252 | -rw-r--r-- 1 runner docker 15K Jul 3 11:50 favicon.ico
1253 | -rw-r--r-- 1 runner docker 590 Jul 3 11:50 index.html
1254 | -rw-r--r-- 1 runner docker 181K Jul 3 11:50 main.8402a08083f9ffd7f5d6.js
1255 | -rw-r--r-- 1 runner docker 34K Jul 3 11:50 polyfills.491890645d75044cefc4.js
1256 | -rw-r--r-- 1 runner docker 553 Jul 3 11:50 styles.957b630bce983f3246c2.js
1257 | -rw-r--r-- 1 runner docker 85 Jul 3 11:50 styles.9772180243f969fe9c99.css
1258 | webpack
1259 | total 256K
1260 | drwxr-xr-x 2 runner docker 4.0K Jul 3 11:50 .
1261 | drwxr-xr-x 5 runner docker 4.0K Jul 3 11:50 ..
1262 | -rw-r--r-- 1 runner docker 15K Jul 3 11:50 favicon.ico
1263 | -rw-r--r-- 1 runner docker 809 Jul 3 11:50 index.html
1264 | -rw-r--r-- 1 runner docker 182K Jul 3 11:50 main.586b22fd355dcb1d.js
1265 | -rw-r--r-- 1 runner docker 34K Jul 3 11:50 polyfills.6e67a244f817e3e4.js
1266 | -rw-r--r-- 1 runner docker 896 Jul 3 11:50 runtime.6c9861ca6e26c512.js
1267 | -rw-r--r-- 1 runner docker 85 Jul 3 11:50 styles.9cc1c87275a936d2.css
1268 | esbuild
1269 | total 252K
1270 | drwxr-xr-x 2 runner docker 4.0K Jul 3 11:50 .
1271 | drwxr-xr-x 3 runner docker 4.0K Jul 3 11:50 ..
1272 | -rw-r--r-- 1 runner docker 15K Jul 3 11:50 favicon.ico
1273 | -rw-r--r-- 1 runner docker 713 Jul 3 11:50 index.html
1274 | -rw-r--r-- 1 runner docker 184K Jul 3 11:50 main-FS4FMQS6.js
1275 | -rw-r--r-- 1 runner docker 34K Jul 3 11:50 polyfills-PSWKUJN4.js
1276 | -rw-r--r-- 1 runner docker 85 Jul 3 11:50 styles-IXCL2UTK.css
1277 | rspack
1278 | total 772K
1279 | drwxr-xr-x 2 runner docker 4.0K Jul 3 21:12 .
1280 | drwxr-xr-x 5 runner docker 4.0K Jul 3 21:12 ..
1281 | -rw-r--r-- 1 runner docker 253K Jul 3 21:12 259.f0e21c407afaefc92d1b.js
1282 | -rw-r--r-- 1 runner docker 67K Jul 3 21:12 487.63372d6c43d732c1909b.js
1283 | -rw-r--r-- 1 runner docker 179 Jul 3 21:12 @mf-types.d.ts
1284 | -rw-r--r-- 1 runner docker 1.1K Jul 3 21:12 @mf-types.zip
1285 | -rw-r--r-- 1 runner docker 1.7K Jul 3 21:12 __federation_expose_app.b2c07e48a83e66498338.js
1286 | -rw-r--r-- 1 runner docker 15K Jul 3 21:12 favicon.ico
1287 | -rw-r--r-- 1 runner docker 766 Jul 3 21:12 index.html
1288 | -rw-r--r-- 1 runner docker 99K Jul 3 21:12 main.2a763284103d89113f8d.js
1289 | -rw-r--r-- 1 runner docker 1.8K Jul 3 21:12 mf-manifest.json
1290 | -rw-r--r-- 1 runner docker 2.1K Jul 3 21:12 mf-stats.json
1291 | -rw-r--r-- 1 runner docker 85K Jul 3 21:12 mfe1.11f8eef18944cc678363.js
1292 | -rw-r--r-- 1 runner docker 119K Jul 3 21:12 polyfills.19572ff317c15969b5b1.js
1293 | -rw-r--r-- 1 runner docker 85 Jul 3 21:12 styles.9772180243f969fe9c99.css
1294 | -rw-r--r-- 1 runner docker 86K Jul 3 21:12 styles.c235a767cf7f0bf7c11f.js
1295 | webpack
1296 | total 160K
1297 | drwxr-xr-x 2 runner docker 4.0K Jul 3 21:12 .
1298 | drwxr-xr-x 5 runner docker 4.0K Jul 3 21:12 ..
1299 | -rw-r--r-- 1 runner docker 15K Jul 3 21:12 favicon.ico
1300 | -rw-r--r-- 1 runner docker 809 Jul 3 21:12 index.html
1301 | -rw-r--r-- 1 runner docker 86K Jul 3 21:12 main.37ed97ca0e4da807.js
1302 | -rw-r--r-- 1 runner docker 34K Jul 3 21:12 polyfills.733c87b21f3ac969.js
1303 | -rw-r--r-- 1 runner docker 886 Jul 3 21:12 runtime.d947c069a8b27bc8.js
1304 | -rw-r--r-- 1 runner docker 85 Jul 3 21:12 styles.9cc1c87275a936d2.css
1305 | esbuild
1306 | total 156K
1307 | drwxr-xr-x 2 runner docker 4.0K Jul 3 21:11 .
1308 | drwxr-xr-x 3 runner docker 4.0K Jul 3 21:11 ..
1309 | -rw-r--r-- 1 runner docker 15K Jul 3 21:11 favicon.ico
1310 | -rw-r--r-- 1 runner docker 713 Jul 3 21:11 index.html
1311 | -rw-r--r-- 1 runner docker 88K Jul 3 21:11 main-S7F6LYFR.js
1312 | -rw-r--r-- 1 runner docker 34K Jul 3 21:11 polyfills-PSWKUJN4.js
1313 | -rw-r--r-- 1 runner docker 85 Jul 3 21:11 styles-IXCL2UTK.css
1314 |
--------------------------------------------------------------------------------
/nx.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "./node_modules/nx/schemas/nx-schema.json",
3 | "namedInputs": {
4 | "default": ["{projectRoot}/**/*", "sharedGlobals"],
5 | "production": [
6 | "default",
7 | "!{projectRoot}/.eslintrc.json",
8 | "!{projectRoot}/eslint.config.js",
9 | "!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)",
10 | "!{projectRoot}/tsconfig.spec.json",
11 | "!{projectRoot}/jest.config.[jt]s",
12 | "!{projectRoot}/src/test-setup.[jt]s",
13 | "!{projectRoot}/test-setup.[jt]s"
14 | ],
15 | "sharedGlobals": []
16 | },
17 | "targetDefaults": {
18 | "build": {
19 | "cache": false
20 | },
21 | "@nx/jest:jest": {
22 | "cache": true,
23 | "inputs": ["default", "^production", "{workspaceRoot}/jest.preset.js"],
24 | "options": {
25 | "passWithNoTests": true
26 | },
27 | "configurations": {
28 | "ci": {
29 | "ci": true,
30 | "codeCoverage": true
31 | }
32 | }
33 | }
34 | },
35 | "defaultProject": "host"
36 | }
37 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@ng-rspack/source",
3 | "version": "0.0.0",
4 | "license": "MIT",
5 | "scripts": {
6 | "start": "nx serve",
7 | "build": "nx build",
8 | "test": "nx test"
9 | },
10 | "private": true,
11 | "dependencies": {
12 | "@angular/animations": "~17.3.0",
13 | "@angular/common": "~17.3.0",
14 | "@angular/compiler": "~17.3.0",
15 | "@angular/core": "~17.3.0",
16 | "@angular/forms": "~17.3.0",
17 | "@angular/platform-browser": "~17.3.0",
18 | "@angular/platform-browser-dynamic": "~17.3.0",
19 | "@angular/router": "~17.3.0",
20 | "@module-federation/enhanced": "^0.2.3",
21 | "@nx/angular": "18.3.4",
22 | "rxjs": "~7.8.0",
23 | "tslib": "^2.3.0",
24 | "zone.js": "~0.14.3"
25 | },
26 | "devDependencies": {
27 | "@angular-devkit/build-angular": "~17.3.0",
28 | "@angular-devkit/core": "~17.3.0",
29 | "@angular-devkit/schematics": "~17.3.0",
30 | "@angular-eslint/eslint-plugin": "~17.3.0",
31 | "@angular-eslint/eslint-plugin-template": "~17.3.0",
32 | "@angular-eslint/template-parser": "~17.3.0",
33 | "@angular/cli": "~17.3.0",
34 | "@angular/compiler-cli": "~17.3.0",
35 | "@angular/language-service": "~17.3.0",
36 | "@ngtools/webpack": "^17.3.6",
37 | "@nx/devkit": "18.3.4",
38 | "@nx/eslint": "18.3.4",
39 | "@nx/eslint-plugin": "18.3.4",
40 | "@nx/jest": "18.3.4",
41 | "@nx/js": "18.3.4",
42 | "@nx/rspack": "^18.3.0",
43 | "@nx/workspace": "18.3.4",
44 | "@rspack/cli": "1.0.0-alpha.0",
45 | "@rspack/core": "1.0.0-alpha.0",
46 | "@schematics/angular": "~17.3.0",
47 | "@swc-node/register": "~1.8.0",
48 | "@swc/core": "~1.3.85",
49 | "@swc/helpers": "~0.5.2",
50 | "@types/jest": "^29.4.0",
51 | "@types/node": "18.16.9",
52 | "@typescript-eslint/eslint-plugin": "^7.3.0",
53 | "@typescript-eslint/parser": "^7.3.0",
54 | "browserslist": "^4.23.0",
55 | "css-loader": "^7.1.1",
56 | "css-minimizer-webpack-plugin": "^6.0.0",
57 | "eslint": "~8.57.0",
58 | "eslint-config-prettier": "^9.0.0",
59 | "jest": "^29.4.1",
60 | "jest-environment-jsdom": "^29.4.1",
61 | "jest-preset-angular": "~14.0.3",
62 | "lightningcss": "^1.24.1",
63 | "nx": "18.3.4",
64 | "prettier": "^2.6.2",
65 | "raw-loader": "^4.0.2",
66 | "sass": "^1.76.0",
67 | "sass-embedded": "^1.77.5",
68 | "sass-loader": "^14.2.1",
69 | "terser-webpack-plugin": "5.3.10",
70 | "ts-jest": "^29.1.0",
71 | "ts-node": "10.9.1",
72 | "typescript": "~5.4.2"
73 | },
74 | "resolutions": {
75 | "@rspack/cli": "1.0.0-alpha.0",
76 | "@rspack/core": "1.0.0-alpha.0"
77 | },
78 | "nx": {
79 | "includedScripts": []
80 | },
81 | "packageManager": "pnpm@9.1.1+sha512.14e915759c11f77eac07faba4d019c193ec8637229e62ec99eefb7cf3c3b75c64447882b7c485142451ee3a6b408059cdfb7b7fa0341b975f12d0f7629c71195"
82 | }
83 |
--------------------------------------------------------------------------------
/perf.md:
--------------------------------------------------------------------------------
1 | | Command | Mean [s] | Min [s] | Max [s] | Relative |
2 | |:---|---:|---:|---:|---:|
3 | | `Webpack` | 11.533 ± 0.146 | 11.350 | 11.711 | 1.64 ± 0.03 |
4 | | `Rspack` | 13.792 ± 0.172 | 13.537 | 14.062 | 1.96 ± 0.04 |
5 | | `Esbuild` | 7.025 ± 0.109 | 6.834 | 7.163 | 1.00 |
6 |
--------------------------------------------------------------------------------
/tsconfig.base.json:
--------------------------------------------------------------------------------
1 | {
2 | "compileOnSave": false,
3 | "compilerOptions": {
4 | "rootDir": ".",
5 | "sourceMap": true,
6 | "declaration": false,
7 | "moduleResolution": "node",
8 | "emitDecoratorMetadata": true,
9 | "experimentalDecorators": true,
10 | "importHelpers": true,
11 | "target": "es2022",
12 | "module": "esnext",
13 | "lib": ["es2020", "dom"],
14 | "skipLibCheck": true,
15 | "skipDefaultLibCheck": true,
16 | "baseUrl": ".",
17 | "paths": {}
18 | },
19 | "exclude": ["node_modules", "tmp"]
20 | }
21 |
--------------------------------------------------------------------------------