@workleap/webpack-configs 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @workleap/webpack-configs
2
2
 
3
+ ## 1.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#175](https://github.com/gsoft-inc/wl-web-configs/pull/175) [`0f5077c`](https://github.com/gsoft-inc/wl-web-configs/commit/0f5077cdc9592e02099c498fcb6ebda6e1637e0c) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Added an `svgr` option.
8
+
9
+ ## 1.2.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [#167](https://github.com/gsoft-inc/wl-web-configs/pull/167) [`55e0bd4`](https://github.com/gsoft-inc/wl-web-configs/commit/55e0bd4a7574f3cc6c138474eca90b84a62ad16f) Thanks [@tjosepo](https://github.com/tjosepo)! - Fix file extension RegEx rules being too lenient
14
+
3
15
  ## 1.2.0
4
16
 
5
17
  ### Minor Changes
package/dist/build.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { Config } from '@swc/core';
1
+ import { Config } from '@svgr/core';
2
+ import { Config as Config$1 } from '@swc/core';
2
3
  import HtmlWebpackPlugin from 'html-webpack-plugin';
3
4
  import MiniCssExtractPlugin from 'mini-css-extract-plugin';
4
5
  import { Configuration } from 'webpack';
@@ -19,10 +20,11 @@ interface DefineBuildConfigOptions {
19
20
  miniCssExtractPluginOptions?: MiniCssExtractPluginOptions;
20
21
  optimize?: boolean;
21
22
  cssModules?: boolean;
23
+ svgr?: boolean | Config;
22
24
  environmentVariables?: Record<string, unknown>;
23
25
  transformers?: WebpackConfigTransformer[];
24
26
  verbose?: boolean;
25
27
  }
26
- declare function defineBuildConfig(swcConfig: Config, options?: DefineBuildConfigOptions): Configuration;
28
+ declare function defineBuildConfig(swcConfig: Config$1, options?: DefineBuildConfigOptions): Configuration;
27
29
 
28
- export { DefineBuildConfigOptions, defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig };
30
+ export { type DefineBuildConfigOptions, defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig };
package/dist/build.js CHANGED
@@ -1,3 +1,3 @@
1
- export { defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig } from './chunk-IDO2HXCS.js';
1
+ export { defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig } from './chunk-DUMBWXNP.js';
2
2
  import './chunk-2YARCRX5.js';
3
3
  import './chunk-QJI26K46.js';
