@runtyped/type-compiler 1.0.20-alpha.3 → 1.0.20-alpha.4

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 (87) hide show
  1. package/README.md +3 -0
  2. package/dist/compiler-debug.js.map +1 -0
  3. package/dist/index.js.map +1 -0
  4. package/dist/{cjs/install-transformer.d.ts → install-transformer.d.ts} +1 -1
  5. package/dist/install-transformer.js +121 -0
  6. package/dist/install-transformer.js.map +1 -0
  7. package/dist/{esm/src → src}/compiler.js +71 -55
  8. package/dist/src/compiler.js.map +1 -0
  9. package/dist/src/config.js.map +1 -0
  10. package/dist/src/debug.js.map +1 -0
  11. package/dist/{esm/src → src}/loader.js +10 -10
  12. package/dist/src/loader.js.map +1 -0
  13. package/dist/src/plugin.js.map +1 -0
  14. package/dist/{esm/src → src}/reflection-ast.js +1 -0
  15. package/dist/src/reflection-ast.js.map +1 -0
  16. package/dist/{esm/src → src}/resolver.js +3 -0
  17. package/dist/src/resolver.js.map +1 -0
  18. package/dist/src/ts-types.js.map +1 -0
  19. package/install-transformer.ts +113 -53
  20. package/package.json +10 -11
  21. package/{deepkit-compiler-debug.js → runtyped-compiler-debug.js} +1 -1
  22. package/runtyped-type-install.js +5 -0
  23. package/src/compiler.ts +3 -2
  24. package/tsconfig.json +2 -2
  25. package/deepkit-type-install.js +0 -5
  26. package/dist/cjs/compiler-debug.js +0 -28
  27. package/dist/cjs/compiler-debug.js.map +0 -1
  28. package/dist/cjs/index.js +0 -36
  29. package/dist/cjs/index.js.map +0 -1
  30. package/dist/cjs/install-transformer.js +0 -77
  31. package/dist/cjs/install-transformer.js.map +0 -1
  32. package/dist/cjs/src/compiler.js +0 -2506
  33. package/dist/cjs/src/compiler.js.map +0 -1
  34. package/dist/cjs/src/config.js +0 -248
  35. package/dist/cjs/src/config.js.map +0 -1
  36. package/dist/cjs/src/debug.js +0 -26
  37. package/dist/cjs/src/debug.js.map +0 -1
  38. package/dist/cjs/src/loader.js +0 -55
  39. package/dist/cjs/src/loader.js.map +0 -1
  40. package/dist/cjs/src/plugin.js +0 -46
  41. package/dist/cjs/src/plugin.js.map +0 -1
  42. package/dist/cjs/src/reflection-ast.js +0 -335
  43. package/dist/cjs/src/reflection-ast.js.map +0 -1
  44. package/dist/cjs/src/resolver.js +0 -88
  45. package/dist/cjs/src/resolver.js.map +0 -1
  46. package/dist/cjs/src/ts-types.js +0 -6
  47. package/dist/cjs/src/ts-types.js.map +0 -1
  48. package/dist/esm/compiler-debug.d.ts +0 -1
  49. package/dist/esm/compiler-debug.js.map +0 -1
  50. package/dist/esm/index.d.ts +0 -7
  51. package/dist/esm/index.js.map +0 -1
  52. package/dist/esm/install-transformer.d.ts +0 -7
  53. package/dist/esm/install-transformer.js +0 -75
  54. package/dist/esm/install-transformer.js.map +0 -1
  55. package/dist/esm/src/compiler.d.ts +0 -313
  56. package/dist/esm/src/compiler.js.map +0 -1
  57. package/dist/esm/src/config.d.ts +0 -83
  58. package/dist/esm/src/config.js.map +0 -1
  59. package/dist/esm/src/debug.d.ts +0 -9
  60. package/dist/esm/src/debug.js.map +0 -1
  61. package/dist/esm/src/loader.d.ts +0 -18
  62. package/dist/esm/src/loader.js.map +0 -1
  63. package/dist/esm/src/plugin.d.ts +0 -14
  64. package/dist/esm/src/plugin.js.map +0 -1
  65. package/dist/esm/src/reflection-ast.d.ts +0 -46
  66. package/dist/esm/src/reflection-ast.js.map +0 -1
  67. package/dist/esm/src/resolver.d.ts +0 -27
  68. package/dist/esm/src/resolver.js.map +0 -1
  69. package/dist/esm/src/ts-types.d.ts +0 -17
  70. package/dist/esm/src/ts-types.js.map +0 -1
  71. package/tsconfig.esm.json +0 -16
  72. /package/dist/{cjs/compiler-debug.d.ts → compiler-debug.d.ts} +0 -0
  73. /package/dist/{esm/compiler-debug.js → compiler-debug.js} +0 -0
  74. /package/dist/{cjs/index.d.ts → index.d.ts} +0 -0
  75. /package/dist/{esm/index.js → index.js} +0 -0
  76. /package/dist/{cjs/src → src}/compiler.d.ts +0 -0
  77. /package/dist/{cjs/src → src}/config.d.ts +0 -0
  78. /package/dist/{esm/src → src}/config.js +0 -0
  79. /package/dist/{cjs/src → src}/debug.d.ts +0 -0
  80. /package/dist/{esm/src → src}/debug.js +0 -0
  81. /package/dist/{cjs/src → src}/loader.d.ts +0 -0
  82. /package/dist/{cjs/src → src}/plugin.d.ts +0 -0
  83. /package/dist/{esm/src → src}/plugin.js +0 -0
  84. /package/dist/{cjs/src → src}/reflection-ast.d.ts +0 -0
  85. /package/dist/{cjs/src → src}/resolver.d.ts +0 -0
  86. /package/dist/{cjs/src → src}/ts-types.d.ts +0 -0
  87. /package/dist/{esm/src → src}/ts-types.js +0 -0
