@prosopo/config 3.1.0 → 3.1.1

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cjs/index.cjs +4 -38
  3. package/dist/cjs/vite/index.cjs +4 -0
  4. package/dist/cjs/vite/vite-plugin-copy.cjs +42 -0
  5. package/dist/cjs/vite/vite-plugin-remove-unused-translations.cjs +2 -2
  6. package/dist/cjs/vite/vite.commonjs.config.cjs +7 -1
  7. package/dist/cjs/vite/vite.esm.config.cjs +54 -0
  8. package/dist/cjs/vite/vite.test.config.cjs +14 -2
  9. package/dist/dependencies.js +134 -112
  10. package/dist/index.d.ts +0 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +31 -5
  13. package/dist/index.js.map +1 -1
  14. package/dist/vite/TsNoCheckPlugin.js +17 -13
  15. package/dist/vite/index.d.ts +2 -0
  16. package/dist/vite/index.d.ts.map +1 -1
  17. package/dist/vite/index.js +24 -10
  18. package/dist/vite/index.js.map +1 -1
  19. package/dist/vite/vite-plugin-close-and-copy.js +41 -36
  20. package/dist/vite/vite-plugin-copy.d.ts +10 -0
  21. package/dist/vite/vite-plugin-copy.d.ts.map +1 -0
  22. package/dist/vite/vite-plugin-copy.js +43 -0
  23. package/dist/vite/vite-plugin-copy.js.map +1 -0
  24. package/dist/vite/vite-plugin-fix-absolute-imports.js +25 -20
  25. package/dist/vite/vite-plugin-remove-unused-translations.js +76 -70
  26. package/dist/vite/vite-plugin-sourcemap-exclude.js +17 -14
  27. package/dist/vite/vite.backend.config.js +90 -84
  28. package/dist/vite/vite.commonjs.config.d.ts.map +1 -1
  29. package/dist/vite/vite.commonjs.config.js +53 -41
  30. package/dist/vite/vite.commonjs.config.js.map +1 -1
  31. package/dist/vite/vite.esm.config.d.ts +3 -0
  32. package/dist/vite/vite.esm.config.d.ts.map +1 -0
  33. package/dist/vite/vite.esm.config.js +55 -0
  34. package/dist/vite/vite.esm.config.js.map +1 -0
  35. package/dist/vite/vite.frontend.config.js +171 -141
  36. package/dist/vite/vite.test.config.d.ts +1 -1
  37. package/dist/vite/vite.test.config.d.ts.map +1 -1
  38. package/dist/vite/vite.test.config.js +58 -42
  39. package/dist/vite/vite.test.config.js.map +1 -1
  40. package/dist/webpack/index.js +1 -2
  41. package/dist/webpack/webpack.config.js +115 -109
  42. package/package.json +26 -21
  43. package/vite.cjs.config.ts +3 -4
  44. package/vite.esm.config.ts +19 -0
  45. package/dist/cjs/projectInfo.cjs +0 -76
  46. package/dist/projectInfo.d.ts +0 -38
  47. package/dist/projectInfo.d.ts.map +0 -1
  48. package/dist/projectInfo.js +0 -38
  49. package/dist/projectInfo.js.map +0 -1
@@ -2,48 +2,60 @@ import { builtinModules } from "node:module";
2
2
  import path from "node:path";
3
3
  import replace from "@rollup/plugin-replace";
4
4
  import { defineConfig } from "vite";
5
- import { default as noBundlePlugin } from "vite-plugin-no-bundle";
5
+ import noBundlePlugin from "vite-plugin-no-bundle";
6
6
  import tsconfigPaths from "vite-tsconfig-paths";
7
7
  import { getExternalsFromReferences } from "../dependencies.js";
8
8
  import VitePluginCloseAndCopy from "./vite-plugin-close-and-copy.js";
