@prosopo/config 2.5.3 → 2.5.5

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.
@@ -5,5 +5,6 @@ export { default as ViteFrontendConfig } from "./vite.frontend.config.js";
5
5
  export { default as ViteBackendConfig } from "./vite.backend.config.js";
6
6
  export { default as VitePluginFixAbsoluteImports } from "./vite-plugin-fix-absolute-imports.js";
7
7
  export { default as ViteCommonJSConfig } from "./vite.commonjs.config.js";
8
+ export { default as VitePluginRemoveUnusedTranslations } from "./vite-plugin-remove-unused-translations.js";
8
9
  export * from "./TsNoCheckPlugin.js";
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,6CAA6C,CAAC;AAC5G,cAAc,sBAAsB,CAAC"}
@@ -5,5 +5,6 @@ export { default as ViteFrontendConfig } from "./vite.frontend.config.js";
5
5
  export { default as ViteBackendConfig } from "./vite.backend.config.js";
6
6
  export { default as VitePluginFixAbsoluteImports } from "./vite-plugin-fix-absolute-imports.js";
7
7
  export { default as ViteCommonJSConfig } from "./vite.commonjs.config.js";
8
+ export { default as VitePluginRemoveUnusedTranslations } from "./vite-plugin-remove-unused-translations.js";
8
9
  export * from "./TsNoCheckPlugin.js";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,6CAA6C,CAAC;AAC5G,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Plugin } from "vite";
2
+ export default function VitePluginRemoveUnusedTranslations(translationKeys: string[], jsonPattern: string): Plugin;
3
+ //# sourceMappingURL=vite-plugin-remove-unused-translations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-plugin-remove-unused-translations.d.ts","sourceRoot":"","sources":["../../src/vite/vite-plugin-remove-unused-translations.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAQnC,MAAM,CAAC,OAAO,UAAU,kCAAkC,CACzD,eAAe,EAAE,MAAM,EAAE,EACzB,WAAW,EAAE,MAAM,GACjB,MAAM,CA4DR"}
@@ -0,0 +1,48 @@
1
+ import fs from "node:fs/promises";
2
+ import { getLogger } from "@prosopo/common";
3
+ import { flatten, unflatten } from "@prosopo/util";
4
+ import glob from "fast-glob";
5
+ const used = new Set();
6
+ const log = getLogger("Info", "config.vite.vite-plugin-removed-unused-translations.js");
7
+ export default function VitePluginRemoveUnusedTranslations(translationKeys, jsonPattern) {
8
+ return {
9
+ name: "remove-unused-translations",
10
+ transform(code) {
11
+ for (const key of translationKeys) {
12
+ if (code.includes(key) && !used.has(key)) {
13
+ log.info(`Found key: ${key}`);
14
+ used.add(key);
15
+ }
16
+ }
17
+ return { code };
18
+ },
19
+ enforce: "post",
20
+ async writeBundle() {
21
+ const jsonFiles = await glob(jsonPattern, { absolute: true });
22
+ log.info(`Found ${jsonFiles.length} JSON files at ${jsonPattern}`);
23
+ const filePromises = [];
24
+ for (const filePath of jsonFiles) {
25
+ try {
26
+ const content = await fs.readFile(filePath, "utf-8");
27
+ const jsonData = JSON.parse(content);
28
+ const jsonDataFlattened = flatten(jsonData);
29
+ const filteredData = Object.fromEntries(Object.entries(jsonDataFlattened).filter(([key]) => used.has(key)));
30
+ const unflattened = unflatten(filteredData);
31
+ filePromises.push(fs
32
+ .writeFile(filePath, JSON.stringify(unflattened, null, 2), "utf-8")
33
+ .then(() => {
34
+ log.info(`Updated ${filePath}`);
35
+ })
36
+ .catch((e) => {
37
+ log.error(`Failed to update ${filePath}:`, e);
38
+ }));
39
+ }
40
+ catch (error) {
41
+ log.error(`Failed to process ${filePath}:`, error);
42
+ }
43
+ }
44
+ await Promise.all(filePromises);
45
+ },
46
+ };
47
+ }
48
+ //# sourceMappingURL=vite-plugin-remove-unused-translations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-plugin-remove-unused-translations.js","sourceRoot":"","sources":["../../src/vite/vite-plugin-remove-unused-translations.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;AAC/B,MAAM,GAAG,GAAG,SAAS,CACpB,MAAM,EACN,wDAAwD,CACxD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kCAAkC,CACzD,eAAyB,EACzB,WAAmB;IAEnB,OAAO;QACN,IAAI,EAAE,4BAA4B;QAClC,SAAS,CAAC,IAAY;YAErB,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1C,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;oBAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC;YACF,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,CAAC;QACjB,CAAC;QACD,OAAO,EAAE,MAAM;QAEf,KAAK,CAAC,WAAW;YAEhB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAE9D,GAAG,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,kBAAkB,WAAW,EAAE,CAAC,CAAC;YAEnE,MAAM,YAAY,GAAG,EAAE,CAAC;YACxB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACJ,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrC,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAG5C,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACtC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAClE,CAAC;oBAEF,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;oBAK5C,YAAY,CAAC,IAAI,CAChB,EAAE;yBACA,SAAS,CACT,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EACpC,OAAO,CACP;yBACA,IAAI,CAAC,GAAG,EAAE;wBACV,GAAG,CAAC,IAAI,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;oBACjC,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;wBACZ,GAAG,CAAC,KAAK,CAAC,oBAAoB,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBAEzB,GAAG,CAAC,KAAK,CAAC,qBAAqB,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACjC,CAAC;KACD,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/config",
3
- "version": "2.5.3",
3
+ "version": "2.5.5",
4
4
  "description": "Prosopo config library",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
