@bluelovers/jest-config 1.1.8 → 1.1.10

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 CHANGED
@@ -3,6 +3,36 @@
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.10](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.9...@bluelovers/jest-config@1.1.10) (2023-10-22)
7
+
8
+
9
+
10
+ ### 🛠 Build System
11
+
12
+ * **dist:** update build ([f64f8fa](https://github.com/bluelovers/ws-jest/commit/f64f8fa2b5dee1148d70f824c996c584d3fcf0bc))
13
+
14
+
15
+ ### 🔖 Miscellaneous
16
+
17
+ * . ([82d2524](https://github.com/bluelovers/ws-jest/commit/82d252426bf56a530e51a0433f33f01530f7041a))
18
+
19
+
20
+
21
+ ## [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)
22
+
23
+
24
+
25
+ ### 🛠 Build System
26
+
27
+ * **dist:** update build ([9c26c30](https://github.com/bluelovers/ws-jest/commit/9c26c30c8413bb1be49bee2907c47cb5cacfa0a7))
28
+
29
+
30
+ ### 🔖 Miscellaneous
31
+
32
+ * . ([b9a273d](https://github.com/bluelovers/ws-jest/commit/b9a273d30674331f96e13e364c34a01ca7a6cae2))
33
+
34
+
35
+
6
36
  ## [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)
7
37
 
8
38
 
@@ -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 : {};
@@ -70,6 +45,18 @@ function defaultModuleFileExtensions() {
70
45
  const value = ['js', 'mjs', 'cjs', 'jsx', 'ts', 'mts', 'cts', 'tsx', 'json', 'node'];
71
46
  return value;
72
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
+ }
73
60
  function defaultCoveragePathIgnorePatterns() {
74
61
  const value = ['/node_modules/', '/__snapshots__/', '/__tests__/', '/__test__/',
75
62
  //'**/node_modules/',
@@ -107,13 +94,55 @@ function defaultTransform(runtime) {
107
94
  }
108
95
  }
109
96
  const value = {
110
- '.(ts|tsx|mts|cts)$': ts_transform
97
+ [`.(${_handleFileExtensions(defaultTransformFileExtensions(), '|')})$`]: ts_transform
111
98
  };
112
99
  return value;
113
100
  }
114
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
+ /**
134
+ * Option "testURL" was replaced by passing the URL via "testEnvironmentOptions.url".
135
+ */
136
+ if (jestConfig.testURL) {
137
+ var _jestConfig$testEnvir, _jestConfig$testEnvir2, _url, _jestConfig$testEnvir3;
138
+ (_jestConfig$testEnvir = jestConfig.testEnvironmentOptions) !== null && _jestConfig$testEnvir !== void 0 ? _jestConfig$testEnvir : jestConfig.testEnvironmentOptions = {};
139
+ jestConfig.testURL = (_jestConfig$testEnvir3 = (_jestConfig$testEnvir2 = jestConfig.testEnvironmentOptions)[_url = 'url']) !== null && _jestConfig$testEnvir3 !== void 0 ? _jestConfig$testEnvir3 : _jestConfig$testEnvir2[_url] = jestConfig.testURL;
140
+ }
141
+ return jestConfig;
142
+ }
143
+
115
144
  var name = "@bluelovers/jest-config";
116
- var version = "1.1.8";
145
+ var version = "1.1.10";
117
146
 
118
147
  function _newTableBorderless(options) {
119
148
  let table$1 = new table.Table({
@@ -221,15 +250,19 @@ function mixinJestConfig(jestConfig, autoPrint, options) {
221
250
  return newJestConfig;
222
251
  }
223
252
 
253
+ exports._handleFileExtensions = _handleFileExtensions;
254
+ exports._handleFileExtensionsCore = _handleFileExtensionsCore;
224
255
  exports._newTableBorderless = _newTableBorderless;
225
256
  exports._requireResolve = _requireResolve;
226
257
  exports.cacheDirectory = cacheDirectory;
227
258
  exports.default = mixinJestConfig;
259
+ exports.defaultCoverageFileExtensions = defaultCoverageFileExtensions;
228
260
  exports.defaultCoveragePathIgnorePatterns = defaultCoveragePathIgnorePatterns;
229
261
  exports.defaultModuleFileExtensions = defaultModuleFileExtensions;
230
262
  exports.defaultTestFileExtensions = defaultTestFileExtensions;
231
263
  exports.defaultTestPathIgnorePatterns = defaultTestPathIgnorePatterns;
232
264
  exports.defaultTransform = defaultTransform;
265
+ exports.defaultTransformFileExtensions = defaultTransformFileExtensions;
233
266
  exports.fixJestConfig = fixJestConfig;
234
267
  exports.makeTestRegexConfig = makeTestRegexConfig;
235
268
  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","_runtime$jestConfig$g","_runtime$jestConfig$g2","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","_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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"}
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\t/**\n\t * Option \"testURL\" was replaced by passing the URL via \"testEnvironmentOptions.url\".\n\t */\n\tif (jestConfig.testURL)\n\t{\n\t\tjestConfig.testEnvironmentOptions ??= {};\n\n\t\tjestConfig.testURL = (jestConfig.testEnvironmentOptions['url'] ??= jestConfig.testURL) as string\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","testURL","_jestConfig$testEnvir","_jestConfig$testEnvir2","_url","_jestConfig$testEnvir3","testEnvironmentOptions","_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"), o = require("util"), r = require("jest-cache-directory");
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,14 +40,48 @@ function defaultTransform(t) {
61
40
  } ]);
62
41
  }
63
42
  return {
64
- ".(ts|tsx|mts|cts)$": o
43
+ [`.(${_handleFileExtensions([ "ts", "tsx", "mts", "cts" ], "|")})$`]: o
65
44
  };
66
45
  }
67
46
 
68
- var n = "@bluelovers/jest-config", i = "1.1.8";
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})$` ]
63
+ };
64
+ }
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
+ var t, s, o;
76
+ return e.testMatch ? e.testRegex = null : e.testRegex && (e.testMatch = null), e.testURL && (null !== (t = e.testEnvironmentOptions) && void 0 !== t || (e.testEnvironmentOptions = {}),
77
+ e.testURL = null !== (o = (s = e.testEnvironmentOptions).url) && void 0 !== o ? o : s.url = e.testURL),
78
+ e;
79
+ }
80
+
81
+ var i = "@bluelovers/jest-config", l = "1.1.10";
69
82
 
70
83
  function _newTableBorderless(e) {
71
- let t = new s.Table({
84
+ let t = new o.Table({
72
85
  colAligns: [ "right", "left" ],
73
86
  chars: {
74
87
  top: "",
@@ -89,33 +102,33 @@ function _newTableBorderless(e) {
89
102
  },
90
103
  ...e
91
104
  });
92
- return t = s.applyStyleBorderless(t), t;
105
+ return t = o.applyStyleBorderless(t), t;
93
106
  }
94
107
 
95
108
  function printJestConfigInfo(e, s) {
96
- var r, l, u, a, _, f, c, d;
97
- const g = _newTableBorderless();
98
- null !== (r = s) && void 0 !== r || (s = {}), null !== (l = e) && void 0 !== l || (e = {}),
99
- g.push([ `${n}:`, i ]), g.push([ "process.versions.node:", process.versions.node ]),
100
- g.push([ "cwd:", null !== (u = s.cwd) && void 0 !== u ? u : process.cwd() ]), (null === (a = s.file) || void 0 === a ? void 0 : a.length) && g.push([ "file:", s.file ]),
101
- (null === (_ = e.cacheDirectory) || void 0 === _ ? void 0 : _.length) && g.push([ "cacheDirectory:", e.cacheDirectory ]),
102
- (null === (f = e.rootDir) || void 0 === f ? void 0 : f.length) && g.push([ "rootDir:", e.rootDir ]),
103
- (null === (c = e.roots) || void 0 === c ? void 0 : c.length) && g.push([ "roots:", o.inspect(e.roots) ]),
104
- (null === (d = e.preset) || void 0 === d ? void 0 : d.length) && g.push([ "preset:", e.preset ]),
105
- e.transform && g.push([ "transform:", o.inspect(e.transform, {
109
+ var o, n, u, a, _, f, c, d;
110
+ const x = _newTableBorderless();
111
+ null !== (o = s) && void 0 !== o || (s = {}), null !== (n = e) && void 0 !== n || (e = {}),
112
+ x.push([ `${i}:`, l ]), x.push([ "process.versions.node:", process.versions.node ]),
113
+ 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 ]),
114
+ (null === (_ = e.cacheDirectory) || void 0 === _ ? void 0 : _.length) && x.push([ "cacheDirectory:", e.cacheDirectory ]),
115
+ (null === (f = e.rootDir) || void 0 === f ? void 0 : f.length) && x.push([ "rootDir:", e.rootDir ]),
116
+ (null === (c = e.roots) || void 0 === c ? void 0 : c.length) && x.push([ "roots:", r.inspect(e.roots) ]),
117
+ (null === (d = e.preset) || void 0 === d ? void 0 : d.length) && x.push([ "preset:", e.preset ]),
118
+ e.transform && x.push([ "transform:", r.inspect(e.transform, {
106
119
  depth: 3
107
- }) ]), t.console.gray.log("─".repeat(20)), t.console.log("jest.config"), t.console.log(g.toString()),
120
+ }) ]), t.console.gray.log("─".repeat(20)), t.console.log("jest.config"), t.console.log(x.toString()),
108
121
  t.console.gray.log("─".repeat(20));
109
122
  }
110
123
 
111
- const l = r.getJestCacheDirectory();
124
+ const u = n.getJestCacheDirectory();
112
125
 
113
126
  function mixinJestConfig(e, t, s) {
114
127
  var o, r;
115
128
  null !== (o = e) && void 0 !== o || (e = {});
116
129
  const n = fixJestConfig({
117
130
  globals: {},
118
- cacheDirectory: l,
131
+ cacheDirectory: u,
119
132
  maxWorkers: 1,
120
133
  clearMocks: !0,
121
134
  passWithNoTests: !0,
@@ -137,8 +150,11 @@ function mixinJestConfig(e, t, s) {
137
150
  })), t && printJestConfigInfo(n, s), n;
138
151
  }
139
152
 
153
+ exports._handleFileExtensions = _handleFileExtensions, exports._handleFileExtensionsCore = _handleFileExtensionsCore,
140
154
  exports._newTableBorderless = _newTableBorderless, exports._requireResolve = _requireResolve,
141
- exports.cacheDirectory = l, exports.default = mixinJestConfig, exports.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
155
+ exports.cacheDirectory = u, exports.default = mixinJestConfig, exports.defaultCoverageFileExtensions = function defaultCoverageFileExtensions() {
156
+ return [ "js", "mjs", "cjs", "jsx", "ts", "mts", "cts", "tsx" ];
157
+ }, exports.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
142
158
  return [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ];
143
159
  }, exports.defaultModuleFileExtensions = function defaultModuleFileExtensions() {
144
160
  return [ "js", "mjs", "cjs", "jsx", "ts", "mts", "cts", "tsx", "json", "node" ];
@@ -146,7 +162,8 @@ exports.cacheDirectory = l, exports.default = mixinJestConfig, exports.defaultCo
146
162
  return [ "ts", "tsx", "mts", "cts" ];
147
163
  }, exports.defaultTestPathIgnorePatterns = function defaultTestPathIgnorePatterns() {
148
164
  return [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ];
149
- }, exports.defaultTransform = defaultTransform, exports.fixJestConfig = fixJestConfig,
150
- exports.makeTestRegexConfig = makeTestRegexConfig, exports.mixinJestConfig = mixinJestConfig,
151
- exports.printJestConfigInfo = printJestConfigInfo;
165
+ }, exports.defaultTransform = defaultTransform, exports.defaultTransformFileExtensions = function defaultTransformFileExtensions() {
166
+ return [ "ts", "tsx", "mts", "cts" ];
167
+ }, exports.fixJestConfig = fixJestConfig, exports.makeTestRegexConfig = makeTestRegexConfig,
168
+ exports.mixinJestConfig = mixinJestConfig, exports.printJestConfigInfo = printJestConfigInfo;
152
169
  //# 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","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","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\t/**\n\t * Option \"testURL\" was replaced by passing the URL via \"testEnvironmentOptions.url\".\n\t */\n\tif (jestConfig.testURL)\n\t{\n\t\tjestConfig.testEnvironmentOptions ??= {};\n\n\t\tjestConfig.testURL = (jestConfig.testEnvironmentOptions['url'] ??= jestConfig.testURL) as string\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","_jestConfig$testEnvir","_jestConfig$testEnvir2","_jestConfig$testEnvir3","testURL","testEnvironmentOptions","_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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"}
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import { Table } from '@yarn-tool/table';
2
2
  import { TableConstructorOptions } from 'cli-table3';
3
3
  import { InitialOptionsTsJest, JestConfigWithTsJest } from 'ts-jest';
4
4
  import { ITSWriteable } from 'ts-type/lib/helper/readonly';
5
- import { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';
5
+ import { ITSValueOrArrayMaybeReadonly } from 'ts-type/lib/type/base';
6
6
 
7
7
  export type IJestConfig = InitialOptionsTsJest | JestConfigWithTsJest;
8
8
  export interface IRuntime<T extends IJestConfig = IJestConfig> {
@@ -18,7 +18,9 @@ export interface IOptionsPrintJestConfigInfo {
18
18
  }
19
19
  export declare function printJestConfigInfo(jestConfig: IJestConfig, options?: IOptionsPrintJestConfigInfo): void;
20
20
  export declare function _requireResolve(name: string): string;
21
- export declare function makeTestRegexConfig(testExt: string | ITSArrayListMaybeReadonly<string>): Pick<InitialOptionsTsJest, "testMatch" | "testRegex">;
21
+ export declare function makeTestRegexConfig<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>): Pick<InitialOptionsTsJest, "testMatch" | "testRegex">;
22
+ export declare function _handleFileExtensionsCore<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>): T[];
23
+ export declare function _handleFileExtensions<T extends string>(testExt: ITSValueOrArrayMaybeReadonly<T>, sep: string): string;
22
24
  export declare function fixJestConfig<T extends IJestConfig>(jestConfig: T): T;
23
25
  export declare function defaultTestFileExtensions(): [
24
26
  "ts",
@@ -41,6 +43,22 @@ export declare function defaultModuleFileExtensions(): [
41
43
  "json",
42
44
  "node"
43
45
  ];
46
+ export declare function defaultCoverageFileExtensions(): [
47
+ "js",
48
+ "mjs",
49
+ "cjs",
50
+ "jsx",
51
+ "ts",
52
+ "mts",
53
+ "cts",
54
+ "tsx"
55
+ ];
56
+ export declare function defaultTransformFileExtensions(): [
57
+ "ts",
58
+ "tsx",
59
+ "mts",
60
+ "cts"
61
+ ];
44
62
  export declare function defaultCoveragePathIgnorePatterns(): [
45
63
  "/node_modules/",
46
64
  "/__snapshots__/",
@@ -63,10 +81,59 @@ export declare function defaultTestPathIgnorePatterns(): [
63
81
  "/dist/"
64
82
  ];
65
83
  export declare function defaultTransform(runtime: IRuntime): ITSWriteable<{
66
- readonly ".(ts|tsx|mts|cts)$": import("@jest/types/build/Config").TransformerConfig;
84
+ readonly [x: string]: import("@jest/types/build/Config").TransformerConfig;
67
85
  }>;
68
86
  export declare const cacheDirectory: string;
69
- export declare function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean, options?: IOptionsPrintJestConfigInfo): T;
87
+ export declare function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint?: boolean, options?: IOptionsPrintJestConfigInfo): {
88
+ testPathIgnorePatterns: [
89
+ "/node_modules/",
90
+ "/__fixtures__/",
91
+ "/__file_snapshots__/",
92
+ "/fixtures/",
93
+ "/__tests__/helpers/",
94
+ "/__tests__/utils/",
95
+ "__mocks__",
96
+ "/dist/"
97
+ ];
98
+ setupFilesAfterEnv: any[];
99
+ verbose: true;
100
+ /**
101
+ * if didn't set `coverageProvider` to `v8`
102
+ * with `collectCoverage` `true`, nodejs debug point maybe will fail
103
+ */
104
+ coverageProvider: "v8";
105
+ collectCoverage: false;
106
+ coveragePathIgnorePatterns: [
107
+ "/node_modules/",
108
+ "/__snapshots__/",
109
+ "/__tests__/",
110
+ "/__test__/",
111
+ "/dist/",
112
+ "/test/",
113
+ "/fixture/",
114
+ "/__file_snapshots__/",
115
+ "/__fixtures__/"
116
+ ];
117
+ testMatch?: string[];
118
+ testRegex?: string | string[];
119
+ globals: {};
120
+ cacheDirectory: string;
121
+ maxWorkers: number;
122
+ clearMocks: true;
123
+ passWithNoTests: true;
124
+ moduleFileExtensions: [
125
+ "js",
126
+ "mjs",
127
+ "cjs",
128
+ "jsx",
129
+ "ts",
130
+ "mts",
131
+ "cts",
132
+ "tsx",
133
+ "json",
134
+ "node"
135
+ ];
136
+ } & T;
70
137
 
71
138
  export {
72
139
  mixinJestConfig as default,