9
- export default async function (name, tsConfigPath, entry) {
10
- console.info(`ViteCommonJSConfig: ${name}`);
11
- const projectExternal = await getExternalsFromReferences(tsConfigPath, [
12
- /dev/,
13
- ]);
14
- const allExternal = [
15
- ...builtinModules,
16
- ...builtinModules.map((m) => `node:${m}`),
17
- ...projectExternal,
18
- ];
19
- return defineConfig({
20
- ssr: { external: allExternal },
21
- plugins: [
22
- replace({
23
- "import.meta.url": "module",
24
- }),
25
- noBundlePlugin({
26
- root: "src",
27
- copy: "**/*.css",
28
- }),
29
- tsconfigPaths({ projects: [path.resolve(tsConfigPath)] }),
30
- VitePluginCloseAndCopy(),
31
- ],
32
- build: {
33
- emptyOutDir: true,
34
- ssr: true,
35
- target: "node18",
36
- outDir: "dist/cjs",
37
- lib: {
38
- name,
39
- formats: ["cjs"],
40
- entry: entry || "src/index.ts",
41
- },
42
- rollupOptions: {
43
- treeshake: false,
44
- external: allExternal,
45
- },
46
- },
47
- });
9
+ import VitePluginCopy from "./vite-plugin-copy.js";
10
+ async function vite_commonjs_config(name, tsConfigPath, entry) {
11
+ console.info(`ViteCommonJSConfig: ${name}`);
12
+ const projectExternal = await getExternalsFromReferences(tsConfigPath, [
13
+ /dev/
14
+ ]);
15
+ const allExternal = [
16
+ ...builtinModules,
17
+ ...builtinModules.map((m) => `node:${m}`),
18
+ ...projectExternal
19
+ ];
20
+ return defineConfig({
21
+ ssr: { external: allExternal },
22
+ plugins: [
23
+ // @ts-ignore
24
+ replace({
25
+ "import.meta.url": "module"
26
+ // Replaces ESM checks with CommonJS equivalent
27
+ }),
28
+ // @ts-ignore
29
+ noBundlePlugin({
30
+ root: "src",
31
+ copy: "**/*.css"
32
+ }),
33
+ VitePluginCopy({
34
+ srcDir: "src",
35
+ destDir: "dist",
36
+ include: ["**/*.json"]
37
+ }),
38
+ tsconfigPaths({ projects: [path.resolve(tsConfigPath)] }),
39
+ VitePluginCloseAndCopy()
40
+ ],
41
+ build: {
42
+ emptyOutDir: false,
43
+ ssr: true,
44
+ target: "node18",
45
+ outDir: "dist/cjs",
46
+ lib: {
47
+ name,
48
+ formats: ["cjs"],
49
+ entry: entry || "src/index.ts"
50
+ // required
51
+ },
52
+ rollupOptions: {
53
+ treeshake: false,
54
+ external: allExternal
55
+ }
56
+ }
57
+ });
48
58
  }
49
- //# sourceMappingURL=vite.commonjs.config.js.map
59
+ export {
60
+ vite_commonjs_config as default
61
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"vite.commonjs.config.js","sourceRoot":"","sources":["../../src/vite/vite.commonjs.config.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAmB,YAAY,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AAErE,MAAM,CAAC,OAAO,CAAC,KAAK,WACnB,IAAY,EACZ,YAAoB,EACpB,KAAc;IAEd,OAAO,CAAC,IAAI,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,YAAY,EAAE;QACtE,KAAK;KACL,CAAC,CAAC;IACH,MAAM,WAAW,GAAG;QACnB,GAAG,cAAc;QACjB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,GAAG,eAAe;KAClB,CAAC;IACF,OAAO,YAAY,CAAC;QACnB,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE;QAC9B,OAAO,EAAE;YAER,OAAO,CAAC;gBACP,iBAAiB,EAAE,QAAQ;aAC3B,CAAC;YAEF,cAAc,CAAC;gBACd,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,UAAU;aAChB,CAAC;YACF,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzD,sBAAsB,EAAE;SACxB;QACD,KAAK,EAAE;YACN,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;YAClB,GAAG,EAAE;gBACJ,IAAI;gBACJ,OAAO,EAAE,CAAC,KAAK,CAAC;gBAChB,KAAK,EAAE,KAAK,IAAI,cAAc;aAC9B;YACD,aAAa,EAAE;gBACd,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,WAAW;aACrB;SACD;KACD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"vite.commonjs.config.js","sourceRoot":"","sources":["../../src/vite/vite.commonjs.config.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAmB,YAAY,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AACrE,OAAO,cAAc,MAAM,uBAAuB,CAAC;AAEnD,MAAM,CAAC,OAAO,CAAC,KAAK,WACnB,IAAY,EACZ,YAAoB,EACpB,KAAc;IAEd,OAAO,CAAC,IAAI,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,YAAY,EAAE;QACtE,KAAK;KACL,CAAC,CAAC;IACH,MAAM,WAAW,GAAG;QACnB,GAAG,cAAc;QACjB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,GAAG,eAAe;KAClB,CAAC;IACF,OAAO,YAAY,CAAC;QACnB,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE;QAC9B,OAAO,EAAE;YAER,OAAO,CAAC;gBACP,iBAAiB,EAAE,QAAQ;aAC3B,CAAC;YAEF,cAAc,CAAC;gBACd,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,UAAU;aAChB,CAAC;YACF,cAAc,CAAC;gBACd,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,CAAC,WAAW,CAAC;aACtB,CAAC;YACF,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzD,sBAAsB,EAAE;SACxB;QACD,KAAK,EAAE;YACN,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;YAClB,GAAG,EAAE;gBACJ,IAAI;gBACJ,OAAO,EAAE,CAAC,KAAK,CAAC;gBAChB,KAAK,EAAE,KAAK,IAAI,cAAc;aAC9B;YACD,aAAa,EAAE;gBACd,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,WAAW;aACrB;SACD;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type UserConfig } from "vite";
2
+ export default function (name: string, tsConfigPath: string, entry?: string): Promise<UserConfig>;
3
+ //# sourceMappingURL=vite.esm.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.esm.config.d.ts","sourceRoot":"","sources":["../../src/vite/vite.esm.config.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,MAAM,CAAC;AAOrD,yBACC,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC,CA0CrB"}
@@ -0,0 +1,55 @@
1
+ import { builtinModules } from "node:module";
2
+ import path from "node:path";
3
+ import { defineConfig } from "vite";
4
+ import noBundlePlugin from "vite-plugin-no-bundle";
5
+ import tsconfigPaths from "vite-tsconfig-paths";
6
+ import { getExternalsFromReferences } from "../dependencies.js";
7
+ import VitePluginCloseAndCopy from "./vite-plugin-close-and-copy.js";
8
+ import VitePluginCopy from "./vite-plugin-copy.js";
9
+ async function vite_esm_config(name, tsConfigPath, entry) {
10
+ console.info(`ViteEsmConfig: ${name}`);
11
+ const projectExternal = await getExternalsFromReferences(tsConfigPath, [
12
+ /dev/
13
+ ]);
14
+ const allExternal = [
15
+ ...builtinModules,
16
+ ...builtinModules.map((m) => `node:${m}`),
17
+ ...projectExternal
18
+ ];
19
+ return defineConfig({
20
+ ssr: { external: allExternal },
21
+ plugins: [
22
+ // @ts-ignore
23
+ noBundlePlugin({
24
+ root: "src",
25
+ copy: "**/*.css"
26
+ }),
27
+ VitePluginCopy({
28
+ srcDir: "src",
29
+ destDir: "dist",
30
+ include: ["**/*.json"]
31
+ }),
32
+ tsconfigPaths({ projects: [path.resolve(tsConfigPath)] }),
33
+ VitePluginCloseAndCopy()
34
+ ],
35
+ build: {
36
+ emptyOutDir: false,
37
+ ssr: true,
38
+ target: "node18",
39
+ outDir: "dist",
40
+ lib: {
41
+ name,
42
+ formats: ["es"],
43
+ entry: entry || "src/index.ts"
44
+ // required
45
+ },
46
+ rollupOptions: {
47
+ treeshake: false,
48
+ external: allExternal
49
+ }
50
+ }
51
+ });
52
+ }
53
+ export {
54
+ vite_esm_config as default
55
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.esm.config.js","sourceRoot":"","sources":["../../src/vite/vite.esm.config.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAmB,YAAY,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AACrE,OAAO,cAAc,MAAM,uBAAuB,CAAC;AAEnD,MAAM,CAAC,OAAO,CAAC,KAAK,WACnB,IAAY,EACZ,YAAoB,EACpB,KAAc;IAEd,OAAO,CAAC,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,YAAY,EAAE;QACtE,KAAK;KACL,CAAC,CAAC;IACH,MAAM,WAAW,GAAG;QACnB,GAAG,cAAc;QACjB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,GAAG,eAAe;KAClB,CAAC;IACF,OAAO,YAAY,CAAC;QACnB,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE;QAC9B,OAAO,EAAE;YAER,cAAc,CAAC;gBACd,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,UAAU;aAChB,CAAC;YACF,cAAc,CAAC;gBACd,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,CAAC,WAAW,CAAC;aACtB,CAAC;YACF,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzD,sBAAsB,EAAE;SACxB;QACD,KAAK,EAAE;YACN,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE;gBACJ,IAAI;gBACJ,OAAO,EAAE,CAAC,IAAI,CAAC;gBACf,KAAK,EAAE,KAAK,IAAI,cAAc;aAC9B;YACD,aAAa,EAAE;gBACd,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,WAAW;aACrB;SACD;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -3,151 +3,181 @@ import path from "node:path";
3
3
  import nodeResolve from "@rollup/plugin-node-resolve";
4
4
  import typescript from "@rollup/plugin-typescript";
5
5
  import { wasm } from "@rollup/plugin-wasm";
6
- import { default as viteReact } from "@vitejs/plugin-react";
6
+ import viteReact from "@vitejs/plugin-react";
7
7
  import css from "rollup-plugin-import-css";
8
8
  import { visualizer } from "rollup-plugin-visualizer";
9
9
  import { nodePolyfills } from "vite-plugin-node-polyfills";
10
- import { filterDependencies, getDependencies } from "../dependencies.js";
11
- import { VitePluginCloseAndCopy } from "./index.js";
12
- export default async function (packageName, bundleName, dir, entry, command, mode, copyOptions, tsConfigPaths, workspaceRoot) {
13
- if (mode !== "production") {
14
- mode = "development";
15
- }
16
- const allowedEnvironments = ["development", "staging", "production"];
17
- const defaultEnvironment = process.env.NODE_ENV && allowedEnvironments.includes(process.env.NODE_ENV)
18
- ? process.env.NODE_ENV
19
- : mode;
20
- console.info(`Running at ${dir} in ${mode} mode`);
21
- const isProduction = mode === "production";
22
- process.env.NODE_ENV = `${process.env.NODE_ENV || mode}`;
23
- console.info(`NODE_ENV: ${process.env.NODE_ENV}`);
24
- const define = {
25
- "process.env.WS_NO_BUFFER_UTIL": JSON.stringify("true"),
26
- "process.env.WS_NO_UTF_8_VALIDATE": JSON.stringify("true"),
27
- "process.env.NODE_ENV": JSON.stringify(process.env.NODE_ENV),
28
- "process.env.PROSOPO_DEFAULT_ENVIRONMENT": JSON.stringify(defaultEnvironment),
29
- "process.env.PROSOPO_SERVER_URL": JSON.stringify(process.env.PROSOPO_SERVER_URL),
30
- "process.env._DEV_ONLY_WATCH_EVENTS": JSON.stringify(process.env._DEV_ONLY_WATCH_EVENTS),
31
- "process.env.PROSOPO_MONGO_EVENTS_URI": JSON.stringify(process.env.PROSOPO_MONGO_EVENTS_URI),
32
- "process.env.PROSOPO_PACKAGE_VERSION": JSON.stringify(process.env.PROSOPO_PACKAGE_VERSION),
33
- "process.env.PROSOPO_DOCS_URL": JSON.stringify(process.env.PROSOPO_DOCS_URL),
34
- "process.env.PROSOPO_LOG_LEVEL": JSON.stringify(process.env.PROSOPO_LOG_LEVEL),
35
- "process.env.PROSOPO_SITE_KEY": JSON.stringify(process.env.PROSOPO_SITE_KEY),
36
- };
37
- console.info(`Env vars: ${JSON.stringify(define, null, 4)}`);
38
- const { dependencies: deps, optionalPeerDependencies } = await getDependencies(packageName, isProduction);
39
- const { external, internal } = filterDependencies(deps, [
40
- "pm2",
41
- "nodejs-polars",
42
- "aws",
43
- "webpack",
44
- "vite",
45
- "i18next-fs-backend",
46
- ]);
47
- const allExternal = [
48
- ...builtinModules,
49
- ...builtinModules.map((m) => `node:${m}`),
50
- ...external,
51
- ...optionalPeerDependencies,
52
- ];
53
- console.debug(`Bundling. ${JSON.stringify(internal.slice(0, 10), null, 2)}... ${internal.length} deps`);
54
- const proto = RegExp.prototype;
55
- proto.toJSON = RegExp.prototype.toString;
56
- let drop;
57
- let pure = [];
58
- if (isProduction) {
59
- drop = ["debugger"];
60
- pure = ["console.log", "console.warn", "console.info", "console.debug"];
61
- }
62
- const rollupExternal = allExternal;
63
- console.info({ bundleName }, "Bundle name");
64
- return {
65
- server: {
66
- host: "127.0.0.1",
10
+ import { getDependencies, filterDependencies } from "../dependencies.js";
11
+ import "./index.js";
12
+ import VitePluginCloseAndCopy from "./vite-plugin-close-and-copy.js";
13
+ async function vite_frontend_config(packageName, bundleName, dir, entry, command, mode, copyOptions, tsConfigPaths, workspaceRoot) {
14
+ if (mode !== "production") {
15
+ mode = "development";
16
+ }
17
+ const allowedEnvironments = ["development", "staging", "production"];
18
+ const defaultEnvironment = process.env.NODE_ENV && allowedEnvironments.includes(process.env.NODE_ENV) ? process.env.NODE_ENV : mode;
19
+ console.info(`Running at ${dir} in ${mode} mode`);
20
+ const isProduction = mode === "production";
21
+ process.env.NODE_ENV = `${process.env.NODE_ENV || mode}`;
22
+ console.info(`NODE_ENV: ${process.env.NODE_ENV}`);
23
+ const define = {
24
+ // used to stop websockets package from breaking
25
+ "process.env.WS_NO_BUFFER_UTIL": JSON.stringify("true"),
26
+ "process.env.WS_NO_UTF_8_VALIDATE": JSON.stringify("true"),
27
+ "process.env.NODE_ENV": JSON.stringify(process.env.NODE_ENV),
28
+ "process.env.PROSOPO_DEFAULT_ENVIRONMENT": JSON.stringify(defaultEnvironment),
29
+ "process.env.PROSOPO_SERVER_URL": JSON.stringify(
30
+ process.env.PROSOPO_SERVER_URL
31
+ ),
32
+ "process.env._DEV_ONLY_WATCH_EVENTS": JSON.stringify(
33
+ process.env._DEV_ONLY_WATCH_EVENTS
34
+ ),
35
+ "process.env.PROSOPO_MONGO_EVENTS_URI": JSON.stringify(
36
+ process.env.PROSOPO_MONGO_EVENTS_URI
37
+ ),
38
+ "process.env.PROSOPO_PACKAGE_VERSION": JSON.stringify(
39
+ process.env.PROSOPO_PACKAGE_VERSION
40
+ ),
41
+ "process.env.PROSOPO_DOCS_URL": JSON.stringify(
42
+ process.env.PROSOPO_DOCS_URL
43
+ ),
44
+ "process.env.PROSOPO_LOG_LEVEL": JSON.stringify(
45
+ process.env.PROSOPO_LOG_LEVEL
46
+ ),
47
+ // only needed if bundling with a site key
48
+ "process.env.PROSOPO_SITE_KEY": JSON.stringify(
49
+ process.env.PROSOPO_SITE_KEY
50
+ )
51
+ };
52
+ console.info(`Env vars: ${JSON.stringify(define, null, 4)}`);
53
+ const { dependencies: deps, optionalPeerDependencies } = await getDependencies(packageName, isProduction);
54
+ const { external, internal } = filterDependencies(deps, [
55
+ "pm2",
56
+ "nodejs-polars",
57
+ "aws",
58
+ "webpack",
59
+ "vite",
60
+ "i18next-fs-backend"
61
+ ]);
62
+ const allExternal = [
63
+ ...builtinModules,
64
+ ...builtinModules.map((m) => `node:${m}`),
65
+ ...external,
66
+ ...optionalPeerDependencies
67
+ ];
68
+ console.debug(
69
+ `Bundling. ${JSON.stringify(internal.slice(0, 10), null, 2)}... ${internal.length} deps`
70
+ );
71
+ const proto = RegExp.prototype;
72
+ proto.toJSON = RegExp.prototype.toString;
73
+ let drop;
74
+ let pure = [];
75
+ if (isProduction) {
76
+ drop = ["debugger"];
77
+ pure = ["console.log", "console.warn", "console.info", "console.debug"];
78
+ }
79
+ const rollupExternal = allExternal;
80
+ console.info({ bundleName }, "Bundle name");
81
+ return {
82
+ server: {
83
+ host: "127.0.0.1"
84
+ },
85
+ mode: mode || "development",
86
+ optimizeDeps: {
87
+ include: ["node_modules"],
88
+ force: true
89
+ },
90
+ esbuild: {
91
+ platform: "browser",
92
+ target: [
93
+ "es2020",
94
+ "chrome60",
95
+ "edge18",
96
+ "firefox60",
97
+ "node22",
98
+ "safari11"
99
+ ],
100
+ drop,
101
+ pure,
102
+ legalComments: "none"
103
+ },
104
+ define,
105
+ build: {
106
+ outDir: path.resolve(dir, "dist/bundle"),
107
+ minify: isProduction,
108
+ ssr: false,
109
+ lib: {
110
+ entry: path.resolve(dir, entry),
111
+ name: bundleName,
112
+ fileName: `${bundleName}.bundle.js`,
113
+ formats: ["es"]
114
+ },
115
+ modulePreload: { polyfill: true },
116
+ commonjsOptions: {
117
+ exclude: ["mongodb/*"],
118
+ transformMixedEsModules: true,
119
+ strictRequires: "debug"
120
+ },
121
+ rollupOptions: {
122
+ treeshake: {
123
+ annotations: false,
124
+ propertyReadSideEffects: false,
125
+ tryCatchDeoptimization: false,
126
+ moduleSideEffects: "no-external",
127
+ //true,
128
+ preset: "smallest",
129
+ unknownGlobalSideEffects: false
67
130
  },
68
- mode: mode || "development",
69
- optimizeDeps: {
70
- include: ["node_modules"],
71
- force: true,
72
- },
73
- esbuild: {
74
- platform: "browser",
75
- target: [
76
- "es2020",
77
- "chrome60",
78
- "edge18",
79
- "firefox60",
80
- "node22",
81
- "safari11",
82
- ],
83
- drop,
84
- pure,
85
- legalComments: "none",
86
- },
87
- define,
88
- build: {
89
- outDir: path.resolve(dir, "dist/bundle"),
90
- minify: isProduction,
91
- ssr: false,
92
- lib: {
93
- entry: path.resolve(dir, entry),
94
- name: bundleName,
95
- fileName: `${bundleName}.bundle.js`,
96
- formats: ["es"],
97
- },
98
- modulePreload: { polyfill: true },
99
- commonjsOptions: {
100
- exclude: ["mongodb/*"],
101
- transformMixedEsModules: true,
102
- strictRequires: "debug",
103
- },
104
- rollupOptions: {
105
- treeshake: {
106
- annotations: false,
107
- propertyReadSideEffects: false,
108
- tryCatchDeoptimization: false,
109
- moduleSideEffects: "no-external",
110
- preset: "smallest",
111
- unknownGlobalSideEffects: false,
112
- },
113
- experimentalLogSideEffects: false,
114
- external: rollupExternal,
115
- watch: false,
116
- output: {
117
- dir: path.resolve(dir, "dist/bundle"),
118
- entryFileNames: `${bundleName}.bundle.js`,
119
- },
120
- plugins: [
121
- nodePolyfills({
122
- include: ["crypto"],
123
- }),
124
- css(),
125
- wasm(),
126
- nodeResolve({
127
- browser: true,
128
- preferBuiltins: false,
129
- rootDir: path.resolve(dir, "../../"),
130
- dedupe: ["react", "react-dom"],
131
- modulesOnly: true,
132
- }),
133
- visualizer({
134
- open: true,
135
- template: "treemap",
136
- gzipSize: true,
137
- brotliSize: true,
138
- }),
139
- typescript({
140
- tsconfig: path.resolve("./tsconfig.json"),
141
- compilerOptions: { rootDir: path.resolve("./src") },
142
- outDir: path.resolve(dir, "dist/bundle"),
143
- }),
144
- ],
145
- },
131
+ experimentalLogSideEffects: false,
132
+ external: rollupExternal,
133
+ watch: false,
134
+ output: {
135
+ dir: path.resolve(dir, "dist/bundle"),
136
+ entryFileNames: `${bundleName}.bundle.js`
146
137
  },
147
138
  plugins: [
148
- viteReact(),
149
- command !== "serve" ? VitePluginCloseAndCopy(copyOptions) : undefined,
150
- ],
151
- };
139
+ nodePolyfills({
140
+ include: ["crypto"]
141
+ }),
142
+ css(),
143
+ wasm(),
144
+ // @ts-ignore
145
+ nodeResolve({
146
+ browser: true,
147
+ preferBuiltins: false,
148
+ rootDir: path.resolve(dir, "../../"),
149
+ dedupe: ["react", "react-dom"],
150
+ modulesOnly: true
151
+ }),
152
+ visualizer({
153
+ open: true,
154
+ template: "treemap",
155
+ //'list',
156
+ gzipSize: true,
157
+ brotliSize: true
158
+ }),
159
+ // I think we can use this plugin to build all packages instead of relying on the tsc step that's
160
+ // currently a precursor in package.json. However, it fails for the following reason:
161
+ // https://github.com/rollup/plugins/issues/243
162
+ // @ts-ignore
163
+ typescript({
164
+ tsconfig: path.resolve("./tsconfig.json"),
165
+ compilerOptions: { rootDir: path.resolve("./src") },
166
+ outDir: path.resolve(dir, "dist/bundle")
167
+ })
168
+ ]
169
+ }
170
+ },
171
+ plugins: [
172
+ // Not sure if we need this plugin or not, it works without it
173
+ // @ts-ignore
174
+ viteReact(),
175
+ // Closes the bundler and copies the bundle to the client-bundle-example project unless we're in serve
176
+ // mode, in which case we don't want to close the bundler because it will close the server
177
+ command !== "serve" ? VitePluginCloseAndCopy(copyOptions) : void 0
178
+ ]
179
+ };
152
180
  }
153
- //# sourceMappingURL=vite.frontend.config.js.map
181
+ export {
182
+ vite_frontend_config as default
183
+ };
@@ -1,2 +1,2 @@
1
- export default function (): import("vite").UserConfig;
1
+ export default function (tsConfigPath?: string): import("vite").UserConfig;
2
2
  //# sourceMappingURL=vite.test.config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vite.test.config.d.ts","sourceRoot":"","sources":["../../src/vite/vite.test.config.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,OAAO,wCA6Cb"}
1
+ {"version":3,"file":"vite.test.config.d.ts","sourceRoot":"","sources":["../../src/vite/vite.test.config.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC,EAAE,MAAM,6BAuD7C"}
@@ -1,44 +1,60 @@
1
+ import path from "node:path";
2
+ import tsconfigPaths from "vite-tsconfig-paths";
1
3
  import { defineConfig } from "vitest/config";
2
- export default function () {
3
- const testTypeEnv = process.env.TEST_TYPE || "";
4
- const testTypes = testTypeEnv.trim().split(",");
5
- const testTypeGlob = `@(|${testTypes.map((t) => (t ? `.${t.trim()}` : "")).join("|")})`;
6
- console.log(`Filtering tests by type: ${testTypeGlob}`);
7
- return defineConfig({
8
- build: {
9
- minify: false,
10
- sourcemap: false,
11
- rollupOptions: {
12
- maxParallelFileOps: 1,
13
- cache: false,
14
- output: {
15
- sourcemap: false,
16
- },
17
- },
18
- },
19
- test: {
20
- reporters: ["basic"],
21
- include: [
22
- `src/**/*${testTypeGlob}.@(test|spec).@(mts|cts|mjs|cjs|js|ts|tsx|jsx)`,
23
- ],
24
- watch: false,
25
- exclude: ["**/node_modules/**", "**/dist/**"],
26
- logHeapUsage: true,
27
- coverage: {
28
- enabled: true,
29
- include: ["packages/*/src/**"],
30
- },
31
- typecheck: {
32
- enabled: true,
33
- },
34
- pool: "forks",
35
- poolOptions: {
36
- forks: {
37
- isolate: true,
38
- },
39
- },
40
- testTimeout: 10000,
41
- },
42
- });
4
+ import VitePluginCloseAndCopy from "./vite-plugin-close-and-copy.js";
5
+ import VitePluginSourcemapExclude from "./vite-plugin-sourcemap-exclude.js";
6
+ function vite_test_config(tsConfigPath) {
7
+ const testTypeEnv = process.env.TEST_TYPE || "";
8
+ const testTypes = testTypeEnv.trim().split(",");
9
+ const testTypeGlob = `@(|${testTypes.map((t) => t ? `.${t.trim()}` : "").join("|")})`;
10
+ console.log(`Filtering tests by type: ${testTypeGlob}`);
11
+ const plugins = [
12
+ VitePluginSourcemapExclude({ excludeNodeModules: true }),
13
+ VitePluginCloseAndCopy()
14
+ ];
15
+ if (tsConfigPath) {
16
+ plugins.push(tsconfigPaths({ projects: [path.resolve(tsConfigPath)] }));
17
+ }
18
+ return defineConfig({
19
+ build: {
20
+ minify: false,
21
+ sourcemap: false,
22
+ rollupOptions: {
23
+ maxParallelFileOps: 1,
24
+ cache: false,
25
+ output: {
26
+ sourcemap: false
27
+ }
28
+ }
29
+ },
30
+ test: {
31
+ //root: getRootDir(),
32
+ reporters: ["basic"],
33
+ include: [
34
+ `src/**/*${testTypeGlob}.@(test|spec).@(mts|cts|mjs|cjs|js|ts|tsx|jsx)`
35
+ ],
36
+ watch: false,
37
+ exclude: ["**/node_modules/**", "**/dist/**"],
38
+ logHeapUsage: true,
39
+ coverage: {
40
+ enabled: true,
41
+ include: ["packages/*/src/**"]
42
+ },
43
+ typecheck: {
44
+ enabled: true
45
+ },
46
+ pool: "forks",
47
+ // forks is slower than 'threads' but more compatible with low-level libs (e.g. bcrypt)
48
+ poolOptions: {
49
+ forks: {
50
+ isolate: true
51
+ }
52
+ },
53
+ testTimeout: 1e4
54
+ },
55
+ plugins
56
+ });
43
57
  }
44
- //# sourceMappingURL=vite.test.config.js.map
58
+ export {
59
+ vite_test_config as default
60
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"vite.test.config.js","sourceRoot":"","sources":["../../src/vite/vite.test.config.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,CAAC,OAAO;IACb,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAGhD,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;IAExD,OAAO,YAAY,CAAC;QACnB,KAAK,EAAE;YACN,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE;gBACd,kBAAkB,EAAE,CAAC;gBACrB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE;oBACP,SAAS,EAAE,KAAK;iBAChB;aACD;SACD;QACD,IAAI,EAAE;YAEL,SAAS,EAAE,CAAC,OAAO,CAAC;YACpB,OAAO,EAAE;gBACR,WAAW,YAAY,gDAAgD;aACvE;YACD,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;YAC7C,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,mBAAmB,CAAC;aAC9B;YACD,SAAS,EAAE;gBACV,OAAO,EAAE,IAAI;aACb;YACD,IAAI,EAAE,OAAO;YACb,WAAW,EAAE;gBACZ,KAAK,EAAE;oBACN,OAAO,EAAE,IAAI;iBACb;aACD;YACD,WAAW,EAAE,KAAK;SAClB;KACD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"vite.test.config.js","sourceRoot":"","sources":["../../src/vite/vite.test.config.ts"],"names":[],"mappings":"AAcA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AACrE,OAAO,0BAA0B,MAAM,oCAAoC,CAAC;AAE5E,MAAM,CAAC,OAAO,WAAW,YAAqB;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAGhD,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG;QACf,0BAA0B,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;QACxD,sBAAsB,EAAE;KACxB,CAAC;IAEF,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,YAAY,CAAC;QACnB,KAAK,EAAE;YACN,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE;gBACd,kBAAkB,EAAE,CAAC;gBACrB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE;oBACP,SAAS,EAAE,KAAK;iBAChB;aACD;SACD;QACD,IAAI,EAAE;YAEL,SAAS,EAAE,CAAC,OAAO,CAAC;YACpB,OAAO,EAAE;gBACR,WAAW,YAAY,gDAAgD;aACvE;YACD,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;YAC7C,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,mBAAmB,CAAC;aAC9B;YACD,SAAS,EAAE;gBACV,OAAO,EAAE,IAAI;aACb;YACD,IAAI,EAAE,OAAO;YACb,WAAW,EAAE;gBACZ,KAAK,EAAE;oBACN,OAAO,EAAE,IAAI;iBACb;aACD;YACD,WAAW,EAAE,KAAK;SAClB;QACD,OAAO,EAAE,OAAO;KAChB,CAAC,CAAC;AACJ,CAAC"}
@@ -1,2 +1 @@
1
- export * from "./webpack.config.js";
2
- //# sourceMappingURL=index.js.map
1
+ import "./webpack.config.js";