diff --git a/package.json b/package.json index 9874065..50082b2 100644 --- a/package.json +++ b/package.json @@ -65,6 +65,7 @@ "@vitest/ui": "^1.3.1", "angular-eslint": "^19.0.2", "commitlint-plugin-tense": "1.0.4", + "css-loader": "^7.1.2", "eslint": "^9.8.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-playwright": "^1.6.2", diff --git a/packages/angular-rspack/eslint.next.config.js b/packages/angular-rspack/eslint.next.config.js index 68e9b9d..052d41a 100644 --- a/packages/angular-rspack/eslint.next.config.js +++ b/packages/angular-rspack/eslint.next.config.js @@ -24,6 +24,7 @@ module.exports = [ ], ignoredDependencies: [ 'nx', + 'css-loader', 'less-loader', 'sass-loader', 'sass-embedded', diff --git a/packages/angular-rspack/package.json b/packages/angular-rspack/package.json index c4a2740..cbe8de2 100644 --- a/packages/angular-rspack/package.json +++ b/packages/angular-rspack/package.json @@ -54,6 +54,7 @@ "license-webpack-plugin": "^4.0.2", "sass-embedded": "^1.79.3", "sass-loader": "^16.0.2", + "css-loader": "^7.1.2", "tslib": "^2.3.0", "webpack-merge": "^6.0.1", "ws": "^8.18.0" diff --git a/packages/angular-rspack/src/lib/config/style-config-utils.ts b/packages/angular-rspack/src/lib/config/style-config-utils.ts index bc5257c..9df1782 100644 --- a/packages/angular-rspack/src/lib/config/style-config-utils.ts +++ b/packages/angular-rspack/src/lib/config/style-config-utils.ts @@ -18,7 +18,7 @@ export function getSassLoaderConfig( sourceMap?: SourceMap ) { return { - test: /\.?(sa|sc|c)ss$/, + test: /\.?(sa|sc)ss$/, use: [ { loader: 'sass-loader', diff --git a/packages/angular-rspack/src/lib/config/style-config-utils.unit.test.ts b/packages/angular-rspack/src/lib/config/style-config-utils.unit.test.ts index 6947612..fd6fa22 100644 --- a/packages/angular-rspack/src/lib/config/style-config-utils.unit.test.ts +++ b/packages/angular-rspack/src/lib/config/style-config-utils.unit.test.ts @@ -43,7 +43,7 @@ describe('getIncludePathOptions', () => { describe('getSassLoaderConfig', () => { it('should return sass loader config without options passed', () => { expect(getSassLoaderConfig()).toStrictEqual({ - test: /\.?(sa|sc|c)ss$/, + test: /\.?(sa|sc)ss$/, use: [ { loader: 'sass-loader', @@ -127,7 +127,7 @@ describe('getStyleLoaders', () => { it('should return sass and less loader config without options passed', () => { expect(getStyleLoaders()).toStrictEqual([ { - test: /\.?(sa|sc|c)ss$/, + test: /\.?(sa|sc)ss$/, use: [ { loader: 'sass-loader', @@ -162,26 +162,28 @@ describe('getStyleLoaders', () => { includePaths: ['path/to/a'], sass: { indentedSyntax: true }, }) - ).toStrictEqual([ - expect.objectContaining({ - use: [ - expect.objectContaining({ - options: expect.objectContaining({ - includePaths: ['path/to/a'], - indentedSyntax: true, + ).toStrictEqual( + expect.arrayContaining([ + expect.objectContaining({ + use: [ + expect.objectContaining({ + options: expect.objectContaining({ + includePaths: ['path/to/a'], + indentedSyntax: true, + }), }), - }), - ], - }), - expect.objectContaining({ - use: [ - expect.objectContaining({ - options: expect.objectContaining({ - paths: ['path/to/a'], + ], + }), + expect.objectContaining({ + use: [ + expect.objectContaining({ + options: expect.objectContaining({ + paths: ['path/to/a'], + }), }), - }), - ], - }), - ]); + ], + }), + ]) + ); }); }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 27762d8..06e0873 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -255,6 +255,9 @@ importers: commitlint-plugin-tense: specifier: 1.0.4 version: 1.0.4(@commitlint/lint@19.7.1) + css-loader: + specifier: ^7.1.2 + version: 7.1.2(@rspack/core@1.2.6(@swc/helpers@0.5.15))(webpack@5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.19.12)) eslint: specifier: ^9.8.0 version: 9.21.0(jiti@2.4.2) @@ -484,6 +487,9 @@ importers: '@rspack/core': specifier: '>=1.0.5 <2.0.0' version: 1.2.6(@swc/helpers@0.5.15) + css-loader: + specifier: ^7.1.2 + version: 7.1.2(@rspack/core@1.2.6(@swc/helpers@0.5.15))(webpack@5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.19.12)) express: specifier: 4.21.1 version: 4.21.1 @@ -15784,18 +15790,32 @@ snapshots: css-loader@7.1.2(@rspack/core@1.2.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 - postcss-modules-extract-imports: 3.1.0(postcss@8.4.49) - postcss-modules-local-by-default: 4.2.0(postcss@8.4.49) - postcss-modules-scope: 3.2.1(postcss@8.4.49) - postcss-modules-values: 4.0.0(postcss@8.4.49) + icss-utils: 5.1.0(postcss@8.5.3) + postcss: 8.5.3 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.3) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.3) + postcss-modules-scope: 3.2.1(postcss@8.5.3) + postcss-modules-values: 4.0.0(postcss@8.5.3) postcss-value-parser: 4.2.0 - semver: 7.6.3 + semver: 7.7.1 optionalDependencies: '@rspack/core': 1.2.6(@swc/helpers@0.5.15) webpack: 5.97.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.24.2) + css-loader@7.1.2(@rspack/core@1.2.6(@swc/helpers@0.5.15))(webpack@5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.19.12)): + dependencies: + icss-utils: 5.1.0(postcss@8.5.3) + postcss: 8.5.3 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.3) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.3) + postcss-modules-scope: 3.2.1(postcss@8.5.3) + postcss-modules-values: 4.0.0(postcss@8.5.3) + postcss-value-parser: 4.2.0 + semver: 7.7.1 + optionalDependencies: + '@rspack/core': 1.2.6(@swc/helpers@0.5.15) + webpack: 5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.19.12) + css-minimizer-webpack-plugin@5.0.1(esbuild@0.19.12)(webpack@5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.15))(esbuild@0.19.12)): dependencies: '@jridgewell/trace-mapping': 0.3.25 @@ -17143,10 +17163,6 @@ snapshots: dependencies: safer-buffer: 2.1.2 - icss-utils@5.1.0(postcss@8.4.49): - dependencies: - postcss: 8.4.49 - icss-utils@5.1.0(postcss@8.5.3): dependencies: postcss: 8.5.3 @@ -19017,21 +19033,10 @@ snapshots: postcss: 8.5.3 postcss-selector-parser: 6.1.2 - postcss-modules-extract-imports@3.1.0(postcss@8.4.49): - dependencies: - postcss: 8.4.49 - postcss-modules-extract-imports@3.1.0(postcss@8.5.3): dependencies: postcss: 8.5.3 - postcss-modules-local-by-default@4.2.0(postcss@8.4.49): - dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 - postcss-selector-parser: 7.1.0 - postcss-value-parser: 4.2.0 - postcss-modules-local-by-default@4.2.0(postcss@8.5.3): dependencies: icss-utils: 5.1.0(postcss@8.5.3) @@ -19039,21 +19044,11 @@ snapshots: postcss-selector-parser: 7.1.0 postcss-value-parser: 4.2.0 - postcss-modules-scope@3.2.1(postcss@8.4.49): - dependencies: - postcss: 8.4.49 - postcss-selector-parser: 7.1.0 - postcss-modules-scope@3.2.1(postcss@8.5.3): dependencies: postcss: 8.5.3 postcss-selector-parser: 7.1.0 - postcss-modules-values@4.0.0(postcss@8.4.49): - dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 - postcss-modules-values@4.0.0(postcss@8.5.3): dependencies: icss-utils: 5.1.0(postcss@8.5.3)