@@ -36,9 +36,9 @@
36
36
  "@babel/plugin-transform-react-jsx": "7.25.2",
37
37
  "@babel/plugin-transform-runtime": "7.25.4",
38
38
  "@babel/preset-env": "7.25.4",
39
- "@prosopo/common": "2.5.3",
40
- "@prosopo/types": "2.5.3",
41
- "@prosopo/util": "2.5.3",
39
+ "@prosopo/common": "2.5.5",
40
+ "@prosopo/types": "2.5.5",
41
+ "@prosopo/util": "2.5.5",
42
42
  "@rollup/plugin-alias": "5.1.0",
43
43
  "@rollup/plugin-babel": "6.0.4",
44
44
  "@rollup/plugin-commonjs": "26.0.1",
@@ -49,7 +49,7 @@
49
49
  "@rollup/plugin-replace": "5.0.7",
50
50
  "@rollup/plugin-typescript": "11.1.6",
51
51
  "@rollup/plugin-wasm": "6.2.2",
52
- "@vitejs/plugin-react": "4.3.1",
52
+ "@vitejs/plugin-react": "4.3.4",
53
53
  "babel-loader": "9.2.1",
54
54
  "css-loader": "7.1.2",
55
55
  "esbuild": "0.23.1",
@@ -76,15 +76,15 @@
76
76
  "@babel/plugin-transform-class-properties": "7.25.4",
77
77
  "@babel/plugin-transform-object-rest-spread": "7.24.7",
78
78
  "@babel/preset-typescript": "7.24.7",
79
- "@vitest/coverage-v8": "2.1.1",
79
+ "@vitest/coverage-v8": "3.0.9",
80
80
  "concurrently": "9.0.1",
81
81
  "del-cli": "6.0.0",
82
82
  "npm-run-all": "2.1.0",
83
83
  "tslib": "2.7.0",
84
84
  "tsx": "4.19.1",
85
85
  "typescript": "5.6.2",
86
- "vite": "5.4.6",
87
- "vitest": "2.1.1",
86
+ "vite": "6.2.3",
87
+ "vitest": "3.0.9",
88
88
  "webpack-cli": "5.1.4",
89
89
  "webpack-dev-server": "5.1.0"
90
90
  },