@bluelovers/jest-config 1.1.6 → 1.1.9
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/CHANGELOG.md +50 -0
- package/dist/index.cjs.development.cjs +102 -33
- package/dist/index.cjs.development.cjs.map +1 -1
- package/dist/index.cjs.production.min.cjs +63 -47
- package/dist/index.cjs.production.min.cjs.map +1 -1
- package/dist/index.d.ts +71 -7
- package/dist/index.esm.mjs +90 -68
- package/dist/index.esm.mjs.map +1 -1
- package/dist/index.umd.development.cjs +105 -37
- package/dist/index.umd.development.cjs.map +1 -1
- package/dist/index.umd.production.min.cjs +61 -47
- package/dist/index.umd.production.min.cjs.map +1 -1
- package/package.json +5 -5
- package/src/defaults.ts +30 -2
- package/src/helper.ts +21 -8
- package/src/index.ts +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,56 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.1.9](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.8...@bluelovers/jest-config@1.1.9) (2023-10-21)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### 🛠 Build System
|
|
11
|
+
|
|
12
|
+
* **dist:** update build ([9c26c30](https://github.com/bluelovers/ws-jest/commit/9c26c30c8413bb1be49bee2907c47cb5cacfa0a7))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### 🔖 Miscellaneous
|
|
16
|
+
|
|
17
|
+
* . ([b9a273d](https://github.com/bluelovers/ws-jest/commit/b9a273d30674331f96e13e364c34a01ca7a6cae2))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## [1.1.8](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.6...@bluelovers/jest-config@1.1.8) (2023-10-18)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### 📚 Documentation
|
|
26
|
+
|
|
27
|
+
* update tags ([a82fc73](https://github.com/bluelovers/ws-jest/commit/a82fc7310b4009c25e11c5c4e780ca5a7047f323))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### 🛠 Build System
|
|
31
|
+
|
|
32
|
+
* **dist:** update build ([d85916c](https://github.com/bluelovers/ws-jest/commit/d85916c8727cab08382a49c2d52091edbdc8f9c6))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### 🔖 Miscellaneous
|
|
36
|
+
|
|
37
|
+
* . ([4b9aba9](https://github.com/bluelovers/ws-jest/commit/4b9aba99a184584cc035986423891fe7b61ad5c7))
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
## [1.1.7](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.6...@bluelovers/jest-config@1.1.7) (2023-10-17)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
### 📚 Documentation
|
|
46
|
+
|
|
47
|
+
* update tags ([a82fc73](https://github.com/bluelovers/ws-jest/commit/a82fc7310b4009c25e11c5c4e780ca5a7047f323))
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### 🛠 Build System
|
|
51
|
+
|
|
52
|
+
* **dist:** update build ([d85916c](https://github.com/bluelovers/ws-jest/commit/d85916c8727cab08382a49c2d52091edbdc8f9c6))
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
6
56
|
## [1.1.6](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.5...@bluelovers/jest-config@1.1.6) (2022-11-15)
|
|
7
57
|
|
|
8
58
|
|
|
@@ -4,36 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var requireResolve = require('@yarn-tool/require-resolve');
|
|
6
6
|
var debugColor2 = require('debug-color2');
|
|
7
|
+
var arrayHyperUnique = require('array-hyper-unique');
|
|
7
8
|
var table = require('@yarn-tool/table');
|
|
8
9
|
var util = require('util');
|
|
9
10
|
var jestCacheDirectory = require('jest-cache-directory');
|
|
10
11
|
|
|
11
|
-
function _requireResolve(name) {
|
|
12
|
-
const paths = [requireResolve.requireResolveExtra('@bluelovers/tsdx').result, requireResolve.requireResolveExtra('tsdx').result].filter(Boolean);
|
|
13
|
-
const result = requireResolve.requireResolveCore(name, {
|
|
14
|
-
includeGlobal: true,
|
|
15
|
-
includeCurrentDirectory: true,
|
|
16
|
-
paths
|
|
17
|
-
});
|
|
18
|
-
debugColor2.console.debug('[require.resolve]', name, '=>', result);
|
|
19
|
-
return result;
|
|
20
|
-
}
|
|
21
|
-
function makeTestRegexConfig(testExt) {
|
|
22
|
-
testExt = [testExt].flat().join('|');
|
|
23
|
-
return {
|
|
24
|
-
testMatch: void 0,
|
|
25
|
-
testRegex: [`\\.(tests?|spec)\\.(${testExt})$`, `__tests__\/\.*\\.(tests?|spec)\\.(${testExt})$`]
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
function fixJestConfig(jestConfig) {
|
|
29
|
-
if (jestConfig.testMatch) {
|
|
30
|
-
jestConfig.testRegex = void 0;
|
|
31
|
-
} else if (jestConfig.testRegex) {
|
|
32
|
-
jestConfig.testMatch = void 0;
|
|
33
|
-
}
|
|
34
|
-
return jestConfig;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
12
|
function defaultTsJestTransformerOptions(runtime) {
|
|
38
13
|
var _runtime$jestConfig$g, _runtime$jestConfig$g2;
|
|
39
14
|
const old = (_runtime$jestConfig$g = (_runtime$jestConfig$g2 = runtime.jestConfig.globals) === null || _runtime$jestConfig$g2 === void 0 ? void 0 : _runtime$jestConfig$g2['ts-jest']) !== null && _runtime$jestConfig$g !== void 0 ? _runtime$jestConfig$g : {};
|
|
@@ -54,15 +29,40 @@ function defaultTsJestTransformerOptions(runtime) {
|
|
|
54
29
|
}
|
|
55
30
|
|
|
56
31
|
function defaultTestFileExtensions() {
|
|
57
|
-
const value = ['ts', 'tsx', 'mts', 'cts'
|
|
32
|
+
const value = ['ts', 'tsx', 'mts', 'cts'
|
|
33
|
+
// 'js',
|
|
34
|
+
// 'jsx',
|
|
35
|
+
// 'mjs',
|
|
36
|
+
// 'cjs',
|
|
37
|
+
];
|
|
38
|
+
|
|
58
39
|
return value;
|
|
59
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* @see https://jestjs.io/docs/configuration#options
|
|
43
|
+
*/
|
|
60
44
|
function defaultModuleFileExtensions() {
|
|
61
45
|
const value = ['js', 'mjs', 'cjs', 'jsx', 'ts', 'mts', 'cts', 'tsx', 'json', 'node'];
|
|
62
46
|
return value;
|
|
63
47
|
}
|
|
48
|
+
function defaultCoverageFileExtensions() {
|
|
49
|
+
const value = ['js', 'mjs', 'cjs', 'jsx', 'ts', 'mts', 'cts', 'tsx'
|
|
50
|
+
//'json',
|
|
51
|
+
//'node',
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
return value;
|
|
55
|
+
}
|
|
56
|
+
function defaultTransformFileExtensions() {
|
|
57
|
+
const value = ['ts', 'tsx', 'mts', 'cts'];
|
|
58
|
+
return value;
|
|
59
|
+
}
|
|
64
60
|
function defaultCoveragePathIgnorePatterns() {
|
|
65
|
-
const value = ['/node_modules/', '/__snapshots__/', '/__tests__/', '/__test__/',
|
|
61
|
+
const value = ['/node_modules/', '/__snapshots__/', '/__tests__/', '/__test__/',
|
|
62
|
+
//'**/node_modules/',
|
|
63
|
+
//'**/__snapshots__/',
|
|
64
|
+
//'**/__tests__/',
|
|
65
|
+
'/dist/', '/test/', '/fixture/', '/__file_snapshots__/', '/__fixtures__/'];
|
|
66
66
|
return value;
|
|
67
67
|
}
|
|
68
68
|
function defaultTestPathIgnorePatterns() {
|
|
@@ -87,22 +87,59 @@ function defaultTransform(runtime) {
|
|
|
87
87
|
} = requireResolve.requireResolveExtra('jest-chain-transform', opts);
|
|
88
88
|
if (chain !== null && chain !== void 0 && chain.length) {
|
|
89
89
|
ts_transform = [chain, {
|
|
90
|
-
transformers: [tsd,
|
|
90
|
+
transformers: [tsd,
|
|
91
|
+
// @ts-ignore
|
|
92
|
+
ts_transform]
|
|
91
93
|
}];
|
|
92
94
|
}
|
|
93
95
|
}
|
|
94
96
|
const value = {
|
|
95
|
-
'
|
|
97
|
+
[`.(${_handleFileExtensions(defaultTransformFileExtensions(), '|')})$`]: ts_transform
|
|
96
98
|
};
|
|
97
99
|
return value;
|
|
98
100
|
}
|
|
99
101
|
|
|
102
|
+
function _requireResolve(name) {
|
|
103
|
+
const paths = [requireResolve.requireResolveExtra('@bluelovers/tsdx').result, requireResolve.requireResolveExtra('tsdx').result].filter(Boolean);
|
|
104
|
+
const result = requireResolve.requireResolveCore(name, {
|
|
105
|
+
includeGlobal: true,
|
|
106
|
+
includeCurrentDirectory: true,
|
|
107
|
+
paths
|
|
108
|
+
});
|
|
109
|
+
debugColor2.console.debug('[require.resolve]', name, '=>', result);
|
|
110
|
+
return result;
|
|
111
|
+
}
|
|
112
|
+
function makeTestRegexConfig(testExt) {
|
|
113
|
+
var _testExt2;
|
|
114
|
+
(_testExt2 = testExt) !== null && _testExt2 !== void 0 ? _testExt2 : testExt = defaultTestFileExtensions();
|
|
115
|
+
const _testExt = _handleFileExtensions(testExt, '|');
|
|
116
|
+
return {
|
|
117
|
+
testMatch: null,
|
|
118
|
+
testRegex: [`\\.(tests?|spec)\\.(${_testExt})$`, `__tests__\/\.*\\.(tests?|spec)\\.(${_testExt})$`]
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function _handleFileExtensionsCore(testExt) {
|
|
122
|
+
return arrayHyperUnique.array_unique([testExt].flat());
|
|
123
|
+
}
|
|
124
|
+
function _handleFileExtensions(testExt, sep) {
|
|
125
|
+
return _handleFileExtensionsCore(testExt).join(sep);
|
|
126
|
+
}
|
|
127
|
+
function fixJestConfig(jestConfig) {
|
|
128
|
+
if (jestConfig.testMatch) {
|
|
129
|
+
jestConfig.testRegex = null;
|
|
130
|
+
} else if (jestConfig.testRegex) {
|
|
131
|
+
jestConfig.testMatch = null;
|
|
132
|
+
}
|
|
133
|
+
return jestConfig;
|
|
134
|
+
}
|
|
135
|
+
|
|
100
136
|
var name = "@bluelovers/jest-config";
|
|
101
|
-
var version = "1.1.
|
|
137
|
+
var version = "1.1.9";
|
|
102
138
|
|
|
103
139
|
function _newTableBorderless(options) {
|
|
104
140
|
let table$1 = new table.Table({
|
|
105
141
|
colAligns: ['right', 'left'],
|
|
142
|
+
//colAligns: ['left', 'center', 'center', 'center'],
|
|
106
143
|
chars: {
|
|
107
144
|
top: '',
|
|
108
145
|
'top-mid': '',
|
|
@@ -129,6 +166,7 @@ function printJestConfigInfo(jestConfig, options) {
|
|
|
129
166
|
var _options, _jestConfig, _options$cwd, _options$file, _jestConfig$cacheDire, _jestConfig$rootDir, _jestConfig$roots, _jestConfig$preset;
|
|
130
167
|
const table = _newTableBorderless();
|
|
131
168
|
(_options = options) !== null && _options !== void 0 ? _options : options = {};
|
|
169
|
+
// @ts-ignore
|
|
132
170
|
(_jestConfig = jestConfig) !== null && _jestConfig !== void 0 ? _jestConfig : jestConfig = {};
|
|
133
171
|
table.push([`${name}:`, version]);
|
|
134
172
|
table.push([`process.versions.node:`, process.versions.node]);
|
|
@@ -150,21 +188,48 @@ function printJestConfigInfo(jestConfig, options) {
|
|
|
150
188
|
const cacheDirectory = /*#__PURE__*/jestCacheDirectory.getJestCacheDirectory();
|
|
151
189
|
function mixinJestConfig(jestConfig, autoPrint, options) {
|
|
152
190
|
var _jestConfig, _newJestConfig$transf;
|
|
191
|
+
// @ts-ignore
|
|
153
192
|
(_jestConfig = jestConfig) !== null && _jestConfig !== void 0 ? _jestConfig : jestConfig = {};
|
|
154
193
|
const newJestConfig = fixJestConfig({
|
|
155
|
-
globals: {
|
|
194
|
+
globals: {
|
|
195
|
+
// 'ts-jest': {
|
|
196
|
+
// //tsconfig: 'tsconfig.spec.json',
|
|
197
|
+
// },
|
|
198
|
+
},
|
|
156
199
|
cacheDirectory,
|
|
157
200
|
maxWorkers: 1,
|
|
158
201
|
clearMocks: true,
|
|
159
202
|
passWithNoTests: true,
|
|
160
203
|
moduleFileExtensions: defaultModuleFileExtensions(),
|
|
204
|
+
//testEnvironment: 'node',
|
|
205
|
+
//testMatch: ['**/*.test.ts', '**/*.spec.ts'],
|
|
161
206
|
...makeTestRegexConfig(defaultTestFileExtensions()),
|
|
162
207
|
testPathIgnorePatterns: defaultTestPathIgnorePatterns(),
|
|
163
|
-
|
|
208
|
+
//testRunner: 'jest-circus/runner',
|
|
209
|
+
setupFilesAfterEnv: [
|
|
210
|
+
//"jest-chain",
|
|
211
|
+
//"jest-extended/all",
|
|
212
|
+
//"jest-extended-extra",
|
|
213
|
+
//"jest-num-close-with",
|
|
214
|
+
/**
|
|
215
|
+
* https://medium.com/doctolib/how-to-run-the-same-jest-test-suite-across-several-platforms-jest-os-detection-plugin-included-f8113832482b
|
|
216
|
+
* https://github.com/doctolib/jest-os-detection
|
|
217
|
+
*/
|
|
218
|
+
//'jest-os-detection',
|
|
219
|
+
],
|
|
220
|
+
//transform: defaultTransform(),
|
|
164
221
|
verbose: true,
|
|
222
|
+
/**
|
|
223
|
+
* if didn't set `coverageProvider` to `v8`
|
|
224
|
+
* with `collectCoverage` `true`, nodejs debug point maybe will fail
|
|
225
|
+
*/
|
|
165
226
|
coverageProvider: 'v8',
|
|
166
227
|
collectCoverage: false,
|
|
167
228
|
coveragePathIgnorePatterns: defaultCoveragePathIgnorePatterns(),
|
|
229
|
+
/**
|
|
230
|
+
* https://github.com/facebook/jest/issues/9771#issuecomment-872764344
|
|
231
|
+
*/
|
|
232
|
+
//resolver: 'jest-node-exports-resolver',
|
|
168
233
|
...jestConfig
|
|
169
234
|
});
|
|
170
235
|
(_newJestConfig$transf = newJestConfig.transform) !== null && _newJestConfig$transf !== void 0 ? _newJestConfig$transf : newJestConfig.transform = defaultTransform({
|
|
@@ -177,15 +242,19 @@ function mixinJestConfig(jestConfig, autoPrint, options) {
|
|
|
177
242
|
return newJestConfig;
|
|
178
243
|
}
|
|
179
244
|
|
|
245
|
+
exports._handleFileExtensions = _handleFileExtensions;
|
|
246
|
+
exports._handleFileExtensionsCore = _handleFileExtensionsCore;
|
|
180
247
|
exports._newTableBorderless = _newTableBorderless;
|
|
181
248
|
exports._requireResolve = _requireResolve;
|
|
182
249
|
exports.cacheDirectory = cacheDirectory;
|
|
183
250
|
exports.default = mixinJestConfig;
|
|
251
|
+
exports.defaultCoverageFileExtensions = defaultCoverageFileExtensions;
|
|
184
252
|
exports.defaultCoveragePathIgnorePatterns = defaultCoveragePathIgnorePatterns;
|
|
185
253
|
exports.defaultModuleFileExtensions = defaultModuleFileExtensions;
|
|
186
254
|
exports.defaultTestFileExtensions = defaultTestFileExtensions;
|
|
187
255
|
exports.defaultTestPathIgnorePatterns = defaultTestPathIgnorePatterns;
|
|
188
256
|
exports.defaultTransform = defaultTransform;
|
|
257
|
+
exports.defaultTransformFileExtensions = defaultTransformFileExtensions;
|
|
189
258
|
exports.fixJestConfig = fixJestConfig;
|
|
190
259
|
exports.makeTestRegexConfig = makeTestRegexConfig;
|
|
191
260
|
exports.mixinJestConfig = mixinJestConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.development.cjs","sources":["../src/helper.ts","../src/plugin/ts-jest.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { IJestConfig } from './types';\n\nexport function _requireResolve(name: string)\n{\n\tconst paths = [\n\t\trequireResolveExtra('@bluelovers/tsdx').result,\n\t\trequireResolveExtra('tsdx').result,\n\t].filter(Boolean);\n\n\tconst result = requireResolveCore(name, {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t});\n\n\tconsole.debug('[require.resolve]', name, '=>', result)\n\n\treturn result\n}\n\nexport function makeTestRegexConfig(testExt: string | ITSArrayListMaybeReadonly<string>): Pick<InitialOptionsTsJest, 'testMatch' | 'testRegex'>\n{\n\ttestExt = [testExt].flat().join('|');\n\n\treturn {\n\t\ttestMatch: void 0 as undefined,\n\t\ttestRegex: [\n\t\t\t`\\\\.(tests?|spec)\\\\.(${testExt})$`,\n\t\t\t`__tests__\\/\\.*\\\\.(tests?|spec)\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends IJestConfig>(jestConfig: T): T\n{\n\tif (jestConfig.testMatch)\n\t{\n\t\tjestConfig.testRegex = void 0;\n\t}\n\telse if (jestConfig.testRegex)\n\t{\n\t\tjestConfig.testMatch = void 0;\n\t}\n\n\treturn jestConfig\n}\n","import { TsJestTransformerOptions } from 'ts-jest';\nimport { IRuntime } from '../types';\n\nexport function defaultTsJestTransformerOptions(runtime: IRuntime)\n{\n\tconst old: TsJestTransformerOptions = runtime.jestConfig.globals?.['ts-jest'] ?? {};\n\n\tconst tsconfig = typeof old.tsconfig === 'object' ? old.tsconfig : {};\n\n\treturn {\n\t\t...old,\n\t\ttsconfig: {\n\t\t\tnoEmit: true,\n\t\t\temitDeclarationOnly: false,\n\t\t\tnoUnusedParameters: false,\n\t\t\tallowUnusedLabels: true,\n\t\t\tnoUnusedLocals: false,\n\t\t\tnoPropertyAccessFromIndexSignature: false,\n\t\t\tnoImplicitAny: false,\n\t\t\t...tsconfig,\n\t\t},\n\t} satisfies TsJestTransformerOptions\n}\n","import { IOptions, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { ITSToWriteableArray } from 'ts-type/lib/helper/array/readonly';\nimport { ITSWriteable } from 'ts-type/lib/helper/readonly';\nimport { _requireResolve } from './helper';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { defaultTsJestTransformerOptions } from './plugin/ts-jest';\nimport { IRuntime } from './types';\n\nexport function defaultTestFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n//\t'js',\n//\t'jsx',\n//\t'mjs',\n//\t'cjs',\n\t] as const;\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\n/**\n * @see https://jestjs.io/docs/configuration#options\n */\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t'json',\n\t\t'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoveragePathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__snapshots__/',\n\t\t'/__tests__/',\n\t\t'/__test__/',\n\t\t//'**/node_modules/',\n\t\t//'**/__snapshots__/',\n\t\t//'**/__tests__/',\n\t\t'/dist/',\n\t\t'/test/',\n\t\t'/fixture/',\n\t\t'/__file_snapshots__/',\n\t\t'/__fixtures__/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\n\t\t'/__file_snapshots__/',\n\t\t'/fixtures/',\n\t\t'/__tests__/helpers/',\n\t\t'/__tests__/utils/',\n\t\t'__mocks__',\n\t\t'/dist/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransform(runtime: IRuntime)\n{\n\tconst paths: string[] = [\n\t\trequireResolveExtra('@bluelovers/jest-config').result,\n\t].filter(Boolean);\n\n\tconst opts: IOptions = {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t};\n\n\tlet ts_transform: InitialOptionsTsJest[\"transform\"][string] = _requireResolve('ts-jest') as 'ts-jest';\n\n\tts_transform = [ts_transform, defaultTsJestTransformerOptions(runtime)];\n\n\tconst { result: tsd } = requireResolveExtra('jest-tsd-transform', opts);\n\n\tif (tsd?.length)\n\t{\n\t\tconst { result: chain } = requireResolveExtra('jest-chain-transform', opts);\n\n\t\tif (chain?.length)\n\t\t{\n\t\t\tts_transform = [\n\t\t\t\tchain as 'jest-chain-transform', {\n\t\t\t\t\ttransformers: [\n\t\t\t\t\t\ttsd as 'jest-tsd-transform',\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\tts_transform as 'ts-jest',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t] satisfies [\n\t\t\t\tstring,\n\t\t\t\tRecord<string, unknown>\n\t\t\t]\n\t\t}\n\t}\n\n\tconst value = {\n\t\t'.(ts|tsx|mts|cts)$': ts_transform,\n\t} as const\n\treturn value as ITSWriteable<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\nimport { IJestConfig } from './types';\n\nexport function _newTableBorderless(options?: TableConstructorOptions)\n{\n\tlet table = new Table({\n\t\tcolAligns: ['right', 'left'],\n\t\t//colAligns: ['left', 'center', 'center', 'center'],\n\t\tchars: {\n\t\t\ttop: '',\n\t\t\t'top-mid': '',\n\t\t\t'top-left': '',\n\t\t\t'top-right': '',\n\t\t\tbottom: '',\n\t\t\t'bottom-mid': '',\n\t\t\t'bottom-left': '',\n\t\t\t'bottom-right': '',\n\t\t\tleft: '',\n\t\t\t'left-mid': '',\n\t\t\tmid: '',\n\t\t\t'mid-mid': '',\n\t\t\tright: '',\n\t\t\t'right-mid': '',\n\t\t\tmiddle: '',\n\t\t},\n\t\t...options,\n\t});\n\n\ttable = applyStyleBorderless(table);\n\n\treturn table;\n}\n\nexport interface IOptionsPrintJestConfigInfo\n{\n\tcwd?: string;\n\tfile?: string;\n}\n\nexport function printJestConfigInfo(jestConfig: IJestConfig, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\n\ttable.push([`${jName}:`, jVersion]);\n\ttable.push([`process.versions.node:`, process.versions.node]);\n\ttable.push(['cwd:', options.cwd ?? process.cwd()]);\n\n\toptions.file?.length && table.push(['file:', options.file]);\n\n\tjestConfig.cacheDirectory?.length && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);\n\n\tjestConfig.rootDir?.length && table.push(['rootDir:', jestConfig.rootDir]);\n\tjestConfig.roots?.length && table.push(['roots:', inspect(jestConfig.roots)]);\n\n\tjestConfig.preset?.length && table.push(['preset:', jestConfig.preset]);\n\n\tjestConfig.transform && table.push(['transform:', inspect(jestConfig.transform, {\n\t\tdepth: 3\n\t})]);\n\n\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { _requireResolve, fixJestConfig, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns, defaultTransform,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\nimport { IJestConfig } from './types';\nimport { getJestCacheDirectory } from 'jest-cache-directory';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getJestCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean,\n\toptions?: IOptionsPrintJestConfigInfo): T\n{\n\t// @ts-ignore\n\tjestConfig ??= {};\n\tconst newJestConfig = fixJestConfig<T>({\n\t\tglobals: {\n//\t\t\t'ts-jest': {\n//\t\t\t\t//tsconfig: 'tsconfig.spec.json',\n//\t\t\t},\n\t\t},\n\t\tcacheDirectory,\n\t\tmaxWorkers: 1,\n\t\tclearMocks: true,\n\t\tpassWithNoTests: true,\n\t\tmoduleFileExtensions: defaultModuleFileExtensions(),\n\t\t//testEnvironment: 'node',\n\t\t//testMatch: ['**/*.test.ts', '**/*.spec.ts'],\n\t\t...makeTestRegexConfig(defaultTestFileExtensions()),\n\t\ttestPathIgnorePatterns: defaultTestPathIgnorePatterns(),\n\t\t//testRunner: 'jest-circus/runner',\n\t\tsetupFilesAfterEnv: [\n\t\t\t//\"jest-chain\",\n\t\t\t//\"jest-extended/all\",\n\t\t\t//\"jest-extended-extra\",\n\t\t\t//\"jest-num-close-with\",\n\t\t\t/**\n\t\t\t * https://medium.com/doctolib/how-to-run-the-same-jest-test-suite-across-several-platforms-jest-os-detection-plugin-included-f8113832482b\n\t\t\t * https://github.com/doctolib/jest-os-detection\n\t\t\t */\n\t\t\t//'jest-os-detection',\n\t\t],\n\t\t//transform: defaultTransform(),\n\t\tverbose: true,\n\t\t/**\n\t\t * if didn't set `coverageProvider` to `v8`\n\t\t * with `collectCoverage` `true`, nodejs debug point maybe will fail\n\t\t */\n\t\tcoverageProvider: 'v8',\n\t\tcollectCoverage: false,\n\t\tcoveragePathIgnorePatterns: defaultCoveragePathIgnorePatterns(),\n\t\t/**\n\t\t * https://github.com/facebook/jest/issues/9771#issuecomment-872764344\n\t\t */\n\t\t//resolver: 'jest-node-exports-resolver',\n\t\t...jestConfig,\n\t});\n\n\tnewJestConfig.transform ??= defaultTransform({\n\t\tjestConfig,\n\t\tautoPrint,\n\t\toptions,\n\t\tnewJestConfig,\n\t});\n\n\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","makeTestRegexConfig","testExt","flat","join","testMatch","testRegex","fixJestConfig","jestConfig","defaultTsJestTransformerOptions","runtime","old","globals","tsconfig","noEmit","emitDeclarationOnly","noUnusedParameters","allowUnusedLabels","noUnusedLocals","noPropertyAccessFromIndexSignature","noImplicitAny","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","defaultTransform","opts","ts_transform","tsd","length","chain","transformers","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","push","jName","jVersion","process","versions","node","cwd","file","cacheDirectory","rootDir","roots","inspect","preset","transform","depth","gray","log","repeat","toString","getJestCacheDirectory","mixinJestConfig","autoPrint","newJestConfig","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.development.cjs","sources":["../src/plugin/ts-jest.ts","../src/defaults.ts","../src/helper.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { TsJestTransformerOptions } from 'ts-jest';\nimport { IRuntime } from '../types';\n\nexport function defaultTsJestTransformerOptions(runtime: IRuntime)\n{\n\tconst old: TsJestTransformerOptions = runtime.jestConfig.globals?.['ts-jest'] ?? {};\n\n\tconst tsconfig = typeof old.tsconfig === 'object' ? old.tsconfig : {};\n\n\treturn {\n\t\t...old,\n\t\ttsconfig: {\n\t\t\tnoEmit: true,\n\t\t\temitDeclarationOnly: false,\n\t\t\tnoUnusedParameters: false,\n\t\t\tallowUnusedLabels: true,\n\t\t\tnoUnusedLocals: false,\n\t\t\tnoPropertyAccessFromIndexSignature: false,\n\t\t\tnoImplicitAny: false,\n\t\t\t...tsconfig,\n\t\t},\n\t} satisfies TsJestTransformerOptions\n}\n","import { IOptions, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { ITSToWriteableArray } from 'ts-type/lib/helper/array/readonly';\nimport { ITSWriteable } from 'ts-type/lib/helper/readonly';\nimport { _handleFileExtensions, _requireResolve } from './helper';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { defaultTsJestTransformerOptions } from './plugin/ts-jest';\nimport { IRuntime } from './types';\n\nexport function defaultTestFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n//\t'js',\n//\t'jsx',\n//\t'mjs',\n//\t'cjs',\n\t] as const;\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\n/**\n * @see https://jestjs.io/docs/configuration#options\n */\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t'json',\n\t\t'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoverageFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t//'json',\n\t\t//'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransformFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoveragePathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__snapshots__/',\n\t\t'/__tests__/',\n\t\t'/__test__/',\n\t\t//'**/node_modules/',\n\t\t//'**/__snapshots__/',\n\t\t//'**/__tests__/',\n\t\t'/dist/',\n\t\t'/test/',\n\t\t'/fixture/',\n\t\t'/__file_snapshots__/',\n\t\t'/__fixtures__/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\n\t\t'/__file_snapshots__/',\n\t\t'/fixtures/',\n\t\t'/__tests__/helpers/',\n\t\t'/__tests__/utils/',\n\t\t'__mocks__',\n\t\t'/dist/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransform(runtime: IRuntime)\n{\n\tconst paths: string[] = [\n\t\trequireResolveExtra('@bluelovers/jest-config').result,\n\t].filter(Boolean);\n\n\tconst opts: IOptions = {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t};\n\n\tlet ts_transform: InitialOptionsTsJest[\"transform\"][string] = _requireResolve('ts-jest') as 'ts-jest';\n\n\tts_transform = [ts_transform, defaultTsJestTransformerOptions(runtime)];\n\n\tconst { result: tsd } = requireResolveExtra('jest-tsd-transform', opts);\n\n\tif (tsd?.length)\n\t{\n\t\tconst { result: chain } = requireResolveExtra('jest-chain-transform', opts);\n\n\t\tif (chain?.length)\n\t\t{\n\t\t\tts_transform = [\n\t\t\t\tchain as 'jest-chain-transform', {\n\t\t\t\t\ttransformers: [\n\t\t\t\t\t\ttsd as 'jest-tsd-transform',\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\tts_transform as 'ts-jest',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t] satisfies [\n\t\t\t\tstring,\n\t\t\t\tRecord<string, unknown>\n\t\t\t]\n\t\t}\n\t}\n\n\tconst value = {\n\t\t[`.(${_handleFileExtensions(defaultTransformFileExtensions(), '|')})$`]: ts_transform,\n\t} as const\n\treturn value as ITSWriteable<typeof value>;\n}\n","import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSValueOrArrayMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { IJestConfig } from './types';\nimport { defaultTestFileExtensions } from './defaults';\nimport { array_unique } from 'array-hyper-unique';\n\nexport function _requireResolve(name: string)\n{\n\tconst paths = [\n\t\trequireResolveExtra('@bluelovers/tsdx').result,\n\t\trequireResolveExtra('tsdx').result,\n\t].filter(Boolean);\n\n\tconst result = requireResolveCore(name, {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t});\n\n\tconsole.debug('[require.resolve]', name, '=>', result)\n\n\treturn result\n}\n\nexport function makeTestRegexConfig<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>): Pick<InitialOptionsTsJest, 'testMatch' | 'testRegex'>\n{\n\ttestExt ??= defaultTestFileExtensions() as any as T[];\n\tconst _testExt = _handleFileExtensions(testExt, '|')\n\n\treturn {\n\t\ttestMatch: null as undefined,\n\t\ttestRegex: [\n\t\t\t`\\\\.(tests?|spec)\\\\.(${_testExt})$`,\n\t\t\t`__tests__\\/\\.*\\\\.(tests?|spec)\\\\.(${_testExt})$`,\n\t\t],\n\t}\n}\n\nexport function _handleFileExtensionsCore<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>)\n{\n\treturn array_unique([testExt].flat()) as T[]\n}\n\nexport function _handleFileExtensions<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>, sep: string)\n{\n\treturn _handleFileExtensionsCore(testExt).join(sep)\n}\n\nexport function fixJestConfig<T extends IJestConfig>(jestConfig: T): T\n{\n\tif (jestConfig.testMatch)\n\t{\n\t\tjestConfig.testRegex = null;\n\t}\n\telse if (jestConfig.testRegex)\n\t{\n\t\tjestConfig.testMatch = null;\n\t}\n\n\treturn jestConfig\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\nimport { IJestConfig } from './types';\n\nexport function _newTableBorderless(options?: TableConstructorOptions)\n{\n\tlet table = new Table({\n\t\tcolAligns: ['right', 'left'],\n\t\t//colAligns: ['left', 'center', 'center', 'center'],\n\t\tchars: {\n\t\t\ttop: '',\n\t\t\t'top-mid': '',\n\t\t\t'top-left': '',\n\t\t\t'top-right': '',\n\t\t\tbottom: '',\n\t\t\t'bottom-mid': '',\n\t\t\t'bottom-left': '',\n\t\t\t'bottom-right': '',\n\t\t\tleft: '',\n\t\t\t'left-mid': '',\n\t\t\tmid: '',\n\t\t\t'mid-mid': '',\n\t\t\tright: '',\n\t\t\t'right-mid': '',\n\t\t\tmiddle: '',\n\t\t},\n\t\t...options,\n\t});\n\n\ttable = applyStyleBorderless(table);\n\n\treturn table;\n}\n\nexport interface IOptionsPrintJestConfigInfo\n{\n\tcwd?: string;\n\tfile?: string;\n}\n\nexport function printJestConfigInfo(jestConfig: IJestConfig, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\n\ttable.push([`${jName}:`, jVersion]);\n\ttable.push([`process.versions.node:`, process.versions.node]);\n\ttable.push(['cwd:', options.cwd ?? process.cwd()]);\n\n\toptions.file?.length && table.push(['file:', options.file]);\n\n\tjestConfig.cacheDirectory?.length && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);\n\n\tjestConfig.rootDir?.length && table.push(['rootDir:', jestConfig.rootDir]);\n\tjestConfig.roots?.length && table.push(['roots:', inspect(jestConfig.roots)]);\n\n\tjestConfig.preset?.length && table.push(['preset:', jestConfig.preset]);\n\n\tjestConfig.transform && table.push(['transform:', inspect(jestConfig.transform, {\n\t\tdepth: 3\n\t})]);\n\n\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { _requireResolve, fixJestConfig, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns, defaultTransform,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\nimport { IJestConfig } from './types';\nimport { getJestCacheDirectory } from 'jest-cache-directory';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getJestCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean,\n\toptions?: IOptionsPrintJestConfigInfo)\n{\n\t// @ts-ignore\n\tjestConfig ??= {};\n\tconst newJestConfig = fixJestConfig({\n\t\tglobals: {\n//\t\t\t'ts-jest': {\n//\t\t\t\t//tsconfig: 'tsconfig.spec.json',\n//\t\t\t},\n\t\t},\n\t\tcacheDirectory,\n\t\tmaxWorkers: 1,\n\t\tclearMocks: true,\n\t\tpassWithNoTests: true,\n\t\tmoduleFileExtensions: defaultModuleFileExtensions(),\n\t\t//testEnvironment: 'node',\n\t\t//testMatch: ['**/*.test.ts', '**/*.spec.ts'],\n\t\t...makeTestRegexConfig(defaultTestFileExtensions()),\n\t\ttestPathIgnorePatterns: defaultTestPathIgnorePatterns(),\n\t\t//testRunner: 'jest-circus/runner',\n\t\tsetupFilesAfterEnv: [\n\t\t\t//\"jest-chain\",\n\t\t\t//\"jest-extended/all\",\n\t\t\t//\"jest-extended-extra\",\n\t\t\t//\"jest-num-close-with\",\n\t\t\t/**\n\t\t\t * https://medium.com/doctolib/how-to-run-the-same-jest-test-suite-across-several-platforms-jest-os-detection-plugin-included-f8113832482b\n\t\t\t * https://github.com/doctolib/jest-os-detection\n\t\t\t */\n\t\t\t//'jest-os-detection',\n\t\t],\n\t\t//transform: defaultTransform(),\n\t\tverbose: true,\n\t\t/**\n\t\t * if didn't set `coverageProvider` to `v8`\n\t\t * with `collectCoverage` `true`, nodejs debug point maybe will fail\n\t\t */\n\t\tcoverageProvider: 'v8',\n\t\tcollectCoverage: false,\n\t\tcoveragePathIgnorePatterns: defaultCoveragePathIgnorePatterns(),\n\t\t/**\n\t\t * https://github.com/facebook/jest/issues/9771#issuecomment-872764344\n\t\t */\n\t\t//resolver: 'jest-node-exports-resolver',\n\t\t...jestConfig,\n\t});\n\n\tnewJestConfig.transform ??= defaultTransform({\n\t\tjestConfig,\n\t\tautoPrint,\n\t\toptions,\n\t\tnewJestConfig,\n\t});\n\n\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n"],"names":["defaultTsJestTransformerOptions","runtime","_runtime$jestConfig$g","_runtime$jestConfig$g2","old","jestConfig","globals","tsconfig","noEmit","emitDeclarationOnly","noUnusedParameters","allowUnusedLabels","noUnusedLocals","noPropertyAccessFromIndexSignature","noImplicitAny","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoverageFileExtensions","defaultTransformFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","defaultTransform","paths","requireResolveExtra","result","filter","Boolean","opts","includeGlobal","includeCurrentDirectory","ts_transform","_requireResolve","tsd","length","chain","transformers","_handleFileExtensions","name","requireResolveCore","console","debug","makeTestRegexConfig","testExt","_testExt2","_testExt","testMatch","testRegex","_handleFileExtensionsCore","array_unique","flat","sep","join","fixJestConfig","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","_options","_jestConfig","_options$cwd","_options$file","_jestConfig$cacheDire","_jestConfig$rootDir","_jestConfig$roots","_jestConfig$preset","push","jName","jVersion","process","versions","node","cwd","file","cacheDirectory","rootDir","roots","inspect","preset","transform","depth","gray","log","repeat","toString","getJestCacheDirectory","mixinJestConfig","autoPrint","_newJestConfig$transf","newJestConfig","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
|
|
@@ -4,28 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
});
|
|
6
6
|
|
|
7
|
-
var e = require("@yarn-tool/require-resolve"), t = require("debug-color2"), s = require("@yarn-tool/table"),
|
|
8
|
-
|
|
9
|
-
function _requireResolve(s) {
|
|
10
|
-
const o = [ e.requireResolveExtra("@bluelovers/tsdx").result, e.requireResolveExtra("tsdx").result ].filter(Boolean), r = e.requireResolveCore(s, {
|
|
11
|
-
includeGlobal: !0,
|
|
12
|
-
includeCurrentDirectory: !0,
|
|
13
|
-
paths: o
|
|
14
|
-
});
|
|
15
|
-
return t.console.debug("[require.resolve]", s, "=>", r), r;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function makeTestRegexConfig(e) {
|
|
19
|
-
return {
|
|
20
|
-
testMatch: void 0,
|
|
21
|
-
testRegex: [ `\\.(tests?|spec)\\.(${e = [ e ].flat().join("|")})$`, `__tests__/.*\\.(tests?|spec)\\.(${e})$` ]
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
function fixJestConfig(e) {
|
|
26
|
-
return e.testMatch ? e.testRegex = void 0 : e.testRegex && (e.testMatch = void 0),
|
|
27
|
-
e;
|
|
28
|
-
}
|
|
7
|
+
var e = require("@yarn-tool/require-resolve"), t = require("debug-color2"), s = require("array-hyper-unique"), o = require("@yarn-tool/table"), r = require("util"), n = require("jest-cache-directory");
|
|
29
8
|
|
|
30
9
|
function defaultTsJestTransformerOptions(e) {
|
|
31
10
|
var t, s;
|
|
@@ -61,12 +40,45 @@ function defaultTransform(t) {
|
|
|
61
40
|
} ]);
|
|
62
41
|
}
|
|
63
42
|
return {
|
|
64
|
-
"
|
|
43
|
+
[`.(${_handleFileExtensions([ "ts", "tsx", "mts", "cts" ], "|")})$`]: o
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function _requireResolve(s) {
|
|
48
|
+
const o = [ e.requireResolveExtra("@bluelovers/tsdx").result, e.requireResolveExtra("tsdx").result ].filter(Boolean), r = e.requireResolveCore(s, {
|
|
49
|
+
includeGlobal: !0,
|
|
50
|
+
includeCurrentDirectory: !0,
|
|
51
|
+
paths: o
|
|
52
|
+
});
|
|
53
|
+
return t.console.debug("[require.resolve]", s, "=>", r), r;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function makeTestRegexConfig(e) {
|
|
57
|
+
var t;
|
|
58
|
+
null !== (t = e) && void 0 !== t || (e = [ "ts", "tsx", "mts", "cts" ]);
|
|
59
|
+
const s = _handleFileExtensions(e, "|");
|
|
60
|
+
return {
|
|
61
|
+
testMatch: null,
|
|
62
|
+
testRegex: [ `\\.(tests?|spec)\\.(${s})$`, `__tests__/.*\\.(tests?|spec)\\.(${s})$` ]
|
|
65
63
|
};
|
|
66
64
|
}
|
|
67
65
|
|
|
66
|
+
function _handleFileExtensionsCore(e) {
|
|
67
|
+
return s.array_unique([ e ].flat());
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function _handleFileExtensions(e, t) {
|
|
71
|
+
return _handleFileExtensionsCore(e).join(t);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function fixJestConfig(e) {
|
|
75
|
+
return e.testMatch ? e.testRegex = null : e.testRegex && (e.testMatch = null), e;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
var i = "@bluelovers/jest-config", l = "1.1.9";
|
|
79
|
+
|
|
68
80
|
function _newTableBorderless(e) {
|
|
69
|
-
let t = new
|
|
81
|
+
let t = new o.Table({
|
|
70
82
|
colAligns: [ "right", "left" ],
|
|
71
83
|
chars: {
|
|
72
84
|
top: "",
|
|
@@ -87,33 +99,33 @@ function _newTableBorderless(e) {
|
|
|
87
99
|
},
|
|
88
100
|
...e
|
|
89
101
|
});
|
|
90
|
-
return t =
|
|
102
|
+
return t = o.applyStyleBorderless(t), t;
|
|
91
103
|
}
|
|
92
104
|
|
|
93
105
|
function printJestConfigInfo(e, s) {
|
|
94
|
-
var
|
|
95
|
-
const
|
|
96
|
-
null !== (
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
(null === (
|
|
100
|
-
(null === (
|
|
101
|
-
(null === (
|
|
102
|
-
(null === (
|
|
103
|
-
e.transform &&
|
|
106
|
+
var o, n, u, a, _, f, c, d;
|
|
107
|
+
const x = _newTableBorderless();
|
|
108
|
+
null !== (o = s) && void 0 !== o || (s = {}), null !== (n = e) && void 0 !== n || (e = {}),
|
|
109
|
+
x.push([ `${i}:`, l ]), x.push([ "process.versions.node:", process.versions.node ]),
|
|
110
|
+
x.push([ "cwd:", null !== (u = s.cwd) && void 0 !== u ? u : process.cwd() ]), (null === (a = s.file) || void 0 === a ? void 0 : a.length) && x.push([ "file:", s.file ]),
|
|
111
|
+
(null === (_ = e.cacheDirectory) || void 0 === _ ? void 0 : _.length) && x.push([ "cacheDirectory:", e.cacheDirectory ]),
|
|
112
|
+
(null === (f = e.rootDir) || void 0 === f ? void 0 : f.length) && x.push([ "rootDir:", e.rootDir ]),
|
|
113
|
+
(null === (c = e.roots) || void 0 === c ? void 0 : c.length) && x.push([ "roots:", r.inspect(e.roots) ]),
|
|
114
|
+
(null === (d = e.preset) || void 0 === d ? void 0 : d.length) && x.push([ "preset:", e.preset ]),
|
|
115
|
+
e.transform && x.push([ "transform:", r.inspect(e.transform, {
|
|
104
116
|
depth: 3
|
|
105
|
-
}) ]), t.console.gray.log("─".repeat(20)), t.console.log("jest.config"), t.console.log(
|
|
117
|
+
}) ]), t.console.gray.log("─".repeat(20)), t.console.log("jest.config"), t.console.log(x.toString()),
|
|
106
118
|
t.console.gray.log("─".repeat(20));
|
|
107
119
|
}
|
|
108
120
|
|
|
109
|
-
const
|
|
121
|
+
const u = n.getJestCacheDirectory();
|
|
110
122
|
|
|
111
123
|
function mixinJestConfig(e, t, s) {
|
|
112
|
-
var o,
|
|
124
|
+
var o, r;
|
|
113
125
|
null !== (o = e) && void 0 !== o || (e = {});
|
|
114
|
-
const
|
|
126
|
+
const n = fixJestConfig({
|
|
115
127
|
globals: {},
|
|
116
|
-
cacheDirectory:
|
|
128
|
+
cacheDirectory: u,
|
|
117
129
|
maxWorkers: 1,
|
|
118
130
|
clearMocks: !0,
|
|
119
131
|
passWithNoTests: !0,
|
|
@@ -127,16 +139,19 @@ function mixinJestConfig(e, t, s) {
|
|
|
127
139
|
coveragePathIgnorePatterns: [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ],
|
|
128
140
|
...e
|
|
129
141
|
});
|
|
130
|
-
return null !== (
|
|
142
|
+
return null !== (r = n.transform) && void 0 !== r || (n.transform = defaultTransform({
|
|
131
143
|
jestConfig: e,
|
|
132
144
|
autoPrint: t,
|
|
133
145
|
options: s,
|
|
134
|
-
newJestConfig:
|
|
135
|
-
})), t && printJestConfigInfo(
|
|
146
|
+
newJestConfig: n
|
|
147
|
+
})), t && printJestConfigInfo(n, s), n;
|
|
136
148
|
}
|
|
137
149
|
|
|
150
|
+
exports._handleFileExtensions = _handleFileExtensions, exports._handleFileExtensionsCore = _handleFileExtensionsCore,
|
|
138
151
|
exports._newTableBorderless = _newTableBorderless, exports._requireResolve = _requireResolve,
|
|
139
|
-
exports.cacheDirectory =
|
|
152
|
+
exports.cacheDirectory = u, exports.default = mixinJestConfig, exports.defaultCoverageFileExtensions = function defaultCoverageFileExtensions() {
|
|
153
|
+
return [ "js", "mjs", "cjs", "jsx", "ts", "mts", "cts", "tsx" ];
|
|
154
|
+
}, exports.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
|
|
140
155
|
return [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ];
|
|
141
156
|
}, exports.defaultModuleFileExtensions = function defaultModuleFileExtensions() {
|
|
142
157
|
return [ "js", "mjs", "cjs", "jsx", "ts", "mts", "cts", "tsx", "json", "node" ];
|
|
@@ -144,7 +159,8 @@ exports.cacheDirectory = r, exports.default = mixinJestConfig, exports.defaultCo
|
|
|
144
159
|
return [ "ts", "tsx", "mts", "cts" ];
|
|
145
160
|
}, exports.defaultTestPathIgnorePatterns = function defaultTestPathIgnorePatterns() {
|
|
146
161
|
return [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ];
|
|
147
|
-
}, exports.defaultTransform = defaultTransform, exports.
|
|
148
|
-
|
|
149
|
-
exports.
|
|
162
|
+
}, exports.defaultTransform = defaultTransform, exports.defaultTransformFileExtensions = function defaultTransformFileExtensions() {
|
|
163
|
+
return [ "ts", "tsx", "mts", "cts" ];
|
|
164
|
+
}, exports.fixJestConfig = fixJestConfig, exports.makeTestRegexConfig = makeTestRegexConfig,
|
|
165
|
+
exports.mixinJestConfig = mixinJestConfig, exports.printJestConfigInfo = printJestConfigInfo;
|
|
150
166
|
//# sourceMappingURL=index.cjs.production.min.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.production.min.cjs","sources":["../src/helper.ts","../src/plugin/ts-jest.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { IJestConfig } from './types';\n\nexport function _requireResolve(name: string)\n{\n\tconst paths = [\n\t\trequireResolveExtra('@bluelovers/tsdx').result,\n\t\trequireResolveExtra('tsdx').result,\n\t].filter(Boolean);\n\n\tconst result = requireResolveCore(name, {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t});\n\n\tconsole.debug('[require.resolve]', name, '=>', result)\n\n\treturn result\n}\n\nexport function makeTestRegexConfig(testExt: string | ITSArrayListMaybeReadonly<string>): Pick<InitialOptionsTsJest, 'testMatch' | 'testRegex'>\n{\n\ttestExt = [testExt].flat().join('|');\n\n\treturn {\n\t\ttestMatch: void 0 as undefined,\n\t\ttestRegex: [\n\t\t\t`\\\\.(tests?|spec)\\\\.(${testExt})$`,\n\t\t\t`__tests__\\/\\.*\\\\.(tests?|spec)\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends IJestConfig>(jestConfig: T): T\n{\n\tif (jestConfig.testMatch)\n\t{\n\t\tjestConfig.testRegex = void 0;\n\t}\n\telse if (jestConfig.testRegex)\n\t{\n\t\tjestConfig.testMatch = void 0;\n\t}\n\n\treturn jestConfig\n}\n","import { TsJestTransformerOptions } from 'ts-jest';\nimport { IRuntime } from '../types';\n\nexport function defaultTsJestTransformerOptions(runtime: IRuntime)\n{\n\tconst old: TsJestTransformerOptions = runtime.jestConfig.globals?.['ts-jest'] ?? {};\n\n\tconst tsconfig = typeof old.tsconfig === 'object' ? old.tsconfig : {};\n\n\treturn {\n\t\t...old,\n\t\ttsconfig: {\n\t\t\tnoEmit: true,\n\t\t\temitDeclarationOnly: false,\n\t\t\tnoUnusedParameters: false,\n\t\t\tallowUnusedLabels: true,\n\t\t\tnoUnusedLocals: false,\n\t\t\tnoPropertyAccessFromIndexSignature: false,\n\t\t\tnoImplicitAny: false,\n\t\t\t...tsconfig,\n\t\t},\n\t} satisfies TsJestTransformerOptions\n}\n","import { IOptions, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { ITSToWriteableArray } from 'ts-type/lib/helper/array/readonly';\nimport { ITSWriteable } from 'ts-type/lib/helper/readonly';\nimport { _requireResolve } from './helper';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { defaultTsJestTransformerOptions } from './plugin/ts-jest';\nimport { IRuntime } from './types';\n\nexport function defaultTestFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n//\t'js',\n//\t'jsx',\n//\t'mjs',\n//\t'cjs',\n\t] as const;\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\n/**\n * @see https://jestjs.io/docs/configuration#options\n */\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t'json',\n\t\t'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoveragePathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__snapshots__/',\n\t\t'/__tests__/',\n\t\t'/__test__/',\n\t\t//'**/node_modules/',\n\t\t//'**/__snapshots__/',\n\t\t//'**/__tests__/',\n\t\t'/dist/',\n\t\t'/test/',\n\t\t'/fixture/',\n\t\t'/__file_snapshots__/',\n\t\t'/__fixtures__/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\n\t\t'/__file_snapshots__/',\n\t\t'/fixtures/',\n\t\t'/__tests__/helpers/',\n\t\t'/__tests__/utils/',\n\t\t'__mocks__',\n\t\t'/dist/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransform(runtime: IRuntime)\n{\n\tconst paths: string[] = [\n\t\trequireResolveExtra('@bluelovers/jest-config').result,\n\t].filter(Boolean);\n\n\tconst opts: IOptions = {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t};\n\n\tlet ts_transform: InitialOptionsTsJest[\"transform\"][string] = _requireResolve('ts-jest') as 'ts-jest';\n\n\tts_transform = [ts_transform, defaultTsJestTransformerOptions(runtime)];\n\n\tconst { result: tsd } = requireResolveExtra('jest-tsd-transform', opts);\n\n\tif (tsd?.length)\n\t{\n\t\tconst { result: chain } = requireResolveExtra('jest-chain-transform', opts);\n\n\t\tif (chain?.length)\n\t\t{\n\t\t\tts_transform = [\n\t\t\t\tchain as 'jest-chain-transform', {\n\t\t\t\t\ttransformers: [\n\t\t\t\t\t\ttsd as 'jest-tsd-transform',\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\tts_transform as 'ts-jest',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t] satisfies [\n\t\t\t\tstring,\n\t\t\t\tRecord<string, unknown>\n\t\t\t]\n\t\t}\n\t}\n\n\tconst value = {\n\t\t'.(ts|tsx|mts|cts)$': ts_transform,\n\t} as const\n\treturn value as ITSWriteable<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\nimport { IJestConfig } from './types';\n\nexport function _newTableBorderless(options?: TableConstructorOptions)\n{\n\tlet table = new Table({\n\t\tcolAligns: ['right', 'left'],\n\t\t//colAligns: ['left', 'center', 'center', 'center'],\n\t\tchars: {\n\t\t\ttop: '',\n\t\t\t'top-mid': '',\n\t\t\t'top-left': '',\n\t\t\t'top-right': '',\n\t\t\tbottom: '',\n\t\t\t'bottom-mid': '',\n\t\t\t'bottom-left': '',\n\t\t\t'bottom-right': '',\n\t\t\tleft: '',\n\t\t\t'left-mid': '',\n\t\t\tmid: '',\n\t\t\t'mid-mid': '',\n\t\t\tright: '',\n\t\t\t'right-mid': '',\n\t\t\tmiddle: '',\n\t\t},\n\t\t...options,\n\t});\n\n\ttable = applyStyleBorderless(table);\n\n\treturn table;\n}\n\nexport interface IOptionsPrintJestConfigInfo\n{\n\tcwd?: string;\n\tfile?: string;\n}\n\nexport function printJestConfigInfo(jestConfig: IJestConfig, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\n\ttable.push([`${jName}:`, jVersion]);\n\ttable.push([`process.versions.node:`, process.versions.node]);\n\ttable.push(['cwd:', options.cwd ?? process.cwd()]);\n\n\toptions.file?.length && table.push(['file:', options.file]);\n\n\tjestConfig.cacheDirectory?.length && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);\n\n\tjestConfig.rootDir?.length && table.push(['rootDir:', jestConfig.rootDir]);\n\tjestConfig.roots?.length && table.push(['roots:', inspect(jestConfig.roots)]);\n\n\tjestConfig.preset?.length && table.push(['preset:', jestConfig.preset]);\n\n\tjestConfig.transform && table.push(['transform:', inspect(jestConfig.transform, {\n\t\tdepth: 3\n\t})]);\n\n\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { _requireResolve, fixJestConfig, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns, defaultTransform,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\nimport { IJestConfig } from './types';\nimport { getJestCacheDirectory } from 'jest-cache-directory';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getJestCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean,\n\toptions?: IOptionsPrintJestConfigInfo): T\n{\n\t// @ts-ignore\n\tjestConfig ??= {};\n\tconst newJestConfig = fixJestConfig<T>({\n\t\tglobals: {\n//\t\t\t'ts-jest': {\n//\t\t\t\t//tsconfig: 'tsconfig.spec.json',\n//\t\t\t},\n\t\t},\n\t\tcacheDirectory,\n\t\tmaxWorkers: 1,\n\t\tclearMocks: true,\n\t\tpassWithNoTests: true,\n\t\tmoduleFileExtensions: defaultModuleFileExtensions(),\n\t\t//testEnvironment: 'node',\n\t\t//testMatch: ['**/*.test.ts', '**/*.spec.ts'],\n\t\t...makeTestRegexConfig(defaultTestFileExtensions()),\n\t\ttestPathIgnorePatterns: defaultTestPathIgnorePatterns(),\n\t\t//testRunner: 'jest-circus/runner',\n\t\tsetupFilesAfterEnv: [\n\t\t\t//\"jest-chain\",\n\t\t\t//\"jest-extended/all\",\n\t\t\t//\"jest-extended-extra\",\n\t\t\t//\"jest-num-close-with\",\n\t\t\t/**\n\t\t\t * https://medium.com/doctolib/how-to-run-the-same-jest-test-suite-across-several-platforms-jest-os-detection-plugin-included-f8113832482b\n\t\t\t * https://github.com/doctolib/jest-os-detection\n\t\t\t */\n\t\t\t//'jest-os-detection',\n\t\t],\n\t\t//transform: defaultTransform(),\n\t\tverbose: true,\n\t\t/**\n\t\t * if didn't set `coverageProvider` to `v8`\n\t\t * with `collectCoverage` `true`, nodejs debug point maybe will fail\n\t\t */\n\t\tcoverageProvider: 'v8',\n\t\tcollectCoverage: false,\n\t\tcoveragePathIgnorePatterns: defaultCoveragePathIgnorePatterns(),\n\t\t/**\n\t\t * https://github.com/facebook/jest/issues/9771#issuecomment-872764344\n\t\t */\n\t\t//resolver: 'jest-node-exports-resolver',\n\t\t...jestConfig,\n\t});\n\n\tnewJestConfig.transform ??= defaultTransform({\n\t\tjestConfig,\n\t\tautoPrint,\n\t\toptions,\n\t\tnewJestConfig,\n\t});\n\n\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","makeTestRegexConfig","testExt","testMatch","testRegex","flat","join","fixJestConfig","jestConfig","defaultTsJestTransformerOptions","runtime","_runtime$jestConfig$g","_runtime$jestConfig$g2","old","globals","tsconfig","noEmit","emitDeclarationOnly","noUnusedParameters","allowUnusedLabels","noUnusedLocals","noPropertyAccessFromIndexSignature","noImplicitAny","defaultTransform","opts","ts_transform","tsd","length","chain","transformers","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","_options","_jestConfig","_options$cwd","_options$file","_jestConfig$cacheDire","_jestConfig$rootDir","_jestConfig$roots","_jestConfig$preset","push","process","versions","node","cwd","file","cacheDirectory","rootDir","roots","inspect","preset","transform","depth","gray","log","repeat","toString","getJestCacheDirectory","mixinJestConfig","autoPrint","_newJestConfig$transf","newJestConfig","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultModuleFileExtensions","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.production.min.cjs","sources":["../src/plugin/ts-jest.ts","../src/defaults.ts","../src/helper.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { TsJestTransformerOptions } from 'ts-jest';\nimport { IRuntime } from '../types';\n\nexport function defaultTsJestTransformerOptions(runtime: IRuntime)\n{\n\tconst old: TsJestTransformerOptions = runtime.jestConfig.globals?.['ts-jest'] ?? {};\n\n\tconst tsconfig = typeof old.tsconfig === 'object' ? old.tsconfig : {};\n\n\treturn {\n\t\t...old,\n\t\ttsconfig: {\n\t\t\tnoEmit: true,\n\t\t\temitDeclarationOnly: false,\n\t\t\tnoUnusedParameters: false,\n\t\t\tallowUnusedLabels: true,\n\t\t\tnoUnusedLocals: false,\n\t\t\tnoPropertyAccessFromIndexSignature: false,\n\t\t\tnoImplicitAny: false,\n\t\t\t...tsconfig,\n\t\t},\n\t} satisfies TsJestTransformerOptions\n}\n","import { IOptions, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { ITSToWriteableArray } from 'ts-type/lib/helper/array/readonly';\nimport { ITSWriteable } from 'ts-type/lib/helper/readonly';\nimport { _handleFileExtensions, _requireResolve } from './helper';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { defaultTsJestTransformerOptions } from './plugin/ts-jest';\nimport { IRuntime } from './types';\n\nexport function defaultTestFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n//\t'js',\n//\t'jsx',\n//\t'mjs',\n//\t'cjs',\n\t] as const;\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\n/**\n * @see https://jestjs.io/docs/configuration#options\n */\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t'json',\n\t\t'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoverageFileExtensions()\n{\n\tconst value = [\n\t\t'js',\n\t\t'mjs',\n\t\t'cjs',\n\t\t'jsx',\n\t\t'ts',\n\t\t'mts',\n\t\t'cts',\n\t\t'tsx',\n\t\t//'json',\n\t\t//'node',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransformFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultCoveragePathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__snapshots__/',\n\t\t'/__tests__/',\n\t\t'/__test__/',\n\t\t//'**/node_modules/',\n\t\t//'**/__snapshots__/',\n\t\t//'**/__tests__/',\n\t\t'/dist/',\n\t\t'/test/',\n\t\t'/fixture/',\n\t\t'/__file_snapshots__/',\n\t\t'/__fixtures__/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\n\t\t'/__file_snapshots__/',\n\t\t'/fixtures/',\n\t\t'/__tests__/helpers/',\n\t\t'/__tests__/utils/',\n\t\t'__mocks__',\n\t\t'/dist/',\n\t] as const\n\treturn value as ITSToWriteableArray<typeof value>;\n}\n\nexport function defaultTransform(runtime: IRuntime)\n{\n\tconst paths: string[] = [\n\t\trequireResolveExtra('@bluelovers/jest-config').result,\n\t].filter(Boolean);\n\n\tconst opts: IOptions = {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t};\n\n\tlet ts_transform: InitialOptionsTsJest[\"transform\"][string] = _requireResolve('ts-jest') as 'ts-jest';\n\n\tts_transform = [ts_transform, defaultTsJestTransformerOptions(runtime)];\n\n\tconst { result: tsd } = requireResolveExtra('jest-tsd-transform', opts);\n\n\tif (tsd?.length)\n\t{\n\t\tconst { result: chain } = requireResolveExtra('jest-chain-transform', opts);\n\n\t\tif (chain?.length)\n\t\t{\n\t\t\tts_transform = [\n\t\t\t\tchain as 'jest-chain-transform', {\n\t\t\t\t\ttransformers: [\n\t\t\t\t\t\ttsd as 'jest-tsd-transform',\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\tts_transform as 'ts-jest',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t] satisfies [\n\t\t\t\tstring,\n\t\t\t\tRecord<string, unknown>\n\t\t\t]\n\t\t}\n\t}\n\n\tconst value = {\n\t\t[`.(${_handleFileExtensions(defaultTransformFileExtensions(), '|')})$`]: ts_transform,\n\t} as const\n\treturn value as ITSWriteable<typeof value>;\n}\n","import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSValueOrArrayMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { IJestConfig } from './types';\nimport { defaultTestFileExtensions } from './defaults';\nimport { array_unique } from 'array-hyper-unique';\n\nexport function _requireResolve(name: string)\n{\n\tconst paths = [\n\t\trequireResolveExtra('@bluelovers/tsdx').result,\n\t\trequireResolveExtra('tsdx').result,\n\t].filter(Boolean);\n\n\tconst result = requireResolveCore(name, {\n\t\tincludeGlobal: true,\n\t\tincludeCurrentDirectory: true,\n\t\tpaths,\n\t});\n\n\tconsole.debug('[require.resolve]', name, '=>', result)\n\n\treturn result\n}\n\nexport function makeTestRegexConfig<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>): Pick<InitialOptionsTsJest, 'testMatch' | 'testRegex'>\n{\n\ttestExt ??= defaultTestFileExtensions() as any as T[];\n\tconst _testExt = _handleFileExtensions(testExt, '|')\n\n\treturn {\n\t\ttestMatch: null as undefined,\n\t\ttestRegex: [\n\t\t\t`\\\\.(tests?|spec)\\\\.(${_testExt})$`,\n\t\t\t`__tests__\\/\\.*\\\\.(tests?|spec)\\\\.(${_testExt})$`,\n\t\t],\n\t}\n}\n\nexport function _handleFileExtensionsCore<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>)\n{\n\treturn array_unique([testExt].flat()) as T[]\n}\n\nexport function _handleFileExtensions<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>, sep: string)\n{\n\treturn _handleFileExtensionsCore(testExt).join(sep)\n}\n\nexport function fixJestConfig<T extends IJestConfig>(jestConfig: T): T\n{\n\tif (jestConfig.testMatch)\n\t{\n\t\tjestConfig.testRegex = null;\n\t}\n\telse if (jestConfig.testRegex)\n\t{\n\t\tjestConfig.testMatch = null;\n\t}\n\n\treturn jestConfig\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\nimport { IJestConfig } from './types';\n\nexport function _newTableBorderless(options?: TableConstructorOptions)\n{\n\tlet table = new Table({\n\t\tcolAligns: ['right', 'left'],\n\t\t//colAligns: ['left', 'center', 'center', 'center'],\n\t\tchars: {\n\t\t\ttop: '',\n\t\t\t'top-mid': '',\n\t\t\t'top-left': '',\n\t\t\t'top-right': '',\n\t\t\tbottom: '',\n\t\t\t'bottom-mid': '',\n\t\t\t'bottom-left': '',\n\t\t\t'bottom-right': '',\n\t\t\tleft: '',\n\t\t\t'left-mid': '',\n\t\t\tmid: '',\n\t\t\t'mid-mid': '',\n\t\t\tright: '',\n\t\t\t'right-mid': '',\n\t\t\tmiddle: '',\n\t\t},\n\t\t...options,\n\t});\n\n\ttable = applyStyleBorderless(table);\n\n\treturn table;\n}\n\nexport interface IOptionsPrintJestConfigInfo\n{\n\tcwd?: string;\n\tfile?: string;\n}\n\nexport function printJestConfigInfo(jestConfig: IJestConfig, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\n\ttable.push([`${jName}:`, jVersion]);\n\ttable.push([`process.versions.node:`, process.versions.node]);\n\ttable.push(['cwd:', options.cwd ?? process.cwd()]);\n\n\toptions.file?.length && table.push(['file:', options.file]);\n\n\tjestConfig.cacheDirectory?.length && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);\n\n\tjestConfig.rootDir?.length && table.push(['rootDir:', jestConfig.rootDir]);\n\tjestConfig.roots?.length && table.push(['roots:', inspect(jestConfig.roots)]);\n\n\tjestConfig.preset?.length && table.push(['preset:', jestConfig.preset]);\n\n\tjestConfig.transform && table.push(['transform:', inspect(jestConfig.transform, {\n\t\tdepth: 3\n\t})]);\n\n\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { _requireResolve, fixJestConfig, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns, defaultTransform,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\nimport { IJestConfig } from './types';\nimport { getJestCacheDirectory } from 'jest-cache-directory';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getJestCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean,\n\toptions?: IOptionsPrintJestConfigInfo)\n{\n\t// @ts-ignore\n\tjestConfig ??= {};\n\tconst newJestConfig = fixJestConfig({\n\t\tglobals: {\n//\t\t\t'ts-jest': {\n//\t\t\t\t//tsconfig: 'tsconfig.spec.json',\n//\t\t\t},\n\t\t},\n\t\tcacheDirectory,\n\t\tmaxWorkers: 1,\n\t\tclearMocks: true,\n\t\tpassWithNoTests: true,\n\t\tmoduleFileExtensions: defaultModuleFileExtensions(),\n\t\t//testEnvironment: 'node',\n\t\t//testMatch: ['**/*.test.ts', '**/*.spec.ts'],\n\t\t...makeTestRegexConfig(defaultTestFileExtensions()),\n\t\ttestPathIgnorePatterns: defaultTestPathIgnorePatterns(),\n\t\t//testRunner: 'jest-circus/runner',\n\t\tsetupFilesAfterEnv: [\n\t\t\t//\"jest-chain\",\n\t\t\t//\"jest-extended/all\",\n\t\t\t//\"jest-extended-extra\",\n\t\t\t//\"jest-num-close-with\",\n\t\t\t/**\n\t\t\t * https://medium.com/doctolib/how-to-run-the-same-jest-test-suite-across-several-platforms-jest-os-detection-plugin-included-f8113832482b\n\t\t\t * https://github.com/doctolib/jest-os-detection\n\t\t\t */\n\t\t\t//'jest-os-detection',\n\t\t],\n\t\t//transform: defaultTransform(),\n\t\tverbose: true,\n\t\t/**\n\t\t * if didn't set `coverageProvider` to `v8`\n\t\t * with `collectCoverage` `true`, nodejs debug point maybe will fail\n\t\t */\n\t\tcoverageProvider: 'v8',\n\t\tcollectCoverage: false,\n\t\tcoveragePathIgnorePatterns: defaultCoveragePathIgnorePatterns(),\n\t\t/**\n\t\t * https://github.com/facebook/jest/issues/9771#issuecomment-872764344\n\t\t */\n\t\t//resolver: 'jest-node-exports-resolver',\n\t\t...jestConfig,\n\t});\n\n\tnewJestConfig.transform ??= defaultTransform({\n\t\tjestConfig,\n\t\tautoPrint,\n\t\toptions,\n\t\tnewJestConfig,\n\t});\n\n\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n"],"names":["defaultTsJestTransformerOptions","runtime","_runtime$jestConfig$g","_runtime$jestConfig$g2","old","jestConfig","globals","tsconfig","noEmit","emitDeclarationOnly","noUnusedParameters","allowUnusedLabels","noUnusedLocals","noPropertyAccessFromIndexSignature","noImplicitAny","defaultTransform","opts","includeGlobal","includeCurrentDirectory","paths","requireResolveExtra","result","filter","Boolean","ts_transform","_requireResolve","tsd","length","chain","transformers","_handleFileExtensions","name","requireResolveCore","console","debug","makeTestRegexConfig","testExt","_testExt2","_testExt","testMatch","testRegex","_handleFileExtensionsCore","array_unique","flat","sep","join","fixJestConfig","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","_options","_jestConfig","_options$cwd","_options$file","_jestConfig$cacheDire","_jestConfig$rootDir","_jestConfig$roots","_jestConfig$preset","push","jName","jVersion","process","versions","node","cwd","file","cacheDirectory","rootDir","roots","inspect","preset","transform","depth","gray","log","repeat","toString","getJestCacheDirectory","mixinJestConfig","autoPrint","_newJestConfig$transf","newJestConfig","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoverageFileExtensions","defaultCoveragePathIgnorePatterns","defaultModuleFileExtensions","defaultTestFileExtensions","defaultTestPathIgnorePatterns","defaultTransformFileExtensions"],"mappings":"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"}
|