@spinajs/reflection 2.0.52 → 2.0.54
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.
- package/lib/index.d.ts +8 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +38 -3
- package/lib/index.js.map +1 -1
- package/package.json +5 -5
package/lib/index.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
1
2
|
import { Exception } from '../../exceptions/lib/index.js';
|
|
2
3
|
export * from 'typescript-mix';
|
|
4
|
+
export declare function build(override?: {
|
|
5
|
+
compilerOptions?: ts.CompilerOptions;
|
|
6
|
+
include?: string[];
|
|
7
|
+
exclude?: string[];
|
|
8
|
+
files?: string[];
|
|
9
|
+
extends?: string;
|
|
10
|
+
}, currentDir?: string): void;
|
|
3
11
|
/**
|
|
4
12
|
* Class info structure
|
|
5
13
|
*/
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,EAAmB,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAG3E,cAAc,gBAAgB,CAAC;AAE/B,wBAAgB,KAAK,CACnB,QAAQ,GAAE;IACR,eAAe,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,EACN,UAAU,SAAgB,QAuC3B;AAED;;GAEG;AACH,qBAAa,SAAS,CAAC,CAAC;IACtB;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IACpB;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IACpB;;OAEG;IACI,IAAI,EAAE,GAAG,CAAC;IAEjB;;OAEG;IACI,QAAQ,CAAC,EAAE,CAAC,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;CAAG;AAErD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,QAAQ,CAAa;gBAEjB,QAAQ,EAAE,MAAM;IAS5B;;;;;OAKG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;IAsB3D,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,cAAc;CAUvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,uDAE9G"}
|
package/lib/index.js
CHANGED
|
@@ -1,12 +1,46 @@
|
|
|
1
1
|
import * as fs from 'fs';
|
|
2
2
|
import glob from 'glob';
|
|
3
3
|
import * as path from 'path';
|
|
4
|
-
import
|
|
4
|
+
import ts from 'typescript';
|
|
5
5
|
import { Configuration } from '@spinajs/configuration';
|
|
6
6
|
import { AsyncService, DI } from '@spinajs/di';
|
|
7
7
|
import { InvalidArgument, Exception } from '../../exceptions/lib/index.js';
|
|
8
8
|
import { Log } from '@spinajs/log';
|
|
9
9
|
export * from 'typescript-mix';
|
|
10
|
+
export function build(override = {}, currentDir = process.cwd()) {
|
|
11
|
+
const configFile = ts.findConfigFile(currentDir, (path) => {
|
|
12
|
+
return ts.sys.fileExists(path);
|
|
13
|
+
}, 'tsconfig.json');
|
|
14
|
+
if (!configFile)
|
|
15
|
+
throw Error('tsconfig.json not found');
|
|
16
|
+
const { config } = ts.readConfigFile(configFile, (path) => {
|
|
17
|
+
return ts.sys.readFile(path);
|
|
18
|
+
});
|
|
19
|
+
config.compilerOptions = Object.assign({}, config.compilerOptions, override.compilerOptions);
|
|
20
|
+
if (override.include)
|
|
21
|
+
config.include = override.include;
|
|
22
|
+
if (override.exclude)
|
|
23
|
+
config.exclude = override.exclude;
|
|
24
|
+
if (override.files)
|
|
25
|
+
config.files = override.files;
|
|
26
|
+
if (override.extends)
|
|
27
|
+
config.files = override.extends;
|
|
28
|
+
const { options, fileNames, errors } = ts.parseJsonConfigFileContent(config, ts.sys, currentDir);
|
|
29
|
+
const program = ts.createProgram({ options, rootNames: fileNames, configFileParsingDiagnostics: errors });
|
|
30
|
+
const { diagnostics, emitSkipped } = program.emit();
|
|
31
|
+
const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(diagnostics, errors);
|
|
32
|
+
if (allDiagnostics.length) {
|
|
33
|
+
const formatHost = {
|
|
34
|
+
getCanonicalFileName: (path) => path,
|
|
35
|
+
getCurrentDirectory: ts.sys.getCurrentDirectory,
|
|
36
|
+
getNewLine: () => ts.sys.newLine,
|
|
37
|
+
};
|
|
38
|
+
const message = ts.formatDiagnostics(allDiagnostics, formatHost);
|
|
39
|
+
console.warn(message);
|
|
40
|
+
}
|
|
41
|
+
if (emitSkipped)
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
10
44
|
/**
|
|
11
45
|
* Class info structure
|
|
12
46
|
*/
|
|
@@ -24,7 +58,7 @@ export class TypescriptCompiler {
|
|
|
24
58
|
constructor(filename) {
|
|
25
59
|
this.tsFile = filename;
|
|
26
60
|
this.compiled = ts.createProgram([this.tsFile], {
|
|
27
|
-
module: ts.ModuleKind.
|
|
61
|
+
module: ts.ModuleKind.NodeNext,
|
|
28
62
|
target: ts.ScriptTarget.Latest,
|
|
29
63
|
});
|
|
30
64
|
}
|
|
@@ -108,7 +142,8 @@ function _listOrResolveFromFiles(filter, configPath, typeMatcher) {
|
|
|
108
142
|
if (!Array.isArray(directories)) {
|
|
109
143
|
directories = [directories];
|
|
110
144
|
}
|
|
111
|
-
|
|
145
|
+
// eslint-disable -next-line @typescript-eslint/await-thenable
|
|
146
|
+
const fPromises = directories
|
|
112
147
|
.filter((d) => {
|
|
113
148
|
/* eslint-disable */
|
|
114
149
|
const exists = fs.existsSync(path.normalize(d));
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spinajs/reflection",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.54",
|
|
4
4
|
"description": "SpinaJS reflection helpers",
|
|
5
5
|
"exports": "./lib/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -32,10 +32,10 @@
|
|
|
32
32
|
},
|
|
33
33
|
"homepage": "https://github.com/spinajs/reflection#readme",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@spinajs/configuration": "^2.0.
|
|
36
|
-
"@spinajs/di": "^2.0.
|
|
37
|
-
"@spinajs/exceptions": "^2.0.
|
|
38
|
-
"@spinajs/log": "^2.0.
|
|
35
|
+
"@spinajs/configuration": "^2.0.54",
|
|
36
|
+
"@spinajs/di": "^2.0.54",
|
|
37
|
+
"@spinajs/exceptions": "^2.0.54",
|
|
38
|
+
"@spinajs/log": "^2.0.54",
|
|
39
39
|
"glob": "^8.1.0",
|
|
40
40
|
"lodash": "^4.17.21",
|
|
41
41
|
"typescript": "^4.9.4",
|