@@ -45,6 +45,7 @@ function defineBuildConfig(swcConfig, options = {}) {
45
45
  miniCssExtractPluginOptions = defineMiniCssExtractPluginConfig(),
46
46
  optimize = true,
47
47
  cssModules = false,
48
+ svgr = true,
48
49
  // Using an empty object literal as the default value to ensure
49
50
  // "process.env" is always available.
50
51
  environmentVariables = {},
@@ -121,21 +122,21 @@ function defineBuildConfig(swcConfig, options = {}) {
121
122
  module: {
122
123
  rules: [
123
124
  {
124
- test: /\.(js|jsx|ts|tsx)/i,
125
+ test: /\.(js|jsx|ts|tsx)$/i,
125
126
  exclude: /node_modules/,
126
127
  loader: require2.resolve("swc-loader"),
127
128
  options: swcConfig
128
129
  },
129
130
  {
130
131
  // https://stackoverflow.com/questions/69427025/programmatic-webpack-jest-esm-cant-resolve-module-without-js-file-exten
131
- test: /\.js/i,
132
+ test: /\.js$/i,
132
133
  include: /node_modules/,
133
134
  resolve: {
134
135
  fullySpecified: false
135
136
  }
136
137
  },
137
138
  {
138
- test: /\.css/i,
139
+ test: /\.css$/i,
139
140
  use: [
140
141
  { loader: MiniCssExtractPlugin.loader },
141
142
  {
@@ -149,14 +150,22 @@ function defineBuildConfig(swcConfig, options = {}) {
149
150
  { loader: require2.resolve("postcss-loader") }
150
151
  ]
151
152
  },
152
- {
153
- test: /\.svg/i,
154
- loader: require2.resolve("@svgr/webpack")
155
- },
156
- {
157
- test: /\.(png|jpe?g|gif)/i,
158
- type: "asset/resource"
159
- },
153
+ ...svgr ? [
154
+ {
155
+ test: /\.svg$/i,
156
+ loader: require2.resolve("@svgr/webpack"),
157
+ options: isObject(svgr) ? svgr : void 0
158
+ },
159
+ {
160
+ test: /\.(png|jpe?g|gif)$/i,
161
+ type: "asset/resource"
162
+ }
163
+ ] : [
164
+ {
165
+ test: /\.(png|jpe?g|gif|svg)$/i,
166
+ type: "asset/resource"
167
+ }
168
+ ],
160
169
  ...moduleRules
161
170
  ]
162
171
  },
@@ -57,6 +57,7 @@ function defineDevConfig(swcConfig, options = {}) {
57
57
  fastRefresh = true,
58
58
  cssModules = false,
59
59
  overlay,
60
+ svgr = true,
60
61
  // Using an empty object literal as the default value to ensure
61
62
  // "process.env" is always available.
62
63
  environmentVariables = {},
@@ -132,21 +133,21 @@ function defineDevConfig(swcConfig, options = {}) {
132
133
  module: {
133
134
  rules: [
134
135
  {
135
- test: /\.(js|jsx|ts|tsx)/i,
136
+ test: /\.(js|jsx|ts|tsx)$/i,
136
137
  exclude: /node_modules/,
137
138
  loader: require2.resolve("swc-loader"),
138
139
  options: trySetSwcFastRefresh(swcConfig, fastRefresh !== false)
139
140
  },
140
141
  {
141
142
  // https://stackoverflow.com/questions/69427025/programmatic-webpack-jest-esm-cant-resolve-module-without-js-file-exten
142
- test: /\.js/i,
143
+ test: /\.js$/i,
143
144
  include: /node_modules/,
144
145
  resolve: {
145
146
  fullySpecified: false
146
147
  }
147
148
  },
148
149
  {
149
- test: /\.css/i,
150
+ test: /\.css$/i,
150
151
  use: [
151
152
  { loader: require2.resolve("style-loader") },
152
153
  {
@@ -160,14 +161,22 @@ function defineDevConfig(swcConfig, options = {}) {
160
161
  { loader: require2.resolve("postcss-loader") }
161
162
  ]
162
163
  },
163
- {
164
- test: /\.svg/i,
165
- loader: require2.resolve("@svgr/webpack")
166
- },
167
- {
168
- test: /\.(png|jpe?g|gif)/i,
169
- type: "asset/resource"
170
- },
164
+ ...svgr ? [
165
+ {
166
+ test: /\.svg$/i,
167
+ loader: require2.resolve("@svgr/webpack"),
168
+ options: isObject(svgr) ? svgr : void 0
169
+ },
170
+ {
171
+ test: /\.(png|jpe?g|gif)$/i,
172
+ type: "asset/resource"
173
+ }
174
+ ] : [
175
+ {
176
+ test: /\.(png|jpe?g|gif|svg)$/i,
177
+ type: "asset/resource"
178
+ }
179
+ ],
171
180
  ...moduleRules
172
181
  ]
173
182
  },
package/dist/dev.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ReactRefreshPluginOptions } from '@pmmmwh/react-refresh-webpack-plugin/types/lib/types.d.ts';
2
- import { Config } from '@swc/core';
2
+ import { Config } from '@svgr/core';
3
+ import { Config as Config$1 } from '@swc/core';
3
4
  import HtmlWebpackPlugin from 'html-webpack-plugin';
4
5
  import { Configuration } from 'webpack';
5
6
  import { WebpackConfigTransformer } from './transformers/applyTransformers.js';
@@ -20,10 +21,11 @@ interface DefineDevConfigOptions {
20
21
  fastRefresh?: boolean | ReactRefreshPluginOptions;
21
22
  cssModules?: boolean;
22
23
  overlay?: false;
24
+ svgr?: boolean | Config;
23
25
  environmentVariables?: Record<string, unknown>;
24
26
  transformers?: WebpackConfigTransformer[];
25
27
  verbose?: boolean;
26
28
  }
27
- declare function defineDevConfig(swcConfig: Config, options?: DefineDevConfigOptions): Configuration;
29
+ declare function defineDevConfig(swcConfig: Config$1, options?: DefineDevConfigOptions): Configuration;
28
30
 
29
- export { DefineDevConfigOptions, defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig };
31
+ export { type DefineDevConfigOptions, defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig };
package/dist/dev.js CHANGED
@@ -1,3 +1,3 @@
1
- export { defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig } from './chunk-4SM5S5E3.js';
1
+ export { defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig } from './chunk-FPABWZXL.js';
2
2
  import './chunk-2YARCRX5.js';
3
3
  import './chunk-QJI26K46.js';
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export { DefineDevConfigOptions, defineDevConfig, defineDevHtmlWebpackPluginConf
4
4
  export { WebpackConfigTransformer, WebpackConfigTransformerContext } from './transformers/applyTransformers.js';
5
5
  export { AssetModuleType, ModuleRuleMatch, ModuleRuleMatcher, WithModuleRuleMatcherInfo, addAfterModuleRule, addBeforeModuleRule, findModuleRule, findModuleRules, matchAssetModuleType, matchLoaderName, matchTest, removeModuleRules, replaceModuleRule } from './transformers/moduleRules.js';
6
6
  export { PluginMatch, PluginMatcher, WebpackPlugin, WithPluginMatcherInfo, addAfterPlugin, addBeforePlugin, findPlugin, matchConstructorName, removePlugin, replacePlugin } from './transformers/plugins.js';
7
+ import '@svgr/core';
7
8
  import '@swc/core';
8
9
  import 'html-webpack-plugin';
9
10
  import 'mini-css-extract-plugin';
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig } from './chunk-IDO2HXCS.js';
2
- export { defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig } from './chunk-4SM5S5E3.js';
1
+ export { defineBuildConfig, defineBuildHtmlWebpackPluginConfig, defineMiniCssExtractPluginConfig } from './chunk-DUMBWXNP.js';
2
+ export { defineDevConfig, defineDevHtmlWebpackPluginConfig, defineFastRefreshPluginConfig } from './chunk-FPABWZXL.js';
3
3
  import './chunk-2YARCRX5.js';
4
4
  import './chunk-QJI26K46.js';
5
5
  export { addAfterModuleRule, addBeforeModuleRule, findModuleRule, findModuleRules, matchAssetModuleType, matchLoaderName, matchTest, removeModuleRules, replaceModuleRule } from './chunk-34O5ZLZ6.js';
@@ -7,4 +7,4 @@ interface WebpackConfigTransformerContext {
7
7
  type WebpackConfigTransformer = (config: Configuration, context: WebpackConfigTransformerContext) => Configuration;
8
8
  declare function applyTransformers(config: Configuration, transformers: WebpackConfigTransformer[], context: WebpackConfigTransformerContext): Configuration;
9
9
 
10
- export { WebpackConfigTransformer, WebpackConfigTransformerContext, applyTransformers };
10
+ export { type WebpackConfigTransformer, type WebpackConfigTransformerContext, applyTransformers };
@@ -23,4 +23,4 @@ declare function addAfterModuleRule(config: Configuration, matcher: ModuleRuleMa
23
23
  declare function replaceModuleRule(config: Configuration, matcher: ModuleRuleMatcher, newModuleRule: RuleSetRule | RuleSetUseItem): void;
24
24
  declare function removeModuleRules(config: Configuration, matcher: ModuleRuleMatcher): void;
25
25
 
26
- export { AssetModuleType, ModuleRuleMatch, ModuleRuleMatcher, WithModuleRuleMatcherInfo, addAfterModuleRule, addBeforeModuleRule, findModuleRule, findModuleRules, matchAssetModuleType, matchLoaderName, matchTest, removeModuleRules, replaceModuleRule };
26
+ export { type AssetModuleType, type ModuleRuleMatch, type ModuleRuleMatcher, type WithModuleRuleMatcherInfo, addAfterModuleRule, addBeforeModuleRule, findModuleRule, findModuleRules, matchAssetModuleType, matchLoaderName, matchTest, removeModuleRules, replaceModuleRule };
@@ -19,4 +19,4 @@ declare function addBeforePlugin(config: Configuration, matcher: PluginMatcher,
19
19
  declare function addAfterPlugin(config: Configuration, matcher: PluginMatcher, newPlugins: WebpackPlugin[]): void;
20
20
  declare function removePlugin(config: Configuration, matcher: PluginMatcher): void;
21
21
 
22
- export { PluginMatch, PluginMatcher, WebpackPlugin, WithPluginMatcherInfo, addAfterPlugin, addBeforePlugin, findPlugin, matchConstructorName, removePlugin, replacePlugin };
22
+ export { type PluginMatch, type PluginMatcher, type WebpackPlugin, type WithPluginMatcherInfo, addAfterPlugin, addBeforePlugin, findPlugin, matchConstructorName, removePlugin, replacePlugin };
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@workleap/webpack-configs",
3
3
  "author": "Workleap",
4
4
  "description": "Workleap recommended webpack config.",
5
- "version": "1.2.0",
5
+ "version": "1.3.0",
6
6
  "license": "Apache-2.0",
7
7
  "keywords": [
8
8
  "workleap",
@@ -27,17 +27,6 @@
27
27
  "url": "git+https://github.com/gsoft-inc/wl-web-configs.git",
28
28
  "directory": "packages/webpack-configs"
29
29
  },
30
- "dependencies": {
31
- "@pmmmwh/react-refresh-webpack-plugin": "0.5.11",
32
- "@svgr/webpack": "8.1.0",
33
- "css-loader": "6.8.1",
34
- "html-webpack-plugin": "5.5.3",
35
- "mini-css-extract-plugin": "2.7.6",
36
- "postcss-loader": "7.3.3",
37
- "style-loader": "3.3.3",
38
- "swc-loader": "0.2.3",
39
- "terser-webpack-plugin": "5.3.9"
40
- },
41
30
  "peerDependencies": {
42
31
  "@swc/core": "*",
43
32
  "@swc/helpers": "*",
@@ -52,25 +41,37 @@
52
41
  }
53
42
  },
54
43
  "devDependencies": {
55
- "@swc/core": "1.3.85",
56
- "@swc/helpers": "0.5.2",
44
+ "@svgr/core": "8.1.0",
45
+ "@swc/core": "1.3.99",
46
+ "@swc/helpers": "0.5.3",
57
47
  "@swc/jest": "0.2.29",
58
- "@types/jest": "29.5.5",
59
- "@types/node": "20.6.2",
60
- "browserslist": "4.21.10",
48
+ "@types/jest": "29.5.10",
49
+ "@types/node": "20.10.0",
50
+ "browserslist": "4.22.1",
61
51
  "jest": "29.7.0",
62
- "postcss": "8.4.29",
63
- "postcss-load-config": "4.0.1",
52
+ "postcss": "8.4.31",
53
+ "postcss-load-config": "4.0.2",
64
54
  "ts-node": "10.9.1",
65
- "tsup": "7.2.0",
55
+ "tsup": "8.0.1",
66
56
  "typescript": "5.2.2",
67
- "webpack": "5.88.2",
57
+ "webpack": "5.89.0",
68
58
  "webpack-dev-server": "4.15.1",
69
59
  "@workleap/eslint-plugin": "3.0.0",
70
- "@workleap/swc-configs": "2.1.2",
60
+ "@workleap/swc-configs": "2.2.0",
71
61
  "@workleap/tsup-configs": "3.0.1",
72
62
  "@workleap/typescript-configs": "3.0.2"
73
63
  },
64
+ "dependencies": {
65
+ "@pmmmwh/react-refresh-webpack-plugin": "0.5.11",
66
+ "@svgr/webpack": "8.1.0",
67
+ "css-loader": "6.8.1",
68
+ "html-webpack-plugin": "5.5.3",
69
+ "mini-css-extract-plugin": "2.7.6",
70
+ "postcss-loader": "7.3.3",
71
+ "style-loader": "3.3.3",
72
+ "swc-loader": "0.2.3",
73
+ "terser-webpack-plugin": "5.3.9"
74
+ },
74
75
  "publishConfig": {
75
76
  "access": "public",
76
77
  "provenance": true