@prosopo/config 0.2.0 → 0.2.2

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.
@@ -1,3 +1,17 @@
1
+ /**
2
+ * Get the tsconfig paths for a package
3
+ * @param tsConfigPath the tsconfig path to start with
4
+ * @param ignorePatterns the patterns to ignore
5
+ * @param tsConfigPaths the tsconfig paths to add to
6
+ * @param includeInitialTsConfig return the initial tsconfig path in the returned array
7
+ */
8
+ export declare function getTsConfigs(tsConfigPath: string, ignorePatterns?: RegExp[], tsConfigPaths?: string[], includeInitialTsConfig?: boolean): string[];
9
+ /**
10
+ * Get the workspace externals for a package
11
+ * @param tsConfigPath
12
+ * @param ignorePatterns
13
+ */
14
+ export declare function getExternalsFromReferences(tsConfigPath: string, ignorePatterns?: RegExp[]): Promise<string[]>;
1
15
  /**
2
16
  * Get the dependencies for a package
3
17
  * @param packageName
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../src/dependencies.ts"],"names":[],"mappings":"AAyBA;;;GAGG;AACH,wBAAsB,eAAe,CACjC,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,wBAAwB,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAoCzE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAehH;AAED;;;;;;;;;;;;;;KAcK;AACL,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,EAAO,EAAE,eAAe,GAAE,MAAM,EAAO,YAgB9G"}
1
+ {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../src/dependencies.ts"],"names":[],"mappings":"AA6CA;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,YAAY,EAAE,MAAM,EACpB,cAAc,GAAE,MAAM,EAAO,EAC7B,aAAa,GAAE,MAAM,EAAO,EAC5B,sBAAsB,UAAO,GAC9B,MAAM,EAAE,CA8BV;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC5C,YAAY,EAAE,MAAM,EACpB,cAAc,GAAE,MAAM,EAAO,GAC9B,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACjC,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,wBAAwB,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAoCzE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAehH;AAED;;;;;;;;;;;;;;KAcK;AACL,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,EAAO,EAAE,eAAe,GAAE,MAAM,EAAO,YAgB9G"}
@@ -2,9 +2,13 @@ import { Glob } from 'glob';
2
2
  import { ProsopoEnvError, getLogger } from '@prosopo/common';
3
3
  import { at } from '@prosopo/util';
4
4
  import child_process from 'child_process';
5
+ import fs from 'fs';
6
+ import path from 'path';
5
7
  import util from 'util';
6
8
  const logger = getLogger(`Info`, `config.dependencies.js`);
7
9
  const exec = util.promisify(child_process.exec);
10
+ // find a tScOnFiG.jSoN file
11
+ const tsConfigRegex = /\/[A-Za-z.]*\.json$/;
8
12
  const peerDepsRegex = /UNMET\sOPTIONAL\sDEPENDENCY\s+(@*[\w-/._]+)@/;
9
13
  const depsRegex = /\s+(@*[\w-/._]+)@/;
10
14
  async function getPackageDir(packageName) {
@@ -21,6 +25,87 @@ async function getPackageDir(packageName) {
21
25
  }
22
26
  return packageDir.trim();
23
27
  }
28
+ /**
29
+ * Resolve the tsconfig path for a reference using the initial tsconfig path and the reference path. If the reference
30
+ * does not contain a tsconfig filename, `tsconfig.json` will be appended to the path.
31
+ * @param initialTsConfigPath
32
+ * @param reference
33
+ */
34
+ function getReferenceTsConfigPath(initialTsConfigPath, reference) {
35
+ // remove tsconfig.*.json from the path and get the path to the new directory via the reference path
36
+ let refTSConfigPath = path.resolve(initialTsConfigPath.replace(tsConfigRegex, ''), reference.path);
37
+ if (!refTSConfigPath.endsWith('.json')) {
38
+ refTSConfigPath = path.resolve(refTSConfigPath, 'tsconfig.json');
39
+ }
40
+ return refTSConfigPath;
41
+ }
42
+ /**
43
+ * Get the tsconfig paths for a package
44
+ * @param tsConfigPath the tsconfig path to start with
45
+ * @param ignorePatterns the patterns to ignore
46
+ * @param tsConfigPaths the tsconfig paths to add to
47
+ * @param includeInitialTsConfig return the initial tsconfig path in the returned array
48
+ */
49
+ export function getTsConfigs(tsConfigPath, ignorePatterns = [], tsConfigPaths = [], includeInitialTsConfig = true) {
50
+ let tsConfigs = [...tsConfigPaths];
51
+ //TODO use dynamic import with JSON assertion (TS complains that resolveJsonModule is not set)
52
+ const references = JSON.parse(fs.readFileSync(tsConfigPath).toString()).references;
53
+ if (!tsConfigs.includes(tsConfigPath)) {
54
+ const ignore = ignorePatterns && ignorePatterns.length > 0 ? new RegExp(`${ignorePatterns.join('|')}`) : undefined;
55
+ if (includeInitialTsConfig) {
56
+ tsConfigs.push(tsConfigPath);
57
+ }
58
+ // ignore the packages we don't want to bundle
59
+ const filteredReferences = references.filter((reference) => ignore ? !ignore.test(reference.path) : false);
60
+ // for each reference, get the tsconfig paths - recursively calling this function
61
+ for (const reference of filteredReferences) {
62
+ // remove tsconfig.*.json from the path and get the path to the new directory via the reference path
63
+ const refTSConfigPath = getReferenceTsConfigPath(tsConfigPath, reference);
64
+ // take the reference TS config path (refTSConfigPath) and get the tsconfig paths for it (newTsConfigs),
65
+ // adding both to a distinct list, as there may be duplicates
66
+ const newTsConfigs = getTsConfigs(refTSConfigPath, ignorePatterns, tsConfigs);
67
+ if (newTsConfigs.length > 0) {
68
+ const distinctTsConfigPaths = new Set(tsConfigs.concat(newTsConfigs));
69
+ tsConfigs = [...distinctTsConfigPaths];
70
+ }
71
+ }
72
+ }
73
+ return tsConfigs;
74
+ }
75
+ /**
76
+ * Get the workspace externals for a package
77
+ * @param tsConfigPath
78
+ * @param ignorePatterns
79
+ */
80
+ export async function getExternalsFromReferences(tsConfigPath, ignorePatterns = []) {
81
+ const tsConfigPaths = getTsConfigs(tsConfigPath, ignorePatterns, [], false);
82
+ logger.debug('tsConfigPaths', tsConfigPaths);
83
+ const promises = [];
84
+ for (const refTsConfigPath of tsConfigPaths) {
85
+ const packageJsonPath = path.resolve(refTsConfigPath.replace(tsConfigRegex, ''), 'package.json');
86
+ promises.push(new Promise((resolve, reject) => {
87
+ // if package.json exists, read it and get the package name
88
+ fs.stat(packageJsonPath, (err) => {
89
+ if (err) {
90
+ reject(err);
91
+ }
92
+ fs.readFile(new URL(packageJsonPath, import.meta.url), function (err, buffer) {
93
+ if (err) {
94
+ reject(err);
95
+ }
96
+ else {
97
+ const packageJson = JSON.parse(buffer.toString());
98
+ const pkg = packageJson.name;
99
+ resolve(pkg);
100
+ }
101
+ });
102
+ });
103
+ }));
104
+ }
105
+ const externals = await Promise.all(promises);
106
+ logger.debug('externals', externals);
107
+ return externals;
108
+ }
24
109
  /**
25
110
  * Get the dependencies for a package
26
111
  * @param packageName
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../src/dependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../src/dependencies.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,5 @@ export { default as VitePluginSourceMapExclude } from './vite-plugin-sourcemap-e
4
4
  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
+ export { default as ViteCommonJSConfig } from './vite.commonjs.config.js';
7
8
  //# 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,CAAA;AACnF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAC1F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AACnF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAC1F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAA;AAC/F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA"}
@@ -4,4 +4,5 @@ export { default as VitePluginSourceMapExclude } from './vite-plugin-sourcemap-e
4
4
  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
+ export { default as ViteCommonJSConfig } from './vite.commonjs.config.js';
7
8
  //# 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,CAAA;AACnF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAC1F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AACnF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAC1F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,uCAAuC,CAAA;AAC/F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { UserConfig } from 'vite';
2
+ export default function (name: string, tsConfigPath: string, entry?: string): Promise<UserConfig>;
3
+ //# sourceMappingURL=vite.commonjs.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.commonjs.config.d.ts","sourceRoot":"","sources":["../../src/vite/vite.commonjs.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAgB,MAAM,MAAM,CAAA;AAS/C,yBAA+B,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAgCtG"}
@@ -0,0 +1,43 @@
1
+ import { defineConfig } from 'vite';
2
+ import { builtinModules } from 'module';
3
+ import { getExternalsFromReferences } from '../dependencies.js';
4
+ import { getLogger } from '@prosopo/common';
5
+ import { default as noBundlePlugin } from 'vite-plugin-no-bundle';
6
+ import VitePluginCloseAndCopy from './vite-plugin-close-and-copy.js';
7
+ import path from 'path';
8
+ import tsconfigPaths from 'vite-tsconfig-paths';
9
+ const log = getLogger(`Info`, `vite.commonjs.config.ts`);
10
+ export default async function (name, tsConfigPath, entry) {
11
+ log.info(`ViteCommonJSConfig: ${name}`);
12
+ const projectExternal = await getExternalsFromReferences(tsConfigPath, [/dev/]);
13
+ const allExternal = [...builtinModules, ...builtinModules.map((m) => `node:${m}`), ...projectExternal];
14
+ return defineConfig({
15
+ ssr: { external: allExternal },
16
+ plugins: [
17
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
18
+ // @ts-ignore
19
+ noBundlePlugin({
20
+ root: 'src',
21
+ copy: '**/*.css',
22
+ }),
23
+ tsconfigPaths({ projects: [path.resolve('./tsconfig.cjs.json')] }),
24
+ VitePluginCloseAndCopy(),
25
+ ],
26
+ build: {
27
+ emptyOutDir: true,
28
+ ssr: true,
29
+ target: 'node16',
30
+ outDir: 'dist/cjs',
31
+ lib: {
32
+ name,
33
+ formats: ['cjs'],
34
+ entry: entry || 'src/index.ts', // required
35
+ },
36
+ rollupOptions: {
37
+ treeshake: false,
38
+ external: allExternal,
39
+ },
40
+ },
41
+ });
42
+ }
43
+ //# sourceMappingURL=vite.commonjs.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.commonjs.config.js","sourceRoot":"","sources":["../../src/vite/vite.commonjs.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,sBAAsB,MAAM,iCAAiC,CAAA;AACpE,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAA;AACxD,MAAM,CAAC,OAAO,CAAC,KAAK,WAAW,IAAY,EAAE,YAAoB,EAAE,KAAc;IAC7E,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;IACvC,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/E,MAAM,WAAW,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,CAAA;IACtG,OAAO,YAAY,CAAC;QAChB,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE;QAC9B,OAAO,EAAE;YACL,6DAA6D;YAC7D,aAAa;YACb,cAAc,CAAC;gBACX,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,UAAU;aACnB,CAAC;YACF,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC;YAClE,sBAAsB,EAAE;SAC3B;QACD,KAAK,EAAE;YACH,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;YAClB,GAAG,EAAE;gBACD,IAAI;gBACJ,OAAO,EAAE,CAAC,KAAK,CAAC;gBAChB,KAAK,EAAE,KAAK,IAAI,cAAc,EAAE,WAAW;aAC9C;YACD,aAAa,EAAE;gBACX,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,WAAW;aACxB;SACJ;KACJ,CAAC,CAAA;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/config",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Prosopo config library",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
@@ -14,13 +14,13 @@
14
14
  "author": "Prosopo Limited",
