@bluelovers/jest-config 1.1.2 → 1.1.3

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,26 @@
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.3](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.2...@bluelovers/jest-config@1.1.3) (2022-10-29)
7
+
8
+
9
+
10
+ ### 🐛 Bug Fixes
11
+
12
+ * avoid jest load .ts file first ([cec12f6](https://github.com/bluelovers/ws-jest/commit/cec12f65cc45ff10b48f2582d9e63a9ad5c4a08f))
13
+
14
+
15
+ ### 🛠 Build System
16
+
17
+ * **dist:** update build ([3772062](https://github.com/bluelovers/ws-jest/commit/3772062f6ff0108126930daf1714b812401c95ee))
18
+
19
+
20
+ ### 🔖 Miscellaneous
21
+
22
+ * . ([3337b0d](https://github.com/bluelovers/ws-jest/commit/3337b0d15cd58f1b84aa93ae9667c55a1dc76dc5))
23
+
24
+
25
+
6
26
  ## [1.1.2](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.1.1...@bluelovers/jest-config@1.1.2) (2022-10-18)
7
27
 
8
28
 
@@ -4,6 +4,7 @@ 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 jestConfig = require('jest-config');
7
8
  var table = require('@yarn-tool/table');
8
9
  var util = require('util');
9
10
  var jestCacheDirectory = require('jest-cache-directory');
@@ -58,7 +59,7 @@ function defaultTestFileExtensions() {
58
59
  return value;
59
60
  }
60
61
  function defaultModuleFileExtensions() {
61
- const value = ['ts', 'tsx', 'mts', 'cts', 'js', 'jsx', 'mjs', 'cjs', 'json', 'node'];
62
+ const value = [...jestConfig.defaults.moduleFileExtensions, 'mts', 'cts'];
62
63
  return value;
63
64
  }
64
65
  function defaultCoveragePathIgnorePatterns() {
@@ -98,7 +99,7 @@ function defaultTransform(runtime) {
98
99
  }
99
100
 
100
101
  var name = "@bluelovers/jest-config";
101
- var version = "1.1.2";
102
+ var version = "1.1.3";
102
103
 
103
104
  function _newTableBorderless(options) {
104
105
  let table$1 = new table.Table({
@@ -158,7 +159,6 @@ function mixinJestConfig(jestConfig, autoPrint, options) {
158
159
  clearMocks: true,
159
160
  passWithNoTests: true,
160
161
  moduleFileExtensions: defaultModuleFileExtensions(),
161
- testEnvironment: 'node',
162
162
  ...makeTestRegexConfig(defaultTestFileExtensions()),
163
163
  testPathIgnorePatterns: defaultTestPathIgnorePatterns(),
164
164
  setupFilesAfterEnv: [],
@@ -181,7 +181,7 @@ function mixinJestConfig(jestConfig, autoPrint, options) {
181
181
  exports._newTableBorderless = _newTableBorderless;
182
182
  exports._requireResolve = _requireResolve;
183
183
  exports.cacheDirectory = cacheDirectory;
184
- exports["default"] = mixinJestConfig;
184
+ exports.default = mixinJestConfig;
185
185
  exports.defaultCoveragePathIgnorePatterns = defaultCoveragePathIgnorePatterns;
186
186
  exports.defaultModuleFileExtensions = defaultModuleFileExtensions;
187
187
  exports.defaultTestFileExtensions = defaultTestFileExtensions;
@@ -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/dist/types';\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\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t\t'js',\n\t\t'jsx',\n\t\t'mjs',\n\t\t'cjs',\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\ttestEnvironment: '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","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
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/dist/types';\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\nimport { defaults } from 'jest-config';\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...defaults.moduleFileExtensions as [\"js\", \"mjs\", \"cjs\", \"jsx\", \"ts\", \"tsx\", \"json\", \"node\"],\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'.(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","defaults","moduleFileExtensions","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","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
@@ -4,7 +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");
7
+ var e = require("@yarn-tool/require-resolve"), t = require("debug-color2"), s = require("jest-config"), o = require("@yarn-tool/table"), r = require("util");
8
8
 
9
9
  function _requireResolve(s) {
10
10
  const o = [ e.requireResolveExtra("@bluelovers/tsdx").result, e.requireResolveExtra("tsdx").result ].filter(Boolean), r = e.requireResolveCore(s, {
@@ -45,6 +45,10 @@ function defaultTsJestTransformerOptions(e) {
45
45
  };
46
46
  }
47
47
 
48
+ function defaultModuleFileExtensions() {
49
+ return [ ...s.defaults.moduleFileExtensions, "mts", "cts" ];
50
+ }
51
+
48
52
  function defaultTransform(t) {
49
53
  const s = {
50
54
  includeGlobal: !0,
@@ -66,7 +70,7 @@ function defaultTransform(t) {
66
70
  }
67
71
 
68
72
  function _newTableBorderless(e) {
69
- let t = new s.Table({
73
+ let t = new o.Table({
70
74
  colAligns: [ "right", "left" ],
71
75
  chars: {
72
76
  top: "",
@@ -87,38 +91,37 @@ function _newTableBorderless(e) {
87
91
  },
88
92
  ...e
89
93
  });
90
- return t = s.applyStyleBorderless(t), t;
94
+ return t = o.applyStyleBorderless(t), t;
91
95
  }
92
96
 
93
97
  function printJestConfigInfo(e, s) {
94
- var r, n, i, l, u, a, _, f;
98
+ var o, n, i, l, u, a, f, _;
95
99
  const c = _newTableBorderless();
96
- null !== (r = s) && void 0 !== r || (s = {}), null !== (n = e) && void 0 !== n || (e = {}),
97
- c.push([ "@bluelovers/jest-config:", "1.1.2" ]), c.push([ "process.versions.node:", process.versions.node ]),
100
+ null !== (o = s) && void 0 !== o || (s = {}), null !== (n = e) && void 0 !== n || (e = {}),
101
+ c.push([ "@bluelovers/jest-config:", "1.1.3" ]), c.push([ "process.versions.node:", process.versions.node ]),
98
102
  c.push([ "cwd:", null !== (i = s.cwd) && void 0 !== i ? i : process.cwd() ]), (null === (l = s.file) || void 0 === l ? void 0 : l.length) && c.push([ "file:", s.file ]),
99
103
  (null === (u = e.cacheDirectory) || void 0 === u ? void 0 : u.length) && c.push([ "cacheDirectory:", e.cacheDirectory ]),
100
104
  (null === (a = e.rootDir) || void 0 === a ? void 0 : a.length) && c.push([ "rootDir:", e.rootDir ]),
101
- (null === (_ = e.roots) || void 0 === _ ? void 0 : _.length) && c.push([ "roots:", o.inspect(e.roots) ]),
102
- (null === (f = e.preset) || void 0 === f ? void 0 : f.length) && c.push([ "preset:", e.preset ]),
103
- e.transform && c.push([ "transform:", o.inspect(e.transform, {
105
+ (null === (f = e.roots) || void 0 === f ? void 0 : f.length) && c.push([ "roots:", r.inspect(e.roots) ]),
106
+ (null === (_ = e.preset) || void 0 === _ ? void 0 : _.length) && c.push([ "preset:", e.preset ]),
107
+ e.transform && c.push([ "transform:", r.inspect(e.transform, {
104
108
  depth: 3
105
109
  }) ]), t.console.gray.log("─".repeat(20)), t.console.log("jest.config"), t.console.log(c.toString()),
106
110
  t.console.gray.log("─".repeat(20));
107
111
  }
108
112
 
109
- const r = require("jest-cache-directory").getJestCacheDirectory();
113
+ const n = require("jest-cache-directory").getJestCacheDirectory();
110
114
 
111
115
  function mixinJestConfig(e, t, s) {
112
- var o, n;
116
+ var o, r;
113
117
  null !== (o = e) && void 0 !== o || (e = {});
114
118
  const i = fixJestConfig({
115
119
  globals: {},
116
- cacheDirectory: r,
120
+ cacheDirectory: n,
117
121
  maxWorkers: 1,
118
122
  clearMocks: !0,
119
123
  passWithNoTests: !0,
120
- moduleFileExtensions: [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ],
121
- testEnvironment: "node",
124
+ moduleFileExtensions: defaultModuleFileExtensions(),
122
125
  ...makeTestRegexConfig([ "ts", "tsx", "mts", "cts" ]),
123
126
  testPathIgnorePatterns: [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ],
124
127
  setupFilesAfterEnv: [],
@@ -128,7 +131,7 @@ function mixinJestConfig(e, t, s) {
128
131
  coveragePathIgnorePatterns: [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ],
129
132
  ...e
130
133
  });
131
- return null !== (n = i.transform) && void 0 !== n || (i.transform = defaultTransform({
134
+ return null !== (r = i.transform) && void 0 !== r || (i.transform = defaultTransform({
132
135
  jestConfig: e,
133
136
  autoPrint: t,
134
137
  options: s,
@@ -137,11 +140,9 @@ function mixinJestConfig(e, t, s) {
137
140
  }
138
141
 
139
142
  exports._newTableBorderless = _newTableBorderless, exports._requireResolve = _requireResolve,
140
- exports.cacheDirectory = r, exports.default = mixinJestConfig, exports.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
143
+ exports.cacheDirectory = n, exports.default = mixinJestConfig, exports.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
141
144
  return [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ];
142
- }, exports.defaultModuleFileExtensions = function defaultModuleFileExtensions() {
143
- return [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ];
144
- }, exports.defaultTestFileExtensions = function defaultTestFileExtensions() {
145
+ }, exports.defaultModuleFileExtensions = defaultModuleFileExtensions, exports.defaultTestFileExtensions = function defaultTestFileExtensions() {
145
146
  return [ "ts", "tsx", "mts", "cts" ];
146
147
  }, exports.defaultTestPathIgnorePatterns = function defaultTestPathIgnorePatterns() {
147
148
  return [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ];
@@ -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/dist/types';\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\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t\t'js',\n\t\t'jsx',\n\t\t'mjs',\n\t\t'cjs',\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\ttestEnvironment: '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","testEnvironment","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/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/dist/types';\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\nimport { defaults } from 'jest-config';\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...defaults.moduleFileExtensions as [\"js\", \"mjs\", \"cjs\", \"jsx\", \"ts\", \"tsx\", \"json\", \"node\"],\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'.(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","defaultModuleFileExtensions","defaults","moduleFileExtensions","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","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -26,17 +26,20 @@ export declare function defaultTestFileExtensions(): [
26
26
  "mts",
27
27
  "cts"
28
28
  ];
29
+ /**
30
+ * @see https://jestjs.io/docs/configuration#options
31
+ */
29
32
  export declare function defaultModuleFileExtensions(): [
30
- "ts",
31
- "tsx",
32
- "mts",
33
- "cts",
34
33
  "js",
35
- "jsx",
36
34
  "mjs",
37
35
  "cjs",
36
+ "jsx",
37
+ "ts",
38
+ "tsx",
38
39
  "json",
39
- "node"
40
+ "node",
41
+ "mts",
42
+ "cts"
40
43
  ];
41
44
  export declare function defaultCoveragePathIgnorePatterns(): [
42
45
  "/node_modules/",
@@ -1,37 +1,39 @@
1
- import { requireResolveExtra as t, requireResolveCore as e } from "@yarn-tool/require-resolve";
1
+ import { requireResolveExtra as e, requireResolveCore as t } from "@yarn-tool/require-resolve";
2
2
 
3
3
  import { console as s } from "debug-color2";
4
4
 
5
- import { Table as o, applyStyleBorderless as n } from "@yarn-tool/table";
5
+ import { defaults as o } from "jest-config";
6
6
 
7
- import { inspect as r } from "util";
7
+ import { Table as r, applyStyleBorderless as n } from "@yarn-tool/table";
8
8
 
9
- import { getJestCacheDirectory as i } from "jest-cache-directory";
9
+ import { inspect as i } from "util";
10
+
11
+ import { getJestCacheDirectory as l } from "jest-cache-directory";
10
12
 
11
13
  function _requireResolve(o) {
12
- const n = [ t("@bluelovers/tsdx").result, t("tsdx").result ].filter(Boolean), r = e(o, {
14
+ const r = [ e("@bluelovers/tsdx").result, e("tsdx").result ].filter(Boolean), n = t(o, {
13
15
  includeGlobal: !0,
14
16
  includeCurrentDirectory: !0,
15
- paths: n
17
+ paths: r
16
18
  });
17
- return s.debug("[require.resolve]", o, "=>", r), r;
19
+ return s.debug("[require.resolve]", o, "=>", n), n;
18
20
  }
19
21
 
20
- function makeTestRegexConfig(t) {
22
+ function makeTestRegexConfig(e) {
21
23
  return {
22
24
  testMatch: void 0,
23
- testRegex: [ `\\.(tests?|spec)\\.(${t = [ t ].flat().join("|")})$`, `__tests__/.*\\.(tests?|spec)\\.(${t})$` ]
25
+ testRegex: [ `\\.(tests?|spec)\\.(${e = [ e ].flat().join("|")})$`, `__tests__/.*\\.(tests?|spec)\\.(${e})$` ]
24
26
  };
25
27
  }
26
28
 
27
- function fixJestConfig(t) {
28
- return t.testMatch ? t.testRegex = void 0 : t.testRegex && (t.testMatch = void 0),
29
- t;
29
+ function fixJestConfig(e) {
30
+ return e.testMatch ? e.testRegex = void 0 : e.testRegex && (e.testMatch = void 0),
31
+ e;
30
32
  }
31
33
 
32
- function defaultTsJestTransformerOptions(t) {
33
- var e, s;
34
- const o = null !== (e = null === (s = t.jestConfig.globals) || void 0 === s ? void 0 : s["ts-jest"]) && void 0 !== e ? e : {}, n = "object" == typeof o.tsconfig ? o.tsconfig : {};
34
+ function defaultTsJestTransformerOptions(e) {
35
+ var t, s;
36
+ const o = null !== (t = null === (s = e.jestConfig.globals) || void 0 === s ? void 0 : s["ts-jest"]) && void 0 !== t ? t : {}, r = "object" == typeof o.tsconfig ? o.tsconfig : {};
35
37
  return {
36
38
  ...o,
37
39
  tsconfig: {
@@ -42,7 +44,7 @@ function defaultTsJestTransformerOptions(t) {
42
44
  noUnusedLocals: !1,
43
45
  noPropertyAccessFromIndexSignature: !1,
44
46
  noImplicitAny: !1,
45
- ...n
47
+ ...r
46
48
  }
47
49
  };
48
50
  }
@@ -52,7 +54,7 @@ function defaultTestFileExtensions() {
52
54
  }
53
55
 
54
56
  function defaultModuleFileExtensions() {
55
- return [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ];
57
+ return [ ...o.moduleFileExtensions, "mts", "cts" ];
56
58
  }
57
59
 
58
60
  function defaultCoveragePathIgnorePatterns() {
@@ -63,19 +65,19 @@ function defaultTestPathIgnorePatterns() {
63
65
  return [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ];
64
66
  }
65
67
 
66
- function defaultTransform(e) {
68
+ function defaultTransform(t) {
67
69
  const s = {
68
70
  includeGlobal: !0,
69
71
  includeCurrentDirectory: !0,
70
- paths: [ t("@bluelovers/jest-config").result ].filter(Boolean)
72
+ paths: [ e("@bluelovers/jest-config").result ].filter(Boolean)
71
73
  };
72
74
  let o = _requireResolve("ts-jest");
73
- o = [ o, defaultTsJestTransformerOptions(e) ];
74
- const {result: n} = t("jest-tsd-transform", s);
75
- if (null != n && n.length) {
76
- const {result: e} = t("jest-chain-transform", s);
77
- null != e && e.length && (o = [ e, {
78
- transformers: [ n, o ]
75
+ o = [ o, defaultTsJestTransformerOptions(t) ];
76
+ const {result: r} = e("jest-tsd-transform", s);
77
+ if (null != r && r.length) {
78
+ const {result: t} = e("jest-chain-transform", s);
79
+ null != t && t.length && (o = [ t, {
80
+ transformers: [ r, o ]
79
81
  } ]);
80
82
  }
81
83
  return {
@@ -83,8 +85,8 @@ function defaultTransform(e) {
83
85
  };
84
86
  }
85
87
 
86
- function _newTableBorderless(t) {
87
- let e = new o({
88
+ function _newTableBorderless(e) {
89
+ let t = new r({
88
90
  colAligns: [ "right", "left" ],
89
91
  chars: {
90
92
  top: "",
@@ -103,39 +105,38 @@ function _newTableBorderless(t) {
103
105
  "right-mid": "",
104
106
  middle: ""
105
107
  },
106
- ...t
108
+ ...e
107
109
  });
108
- return e = n(e), e;
110
+ return t = n(t), t;
109
111
  }
110
112
 
111
- function printJestConfigInfo(t, e) {
112
- var o, n, i, l, u, a, _, f;
113
+ function printJestConfigInfo(e, t) {
114
+ var o, r, n, l, u, f, a, _;
113
115
  const d = _newTableBorderless();
114
- null !== (o = e) && void 0 !== o || (e = {}), null !== (n = t) && void 0 !== n || (t = {}),
115
- d.push([ "@bluelovers/jest-config:", "1.1.2" ]), d.push([ "process.versions.node:", process.versions.node ]),
116
- d.push([ "cwd:", null !== (i = e.cwd) && void 0 !== i ? i : process.cwd() ]), (null === (l = e.file) || void 0 === l ? void 0 : l.length) && d.push([ "file:", e.file ]),
117
- (null === (u = t.cacheDirectory) || void 0 === u ? void 0 : u.length) && d.push([ "cacheDirectory:", t.cacheDirectory ]),
118
- (null === (a = t.rootDir) || void 0 === a ? void 0 : a.length) && d.push([ "rootDir:", t.rootDir ]),
119
- (null === (_ = t.roots) || void 0 === _ ? void 0 : _.length) && d.push([ "roots:", r(t.roots) ]),
120
- (null === (f = t.preset) || void 0 === f ? void 0 : f.length) && d.push([ "preset:", t.preset ]),
121
- t.transform && d.push([ "transform:", r(t.transform, {
116
+ null !== (o = t) && void 0 !== o || (t = {}), null !== (r = e) && void 0 !== r || (e = {}),
117
+ d.push([ "@bluelovers/jest-config:", "1.1.3" ]), d.push([ "process.versions.node:", process.versions.node ]),
118
+ d.push([ "cwd:", null !== (n = t.cwd) && void 0 !== n ? n : process.cwd() ]), (null === (l = t.file) || void 0 === l ? void 0 : l.length) && d.push([ "file:", t.file ]),
119
+ (null === (u = e.cacheDirectory) || void 0 === u ? void 0 : u.length) && d.push([ "cacheDirectory:", e.cacheDirectory ]),
120
+ (null === (f = e.rootDir) || void 0 === f ? void 0 : f.length) && d.push([ "rootDir:", e.rootDir ]),
121
+ (null === (a = e.roots) || void 0 === a ? void 0 : a.length) && d.push([ "roots:", i(e.roots) ]),
122
+ (null === (_ = e.preset) || void 0 === _ ? void 0 : _.length) && d.push([ "preset:", e.preset ]),
123
+ e.transform && d.push([ "transform:", i(e.transform, {
122
124
  depth: 3
123
125
  }) ]), s.gray.log("─".repeat(20)), s.log("jest.config"), s.log(d.toString()), s.gray.log("─".repeat(20));
124
126
  }
125
127
 
126
- const l = i();
128
+ const u = l();
127
129
 
128
- function mixinJestConfig(t, e, s) {
129
- var o, n;
130
- null !== (o = t) && void 0 !== o || (t = {});
131
- const r = fixJestConfig({
130
+ function mixinJestConfig(e, t, s) {
131
+ var o, r;
132
+ null !== (o = e) && void 0 !== o || (e = {});
133
+ const n = fixJestConfig({
132
134
  globals: {},
133
- cacheDirectory: l,
135
+ cacheDirectory: u,
134
136
  maxWorkers: 1,
135
137
  clearMocks: !0,
136
138
  passWithNoTests: !0,
137
- moduleFileExtensions: [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ],
138
- testEnvironment: "node",
139
+ moduleFileExtensions: defaultModuleFileExtensions(),
139
140
  ...makeTestRegexConfig([ "ts", "tsx", "mts", "cts" ]),
140
141
  testPathIgnorePatterns: [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ],
141
142
  setupFilesAfterEnv: [],
@@ -143,15 +144,15 @@ function mixinJestConfig(t, e, s) {
143
144
  coverageProvider: "v8",
144
145
  collectCoverage: !1,
145
146
  coveragePathIgnorePatterns: [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ],
146
- ...t
147
+ ...e
147
148
  });
148
- return null !== (n = r.transform) && void 0 !== n || (r.transform = defaultTransform({
149
- jestConfig: t,
150
- autoPrint: e,
149
+ return null !== (r = n.transform) && void 0 !== r || (n.transform = defaultTransform({
150
+ jestConfig: e,
151
+ autoPrint: t,
151
152
  options: s,
152
- newJestConfig: r
153
- })), e && printJestConfigInfo(r, s), r;
153
+ newJestConfig: n
154
+ })), t && printJestConfigInfo(n, s), n;
154
155
  }
155
156
 
156
- export { _newTableBorderless, _requireResolve, l as cacheDirectory, mixinJestConfig as default, defaultCoveragePathIgnorePatterns, defaultModuleFileExtensions, defaultTestFileExtensions, defaultTestPathIgnorePatterns, defaultTransform, fixJestConfig, makeTestRegexConfig, mixinJestConfig, printJestConfigInfo };
157
+ export { _newTableBorderless, _requireResolve, u as cacheDirectory, mixinJestConfig as default, defaultCoveragePathIgnorePatterns, defaultModuleFileExtensions, defaultTestFileExtensions, defaultTestPathIgnorePatterns, defaultTransform, fixJestConfig, makeTestRegexConfig, mixinJestConfig, printJestConfigInfo };
157
158
  //# sourceMappingURL=index.esm.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.mjs","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/dist/types';\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\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t\t'js',\n\t\t'jsx',\n\t\t'mjs',\n\t\t'cjs',\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\ttestEnvironment: '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","defaultTestFileExtensions","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","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","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.mjs","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/dist/types';\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\nimport { defaults } from 'jest-config';\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...defaults.moduleFileExtensions as [\"js\", \"mjs\", \"cjs\", \"jsx\", \"ts\", \"tsx\", \"json\", \"node\"],\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'.(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","defaultTestFileExtensions","defaultModuleFileExtensions","defaults","moduleFileExtensions","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","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","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@yarn-tool/require-resolve'), require('debug-color2'), require('@yarn-tool/table'), require('util'), require('jest-cache-directory')) :
3
- typeof define === 'function' && define.amd ? define(['exports', '@yarn-tool/require-resolve', 'debug-color2', '@yarn-tool/table', 'util', 'jest-cache-directory'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.BlueloversJestConfig = {}, global.requireResolve, global.debugColor2, global.table, global.util, global.jestCacheDirectory));
5
- })(this, (function (exports, requireResolve, debugColor2, table, util, jestCacheDirectory) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@yarn-tool/require-resolve'), require('debug-color2'), require('jest-config'), require('@yarn-tool/table'), require('util'), require('jest-cache-directory')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', '@yarn-tool/require-resolve', 'debug-color2', 'jest-config', '@yarn-tool/table', 'util', 'jest-cache-directory'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.BlueloversJestConfig = {}, global.requireResolve, global.debugColor2, global.jestConfig, global.table, global.util, global.jestCacheDirectory));
5
+ })(this, (function (exports, requireResolve, debugColor2, jestConfig, table, util, jestCacheDirectory) { 'use strict';
6
6
 
7
7
  function _requireResolve(name) {
8
8
  const paths = [requireResolve.requireResolveExtra('@bluelovers/tsdx').result, requireResolve.requireResolveExtra('tsdx').result].filter(Boolean);
@@ -54,7 +54,7 @@
54
54
  return value;
55
55
  }
56
56
  function defaultModuleFileExtensions() {
57
- const value = ['ts', 'tsx', 'mts', 'cts', 'js', 'jsx', 'mjs', 'cjs', 'json', 'node'];
57
+ const value = [...jestConfig.defaults.moduleFileExtensions, 'mts', 'cts'];
58
58
  return value;
59
59
  }
60
60
  function defaultCoveragePathIgnorePatterns() {
@@ -94,7 +94,7 @@
94
94
  }
95
95
 
96
96
  var name = "@bluelovers/jest-config";
97
- var version = "1.1.2";
97
+ var version = "1.1.3";
98
98
 
99
99
  function _newTableBorderless(options) {
100
100
  let table$1 = new table.Table({
@@ -154,7 +154,6 @@
154
154
  clearMocks: true,
155
155
  passWithNoTests: true,
156
156
  moduleFileExtensions: defaultModuleFileExtensions(),
157
- testEnvironment: 'node',
158
157
  ...makeTestRegexConfig(defaultTestFileExtensions()),
159
158
  testPathIgnorePatterns: defaultTestPathIgnorePatterns(),
160
159
  setupFilesAfterEnv: [],
@@ -177,7 +176,7 @@
177
176
  exports._newTableBorderless = _newTableBorderless;
178
177
  exports._requireResolve = _requireResolve;
179
178
  exports.cacheDirectory = cacheDirectory;
180
- exports["default"] = mixinJestConfig;
179
+ exports.default = mixinJestConfig;
181
180
  exports.defaultCoveragePathIgnorePatterns = defaultCoveragePathIgnorePatterns;
182
181
  exports.defaultModuleFileExtensions = defaultModuleFileExtensions;
183
182
  exports.defaultTestFileExtensions = defaultTestFileExtensions;
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.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/dist/types';\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\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t\t'js',\n\t\t'jsx',\n\t\t'mjs',\n\t\t'cjs',\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\ttestEnvironment: '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","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.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/dist/types';\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\nimport { defaults } from 'jest-config';\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...defaults.moduleFileExtensions as [\"js\", \"mjs\", \"cjs\", \"jsx\", \"ts\", \"tsx\", \"json\", \"node\"],\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'.(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","defaults","moduleFileExtensions","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","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  !function(e, t) {
2
- "object" == typeof exports && "undefined" != typeof module ? t(exports, require("@yarn-tool/require-resolve"), require("debug-color2"), require("@yarn-tool/table"), require("util"), require("jest-cache-directory")) : "function" == typeof define && define.amd ? define([ "exports", "@yarn-tool/require-resolve", "debug-color2", "@yarn-tool/table", "util", "jest-cache-directory" ], t) : t((e = "undefined" != typeof globalThis ? globalThis : e || self).BlueloversJestConfig = {}, e.requireResolve, e.debugColor2, e.table, e.util, e.jestCacheDirectory);
3
- }(this, (function(e, t, s, o, r, n) {
2
+ "object" == typeof exports && "undefined" != typeof module ? t(exports, require("@yarn-tool/require-resolve"), require("debug-color2"), require("jest-config"), require("@yarn-tool/table"), require("util"), require("jest-cache-directory")) : "function" == typeof define && define.amd ? define([ "exports", "@yarn-tool/require-resolve", "debug-color2", "jest-config", "@yarn-tool/table", "util", "jest-cache-directory" ], t) : t((e = "undefined" != typeof globalThis ? globalThis : e || self).BlueloversJestConfig = {}, e.requireResolve, e.debugColor2, e.jestConfig, e.table, e.util, e.jestCacheDirectory);
3
+ }(this, (function(e, t, s, o, r, n, i) {
4
4
  "use strict";
5
5
  function _requireResolve(e) {
6
6
  const o = [ t.requireResolveExtra("@bluelovers/tsdx").result, t.requireResolveExtra("tsdx").result ].filter(Boolean), r = t.requireResolveCore(e, {
@@ -37,6 +37,9 @@
37
37
  }
38
38
  };
39
39
  }
40
+ function defaultModuleFileExtensions() {
41
+ return [ ...o.defaults.moduleFileExtensions, "mts", "cts" ];
42
+ }
40
43
  function defaultTransform(e) {
41
44
  const s = {
42
45
  includeGlobal: !0,
@@ -57,7 +60,7 @@
57
60
  };
58
61
  }
59
62
  function _newTableBorderless(e) {
60
- let t = new o.Table({
63
+ let t = new r.Table({
61
64
  colAligns: [ "right", "left" ],
62
65
  chars: {
63
66
  top: "",
@@ -78,35 +81,34 @@
78
81
  },
79
82
  ...e
80
83
  });
81
- return t = o.applyStyleBorderless(t), t;
84
+ return t = r.applyStyleBorderless(t), t;
82
85
  }
83
86
  function printJestConfigInfo(e, t) {
84
- var o, n, i, l, u, a, f, c;
87
+ var o, r, i, l, u, a, f, c;
85
88
  const d = _newTableBorderless();
86
- null !== (o = t) && void 0 !== o || (t = {}), null !== (n = e) && void 0 !== n || (e = {}),
87
- d.push([ "@bluelovers/jest-config:", "1.1.2" ]), d.push([ "process.versions.node:", process.versions.node ]),
89
+ null !== (o = t) && void 0 !== o || (t = {}), null !== (r = e) && void 0 !== r || (e = {}),
90
+ d.push([ "@bluelovers/jest-config:", "1.1.3" ]), d.push([ "process.versions.node:", process.versions.node ]),
88
91
  d.push([ "cwd:", null !== (i = t.cwd) && void 0 !== i ? i : process.cwd() ]), (null === (l = t.file) || void 0 === l ? void 0 : l.length) && d.push([ "file:", t.file ]),
89
92
  (null === (u = e.cacheDirectory) || void 0 === u ? void 0 : u.length) && d.push([ "cacheDirectory:", e.cacheDirectory ]),
90
93
  (null === (a = e.rootDir) || void 0 === a ? void 0 : a.length) && d.push([ "rootDir:", e.rootDir ]),
91
- (null === (f = e.roots) || void 0 === f ? void 0 : f.length) && d.push([ "roots:", r.inspect(e.roots) ]),
94
+ (null === (f = e.roots) || void 0 === f ? void 0 : f.length) && d.push([ "roots:", n.inspect(e.roots) ]),
92
95
  (null === (c = e.preset) || void 0 === c ? void 0 : c.length) && d.push([ "preset:", e.preset ]),
93
- e.transform && d.push([ "transform:", r.inspect(e.transform, {
96
+ e.transform && d.push([ "transform:", n.inspect(e.transform, {
94
97
  depth: 3
95
98
  }) ]), s.console.gray.log("─".repeat(20)), s.console.log("jest.config"), s.console.log(d.toString()),
96
99
  s.console.gray.log("─".repeat(20));
97
100
  }
98
- const i = n.getJestCacheDirectory();
101
+ const l = i.getJestCacheDirectory();
99
102
  function mixinJestConfig(e, t, s) {
100
103
  var o, r;
101
104
  null !== (o = e) && void 0 !== o || (e = {});
102
105
  const n = fixJestConfig({
103
106
  globals: {},
104
- cacheDirectory: i,
107
+ cacheDirectory: l,
105
108
  maxWorkers: 1,
106
109
  clearMocks: !0,
107
110
  passWithNoTests: !0,
108
- moduleFileExtensions: [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ],
109
- testEnvironment: "node",
111
+ moduleFileExtensions: defaultModuleFileExtensions(),
110
112
  ...makeTestRegexConfig([ "ts", "tsx", "mts", "cts" ]),
111
113
  testPathIgnorePatterns: [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ],
112
114
  setupFilesAfterEnv: [],
@@ -124,11 +126,9 @@
124
126
  })), t && printJestConfigInfo(n, s), n;
125
127
  }
126
128
  e._newTableBorderless = _newTableBorderless, e._requireResolve = _requireResolve,
127
- e.cacheDirectory = i, e.default = mixinJestConfig, e.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
129
+ e.cacheDirectory = l, e.default = mixinJestConfig, e.defaultCoveragePathIgnorePatterns = function defaultCoveragePathIgnorePatterns() {
128
130
  return [ "/node_modules/", "/__snapshots__/", "/__tests__/", "/__test__/", "/dist/", "/test/", "/fixture/", "/__file_snapshots__/", "/__fixtures__/" ];
129
- }, e.defaultModuleFileExtensions = function defaultModuleFileExtensions() {
130
- return [ "ts", "tsx", "mts", "cts", "js", "jsx", "mjs", "cjs", "json", "node" ];
131
- }, e.defaultTestFileExtensions = function defaultTestFileExtensions() {
131
+ }, e.defaultModuleFileExtensions = defaultModuleFileExtensions, e.defaultTestFileExtensions = function defaultTestFileExtensions() {
132
132
  return [ "ts", "tsx", "mts", "cts" ];
133
133
  }, e.defaultTestPathIgnorePatterns = function defaultTestPathIgnorePatterns() {
134
134
  return [ "/node_modules/", "/__fixtures__/", "/__file_snapshots__/", "/fixtures/", "/__tests__/helpers/", "/__tests__/utils/", "__mocks__", "/dist/" ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.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/dist/types';\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\nexport function defaultModuleFileExtensions()\n{\n\tconst value = [\n\t\t'ts',\n\t\t'tsx',\n\t\t'mts',\n\t\t'cts',\n\t\t'js',\n\t\t'jsx',\n\t\t'mjs',\n\t\t'cjs',\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\ttestEnvironment: '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","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultModuleFileExtensions","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.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/dist/types';\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\nimport { defaults } from 'jest-config';\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...defaults.moduleFileExtensions as [\"js\", \"mjs\", \"cjs\", \"jsx\", \"ts\", \"tsx\", \"json\", \"node\"],\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'.(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","defaultModuleFileExtensions","defaults","moduleFileExtensions","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","testPathIgnorePatterns","setupFilesAfterEnv","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluelovers/jest-config",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "Jest preset configuration",
5
5
  "keywords": [
6
6
  "jest-preset",
@@ -101,10 +101,10 @@
101
101
  "tsc:showConfig": "ynpx get-current-tsconfig -p"
102
102
  },
103
103
  "dependencies": {
104
- "@yarn-tool/require-resolve": "^2.0.8",
105
- "@yarn-tool/table": "^2.0.11",
104
+ "@yarn-tool/require-resolve": "^2.0.9",
105
+ "@yarn-tool/table": "^2.0.12",
106
106
  "debug-color2": "^1.3.2",
107
- "jest-cache-directory": "^1.0.1",
107
+ "jest-cache-directory": "^1.0.2",
108
108
  "jest-chain-transform": "^0.0.4",
109
109
  "ts-type": ">=2"
110
110
  },
@@ -112,5 +112,5 @@
112
112
  "publishConfig": {
113
113
  "access": "public"
114
114
  },
115
- "gitHead": "3772062f6ff0108126930daf1714b812401c95ee"
115
+ "gitHead": "cfe306fed943e6130c41737c91fdeff7e89bd4fa"
116
116
  }
package/src/defaults.ts CHANGED
@@ -6,6 +6,8 @@ import { InitialOptionsTsJest } from 'ts-jest';
6
6
  import { defaultTsJestTransformerOptions } from './plugin/ts-jest';
7
7
  import { IRuntime } from './types';
8
8
 
9
+ import { defaults } from 'jest-config';
10
+
9
11
  export function defaultTestFileExtensions()
10
12
  {
11
13
  const value = [
@@ -21,19 +23,15 @@ export function defaultTestFileExtensions()
21
23
  return value as ITSToWriteableArray<typeof value>;
22
24
  }
23
25
 
26
+ /**
27
+ * @see https://jestjs.io/docs/configuration#options
28
+ */
24
29
  export function defaultModuleFileExtensions()
25
30
  {
26
31
  const value = [
27
- 'ts',
28
- 'tsx',
32
+ ...defaults.moduleFileExtensions as ["js", "mjs", "cjs", "jsx", "ts", "tsx", "json", "node"],
29
33
  'mts',
30
34
  'cts',
31
- 'js',
32
- 'jsx',
33
- 'mjs',
34
- 'cjs',
35
- 'json',
36
- 'node',
37
35
  ] as const
38
36
  return value as ITSToWriteableArray<typeof value>;
39
37
  }
package/src/index.ts CHANGED
@@ -33,7 +33,7 @@ export function mixinJestConfig<T extends IJestConfig>(jestConfig?: T, autoPrint
33
33
  clearMocks: true,
34
34
  passWithNoTests: true,
35
35
  moduleFileExtensions: defaultModuleFileExtensions(),
36
- testEnvironment: 'node',
36
+ //testEnvironment: 'node',
37
37
  //testMatch: ['**/*.test.ts', '**/*.spec.ts'],
38
38
  ...makeTestRegexConfig(defaultTestFileExtensions()),
39
39
  testPathIgnorePatterns: defaultTestPathIgnorePatterns(),