@elliemae/pui-cli 9.0.0-next.1 → 9.0.0-next.3

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.
@@ -42,9 +42,13 @@ __export(utils_exports, {
42
42
  module.exports = __toCommonJS(utils_exports);
43
43
  var import_node_path = __toESM(require("node:path"), 1);
44
44
  var import_node_fs = __toESM(require("node:fs"), 1);
45
- var import_promises = require("fs/promises");
45
+ var import_promises = require("node:fs/promises");
46
+ var import_node_zlib = require("node:zlib");
47
+ var import_node_stream = require("node:stream");
48
+ var import_node_util = require("node:util");
46
49
  var import_execa = require("execa");
47
50
  var import_chalk = __toESM(require("chalk"), 1);
51
+ var import_fast_glob = __toESM(require("fast-glob"), 1);
48
52
  var import_helpers = require("../webpack/helpers.js");
49
53
  const browsersMapping = {
50
54
  and_chr: "Chrome for Android",
@@ -145,6 +149,37 @@ const updateManifestWithVersionInfo = async (dest) => {
145
149
  manifestData = manifestData.replace(/latest\//g, `${(0, import_helpers.getAppVersion)()}/`);
146
150
  await (0, import_promises.writeFile)(manifestFile, manifestData);
147
151
  };
152
+ const updateRuntimeFile = async (src, dest, version) => {
153
+ const latestJSFolder = "latest/js";
154
+ const pipe = (0, import_node_util.promisify)(import_node_stream.pipeline);
155
+ const results = await (0, import_fast_glob.default)([import_node_path.default.join(src, "runtime~app.*.js")]);
156
+ if (!results?.length)
157
+ throw new Error("Runtime file not found");
158
+ const runtimeFilePath = results[0];
159
+ const runtimeFileName = import_node_path.default.basename(runtimeFilePath);
160
+ const destRuntimeFilePath = import_node_path.default.join(dest, runtimeFileName);
161
+ const runtimeFileData = await (0, import_promises.readFile)(runtimeFilePath, "utf8");
162
+ if (runtimeFileData.includes(latestJSFolder)) {
163
+ await (0, import_promises.writeFile)(
164
+ destRuntimeFilePath,
165
+ runtimeFileData.replace(latestJSFolder, `${version}/js`)
166
+ );
167
+ const sourceMapFile = `${runtimeFilePath}.map`;
168
+ const sourcemap = await (0, import_promises.readFile)(sourceMapFile, "utf8");
169
+ await (0, import_promises.writeFile)(
170
+ `${destRuntimeFilePath}.map`,
171
+ sourcemap.replace(latestJSFolder, `${version}/js`)
172
+ );
173
+ const gzip = (0, import_node_zlib.createGzip)();
174
+ let source = (0, import_node_fs.createReadStream)(destRuntimeFilePath);
175
+ let destination = (0, import_node_fs.createWriteStream)(`${destRuntimeFilePath}.gz`);
176
+ await pipe(source, gzip, destination);
177
+ const brotli = (0, import_node_zlib.createBrotliCompress)();
178
+ source = (0, import_node_fs.createReadStream)(destRuntimeFilePath);
179
+ destination = (0, import_node_fs.createWriteStream)(`${destRuntimeFilePath}.br`);
180
+ await pipe(source, brotli, destination);
181
+ }
182
+ };
148
183
  const copyBuildAssetsToVersionedFolder = async () => {
149
184
  const appVersion = (0, import_helpers.getAppVersion)();
150
185
  const isVersionedApp = (0, import_helpers.isAppLoaderEnabled)() && appVersion !== import_helpers.LATEST_VERSION;
@@ -154,6 +189,11 @@ const copyBuildAssetsToVersionedFolder = async () => {
154
189
  const dest = import_node_path.default.resolve(process.cwd(), `build/public/${appVersion}`);
155
190
  await copyDir(src, dest);
156
191
  await updateManifestWithVersionInfo(dest);
192
+ await updateRuntimeFile(
193
+ import_node_path.default.join(src, "js"),
194
+ import_node_path.default.join(dest, "js"),
195
+ appVersion
196
+ );
157
197
  };
158
198
  const isPathExist = async (pathToCheck) => {
159
199
  try {
@@ -33,7 +33,7 @@ __export(pui_config_exports, {
33
33
  module.exports = __toCommonJS(pui_config_exports);
34
34
  var import_node_path = __toESM(require("node:path"), 1);
35
35
  var import_node_fs = __toESM(require("node:fs"), 1);
36
- var import_lodash = require("lodash");
36
+ var import_merge = __toESM(require("lodash/merge"), 1);
37
37
  const baseConfig = {
38
38
  esBuild: {
39
39
  target: "es2020"
@@ -44,5 +44,5 @@ const getPUIConfig = () => {
44
44
  if (!import_node_fs.default.existsSync(configPath))
45
45
  return baseConfig;
46
46
  const config = JSON.parse(import_node_fs.default.readFileSync(configPath, "utf8"));
47
- return (0, import_lodash.merge)(baseConfig, config);
47
+ return (0, import_merge.default)(baseConfig, config);
48
48
  };
@@ -38,6 +38,7 @@ var import_fast_glob = __toESM(require("fast-glob"), 1);
38
38
  var import_esbuild = require("esbuild");
39
39
  var import_promises = require("node:fs/promises");
40
40
  var import_browserslist_to_esbuild = __toESM(require("browserslist-to-esbuild"), 1);
41
+ var import_esbuild_plugin_lodash = __toESM(require("esbuild-plugin-lodash"), 1);
41
42
  const import_meta = {};
42
43
  const __dirname = import_node_path.default.dirname((0, import_node_url.fileURLToPath)(import_meta.url));
43
44
  const TARGETS = {
@@ -116,7 +117,8 @@ const esBuild = async ({
116
117
  ...getCommonConfig({ injectReactShim }),
117
118
  outdir: cjsOutdir,
118
119
  format: ESBUILD_FORMAT.CJS,
119
- target
120
+ target,
121
+ plugins: [(0, import_esbuild_plugin_lodash.default)()]
120
122
  });
121
123
  await copyFiles({ srcdir, outdir: cjsOutdir });
122
124
  await createPackageJson({ outdir: cjsOutdir, type: NODE_MODULE_TYPES.CJS });
@@ -76,7 +76,7 @@ const getLibraryName = () => {
76
76
  const packageJson = JSON.parse(
77
77
  import_node_fs.default.readFileSync(import_node_path.default.join(process.cwd(), "package.json")).toString()
78
78
  );
79
- const libraryName = packageJson ? packageJson.name : process.env.LIBRARY_NAME || "mylibrary";
79
+ const libraryName = process.env.LIBRARY_NAME ?? packageJson?.name;
80
80
  const modifiedLibName = `emui-${libraryName.replace("@elliemae/", "").replace("pui-", "")}`;
81
81
  return import_lodash.default.camelCase(modifiedLibName);
82
82
  };
@@ -254,7 +254,7 @@ const baseConfig = (options) => ({
254
254
  resourceQuery: /resource/,
255
255
  type: "asset/resource",
256
256
  generator: {
257
- filename: "latest/[name].[hash][ext][query]"
257
+ filename: "latest/[name].[hash][ext]"
258
258
  },
259
259
  exclude: (0, import_helpers.excludeNodeModulesExcept)(import_helpers.modulesToTranspile)
260
260
  },
@@ -290,7 +290,26 @@ const baseConfig = (options) => ({
290
290
  externals: {
291
291
  "@elliemae/pui-user-monitoring": "emuiUserMonitoring",
292
292
  "@elliemae/pui-app-loader": "emuiAppLoader",
293
- "@elliemae/pui-diagnostics": "emuiDiagnostics"
293
+ "@elliemae/pui-diagnostics": "emuiDiagnostics",
294
+ react: "emuiAppReactDependencies.react",
295
+ "react-dom": "emuiAppReactDependencies.reactDOM",
296
+ "@reduxjs/toolkit": "emuiAppReactDependencies.rtk",
297
+ axios: "emuiAppReactDependencies.axios.default",
298
+ dompurify: "emuiAppReactDependencies.dompurify",
299
+ history: "emuiAppReactDependencies.history",
300
+ immer: "emuiAppReactDependencies.immer",
301
+ invariant: "emuiAppReactDependencies.invariant",
302
+ "pubsub-js": "emuiAppReactDependencies.pubsubjs",
303
+ "react-aria-live": "emuiAppReactDependencies.reactAriaLive",
304
+ "react-helmet": "emuiAppReactDependencies.reactHelmet",
305
+ "react-hook-form": "emuiAppReactDependencies.reactHookForm",
306
+ "react-redux": "emuiAppReactDependencies.reactRedux",
307
+ "react-router-dom": "emuiAppReactDependencies.reactRouterDOM",
308
+ reduxInjectors: "emuiAppReactDependencies.reduxInjectors",
309
+ reselect: "emuiAppReactDependencies.reselect",
310
+ // "styled-components": "emuiAppReactDependencies.styledComponents",
311
+ "styled-system": "emuiAppReactDependencies.styledSystem"
312
+ // "@xstyled/styled-components": "emuiAppReactDependencies.xstyled",
294
313
  },
295
314
  devtool: options.devtool || "eval-source-map",
296
315
  performance: options.performance || {},
@@ -1,5 +1,5 @@
1
1
  import path from "node:path";
2
- import fs, { constants } from "node:fs";
2
+ import fs, { constants, createReadStream, createWriteStream } from "node:fs";
3
3
  import {
4
4
  readFile,
5
5
  writeFile,
@@ -7,9 +7,13 @@ import {
7
7
  readdir,
8
8
  copyFile,
9
9
  access
10
- } from "fs/promises";
10
+ } from "node:fs/promises";
11
+ import { createGzip, createBrotliCompress } from "node:zlib";
12
+ import { pipeline } from "node:stream";
13
+ import { promisify } from "node:util";
11
14
  import { execaCommand } from "execa";
12
15
  import chalk from "chalk";
16
+ import fg from "fast-glob";
13
17
  import {
14
18
  getPaths,
15
19
  isAppLoaderEnabled,
@@ -115,6 +119,37 @@ const updateManifestWithVersionInfo = async (dest) => {
115
119
  manifestData = manifestData.replace(/latest\//g, `${getAppVersion()}/`);
116
120
  await writeFile(manifestFile, manifestData);
117
121
  };
122
+ const updateRuntimeFile = async (src, dest, version) => {
123
+ const latestJSFolder = "latest/js";
124
+ const pipe = promisify(pipeline);
125
+ const results = await fg([path.join(src, "runtime~app.*.js")]);
126
+ if (!results?.length)
127
+ throw new Error("Runtime file not found");
128
+ const runtimeFilePath = results[0];
129
+ const runtimeFileName = path.basename(runtimeFilePath);
130
+ const destRuntimeFilePath = path.join(dest, runtimeFileName);
131
+ const runtimeFileData = await readFile(runtimeFilePath, "utf8");
132
+ if (runtimeFileData.includes(latestJSFolder)) {
133
+ await writeFile(
134
+ destRuntimeFilePath,
135
+ runtimeFileData.replace(latestJSFolder, `${version}/js`)
136
+ );
137
+ const sourceMapFile = `${runtimeFilePath}.map`;
138
+ const sourcemap = await readFile(sourceMapFile, "utf8");
139
+ await writeFile(
140
+ `${destRuntimeFilePath}.map`,
141
+ sourcemap.replace(latestJSFolder, `${version}/js`)
142
+ );
143
+ const gzip = createGzip();
144
+ let source = createReadStream(destRuntimeFilePath);
145
+ let destination = createWriteStream(`${destRuntimeFilePath}.gz`);
146
+ await pipe(source, gzip, destination);
147
+ const brotli = createBrotliCompress();
148
+ source = createReadStream(destRuntimeFilePath);
149
+ destination = createWriteStream(`${destRuntimeFilePath}.br`);
150
+ await pipe(source, brotli, destination);
151
+ }
152
+ };
118
153
  const copyBuildAssetsToVersionedFolder = async () => {
119
154
  const appVersion = getAppVersion();
120
155
  const isVersionedApp = isAppLoaderEnabled() && appVersion !== LATEST_VERSION;
@@ -124,6 +159,11 @@ const copyBuildAssetsToVersionedFolder = async () => {
124
159
  const dest = path.resolve(process.cwd(), `build/public/${appVersion}`);
125
160
  await copyDir(src, dest);
126
161
  await updateManifestWithVersionInfo(dest);
162
+ await updateRuntimeFile(
163
+ path.join(src, "js"),
164
+ path.join(dest, "js"),
165
+ appVersion
166
+ );
127
167
  };
128
168
  const isPathExist = async (pathToCheck) => {
129
169
  try {
@@ -4,6 +4,7 @@ import fg from "fast-glob";
4
4
  import { build } from "esbuild";
5
5
  import { writeFile, copyFile, readFile, mkdir } from "node:fs/promises";
6
6
  import browserslistToEsbuild from "browserslist-to-esbuild";
7
+ import lodashTransformer from "esbuild-plugin-lodash";
7
8
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
8
9
  const TARGETS = {
9
10
  browserslist: browserslistToEsbuild(),
@@ -81,7 +82,8 @@ const esBuild = async ({
81
82
  ...getCommonConfig({ injectReactShim }),
82
83
  outdir: cjsOutdir,
83
84
  format: ESBUILD_FORMAT.CJS,
84
- target
85
+ target,
86
+ plugins: [lodashTransformer()]
85
87
  });
86
88
  await copyFiles({ srcdir, outdir: cjsOutdir });
87
89
  await createPackageJson({ outdir: cjsOutdir, type: NODE_MODULE_TYPES.CJS });
@@ -28,7 +28,7 @@ const getLibraryName = () => {
28
28
  const packageJson = JSON.parse(
29
29
  fs.readFileSync(path.join(process.cwd(), "package.json")).toString()
30
30
  );
31
- const libraryName = packageJson ? packageJson.name : process.env.LIBRARY_NAME || "mylibrary";
31
+ const libraryName = process.env.LIBRARY_NAME ?? packageJson?.name;
32
32
  const modifiedLibName = `emui-${libraryName.replace("@elliemae/", "").replace("pui-", "")}`;
33
33
  return _.camelCase(modifiedLibName);
34
34
  };
@@ -227,7 +227,7 @@ const baseConfig = (options) => ({
227
227
  resourceQuery: /resource/,
228
228
  type: "asset/resource",
229
229
  generator: {
230
- filename: "latest/[name].[hash][ext][query]"
230
+ filename: "latest/[name].[hash][ext]"
231
231
  },
232
232
  exclude: excludeNodeModulesExcept(modulesToTranspile)
233
233
  },
@@ -263,7 +263,26 @@ const baseConfig = (options) => ({
263
263
  externals: {
264
264
  "@elliemae/pui-user-monitoring": "emuiUserMonitoring",
265
265
  "@elliemae/pui-app-loader": "emuiAppLoader",
266
- "@elliemae/pui-diagnostics": "emuiDiagnostics"
266
+ "@elliemae/pui-diagnostics": "emuiDiagnostics",
267
+ react: "emuiAppReactDependencies.react",
268
+ "react-dom": "emuiAppReactDependencies.reactDOM",
269
+ "@reduxjs/toolkit": "emuiAppReactDependencies.rtk",
270
+ axios: "emuiAppReactDependencies.axios.default",
271
+ dompurify: "emuiAppReactDependencies.dompurify",
272
+ history: "emuiAppReactDependencies.history",
273
+ immer: "emuiAppReactDependencies.immer",
274
+ invariant: "emuiAppReactDependencies.invariant",
275
+ "pubsub-js": "emuiAppReactDependencies.pubsubjs",
276
+ "react-aria-live": "emuiAppReactDependencies.reactAriaLive",
277
+ "react-helmet": "emuiAppReactDependencies.reactHelmet",
278
+ "react-hook-form": "emuiAppReactDependencies.reactHookForm",
279
+ "react-redux": "emuiAppReactDependencies.reactRedux",
280
+ "react-router-dom": "emuiAppReactDependencies.reactRouterDOM",
281
+ reduxInjectors: "emuiAppReactDependencies.reduxInjectors",
282
+ reselect: "emuiAppReactDependencies.reselect",
283
+ // "styled-components": "emuiAppReactDependencies.styledComponents",
284
+ "styled-system": "emuiAppReactDependencies.styledSystem"
285
+ // "@xstyled/styled-components": "emuiAppReactDependencies.xstyled",
267
286
  },
268
287
  devtool: options.devtool || "eval-source-map",
269
288
  performance: options.performance || {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/pui-cli",
3
- "version": "9.0.0-next.1",
3
+ "version": "9.0.0-next.3",
4
4
  "description": "ICE MT UI Platform CLI",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -24,6 +24,9 @@
24
24
  "./vitest": {
25
25
  "import": "./dist/esm/testing/vitest.config.js"
26
26
  },
27
+ "./server/routes": {
28
+ "require": "./dist/cjs/server/appRoutes.js"
29
+ },
27
30
  "./app.tsconfig.json": "./app.tsconfig.json",
28
31
  "./library.tsconfig.json": "./library.tsconfig.json"
29
32
  },
@@ -40,8 +43,8 @@
40
43
  "url": "https://git.elliemae.io/platform-ui/pui-cli.git"
41
44
  },
42
45
  "engines": {
43
- "pnpm": ">=6",
44
- "node": ">=16"
46
+ "pnpm": ">=8",
47
+ "node": ">=18"
45
48
  },
46
49
  "author": "ICE MT",
47
50
  "license": "MIT",
@@ -72,51 +75,51 @@
72
75
  "sonar56x": true
73
76
  },
74
77
  "dependencies": {
75
- "@axe-core/react": "~4.6.0",
76
- "@babel/cli": "~7.21.0",
77
- "@babel/core": "~7.21.3",
78
- "@babel/eslint-parser": "~7.21.3",
78
+ "@axe-core/react": "~4.7.0",
79
+ "@babel/cli": "~7.21.5",
80
+ "@babel/core": "~7.21.8",
81
+ "@babel/eslint-parser": "~7.21.8",
79
82
  "@babel/node": "~7.20.7",
80
83
  "@babel/plugin-proposal-class-properties": "~7.18.6",
81
84
  "@babel/plugin-proposal-export-default-from": "~7.18.10",
82
85
  "@babel/plugin-syntax-dynamic-import": "~7.8.3",
83
86
  "@babel/plugin-syntax-import-assertions": "~7.20.0",
84
- "@babel/plugin-transform-modules-commonjs": "~7.21.2",
87
+ "@babel/plugin-transform-modules-commonjs": "~7.21.5",
85
88
  "@babel/plugin-transform-react-constant-elements": "~7.21.3",
86
89
  "@babel/plugin-transform-react-inline-elements": "~7.21.0",
87
90
  "@babel/plugin-transform-react-jsx-source": "~7.19.6",
88
- "@babel/plugin-transform-runtime": "~7.21.0",
89
- "@babel/preset-env": "~7.20.2",
91
+ "@babel/plugin-transform-runtime": "~7.21.4",
92
+ "@babel/preset-env": "~7.21.5",
90
93
  "@babel/preset-react": "~7.18.6",
91
- "@babel/preset-typescript": "~7.21.0",
92
- "@babel/runtime": "~7.21.0",
93
- "@commitlint/cli": "~17.4.4",
94
- "@commitlint/config-conventional": "~17.4.4",
95
- "@elliemae/browserslist-config-elliemae-latest-browsers": "~1.6.0",
94
+ "@babel/preset-typescript": "~7.21.5",
95
+ "@babel/runtime": "~7.21.5",
96
+ "@commitlint/cli": "~17.6.3",
97
+ "@commitlint/config-conventional": "~17.6.3",
98
+ "@elliemae/browserslist-config-elliemae-latest-browsers": "~1.7.0",
96
99
  "@faker-js/faker": "7.6.0",
97
- "@nrwl/cli": "15.8.6",
98
- "@nrwl/tao": "15.8.6",
99
- "@nrwl/workspace": "15.8.6",
100
+ "@nrwl/cli": "15.9.3",
101
+ "@nrwl/tao": "16.1.0",
102
+ "@nrwl/workspace": "16.1.0",
100
103
  "@pmmmwh/react-refresh-webpack-plugin": "~0.5.10",
101
- "@semantic-release/changelog": "~6.0.2",
104
+ "@semantic-release/changelog": "~6.0.3",
102
105
  "@semantic-release/exec": "~6.0.3",
103
106
  "@semantic-release/git": "~10.0.1",
104
- "@storybook/addon-a11y": "~6.5.16",
105
- "@storybook/addon-essentials": "~6.5.16",
107
+ "@storybook/addon-a11y": "~7.0.8",
108
+ "@storybook/addon-essentials": "~7.0.8",
106
109
  "@storybook/addon-events": "~6.2.9",
107
- "@storybook/addon-interactions": "~6.5.16",
108
- "@storybook/addon-links": "~6.5.16",
109
- "@storybook/addon-storysource": "~6.5.16",
110
- "@storybook/builder-vite": "~0.4.2",
111
- "@storybook/builder-webpack5": "~6.5.16",
110
+ "@storybook/addon-interactions": "~7.0.8",
111
+ "@storybook/addon-links": "~7.0.8",
112
+ "@storybook/addon-storysource": "~7.0.8",
113
+ "@storybook/builder-vite": "~7.0.8",
114
+ "@storybook/builder-webpack5": "~7.0.8",
112
115
  "@storybook/manager-webpack5": "~6.5.16",
113
- "@storybook/react": "~6.5.16",
114
- "@storybook/theming": "~6.5.16",
116
+ "@storybook/react": "~7.0.8",
117
+ "@storybook/theming": "~7.0.8",
115
118
  "@stylelint/postcss-css-in-js": "~0.38.0",
116
- "@svgr/webpack": "~6.5.1",
119
+ "@svgr/webpack": "~7.0.0",
117
120
  "@swc/cli": "~0.1.62",
118
- "@swc/core": "~1.3.40",
119
- "@swc/jest": "~0.2.24",
121
+ "@swc/core": "~1.3.56",
122
+ "@swc/jest": "~0.2.26",
120
123
  "@testing-library/jest-dom": "~5.16.5",
121
124
  "@testing-library/react": "~14.0.0",
122
125
  "@testing-library/react-hooks": "~8.0.1",
@@ -126,31 +129,31 @@
126
129
  "@types/compression": "~1.7.2",
127
130
  "@types/duplicate-package-checker-webpack-plugin": "~2.1.2",
128
131
  "@types/ip": "~1.1.0",
129
- "@types/jest": "~29.5.0",
132
+ "@types/jest": "~29.5.1",
130
133
  "@types/jest-axe": "~3.5.5",
131
134
  "@types/moment-locales-webpack-plugin": "~1.2.3",
132
- "@types/node": "~18.15.3",
135
+ "@types/node": "~18.16.3",
133
136
  "@types/normalize-path": "~3.0.0",
134
- "@types/postcss-preset-env": "~7.7.0",
135
- "@types/rimraf": "~3.0.2",
137
+ "@types/postcss-preset-env": "~8.0.0",
138
+ "@types/rimraf": "~4.0.5",
136
139
  "@types/speed-measure-webpack-plugin": "~1.3.4",
137
140
  "@types/supertest": "~2.0.12",
138
141
  "@types/uuid": "~9.0.1",
139
142
  "@types/testing-library__jest-dom": "~5.14.5",
140
143
  "@types/webpack-bundle-analyzer": "~4.6.0",
141
- "@typescript-eslint/eslint-plugin": "~5.55.0",
142
- "@typescript-eslint/parser": "~5.55.0",
143
- "@vitejs/plugin-react": "~3.1.0",
144
- "@vitest/coverage-c8": "~0.29.3",
144
+ "@typescript-eslint/eslint-plugin": "~5.59.2",
145
+ "@typescript-eslint/parser": "~5.59.2",
146
+ "@vitejs/plugin-react": "~4.0.0",
147
+ "@vitest/coverage-c8": "~0.31.0",
145
148
  "autoprefixer": "~10.4.14",
146
- "axe-core": "~4.6.3",
149
+ "axe-core": "~4.7.0",
147
150
  "babel-plugin-date-fns": "~2.0.0",
148
151
  "babel-plugin-dynamic-import-node": "~2.3.3",
149
152
  "babel-plugin-import-remove-resource-query": "~1.0.0",
150
153
  "babel-plugin-lodash": "~3.3.4",
151
154
  "babel-plugin-module-resolver": "~5.0.0",
152
155
  "babel-plugin-source-map-support": "~2.2.0",
153
- "babel-plugin-styled-components": "~2.0.7",
156
+ "babel-plugin-styled-components": "~2.1.1",
154
157
  "babel-plugin-transform-react-remove-prop-types": "~0.4.24",
155
158
  "babel-plugin-transform-remove-console": "~6.9.4",
156
159
  "babel-plugin-transform-strip-block": "~0.0.5",
@@ -165,57 +168,58 @@
165
168
  "cors": "~2.8.5",
166
169
  "cross-env": "~7.0.3",
167
170
  "css-loader": "~6.7.3",
168
- "css-minimizer-webpack-plugin": "~4.2.2",
171
+ "css-minimizer-webpack-plugin": "~5.0.0",
169
172
  "depcheck": "~1.4.3",
170
173
  "docdash": "~2.0.1",
171
174
  "dotenv": "~16.0.3",
172
175
  "dotenv-webpack": "~8.0.1",
173
176
  "duplicate-package-checker-webpack-plugin": "~3.0.0",
174
- "enhanced-resolve": "5.12.0",
175
- "esbuild": "~0.17.11",
177
+ "enhanced-resolve": "5.13.0",
178
+ "esbuild": "~0.17.18",
176
179
  "esbuild-loader": "~3.0.1",
177
- "esbuild-plugin-svgr": "~1.0.1",
178
- "eslint": "~8.36.0",
180
+ "esbuild-plugin-lodash": "~1.2.0",
181
+ "esbuild-plugin-svgr": "~1.1.0",
182
+ "eslint": "~8.39.0",
179
183
  "eslint-config-airbnb": "~19.0.4",
180
184
  "eslint-config-airbnb-base": "~15.0.0",
181
185
  "eslint-config-airbnb-typescript": "~17.0.0",
182
- "eslint-config-prettier": "~8.7.0",
186
+ "eslint-config-prettier": "~8.8.0",
183
187
  "eslint-config-react-app": "~7.0.1",
184
188
  "eslint-import-resolver-babel-module": "~5.3.2",
185
- "eslint-import-resolver-typescript": "~3.5.3",
189
+ "eslint-import-resolver-typescript": "~3.5.5",
186
190
  "eslint-import-resolver-webpack": "~0.13.2",
187
- "eslint-plugin-compat": "~4.1.2",
191
+ "eslint-plugin-compat": "~4.1.4",
188
192
  "eslint-plugin-eslint-comments": "~3.2.0",
189
193
  "eslint-plugin-import": "~2.27.5",
190
194
  "eslint-plugin-jest": "~27.2.1",
191
- "eslint-plugin-jsdoc": "~40.0.3",
195
+ "eslint-plugin-jsdoc": "~43.1.1",
192
196
  "eslint-plugin-jsx-a11y": "~6.7.1",
193
- "eslint-plugin-mdx": "~2.0.5",
197
+ "eslint-plugin-mdx": "~2.1.0",
194
198
  "eslint-plugin-prettier": "~4.2.1",
195
199
  "eslint-plugin-react": "~7.32.2",
196
200
  "eslint-plugin-react-hooks": "~4.6.0",
197
201
  "eslint-plugin-redux-saga": "~1.3.2",
198
- "eslint-plugin-storybook": "~0.6.11",
199
- "eslint-plugin-testing-library": "~5.10.2",
200
- "eslint-plugin-wdio": "~8.0.14",
202
+ "eslint-plugin-storybook": "~0.6.12",
203
+ "eslint-plugin-testing-library": "~5.10.3",
204
+ "eslint-plugin-wdio": "~8.8.7",
201
205
  "execa": "~7.1.1",
202
206
  "express": "~4.18.2",
203
207
  "express-static-gzip": "~2.1.7",
204
- "favicons": "~7.1.1",
208
+ "favicons": "~7.1.2",
205
209
  "favicons-webpack-plugin": "~6.0.0",
206
210
  "fast-glob": "~3.2.12",
207
211
  "find-up": "~6.3.0",
208
212
  "find-up-cli": "~5.0.0",
209
- "happy-dom": "~8.9.0",
213
+ "happy-dom": "~9.10.9",
210
214
  "helmet-csp": "~3.4.0",
211
215
  "html-loader": "~4.2.0",
212
- "html-webpack-plugin": "~5.5.0",
216
+ "html-webpack-plugin": "~5.5.1",
213
217
  "http-server": "~14.1.1",
214
218
  "husky": "~8.0.3",
215
219
  "husky-init": "~8.0.0",
216
220
  "imports-loader": "~4.0.1",
217
221
  "ip": "~1.1.8",
218
- "jest-axe": "~7.0.0",
222
+ "jest-axe": "~7.0.1",
219
223
  "jest-cli": "~29.5.0",
220
224
  "jest-environment-jsdom": "~29.5.0",
221
225
  "jest-sonar-reporter": "~2.0.0",
@@ -223,32 +227,32 @@
223
227
  "jest-watch-typeahead": "~2.2.2",
224
228
  "jscodeshift": "~0.14.0",
225
229
  "jsdoc": "~4.0.2",
226
- "lerna": "~6.5.1",
227
- "lint-staged": "~13.2.0",
228
- "mini-css-extract-plugin": "~2.7.4",
230
+ "lerna": "~6.6.2",
231
+ "lint-staged": "~13.2.2",
232
+ "mini-css-extract-plugin": "~2.7.5",
229
233
  "minimist": "~1.2.8",
230
234
  "moment": "~2.29.4",
231
235
  "moment-locales-webpack-plugin": "~1.2.0",
232
- "msw": "~1.1.0",
236
+ "msw": "~1.2.1",
233
237
  "npm-run-all": "~4.1.5",
234
238
  "node-gyp": "~9.3.1",
235
239
  "node-plop": "~0.31.1",
236
- "nodemon": "~2.0.21",
240
+ "nodemon": "~2.0.22",
237
241
  "normalize-path": "~3.0.0",
238
- "npm-check-updates": "16.7.12",
239
- "pino": "~8.11.0",
242
+ "npm-check-updates": "16.10.9",
243
+ "pino": "~8.12.1",
240
244
  "pino-http": "~8.3.3",
241
245
  "pino-pretty": "~10.0.0",
242
246
  "plop": "~3.1.2",
243
- "postcss": "~8.4.21",
247
+ "postcss": "~8.4.23",
244
248
  "postcss-html": "~1.5.0",
245
249
  "postcss-jsx": "~0.36.4",
246
- "postcss-loader": "~7.1.0",
250
+ "postcss-loader": "~7.3.0",
247
251
  "postcss-markdown": "~1.2.0",
248
- "postcss-preset-env": "~8.0.1",
252
+ "postcss-preset-env": "~8.3.2",
249
253
  "postcss-syntax": "~0.36.2",
250
- "prettier": "~2.8.4",
251
- "prisma": "~4.11.0",
254
+ "prettier": "~2.8.8",
255
+ "prisma": "~4.13.0",
252
256
  "pug": "~3.0.2",
253
257
  "pug-loader": "~2.4.0",
254
258
  "raf": "~3.4.1",
@@ -257,44 +261,44 @@
257
261
  "react-test-renderer": "~18.2.0",
258
262
  "resize-observer-polyfill": "~1.5.1",
259
263
  "resolve-typescript-plugin": "~2.0.1",
260
- "rimraf": "~4.4.0",
261
- "semantic-release": "~20.1.1",
264
+ "rimraf": "~5.0.0",
265
+ "semantic-release": "~21.0.2",
262
266
  "slackify-markdown": "~4.3.1",
263
267
  "speed-measure-webpack-plugin": "~1.5.0",
264
- "storybook-addon-turbo-build": "~1.1.0",
268
+ "storybook-addon-turbo-build": "~2.0.1",
265
269
  "storybook-react-router": "~1.0.8",
266
270
  "style-loader": "~3.3.2",
267
- "stylelint": "~15.3.0",
268
- "stylelint-config-recommended": "~11.0.0",
271
+ "stylelint": "~15.6.1",
272
+ "stylelint-config-recommended": "~12.0.0",
269
273
  "stylelint-config-styled-components": "~0.1.1",
270
274
  "supertest": "~6.3.3",
271
275
  "swc-loader": "~0.2.3",
272
276
  "ts-node": "~10.9.1",
273
- "tsc-alias": "~1.8.3",
274
- "typedoc": "~0.23.27",
275
- "typescript": "~5.0.2",
277
+ "tsc-alias": "~1.8.6",
278
+ "typedoc": "~0.24.6",
279
+ "typescript": "~5.0.4",
276
280
  "update-notifier": "~6.0.2",
277
281
  "url-loader": "~4.1.1",
278
282
  "uuid": "~9.0.0",
279
- "vite": "~4.2.0",
280
- "vitest": "~0.29.3",
281
- "vite-tsconfig-paths": "~4.0.7",
282
- "webpack": "~5.76.2",
283
+ "vite": "~4.3.4",
284
+ "vitest": "~0.31.0",
285
+ "vite-tsconfig-paths": "~4.2.0",
286
+ "webpack": "~5.82.0",
283
287
  "webpack-bundle-analyzer": "~4.8.0",
284
- "webpack-cli": "~5.0.1",
285
- "webpack-dev-server": "~4.12.0",
288
+ "webpack-cli": "~5.0.2",
289
+ "webpack-dev-server": "~4.13.3",
286
290
  "webpack-manifest-plugin": "~5.0.0",
287
291
  "webpack-merge": "~5.8.0",
288
292
  "whatwg-fetch": "~3.6.2",
289
293
  "workbox-webpack-plugin": "~6.5.4",
290
- "yargs": "~17.7.1"
294
+ "yargs": "~17.7.2"
291
295
  },
292
296
  "devDependencies": {
293
297
  "@elliemae/pui-doc-gen": "~1.6.4",
294
298
  "react": "~18.2.0",
295
299
  "react-dom": "~18.2.0",
296
300
  "redux": "~4.2.1",
297
- "redux-saga": "~1.2.2",
298
- "styled-components": "~5.3.9"
301
+ "redux-saga": "~1.2.3",
302
+ "styled-components": "~5.3.10"
299
303
  }
300
304
  }