@@ -152,6 +152,7 @@ const cloneHook = (node, payload) => {
152
152
  return;
153
153
  };
154
154
  export class NodeConverter {
155
+ f;
155
156
  constructor(f) {
156
157
  this.f = f;
157
158
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reflection-ast.js","sourceRoot":"","sources":["../../src/reflection-ast.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,9 @@ export function patternMatch(path, patterns, base) {
14
14
  * It automatically reads a SourceFile, binds and caches it.
15
15
  */
16
16
  export class Resolver {
17
+ compilerOptions;
18
+ host;
19
+ sourceFiles;
17
20
  constructor(compilerOptions, host, sourceFiles) {
18
21
  this.compilerOptions = compilerOptions;
19
22
  this.host = host;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-types.js","sourceRoot":"","sources":["../../src/ts-types.ts"],"names":[],"mappings":"AAAA,sIAAsI;AACtI,iIAAiI;AACjI,sIAAsI"}
@@ -1,84 +1,144 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  /**
4
- * This script installs the deepkit/type transformer (that extracts automatically types and adds the correct @t decorator) to the typescript node_modules.
4
+ * This script installs the @runtyped/type-compiler transformer (that extracts automatically types and adds the correct @t decorator) to the typescript node_modules.
5
5
  *
6
6
  * The critical section that needs adjustment is in the `function getScriptTransformers` in `node_modules/typescript/lib/tsc.js`.
7
7
  */
8
8
 
9
9
  import { dirname, join, relative } from 'path';
10
10
  import { existsSync, readFileSync, writeFileSync } from 'fs';
11
+ import { createRequire } from 'node:module';
12
+
13
+ const require = createRequire(import.meta.url);
14
+ const __dirname = import.meta.dirname;
11
15
 
12
16
  let to = process.argv[2] || process.cwd();
13
17
 
18
+ console.log(`
19
+
20
+ ================ @runtyped/type-compiler ================
21
+
22
+ This script patches the TypeScript compiler by adding the
23
+ @runtyped/type-compiler transformer, which extracts types
24
+ and adds the correct @t decorator.
25
+
26
+ `);
27
+
14
28
  function getPatchId(id: string): string {
15
- return 'deepkit_type_patch_' + id;
29
+ return 'runtyped_patch_' + id;
16
30
  }
17
31
 
18
- function getCode(deepkitDistPath: string, varName: string, id: string): string {
19
- return `
20
- //${getPatchId(id)}
21
- try {
22
- var typeTransformer;
23
- try {
24
- typeTransformer = require('@runtyped/type-compiler');
25
- } catch (error) {
26
- typeTransformer = require(${JSON.stringify(deepkitDistPath)});
27
- }
28
- if (typeTransformer) {
29
- if (!customTransformers) ${varName} = {};
30
- if (!${varName}.before) ${varName}.before = [];
31
- let alreadyPatched = false;
32
- for (let fn of ${varName}.before) {
33
- if (fn && fn.name === 'deepkitTransformer') alreadyPatched = true;
34
- }
35
- if (!alreadyPatched) {
36
- if (!${varName}.before.includes(typeTransformer.transformer)) ${varName}.before.push(typeTransformer.transformer);
37
-
38
- if (!${varName}.afterDeclarations) ${varName}.afterDeclarations = [];
39
- if (!${varName}.afterDeclarations.includes(typeTransformer.declarationTransformer)) {
40
- ${varName}.afterDeclarations.push(typeTransformer.declarationTransformer);
41
- }
42
- }
43
- }
44
- } catch (e) {
32
+ function getCode(runtypedDistPath: string, id: string): string {
33
+ const patchCode = `
34
+ //${getPatchId(id)}
35
+ let runtypedTypeTransformer;
36
+ try {
37
+ runtypedTypeTransformer = require('@runtyped/type-compiler');
38
+ } catch (error) {
39
+ try {
40
+ runtypedTypeTransformer = require(${JSON.stringify(runtypedDistPath)});
41
+ } catch (error) { }
42
+ }
43
+ if (runtypedTypeTransformer) {
44
+ if (!customTransformers) customTransformers = {};
45
+ if (!customTransformers.before) customTransformers.before = [];
46
+ let alreadyPatched = false;
47
+ for (let fn of customTransformers.before) {
48
+ if (fn && fn.name === 'runtypedTypeTransformer') {
49
+ alreadyPatched = true;
50
+ break;
51
+ }
52
+ }
53
+ if (!alreadyPatched) {
54
+ if (!customTransformers.before.includes(runtypedTypeTransformer.transformer)) {
55
+ customTransformers.before.push(runtypedTypeTransformer.transformer);
56
+ }
57
+ if (!customTransformers.afterDeclarations) {
58
+ customTransformers.afterDeclarations = [];
59
+ }
60
+ if (!customTransformers.afterDeclarations.includes(runtypedTypeTransformer.declarationTransformer)) {
61
+ customTransformers.afterDeclarations.push(runtypedTypeTransformer.declarationTransformer);
45
62
  }
46
- //${getPatchId(id)}-end
47
- `;
63
+ }
64
+ } else {
65
+ console.error(\`
66
+ ==================== @runtyped/type-compiler ====================
67
+
68
+ WARNING: failed to require() @runtyped/type-compiler.
69
+
70
+ The TypeScript compiler has been correctly patched but the patch
71
+ itself is unable to load the transformer module from the expected
72
+ path. Please report this issue to the Runtyped team.
73
+ =================================================================
74
+ \`);
75
+ }
76
+ //${getPatchId(id)}-end
77
+ `;
78
+ return patchCode;
48
79
  }
49
80
 
50
81
  function isPatched(code: string, id: string) {
51
82
  return code.includes(getPatchId(id));
52
83
  }
53
84
 
54
- function patchGetTransformers(deepkitDistPath: string, code: string): string {
55
- const id = 'patchGetTransformers';
56
- if (isPatched(code, id)) return '';
85
+ // if (to + '/dist/cjs' === __dirname) {
86
+ // to = join(to, '..'); //we exclude type-compiler/node_modules
87
+ // }
57
88
 
58
- const find = /function getTransformers\([^)]+\)\s*{/;
59
- if (!code.match(find)) return '';
89
+ const typeScriptPath = dirname(require.resolve('typescript', { paths: [to] }));
90
+ const runtypedDistPath = relative(typeScriptPath, __dirname);
60
91
 
61
- code = code.replace(find, function (a) {
62
- return a + '\n ' + getCode(deepkitDistPath, 'customTransformers', id);
63
- });
92
+ const paths = ['tsc.js', '_tsc.js', 'typescript.js'];
64
93
 
65
- return code;
66
- }
94
+ let patched_count = 0;
95
+
96
+ for (const fileName of paths) {
97
+
98
+ const file = join(typeScriptPath, fileName);
99
+
100
+ if (!existsSync(file)) {
101
+ console.log(' Runtyped: skipping file %s (does not exist)', file);
102
+ continue;
103
+ }
104
+
105
+ let code = readFileSync(file, 'utf8');
106
+
107
+ const id = 'patchGetTransformers';
108
+ if (isPatched(code, id)) {
109
+ patched_count += 1;
110
+ console.log(' Runtyped: skipping file %s (already patched)', file);
111
+ continue;
112
+ }
113
+
114
+ const find = /function getTransformers\([^)]+\)\s*{/;
115
+
116
+ if (!code.match(find)) {
117
+ console.log(' Runtyped: skipping file %s (no getTransformers function found)', file);
118
+ continue;
119
+ }
120
+
121
+ code = code.replace(find, function (a) {
122
+ const patchCode = getCode(runtypedDistPath, id);
123
+ return a + '\n ' + patchCode;
124
+ });
125
+
126
+ writeFileSync(file, code);
127
+ patched_count += 1;
128
+ console.log(' Runtyped: injected TypeScript transformer at', file);
67
129
 
68
- if (to + '/dist/cjs' === __dirname) {
69
- to = join(to, '..'); //we exclude type-compiler/node_modules
70
130
  }
71
131
 
72
- const typeScriptPath = dirname(require.resolve('typescript', { paths: [to] }));
73
- const deepkitDistPath = relative(typeScriptPath, __dirname);
132
+ if (patched_count === 0) {
133
+ console.error(`
74
134
 
75
- const paths = ['tsc.js', '_tsc.js', 'typescript.js'];
135
+ Runtyped: WARNING: no files patched. Please report this issue.
76
136
 
77
- for (const fileName of paths) {
78
- const file = join(typeScriptPath, fileName);
79
- if (!existsSync(file)) continue;
80
- const content = patchGetTransformers(deepkitDistPath, readFileSync(file, 'utf8'));
81
- if (!content) continue;
82
- writeFileSync(file, content);
83
- console.log('Deepkit Type: Injected TypeScript transformer at', file);
137
+ `)
84
138
  }
139
+
140
+ console.log(`
141
+
142
+ =========================================================
143
+
144
+ `);
package/package.json CHANGED
@@ -1,21 +1,19 @@
1
1
  {
2
2
  "name": "@runtyped/type-compiler",
3
- "version": "1.0.20-alpha.3",
3
+ "version": "1.0.20-alpha.4",
4
4
  "description": "@runtyped/type compiler/Typescript transformer",
5
- "type": "commonjs",
6
- "main": "./dist/cjs/index.js",
7
- "module": "./dist/esm/index.js",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
8
7
  "bin": {
9
- "runtyped-compiler-debug": "deepkit-compiler-debug.js",
10
- "runtyped-type-install": "deepkit-type-install.js"
8
+ "runtyped-compiler-debug": "runtyped-compiler-debug.js",
9
+ "runtyped-type-install": "runtyped-type-install.js"
11
10
  },
12
11
  "sideEffects": false,
13
12
  "publishConfig": {
14
13
  "access": "public"
15
14
  },
16
15
  "scripts": {
17
- "build": "echo '{\"type\": \"module\"}' > ./dist/esm/package.json",
18
- "install": "rm -rf node_modules/typescript && node ./deepkit-type-install.js || exit 0"
16
+ "install": "rm -rf node_modules/typescript && node ./runtyped-type-install.js || exit 0"
19
17
  },
20
18
  "repository": {
21
19
  "type": "git",
@@ -30,11 +28,11 @@
30
28
  "typescript": "*"
31
29
  },
32
30
  "devDependencies": {
33
- "@runtyped/expect": "1.0.20-alpha.3",
31
+ "@runtyped/expect": "1.0.20-alpha.4",
34
32
  "@types/micromatch": "^4.0.10"
35
33
  },
36
34
  "dependencies": {
37
- "@runtyped/type-spec": "1.0.20-alpha.3",
35
+ "@runtyped/type-spec": "1.0.20-alpha.4",
38
36
  "@marcj/ts-clone-node": "^2.2.0",
39
37
  "@rollup/pluginutils": "^5.3.0",
40
38
  "@typescript/vfs": "1.6.4",
@@ -42,5 +40,6 @@
42
40
  "lz-string": "^1.5.0",
43
41
  "micromatch": "^4.0.8",
44
42
  "strip-json-comments": "^5.0.3"
45
- }
43
+ },
44
+ "keywords": ["validation", "reflection", "runtime", "types", "runtyped", "compiler", "transform", "typescript"]
46
45
  }
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  try {
4
- require('./dist/cjs/compiler-debug.js');
4
+ require('./dist/compiler-debug.js');
5
5
  } catch (error) {}
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+
3
+ try {
4
+ require('./dist/install-transformer.js');
5
+ } catch (error) {}
package/src/compiler.ts CHANGED
@@ -1417,7 +1417,8 @@ export class ReflectionTransformer implements CustomTransformer {
1417
1417
  for (const member of narrowed.members) {
1418
1418
  const name = getNameAsString(member.name);
1419
1419
  if (name) {
1420
- const has = members.some(v => getNameAsString(v.name) === name);
1420
+ const isStatic = hasModifier(member, SyntaxKind.StaticKeyword);
1421
+ const has = members.some(v => getNameAsString(v.name) === name && hasModifier(v, SyntaxKind.StaticKeyword) === isStatic);
1421
1422
  if (has) continue;
1422
1423
  }
1423
1424
  members.push(member);
@@ -2989,7 +2990,7 @@ export class DeclarationTransformer extends ReflectionTransformer {
2989
2990
  let loaded = false;
2990
2991
  const cache = new Cache;
2991
2992
 
2992
- export const transformer: CustomTransformerFactory = function runtypedTransformer(context) {
2993
+ export const transformer: CustomTransformerFactory = function runtypedTypeTransformer(context) {
2993
2994
  if (!loaded) {
2994
2995
  debug('@runtyped/type transformer loaded\n');
2995
2996
  loaded = true;
package/tsconfig.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "extends": "../../tsconfig.base.json",
3
3
  "compilerOptions": {
4
- "outDir": "./dist/cjs",
4
+ "outDir": "./dist",
5
5
  "types": [
6
6
  "lz-string",
7
7
  "micromatch",
8
8
  "node"
9
9
  ],
10
- "tsBuildInfoFile": ".cjs.tsbuildinfo"
10
+ "tsBuildInfoFile": ".tsbuildinfo"
11
11
  },
12
12
  "include": [
13
13
  "src",
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- try {
4
- require('./dist/cjs/install-transformer.js');
5
- } catch (error) {}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const plugin_js_1 = require("./src/plugin.js");
4
- const fs_1 = require("fs");
5
- function parseArguments(args) {
6
- const result = {
7
- file: '',
8
- };
9
- for (let i = 0; i < args.length; i++) {
10
- const arg = args[i];
11
- if (arg === '--config') {
12
- result.config = args[i + 1];
13
- i++;
14
- }
15
- else {
16
- result.file = arg;
17
- }
18
- }
19
- return result;
20
- }
21
- const args = parseArguments(process.argv.slice(2));
22
- const transformer = (0, plugin_js_1.deepkitType)({
23
- tsConfig: args.config,
24
- });
25
- const code = (0, fs_1.readFileSync)(args.file, 'utf8');
26
- const transformed = transformer(code, args.file);
27
- console.log(transformed?.code);
28
- //# sourceMappingURL=compiler-debug.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compiler-debug.js","sourceRoot":"","sources":["../../compiler-debug.ts"],"names":[],"mappings":";;AAAA,+CAA8C;AAC9C,2BAAkC;AAOlC,SAAS,cAAc,CAAC,IAAc;IAClC,MAAM,MAAM,GAAc;QACtB,IAAI,EAAE,EAAE;KACX,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,CAAC,EAAE,CAAC;QACR,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;QACtB,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAInD,MAAM,WAAW,GAAG,IAAA,uBAAW,EAAC;IAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM;CACxB,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC7C,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAEjD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC"}
package/dist/cjs/index.js DELETED
@@ -1,36 +0,0 @@
1
- "use strict";
2
- /*
3
- * Runtyped Framework
4
- * Copyright (C) 2021 Deepkit UG, Marc J. Schmidt
5
- *
6
- * This program is free software: you can redistribute it and/or modify
7
- * it under the terms of the MIT License.
8
- *
9
- * You should have received a copy of the MIT License along with this program.
10
- */
11
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- var desc = Object.getOwnPropertyDescriptor(m, k);
14
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
15
- desc = { enumerable: true, get: function() { return m[k]; } };
16
- }
17
- Object.defineProperty(o, k2, desc);
18
- }) : (function(o, m, k, k2) {
19
- if (k2 === undefined) k2 = k;
20
- o[k2] = m[k];
21
- }));
22
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
23
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.default = myTransformerPlugin;
27
- const compiler_js_1 = require("./src/compiler.js");
28
- __exportStar(require("./src/compiler.js"), exports);
29
- __exportStar(require("./src/loader.js"), exports);
30
- function myTransformerPlugin(program, opts) {
31
- return {
32
- before: compiler_js_1.transformer,
33
- afterDeclarations: compiler_js_1.declarationTransformer,
34
- };
35
- }
36
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;AAQH,sCAKC;AAXD,mDAAwE;AAGxE,oDAAkC;AAClC,kDAAgC;AAEhC,SAAwB,mBAAmB,CAAC,OAAgB,EAAE,IAAQ;IAClE,OAAO;QACH,MAAM,EAAE,yBAAW;QACnB,iBAAiB,EAAE,oCAAsB;KAC5C,CAAC;AACN,CAAC"}
@@ -1,77 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- /**
4
- * This script installs the deepkit/type transformer (that extracts automatically types and adds the correct @t decorator) to the typescript node_modules.
5
- *
6
- * The critical section that needs adjustment is in the `function getScriptTransformers` in `node_modules/typescript/lib/tsc.js`.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- const path_1 = require("path");
10
- const fs_1 = require("fs");
11
- let to = process.argv[2] || process.cwd();
12
- function getPatchId(id) {
13
- return 'deepkit_type_patch_' + id;
14
- }
15
- function getCode(deepkitDistPath, varName, id) {
16
- return `
17
- //${getPatchId(id)}
18
- try {
19
- var typeTransformer;
20
- try {
21
- typeTransformer = require('@runtyped/type-compiler');
22
- } catch (error) {
23
- typeTransformer = require(${JSON.stringify(deepkitDistPath)});
24
- }
25
- if (typeTransformer) {
26
- if (!customTransformers) ${varName} = {};
27
- if (!${varName}.before) ${varName}.before = [];
28
- let alreadyPatched = false;
29
- for (let fn of ${varName}.before) {
30
- if (fn && fn.name === 'deepkitTransformer') alreadyPatched = true;
31
- }
32
- if (!alreadyPatched) {
33
- if (!${varName}.before.includes(typeTransformer.transformer)) ${varName}.before.push(typeTransformer.transformer);
34
-
35
- if (!${varName}.afterDeclarations) ${varName}.afterDeclarations = [];
36
- if (!${varName}.afterDeclarations.includes(typeTransformer.declarationTransformer)) {
37
- ${varName}.afterDeclarations.push(typeTransformer.declarationTransformer);
38
- }
39
- }
40
- }
41
- } catch (e) {
42
- }
43
- //${getPatchId(id)}-end
44
- `;
45
- }
46
- function isPatched(code, id) {
47
- return code.includes(getPatchId(id));
48
- }
49
- function patchGetTransformers(deepkitDistPath, code) {
50
- const id = 'patchGetTransformers';
51
- if (isPatched(code, id))
52
- return '';
53
- const find = /function getTransformers\([^)]+\)\s*{/;
54
- if (!code.match(find))
55
- return '';
56
- code = code.replace(find, function (a) {
57
- return a + '\n ' + getCode(deepkitDistPath, 'customTransformers', id);
58
- });
59
- return code;
60
- }
61
- if (to + '/dist/cjs' === __dirname) {
62
- to = (0, path_1.join)(to, '..'); //we exclude type-compiler/node_modules
63
- }
64
- const typeScriptPath = (0, path_1.dirname)(require.resolve('typescript', { paths: [to] }));
65
- const deepkitDistPath = (0, path_1.relative)(typeScriptPath, __dirname);
66
- const paths = ['tsc.js', '_tsc.js', 'typescript.js'];
67
- for (const fileName of paths) {
68
- const file = (0, path_1.join)(typeScriptPath, fileName);
69
- if (!(0, fs_1.existsSync)(file))
70
- continue;
71
- const content = patchGetTransformers(deepkitDistPath, (0, fs_1.readFileSync)(file, 'utf8'));
72
- if (!content)
73
- continue;
74
- (0, fs_1.writeFileSync)(file, content);
75
- console.log('Deepkit Type: Injected TypeScript transformer at', file);
76
- }
77
- //# sourceMappingURL=install-transformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"install-transformer.js","sourceRoot":"","sources":["../../install-transformer.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;AAEH,+BAA+C;AAC/C,2BAA6D;AAE7D,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AAE1C,SAAS,UAAU,CAAC,EAAU;IAC1B,OAAO,qBAAqB,GAAG,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,OAAO,CAAC,eAAuB,EAAE,OAAe,EAAE,EAAU;IACjE,OAAO;YACC,UAAU,CAAC,EAAE,CAAC;;;;;;4CAMkB,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;;;2CAGhC,OAAO;uBAC3B,OAAO,YAAY,OAAO;;iCAEhB,OAAO;;;;2BAIb,OAAO,kDAAkD,OAAO;;2BAEhE,OAAO,uBAAuB,OAAO;2BACrC,OAAO;0BACR,OAAO;;;;;;YAMrB,UAAU,CAAC,EAAE,CAAC;KACrB,CAAC;AACN,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,EAAU;IACvC,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,oBAAoB,CAAC,eAAuB,EAAE,IAAY;IAC/D,MAAM,EAAE,GAAG,sBAAsB,CAAC;IAClC,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IAEnC,MAAM,IAAI,GAAG,uCAAuC,CAAC;IACrD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC;QACjC,OAAO,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,eAAe,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,IAAI,EAAE,GAAG,WAAW,KAAK,SAAS,EAAE,CAAC;IACjC,EAAE,GAAG,IAAA,WAAI,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,uCAAuC;AAChE,CAAC;AAED,MAAM,cAAc,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,MAAM,eAAe,GAAG,IAAA,eAAQ,EAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AAE5D,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAErD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC;QAAE,SAAS;IAChC,MAAM,OAAO,GAAG,oBAAoB,CAAC,eAAe,EAAE,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO;QAAE,SAAS;IACvB,IAAA,kBAAa,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE,IAAI,CAAC,CAAC;AAC1E,CAAC"}