15
15
  "license": "Apache-2.0",
16
16
  "dependencies": {
17
- "@prosopo/common": "0.2.0",
18
- "@prosopo/types": "0.2.0",
17
+ "@prosopo/common": "0.2.2",
18
+ "@prosopo/types": "0.2.2",
19
19
  "glob": "^10.0.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@polkadot/dev": "^0.76.11",
23
- "@prosopo/util": "0.2.0",
23
+ "@prosopo/util": "0.2.2",
24
24
  "@rollup/plugin-alias": "^5.0.0",
25
25
  "@rollup/plugin-babel": "^6.0.3",
26
26
  "@rollup/plugin-commonjs": "^24.1.0",
@@ -28,7 +28,8 @@
28
28
  "@rollup/plugin-inject": "^5.0.3",
29
29
  "@rollup/plugin-json": "^6.0.0",
30
30
  "@rollup/plugin-node-resolve": "^15.1.0",
31
- "@rollup/plugin-typescript": "^11.1.2",
31
+ "@rollup/plugin-typescript": "^11.1.3",
32
+ "@rollup/plugin-wasm": "^6.1.3",
32
33
  "@types/react": "^18.2.7",
33
34
  "@types/react-dom": "^18.2.4",
34
35
  "@types/rollup-plugin-natives": "^0.7.0",
@@ -41,13 +42,16 @@
41
42
  "react": "^18.2.0",
42
43
  "react-dom": "^18.2.0",
43
44
  "regenerator-runtime": "^0.14.0",
45
+ "rollup-plugin-import-css": "^3.3.4",
44
46
  "rollup-plugin-cleanup": "^3.2.1",
47
+ "rollup-plugin-natives": "^0.7.8",
45
48
  "tsconfig-paths": "^4.2.0",
46
49
  "tslib": "^2.6.2",
47
50
  "typescript": "^5.1.6",
48
51
  "vite": "^4.4.9",
49
52
  "vite-bundle-visualizer": "^0.10.0",
50
53
  "vite-plugin-filter-replace": "^0.1.12",
54
+ "vite-plugin-no-bundle": "^3.0.0",
51
55
  "vite-plugin-native": "^0.2.0",
52
56
  "vite-plugin-static-copy": "^0.17.0",
53
57
  "vite-tsconfig-paths": "^4.2.0"