@bluelovers/jest-config 1.0.6 β†’ 1.0.7

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,22 @@
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.0.7](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.0.6...@bluelovers/jest-config@1.0.7) (2022-08-13)
7
+
8
+
9
+ ### πŸ› γ€€Build System
10
+
11
+ * **dist:** update build ([82e225f](https://github.com/bluelovers/ws-jest/commit/82e225f5ebfea7ffe24f1180cf7e827c945bddd1))
12
+
13
+
14
+ ### πŸ”–γ€€Miscellaneous
15
+
16
+ * . ([a0a2799](https://github.com/bluelovers/ws-jest/commit/a0a279914a796d1d770bcfea5098a9bbc604bbc3))
17
+
18
+
19
+
20
+
21
+
6
22
  ## [1.0.6](https://github.com/bluelovers/ws-jest/compare/@bluelovers/jest-config@1.0.5...@bluelovers/jest-config@1.0.6) (2022-08-12)
7
23
 
8
24
 
@@ -77,6 +77,9 @@ function defaultTestPathIgnorePatterns() {
77
77
  return value;
78
78
  }
79
79
 
80
+ var name = "@bluelovers/jest-config";
81
+ var version = "1.0.7";
82
+
80
83
  function _newTableBorderless(options) {
81
84
  let table$1 = new table.Table({
82
85
  colAligns: ['right', 'left'],
@@ -109,6 +112,7 @@ function printJestConfigInfo(jestConfig, options) {
109
112
 
110
113
  (_options = options) !== null && _options !== void 0 ? _options : options = {};
111
114
  (_jestConfig = jestConfig) !== null && _jestConfig !== void 0 ? _jestConfig : jestConfig = {};
115
+ table.push([`${name}:`, version]);
112
116
  table.push(['cwd:', (_options$cwd = options.cwd) !== null && _options$cwd !== void 0 ? _options$cwd : process.cwd()]);
113
117
  ((_options$file = options.file) === null || _options$file === void 0 ? void 0 : _options$file.length) && table.push(['file:', options.file]);
114
118
  ((_jestConfig$cacheDire = jestConfig.cacheDirectory) === null || _jestConfig$cacheDire === void 0 ? void 0 : _jestConfig$cacheDire.length) && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.development.cjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\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: InitialOptionsTsJest, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","tmpdir","call","toString","makeTestRegexConfig","testExt","flat","testMatch","testRegex","fixJestConfig","jestConfig","path","realpathSync","native","error","code","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","push","cwd","file","length","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.development.cjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\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: InitialOptionsTsJest, 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(['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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","tmpdir","call","toString","makeTestRegexConfig","testExt","flat","testMatch","testRegex","fixJestConfig","jestConfig","path","realpathSync","native","error","code","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","push","jName","jVersion","cwd","file","length","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@yarn-tool/require-resolve"),t=require("path"),s=require("os"),o=require("debug-color2"),r=require("graceful-fs"),i=require("@yarn-tool/table"),n=require("util");function _requireResolve(t){const s=[e.requireResolveExtra("@bluelovers/tsdx").result,e.requireResolveExtra("tsdx").result].filter(Boolean),r=e.requireResolveCore(t,{includeGlobal:!0,includeCurrentDirectory:!0,paths:s});return o.console.debug("[require.resolve]",t,"=>",r),r}function getCacheDirectory(){const{getuid:e}=process,o=process.env.JEST_CACHE_DIRECTORY||t.join(function tryRealpath(e){try{e=r.realpathSync.native(e)}catch(e){if("ENOENT"!==e.code)throw e}return e}(s.tmpdir()),"jest");return null==e?o:`${o}_${e.call(process).toString(36)}`}function makeTestRegexConfig(e){return{testMatch:void 0,testRegex:[`\\.(tests?|spec)\\.(${e=[e].flat().join("|")})$`,`__tests__/.*\\.(${e})$`]}}function fixJestConfig(e){return e.testMatch?e.testRegex=void 0:e.testRegex&&(e.testMatch=void 0),e}function _newTableBorderless(e){let t=new i.Table({colAligns:["right","left"],chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},...e});return t=i.applyStyleBorderless(t),t}function printJestConfigInfo(e,t){var s,r,i,l,u,c,a,_;const d=_newTableBorderless();null!==(s=t)&&void 0!==s||(t={}),null!==(r=e)&&void 0!==r||(e={}),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]),(null===(u=e.cacheDirectory)||void 0===u?void 0:u.length)&&d.push(["cacheDirectory:",e.cacheDirectory]),(null===(c=e.rootDir)||void 0===c?void 0:c.length)&&d.push(["rootDir:",e.rootDir]),(null===(a=e.roots)||void 0===a?void 0:a.length)&&d.push(["roots:",n.inspect(e.roots)]),(null===(_=e.preset)||void 0===_?void 0:_.length)&&d.push(["preset:",e.preset]),o.console.gray.log("─".repeat(20)),o.console.log("jest.config"),o.console.log(d.toString()),o.console.gray.log("─".repeat(20))}const l=getCacheDirectory();function mixinJestConfig(e,t,s){var o;null!==(o=e)&&void 0!==o||(e={});const r=fixJestConfig({globals:{"ts-jest":{}},cacheDirectory:l,maxWorkers:1,clearMocks:!0,passWithNoTests:!0,moduleFileExtensions:["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"],testEnvironment:"node",...makeTestRegexConfig(["ts","tsx","mts","cts"]),testPathIgnorePatterns:["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"],setupFilesAfterEnv:[],transform:{".(ts|tsx|mts|cts)$":_requireResolve("ts-jest")},verbose:!0,coverageProvider:"v8",collectCoverage:!1,coveragePathIgnorePatterns:["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"],...e});return t&&printJestConfigInfo(r,s),r}exports._newTableBorderless=_newTableBorderless,exports._requireResolve=_requireResolve,exports.cacheDirectory=l,exports.default=mixinJestConfig,exports.defaultCoveragePathIgnorePatterns=function defaultCoveragePathIgnorePatterns(){return["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"]},exports.defaultModuleFileExtensions=function defaultModuleFileExtensions(){return["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"]},exports.defaultTestFileExtensions=function defaultTestFileExtensions(){return["ts","tsx","mts","cts"]},exports.defaultTestPathIgnorePatterns=function defaultTestPathIgnorePatterns(){return["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"]},exports.fixJestConfig=fixJestConfig,exports.getCacheDirectory=getCacheDirectory,exports.makeTestRegexConfig=makeTestRegexConfig,exports.mixinJestConfig=mixinJestConfig,exports.printJestConfigInfo=printJestConfigInfo;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@yarn-tool/require-resolve"),t=require("path"),s=require("os"),o=require("debug-color2"),r=require("graceful-fs"),i=require("@yarn-tool/table"),n=require("util");function _requireResolve(t){const s=[e.requireResolveExtra("@bluelovers/tsdx").result,e.requireResolveExtra("tsdx").result].filter(Boolean),r=e.requireResolveCore(t,{includeGlobal:!0,includeCurrentDirectory:!0,paths:s});return o.console.debug("[require.resolve]",t,"=>",r),r}function getCacheDirectory(){const{getuid:e}=process,o=process.env.JEST_CACHE_DIRECTORY||t.join(function tryRealpath(e){try{e=r.realpathSync.native(e)}catch(e){if("ENOENT"!==e.code)throw e}return e}(s.tmpdir()),"jest");return null==e?o:`${o}_${e.call(process).toString(36)}`}function makeTestRegexConfig(e){return{testMatch:void 0,testRegex:[`\\.(tests?|spec)\\.(${e=[e].flat().join("|")})$`,`__tests__/.*\\.(${e})$`]}}function fixJestConfig(e){return e.testMatch?e.testRegex=void 0:e.testRegex&&(e.testMatch=void 0),e}function _newTableBorderless(e){let t=new i.Table({colAligns:["right","left"],chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},...e});return t=i.applyStyleBorderless(t),t}function printJestConfigInfo(e,t){var s,r,i,l,u,c,a,_;const d=_newTableBorderless();null!==(s=t)&&void 0!==s||(t={}),null!==(r=e)&&void 0!==r||(e={}),d.push(["@bluelovers/jest-config:","1.0.7"]),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]),(null===(u=e.cacheDirectory)||void 0===u?void 0:u.length)&&d.push(["cacheDirectory:",e.cacheDirectory]),(null===(c=e.rootDir)||void 0===c?void 0:c.length)&&d.push(["rootDir:",e.rootDir]),(null===(a=e.roots)||void 0===a?void 0:a.length)&&d.push(["roots:",n.inspect(e.roots)]),(null===(_=e.preset)||void 0===_?void 0:_.length)&&d.push(["preset:",e.preset]),o.console.gray.log("─".repeat(20)),o.console.log("jest.config"),o.console.log(d.toString()),o.console.gray.log("─".repeat(20))}const l=getCacheDirectory();function mixinJestConfig(e,t,s){var o;null!==(o=e)&&void 0!==o||(e={});const r=fixJestConfig({globals:{"ts-jest":{}},cacheDirectory:l,maxWorkers:1,clearMocks:!0,passWithNoTests:!0,moduleFileExtensions:["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"],testEnvironment:"node",...makeTestRegexConfig(["ts","tsx","mts","cts"]),testPathIgnorePatterns:["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"],setupFilesAfterEnv:[],transform:{".(ts|tsx|mts|cts)$":_requireResolve("ts-jest")},verbose:!0,coverageProvider:"v8",collectCoverage:!1,coveragePathIgnorePatterns:["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"],...e});return t&&printJestConfigInfo(r,s),r}exports._newTableBorderless=_newTableBorderless,exports._requireResolve=_requireResolve,exports.cacheDirectory=l,exports.default=mixinJestConfig,exports.defaultCoveragePathIgnorePatterns=function defaultCoveragePathIgnorePatterns(){return["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"]},exports.defaultModuleFileExtensions=function defaultModuleFileExtensions(){return["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"]},exports.defaultTestFileExtensions=function defaultTestFileExtensions(){return["ts","tsx","mts","cts"]},exports.defaultTestPathIgnorePatterns=function defaultTestPathIgnorePatterns(){return["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"]},exports.fixJestConfig=fixJestConfig,exports.getCacheDirectory=getCacheDirectory,exports.makeTestRegexConfig=makeTestRegexConfig,exports.mixinJestConfig=mixinJestConfig,exports.printJestConfigInfo=printJestConfigInfo;
2
2
  //# sourceMappingURL=index.cjs.production.min.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.production.min.cjs","sources":["../src/helper.ts","../src/print.ts","../src/index.ts","../src/defaults.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\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: InitialOptionsTsJest, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","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/print.ts","../src/index.ts","../src/defaults.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\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: InitialOptionsTsJest, 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(['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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultModuleFileExtensions","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"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"}
@@ -88,14 +88,15 @@ function _newTableBorderless(t) {
88
88
 
89
89
  function printJestConfigInfo(t, e) {
90
90
  var s, o, n, i, l, c, _, a;
91
- const d = _newTableBorderless();
91
+ const f = _newTableBorderless();
92
92
  null !== (s = e) && void 0 !== s || (e = {}), null !== (o = t) && void 0 !== o || (t = {}),
93
- d.push([ "cwd:", null !== (n = e.cwd) && void 0 !== n ? n : process.cwd() ]), (null === (i = e.file) || void 0 === i ? void 0 : i.length) && d.push([ "file:", e.file ]),
94
- (null === (l = t.cacheDirectory) || void 0 === l ? void 0 : l.length) && d.push([ "cacheDirectory:", t.cacheDirectory ]),
95
- (null === (c = t.rootDir) || void 0 === c ? void 0 : c.length) && d.push([ "rootDir:", t.rootDir ]),
96
- (null === (_ = t.roots) || void 0 === _ ? void 0 : _.length) && d.push([ "roots:", u(t.roots) ]),
97
- (null === (a = t.preset) || void 0 === a ? void 0 : a.length) && d.push([ "preset:", t.preset ]),
98
- r.gray.log("─".repeat(20)), r.log("jest.config"), r.log(d.toString()), r.gray.log("─".repeat(20));
93
+ f.push([ "@bluelovers/jest-config:", "1.0.7" ]), f.push([ "cwd:", null !== (n = e.cwd) && void 0 !== n ? n : process.cwd() ]),
94
+ (null === (i = e.file) || void 0 === i ? void 0 : i.length) && f.push([ "file:", e.file ]),
95
+ (null === (l = t.cacheDirectory) || void 0 === l ? void 0 : l.length) && f.push([ "cacheDirectory:", t.cacheDirectory ]),
96
+ (null === (c = t.rootDir) || void 0 === c ? void 0 : c.length) && f.push([ "rootDir:", t.rootDir ]),
97
+ (null === (_ = t.roots) || void 0 === _ ? void 0 : _.length) && f.push([ "roots:", u(t.roots) ]),
98
+ (null === (a = t.preset) || void 0 === a ? void 0 : a.length) && f.push([ "preset:", t.preset ]),
99
+ r.gray.log("─".repeat(20)), r.log("jest.config"), r.log(f.toString()), r.gray.log("─".repeat(20));
99
100
  }
100
101
 
101
102
  const c = getCacheDirectory();
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.mjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\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: InitialOptionsTsJest, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","defaultTestFileExtensions","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.mjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\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: InitialOptionsTsJest, 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(['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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","defaultTestFileExtensions","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
@@ -71,6 +71,9 @@
71
71
  return value;
72
72
  }
73
73
 
74
+ var name = "@bluelovers/jest-config";
75
+ var version = "1.0.7";
76
+
74
77
  function _newTableBorderless(options) {
75
78
  let table$1 = new table.Table({
76
79
  colAligns: ['right', 'left'],
@@ -103,6 +106,7 @@
103
106
 
104
107
  (_options = options) !== null && _options !== void 0 ? _options : options = {};
105
108
  (_jestConfig = jestConfig) !== null && _jestConfig !== void 0 ? _jestConfig : jestConfig = {};
109
+ table.push([`${name}:`, version]);
106
110
  table.push(['cwd:', (_options$cwd = options.cwd) !== null && _options$cwd !== void 0 ? _options$cwd : process.cwd()]);
107
111
  ((_options$file = options.file) === null || _options$file === void 0 ? void 0 : _options$file.length) && table.push(['file:', options.file]);
108
112
  ((_jestConfig$cacheDire = jestConfig.cacheDirectory) === null || _jestConfig$cacheDire === void 0 ? void 0 : _jestConfig$cacheDire.length) && table.push(['cacheDirectory:', jestConfig.cacheDirectory]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.development.cjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\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: InitialOptionsTsJest, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","tmpdir","call","toString","makeTestRegexConfig","testExt","flat","testMatch","testRegex","fixJestConfig","jestConfig","path","realpathSync","native","error","code","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","push","cwd","file","length","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.development.cjs","sources":["../src/helper.ts","../src/defaults.ts","../src/print.ts","../src/index.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\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: InitialOptionsTsJest, 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(['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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\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","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","tmpdir","call","toString","makeTestRegexConfig","testExt","flat","testMatch","testRegex","fixJestConfig","jestConfig","path","realpathSync","native","error","code","defaultTestFileExtensions","value","defaultModuleFileExtensions","defaultCoveragePathIgnorePatterns","defaultTestPathIgnorePatterns","_newTableBorderless","options","table","Table","colAligns","chars","top","bottom","left","mid","right","middle","applyStyleBorderless","printJestConfigInfo","push","jName","jVersion","cwd","file","length","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns"],"mappings":";;;;;;CAQM,SAAUA,eAAV,CAA0BC,IAA1B,EAAsC;GAE3C,MAAMC,KAAK,GAAG,CACbC,kCAAmB,CAAC,kBAAD,CAAnB,CAAwCC,MAD3B,EAEbD,kCAAmB,CAAC,MAAD,CAAnB,CAA4BC,MAFf,EAGZC,MAHY,CAGLC,OAHK,CAAd,CAAA;CAKA,EAAA,MAAMF,MAAM,GAAGG,iCAAkB,CAACN,IAAD,EAAO;CACvCO,IAAAA,aAAa,EAAE,IADwB;CAEvCC,IAAAA,uBAAuB,EAAE,IAFc;CAGvCP,IAAAA,KAAAA;CAHuC,GAAP,CAAjC,CAAA;GAMAQ,mBAAO,CAACC,KAAR,CAAc,mBAAd,EAAmCV,IAAnC,EAAyC,IAAzC,EAA+CG,MAA/C,CAAA,CAAA;CAEA,EAAA,OAAOA,MAAP,CAAA;CACA,CAAA;UAKeQ,oBAAiB;GAEhC,MAAM;CAAEC,IAAAA,MAAAA;CAAF,GAAA,GAAaC,OAAnB,CAAA;CACA,EAAA,MAAMC,UAAU,GAAGD,OAAO,CAACE,GAAR,CAAY,sBAAZ,CAAA,IAAuCC,SAAI,CAACC,WAAW,CAACC,SAAM,EAAP,CAAZ,EAAwB,MAAxB,CAA9D,CAAA;;GACA,IAAIN,MAAM,IAAI,IAAd,EACA;CACC,IAAA,OAAOE,UAAP,CAAA;CACA,GAHD,MAKA;CAIC,IAAA,OAAU,CAAAA,EAAAA,UAAc,CAAAF,CAAAA,EAAAA,MAAM,CAACO,IAAP,CAAYN,OAAZ,CAAqBO,CAAAA,QAArB,CAA8B,EAA9B,EAAxB,CAAA,CAAA;CACA,GAAA;CACD,CAAA;CAEK,SAAUC,mBAAV,CAA8BC,OAA9B,EAAiF;GAEtFA,OAAO,GAAG,CAACA,OAAD,CAAA,CAAUC,IAAV,EAAiBP,CAAAA,IAAjB,CAAsB,GAAtB,CAAV,CAAA;GAEA,OAAO;KACNQ,SAAS,EAAE,KAAK,CADV;KAENC,SAAS,EAAE,CACV,CAAuBH,oBAAAA,EAAAA,OAAW,IADxB,EAEV,CAAA,kBAAA,EAAqBA,OAAW,CAFtB,EAAA,CAAA,CAAA;IAFZ,CAAA;CAOA,CAAA;CAEK,SAAUI,aAAV,CAAwDC,UAAxD,EAAqE;GAE1E,IAAIA,UAAU,CAACH,SAAf,EACA;CACCG,IAAAA,UAAU,CAACF,SAAX,GAAuB,KAAK,CAA5B,CAAA;CACA,GAHD,MAIK,IAAIE,UAAU,CAACF,SAAf,EACL;CACCE,IAAAA,UAAU,CAACH,SAAX,GAAuB,KAAK,CAA5B,CAAA;CACA,GAAA;;CAED,EAAA,OAAOG,UAAP,CAAA;CACA,CAAA;CAKuB,SAAAV,WAAA,CAAYW,IAAZ,EAAwB;GAE/C,IACA;CACCA,IAAAA,IAAI,GAAGC,uBAAY,CAACC,MAAb,CAAoBF,IAApB,CAAP,CAAA;IAFD,CAIA,OAAOG,KAAP,EACA;CACC,IAAA,IAAIA,KAAK,CAACC,IAAN,KAAe,QAAnB,EACA;CACC,MAAA,MAAMD,KAAN,CAAA;CACA,KAAA;CACD,GAAA;;CAED,EAAA,OAAOH,IAAP,CAAA;CACA;;UCzFeK,4BAAyB;GAExC,MAAMC,KAAK,GAAG,CACb,IADa,EAEb,KAFa,EAGb,KAHa,EAIb,KAJa,CAAd,CAAA;CAUA,EAAA,OAAOA,KAAP,CAAA;CACA,CAAA;UAEeC,8BAA2B;GAE1C,MAAMD,KAAK,GAAG,CACb,IADa,EAEb,KAFa,EAGb,KAHa,EAIb,KAJa,EAKb,IALa,EAMb,KANa,EAOb,KAPa,EAQb,KARa,EASb,MATa,EAUb,MAVa,CAAd,CAAA;CAYA,EAAA,OAAOA,KAAP,CAAA;CACA,CAAA;UAEeE,oCAAiC;CAEhD,EAAA,MAAMF,KAAK,GAAG,CACb,gBADa,EAEb,iBAFa,EAGb,aAHa,EAIb,YAJa,EAQb,QARa,EASb,QATa,EAUb,WAVa,CAAd,CAAA;CAYA,EAAA,OAAOA,KAAP,CAAA;CACA,CAAA;UAEeG,gCAA6B;CAE5C,EAAA,MAAMH,KAAK,GAAG,CACb,gBADa,EAEb,gBAFa,EAGb,YAHa,EAIb,qBAJa,EAKb,mBALa,EAMb,WANa,EAOb,QAPa,CAAd,CAAA;CASA,EAAA,OAAOA,KAAP,CAAA;CACA;;;;;CCxDK,SAAUI,mBAAV,CAA8BC,OAA9B,EAA+D;CAEpE,EAAA,IAAIC,OAAK,GAAG,IAAIC,WAAJ,CAAU;CACrBC,IAAAA,SAAS,EAAE,CAAC,OAAD,EAAU,MAAV,CADU;CAGrBC,IAAAA,KAAK,EAAE;CACNC,MAAAA,GAAG,EAAE,EADC;CAEN,MAAA,SAAA,EAAW,EAFL;CAGN,MAAA,UAAA,EAAY,EAHN;CAIN,MAAA,WAAA,EAAa,EAJP;CAKNC,MAAAA,MAAM,EAAE,EALF;CAMN,MAAA,YAAA,EAAc,EANR;CAON,MAAA,aAAA,EAAe,EAPT;CAQN,MAAA,cAAA,EAAgB,EARV;CASNC,MAAAA,IAAI,EAAE,EATA;CAUN,MAAA,UAAA,EAAY,EAVN;CAWNC,MAAAA,GAAG,EAAE,EAXC;CAYN,MAAA,SAAA,EAAW,EAZL;CAaNC,MAAAA,KAAK,EAAE,EAbD;CAcN,MAAA,WAAA,EAAa,EAdP;CAeNC,MAAAA,MAAM,EAAE,EAAA;MAlBY;KAoBrB,GAAGV,OAAAA;CApBkB,GAAV,CAAZ,CAAA;CAuBAC,EAAAA,OAAK,GAAGU,0BAAoB,CAACV,OAAD,CAA5B,CAAA;CAEA,EAAA,OAAOA,OAAP,CAAA;CACA,CAAA;CAQe,SAAAW,mBAAA,CAAoBxB,UAApB,EAAsDY,OAAtD,EAA2F;CAAA,EAAA,IAAA,QAAA,EAAA,WAAA,EAAA,YAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,kBAAA,CAAA;;GAE1G,MAAMC,KAAK,GAAGF,mBAAmB,EAAjC,CAAA;;CAEA,EAAA,CAAA,QAAA,GAAAC,OAAO,MAAA,IAAP,IAAAA,QAAAA,KAAAA,KAAAA,CAAAA,GAAAA,QAAAA,GAAAA,OAAO,GAAK,EAAZ,CAAA;CAEA,EAAA,CAAA,WAAA,GAAAZ,UAAU,MAAA,IAAV,IAAAA,WAAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAAA,GAAAA,UAAU,GAAK,EAAf,CAAA;GAEAa,KAAK,CAACY,IAAN,CAAW,CAAC,GAAGC,IAAK,CAAA,CAAA,CAAT,EAAcC,OAAd,CAAX,CAAA,CAAA;CACAd,EAAAA,KAAK,CAACY,IAAN,CAAW,CAAC,MAAD,EAASb,CAAAA,YAAAA,GAAAA,OAAO,CAACgB,GAAjB,MAAwB1C,IAAAA,IAAAA,YAAAA,KAAAA,KAAAA,CAAAA,GAAAA,YAAAA,GAAAA,OAAO,CAAC0C,GAAR,EAAxB,CAAX,CAAA,CAAA;CAEA,EAAA,CAAA,CAAA,aAAA,GAAAhB,OAAO,CAACiB,IAAR,MAAcC,IAAAA,IAAAA,aAAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAAA,CAAAA,MAAd,KAAwBjB,KAAK,CAACY,IAAN,CAAW,CAAC,OAAD,EAAUb,OAAO,CAACiB,IAAlB,CAAX,CAAxB,CAAA;CAEA,EAAA,CAAA,CAAA,qBAAA,GAAA7B,UAAU,CAAC+B,cAAX,MAA2BD,IAAAA,IAAAA,qBAAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAAA,CAAAA,MAA3B,KAAqCjB,KAAK,CAACY,IAAN,CAAW,CAAC,iBAAD,EAAoBzB,UAAU,CAAC+B,cAA/B,CAAX,CAArC,CAAA;CAEA,EAAA,CAAA,CAAA,mBAAA,GAAA/B,UAAU,CAACgC,OAAX,MAAoBF,IAAAA,IAAAA,mBAAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAAA,CAAAA,MAApB,KAA8BjB,KAAK,CAACY,IAAN,CAAW,CAAC,UAAD,EAAazB,UAAU,CAACgC,OAAxB,CAAX,CAA9B,CAAA;GACA,CAAAhC,CAAAA,iBAAAA,GAAAA,UAAU,CAACiC,KAAX,MAAA,IAAA,IAAA,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAkBH,MAAlB,KAA4BjB,KAAK,CAACY,IAAN,CAAW,CAAC,QAAD,EAAWS,YAAO,CAAClC,UAAU,CAACiC,KAAZ,CAAlB,CAAX,CAA5B,CAAA;CAEA,EAAA,CAAA,CAAA,kBAAA,GAAAjC,UAAU,CAACmC,MAAX,MAAmBL,IAAAA,IAAAA,kBAAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,kBAAAA,CAAAA,MAAnB,KAA6BjB,KAAK,CAACY,IAAN,CAAW,CAAC,SAAD,EAAYzB,UAAU,CAACmC,MAAvB,CAAX,CAA7B,CAAA;GAEArD,mBAAO,CAACsD,IAAR,CAAaC,GAAb,CAAiB,GAAIC,CAAAA,MAAJ,CAAW,EAAX,CAAjB,CAAA,CAAA;GACAxD,mBAAO,CAACuD,GAAR,CAAY,CAAZ,WAAA,CAAA,CAAA,CAAA;CACAvD,EAAAA,mBAAO,CAACuD,GAAR,CAAYxB,KAAK,CAACpB,QAAN,EAAZ,CAAA,CAAA;GACAX,mBAAO,CAACsD,IAAR,CAAaC,GAAb,CAAiB,GAAIC,CAAAA,MAAJ,CAAW,EAAX,CAAjB,CAAA,CAAA;CACA;;ACrDKP,OAAAA,cAAc,gBAAG/C,iBAAiB,GAAxC;UAIgBuD,gBAAgDvC,YAAgBwC,WAC/E5B,SAAqC;CAAA,EAAA,IAAA,WAAA,CAAA;;CAGrC,EAAA,CAAA,WAAA,GAAAZ,UAAU,MAAA,IAAV,IAAAA,WAAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAAA,GAAAA,UAAU,GAAK,EAAf,CAAA;GACA,MAAMyC,aAAa,GAAG1C,aAAa,CAAI;CACtC2C,IAAAA,OAAO,EAAE;OACR,SAAW,EAAA,EAAA;MAF0B;KAMtCX,cANsC;CAOtCY,IAAAA,UAAU,EAAE,CAP0B;CAQtCC,IAAAA,UAAU,EAAE,IAR0B;CAStCC,IAAAA,eAAe,EAAE,IATqB;KAUtCC,oBAAoB,EAAEtC,2BAA2B,EAVX;CAWtCuC,IAAAA,eAAe,EAAE,MAXqB;CAatC,IAAA,GAAGrD,mBAAmB,CAACY,yBAAyB,EAA1B,CAbgB;KActC0C,sBAAsB,EAAEtC,6BAA6B,EAdf;CAgBtCuC,IAAAA,kBAAkB,EAAE,EAhBkB;CA2BtCC,IAAAA,SAAS,EAAE;OACV,oBAAsB9E,EAAAA,eAAe,CAAC,SAAD,CAAA;MA5BA;CA8BtC+E,IAAAA,OAAO,EAAE,IA9B6B;CAmCtCC,IAAAA,gBAAgB,EAAE,IAnCoB;CAoCtCC,IAAAA,eAAe,EAAE,KApCqB;KAqCtCC,0BAA0B,EAAE7C,iCAAiC,EArCvB;KA0CtC,GAAGT,UAAAA;CA1CmC,GAAJ,CAAnC,CAAA;CA6CAwC,EAAAA,SAAS,IAAIhB,mBAAmB,CAACiB,aAAD,EAAgB7B,OAAhB,CAAhC,CAAA;CAEA,EAAA,OAAO6B,aAAP,CAAA;CACA;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@yarn-tool/require-resolve"),require("path"),require("os"),require("debug-color2"),require("graceful-fs"),require("@yarn-tool/table"),require("util")):"function"==typeof define&&define.amd?define(["exports","@yarn-tool/require-resolve","path","os","debug-color2","graceful-fs","@yarn-tool/table","util"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).BlueloversJestConfig={},e.requireResolve,e.path,e.os,e.debugColor2,e.gracefulFs,e.table,e.util)}(this,(function(e,t,o,s,r,i,n,l){"use strict";function _requireResolve(e){const o=[t.requireResolveExtra("@bluelovers/tsdx").result,t.requireResolveExtra("tsdx").result].filter(Boolean),s=t.requireResolveCore(e,{includeGlobal:!0,includeCurrentDirectory:!0,paths:o});return r.console.debug("[require.resolve]",e,"=>",s),s}function getCacheDirectory(){const{getuid:e}=process,t=process.env.JEST_CACHE_DIRECTORY||o.join(function tryRealpath(e){try{e=i.realpathSync.native(e)}catch(e){if("ENOENT"!==e.code)throw e}return e}(s.tmpdir()),"jest");return null==e?t:`${t}_${e.call(process).toString(36)}`}function makeTestRegexConfig(e){return{testMatch:void 0,testRegex:[`\\.(tests?|spec)\\.(${e=[e].flat().join("|")})$`,`__tests__/.*\\.(${e})$`]}}function fixJestConfig(e){return e.testMatch?e.testRegex=void 0:e.testRegex&&(e.testMatch=void 0),e}function _newTableBorderless(e){let t=new n.Table({colAligns:["right","left"],chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},...e});return t=n.applyStyleBorderless(t),t}function printJestConfigInfo(e,t){var o,s,i,n,u,c,a,f;const d=_newTableBorderless();null!==(o=t)&&void 0!==o||(t={}),null!==(s=e)&&void 0!==s||(e={}),d.push(["cwd:",null!==(i=t.cwd)&&void 0!==i?i:process.cwd()]),(null===(n=t.file)||void 0===n?void 0:n.length)&&d.push(["file:",t.file]),(null===(u=e.cacheDirectory)||void 0===u?void 0:u.length)&&d.push(["cacheDirectory:",e.cacheDirectory]),(null===(c=e.rootDir)||void 0===c?void 0:c.length)&&d.push(["rootDir:",e.rootDir]),(null===(a=e.roots)||void 0===a?void 0:a.length)&&d.push(["roots:",l.inspect(e.roots)]),(null===(f=e.preset)||void 0===f?void 0:f.length)&&d.push(["preset:",e.preset]),r.console.gray.log("─".repeat(20)),r.console.log("jest.config"),r.console.log(d.toString()),r.console.gray.log("─".repeat(20))}const u=getCacheDirectory();function mixinJestConfig(e,t,o){var s;null!==(s=e)&&void 0!==s||(e={});const r=fixJestConfig({globals:{"ts-jest":{}},cacheDirectory:u,maxWorkers:1,clearMocks:!0,passWithNoTests:!0,moduleFileExtensions:["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"],testEnvironment:"node",...makeTestRegexConfig(["ts","tsx","mts","cts"]),testPathIgnorePatterns:["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"],setupFilesAfterEnv:[],transform:{".(ts|tsx|mts|cts)$":_requireResolve("ts-jest")},verbose:!0,coverageProvider:"v8",collectCoverage:!1,coveragePathIgnorePatterns:["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"],...e});return t&&printJestConfigInfo(r,o),r}e._newTableBorderless=_newTableBorderless,e._requireResolve=_requireResolve,e.cacheDirectory=u,e.default=mixinJestConfig,e.defaultCoveragePathIgnorePatterns=function defaultCoveragePathIgnorePatterns(){return["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"]},e.defaultModuleFileExtensions=function defaultModuleFileExtensions(){return["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"]},e.defaultTestFileExtensions=function defaultTestFileExtensions(){return["ts","tsx","mts","cts"]},e.defaultTestPathIgnorePatterns=function defaultTestPathIgnorePatterns(){return["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"]},e.fixJestConfig=fixJestConfig,e.getCacheDirectory=getCacheDirectory,e.makeTestRegexConfig=makeTestRegexConfig,e.mixinJestConfig=mixinJestConfig,e.printJestConfigInfo=printJestConfigInfo,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@yarn-tool/require-resolve"),require("path"),require("os"),require("debug-color2"),require("graceful-fs"),require("@yarn-tool/table"),require("util")):"function"==typeof define&&define.amd?define(["exports","@yarn-tool/require-resolve","path","os","debug-color2","graceful-fs","@yarn-tool/table","util"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).BlueloversJestConfig={},e.requireResolve,e.path,e.os,e.debugColor2,e.gracefulFs,e.table,e.util)}(this,(function(e,t,o,s,r,i,n,l){"use strict";function _requireResolve(e){const o=[t.requireResolveExtra("@bluelovers/tsdx").result,t.requireResolveExtra("tsdx").result].filter(Boolean),s=t.requireResolveCore(e,{includeGlobal:!0,includeCurrentDirectory:!0,paths:o});return r.console.debug("[require.resolve]",e,"=>",s),s}function getCacheDirectory(){const{getuid:e}=process,t=process.env.JEST_CACHE_DIRECTORY||o.join(function tryRealpath(e){try{e=i.realpathSync.native(e)}catch(e){if("ENOENT"!==e.code)throw e}return e}(s.tmpdir()),"jest");return null==e?t:`${t}_${e.call(process).toString(36)}`}function makeTestRegexConfig(e){return{testMatch:void 0,testRegex:[`\\.(tests?|spec)\\.(${e=[e].flat().join("|")})$`,`__tests__/.*\\.(${e})$`]}}function fixJestConfig(e){return e.testMatch?e.testRegex=void 0:e.testRegex&&(e.testMatch=void 0),e}function _newTableBorderless(e){let t=new n.Table({colAligns:["right","left"],chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},...e});return t=n.applyStyleBorderless(t),t}function printJestConfigInfo(e,t){var o,s,i,n,u,c,a,f;const d=_newTableBorderless();null!==(o=t)&&void 0!==o||(t={}),null!==(s=e)&&void 0!==s||(e={}),d.push(["@bluelovers/jest-config:","1.0.7"]),d.push(["cwd:",null!==(i=t.cwd)&&void 0!==i?i:process.cwd()]),(null===(n=t.file)||void 0===n?void 0:n.length)&&d.push(["file:",t.file]),(null===(u=e.cacheDirectory)||void 0===u?void 0:u.length)&&d.push(["cacheDirectory:",e.cacheDirectory]),(null===(c=e.rootDir)||void 0===c?void 0:c.length)&&d.push(["rootDir:",e.rootDir]),(null===(a=e.roots)||void 0===a?void 0:a.length)&&d.push(["roots:",l.inspect(e.roots)]),(null===(f=e.preset)||void 0===f?void 0:f.length)&&d.push(["preset:",e.preset]),r.console.gray.log("─".repeat(20)),r.console.log("jest.config"),r.console.log(d.toString()),r.console.gray.log("─".repeat(20))}const u=getCacheDirectory();function mixinJestConfig(e,t,o){var s;null!==(s=e)&&void 0!==s||(e={});const r=fixJestConfig({globals:{"ts-jest":{}},cacheDirectory:u,maxWorkers:1,clearMocks:!0,passWithNoTests:!0,moduleFileExtensions:["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"],testEnvironment:"node",...makeTestRegexConfig(["ts","tsx","mts","cts"]),testPathIgnorePatterns:["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"],setupFilesAfterEnv:[],transform:{".(ts|tsx|mts|cts)$":_requireResolve("ts-jest")},verbose:!0,coverageProvider:"v8",collectCoverage:!1,coveragePathIgnorePatterns:["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"],...e});return t&&printJestConfigInfo(r,o),r}e._newTableBorderless=_newTableBorderless,e._requireResolve=_requireResolve,e.cacheDirectory=u,e.default=mixinJestConfig,e.defaultCoveragePathIgnorePatterns=function defaultCoveragePathIgnorePatterns(){return["/node_modules/","/__snapshots__/","/__tests__/","/__test__/","/dist/","/test/","/fixture/"]},e.defaultModuleFileExtensions=function defaultModuleFileExtensions(){return["ts","tsx","mts","cts","js","jsx","mjs","cjs","json","node"]},e.defaultTestFileExtensions=function defaultTestFileExtensions(){return["ts","tsx","mts","cts"]},e.defaultTestPathIgnorePatterns=function defaultTestPathIgnorePatterns(){return["/node_modules/","/__fixtures__/","/fixtures/","/__tests__/helpers/","/__tests__/utils/","__mocks__","/dist/"]},e.fixJestConfig=fixJestConfig,e.getCacheDirectory=getCacheDirectory,e.makeTestRegexConfig=makeTestRegexConfig,e.mixinJestConfig=mixinJestConfig,e.printJestConfigInfo=printJestConfigInfo,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=index.umd.production.min.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.production.min.cjs","sources":["../src/helper.ts","../src/print.ts","../src/index.ts","../src/defaults.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\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: InitialOptionsTsJest, options?: IOptionsPrintJestConfigInfo)\n{\n\tconst table = _newTableBorderless();\n\n\toptions ??= {};\n\t// @ts-ignore\n\tjestConfig ??= {};\n\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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","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/print.ts","../src/index.ts","../src/defaults.ts"],"sourcesContent":["import { requireResolveCore, requireResolveExtra } from '@yarn-tool/require-resolve';\nimport { join } from 'path';\nimport { tmpdir } from 'os';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { ITSArrayListMaybeReadonly } from 'ts-type/lib/type/base';\nimport { console } from 'debug-color2';\nimport { realpathSync } from 'graceful-fs';\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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-config/src/getCacheDirectory.ts\n */\nexport function getCacheDirectory()\n{\n\tconst { getuid } = process;\n\tconst tmpdirPath = process.env['JEST_CACHE_DIRECTORY'] || join(tryRealpath(tmpdir()), 'jest');\n\tif (getuid == null)\n\t{\n\t\treturn tmpdirPath;\n\t}\n\telse\n\t{\n\t\t// On some platforms tmpdir() is `/tmp`, causing conflicts between different\n\t\t// users and permission issues. Adding an additional subdivision by UID can\n\t\t// help.\n\t\treturn `${tmpdirPath}_${getuid.call(process).toString(36)}`;\n\t}\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__\\/\\.*\\\\.(${testExt})$`,\n\t\t],\n\t}\n}\n\nexport function fixJestConfig<T extends InitialOptionsTsJest>(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\n/**\n * @see https://github.com/facebook/jest/blob/main/packages/jest-util/src/tryRealpath.ts\n */\nexport default function tryRealpath(path: string): string\n{\n\ttry\n\t{\n\t\tpath = realpathSync.native(path);\n\t}\n\tcatch (error: any)\n\t{\n\t\tif (error.code !== 'ENOENT')\n\t\t{\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\treturn path;\n}\n","import { applyStyleBorderless, Table } from '@yarn-tool/table';\nimport { TableConstructorOptions } from 'cli-table3';\nimport { InitialOptionsTsJest } from 'ts-jest';\nimport { console } from 'debug-color2';\nimport { inspect } from 'util';\nimport { name as jName, version as jVersion } from '../package.json';\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: InitialOptionsTsJest, 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(['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\tconsole.gray.log('─'.repeat(20));\n\tconsole.log(`jest.config`);\n\tconsole.log(table.toString());\n\tconsole.gray.log('─'.repeat(20));\n}\n","import { InitialOptionsTsJest } from 'ts-jest';\nimport { _requireResolve, fixJestConfig, getCacheDirectory, makeTestRegexConfig } from './helper';\nimport {\n\tdefaultCoveragePathIgnorePatterns,\n\tdefaultModuleFileExtensions,\n\tdefaultTestFileExtensions,\n\tdefaultTestPathIgnorePatterns,\n} from './defaults';\nimport { IOptionsPrintJestConfigInfo, printJestConfigInfo } from './print';\n\nexport * from './helper';\nexport * from './defaults';\nexport * from './print';\n\nconst cacheDirectory = getCacheDirectory();\n\nexport { cacheDirectory }\n\nexport function mixinJestConfig<T extends InitialOptionsTsJest>(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\ttransform: {\n\t\t\t'.(ts|tsx|mts|cts)$': _requireResolve('ts-jest'),\n\t\t},\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\tautoPrint && printJestConfigInfo(newJestConfig, options);\n\n\treturn newJestConfig\n}\n\nexport default mixinJestConfig\n","import { ITSToWriteableAArray } from 'ts-type/lib/helper/array/readonly';\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 ITSToWriteableAArray<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 ITSToWriteableAArray<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] as const\n\treturn value as ITSToWriteableAArray<typeof value>;\n}\n\nexport function defaultTestPathIgnorePatterns()\n{\n\tconst value = [\n\t\t'/node_modules/',\n\t\t'/__fixtures__/',\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 ITSToWriteableAArray<typeof value>;\n}\n"],"names":["_requireResolve","name","paths","requireResolveExtra","result","filter","Boolean","requireResolveCore","includeGlobal","includeCurrentDirectory","console","debug","getCacheDirectory","getuid","process","tmpdirPath","env","join","tryRealpath","path","realpathSync","native","error","code","tmpdir","call","toString","makeTestRegexConfig","testExt","testMatch","testRegex","flat","fixJestConfig","jestConfig","_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","cwd","length","file","cacheDirectory","rootDir","roots","inspect","preset","gray","log","repeat","mixinJestConfig","autoPrint","newJestConfig","globals","maxWorkers","clearMocks","passWithNoTests","moduleFileExtensions","testEnvironment","testPathIgnorePatterns","setupFilesAfterEnv","transform","verbose","coverageProvider","collectCoverage","coveragePathIgnorePatterns","defaultCoveragePathIgnorePatterns","defaultModuleFileExtensions","defaultTestFileExtensions","defaultTestPathIgnorePatterns"],"mappings":"glBAQM,SAAUA,gBAAgBC,GAE/B,MAAMC,EAAQ,CACbC,sBAAoB,oBAAoBC,OACxCD,sBAAoB,QAAQC,QAC3BC,OAAOC,SAEHF,EAASG,EAAkBA,mBAACN,EAAM,CACvCO,eAAe,EACfC,yBAAyB,EACzBP,UAKD,OAFAQ,EAAOA,QAACC,MAAM,oBAAqBV,EAAM,KAAMG,GAExCA,CACP,UAKeQ,oBAEf,MAAMC,OAAEA,GAAWC,QACbC,EAAaD,QAAQE,IAAR,sBAAuCC,OA4CnC,SAAAC,YAAYC,GAEnC,IAECA,EAAOC,EAAYA,aAACC,OAAOF,EAQ3B,CAND,MAAOG,GAEN,GAAmB,WAAfA,EAAMC,KAET,MAAMD,CAEP,CAED,OAAOH,CACP,CA3D+DD,CAAYM,EAAMA,UAAK,QACtF,OAAc,MAAVX,EAEIE,EAOG,GAAAA,KAAcF,EAAOY,KAAKX,SAASY,SAAS,KAEvD,CAEK,SAAUC,oBAAoBC,GAInC,MAAO,CACNC,eAAW,EACXC,UAAW,CACV,uBALFF,EAAU,CAACA,GAASG,OAAOd,KAAK,SAM9B,mBAAqBW,OAGvB,CAEK,SAAUI,cAA8CC,GAW7D,OATIA,EAAWJ,UAEdI,EAAWH,eAAY,EAEfG,EAAWH,YAEnBG,EAAWJ,eAAY,GAGjBI,CACP,CChEK,SAAUC,oBAAoBC,GAEnC,IAAIC,EAAQ,IAAIC,QAAM,CACrBC,UAAW,CAAC,QAAS,QAErBC,MAAO,CACNC,IAAK,GACL,UAAW,GACX,WAAY,GACZ,YAAa,GACbC,OAAQ,GACR,aAAc,GACd,cAAe,GACf,eAAgB,GAChBC,KAAM,GACN,WAAY,GACZC,IAAK,GACL,UAAW,GACXC,MAAO,GACP,YAAa,GACbC,OAAQ,OAENV,IAKJ,OAFAC,EAAQU,EAAAA,qBAAqBV,GAEtBA,CACP,CAQe,SAAAW,oBAAoBd,EAAkCE,GAAqC,IAAAa,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAE1G,MAAMnB,EAAQF,sBAEP,QAAPc,EAAAb,SAAAA,IAAAA,IAAAA,EAAY,IAEF,QAAVc,EAAAhB,SAAAA,IAAAA,IAAAA,EAAe,IAEfG,EAAMoB,KAAK,CAAC,qCACZpB,EAAMoB,KAAK,CAAC,OAAuB1C,QAAfqB,EAAAA,EAAQsB,WAAO3C,IAAAA,EAAAA,EAAAA,QAAQ2C,SAE7BC,QAAdP,EAAAhB,EAAQwB,YAAMD,IAAAA,OAAAA,EAAAA,EAAAA,SAAUtB,EAAMoB,KAAK,CAAC,QAASrB,EAAQwB,QAE1BD,QAA3BN,EAAAnB,EAAW2B,sBAAgBF,IAAAA,OAAAA,EAAAA,EAAAA,SAAUtB,EAAMoB,KAAK,CAAC,kBAAmBvB,EAAW2B,kBAE3DF,QAApBL,EAAApB,EAAW4B,eAASH,IAAAA,OAAAA,EAAAA,EAAAA,SAAUtB,EAAMoB,KAAK,CAAC,WAAYvB,EAAW4B,WACjE,QAAA5B,EAAAA,EAAW6B,aAAX,IAAAR,OAAA,EAAAA,EAAkBI,SAAUtB,EAAMoB,KAAK,CAAC,SAAUO,EAAAA,QAAQ9B,EAAW6B,UAElDJ,QAAnBH,EAAAtB,EAAW+B,cAAQN,IAAAA,OAAAA,EAAAA,EAAAA,SAAUtB,EAAMoB,KAAK,CAAC,UAAWvB,EAAW+B,SAE/DtD,EAAOA,QAACuD,KAAKC,IAAI,IAAIC,OAAO,KAC5BzD,EAAAA,QAAQwD,IAAI,eACZxD,EAAAA,QAAQwD,IAAI9B,EAAMV,YAClBhB,EAAOA,QAACuD,KAAKC,IAAI,IAAIC,OAAO,IAC5B,CCrDKP,MAAAA,EAAiBhD,6BAIPwD,gBAAgDnC,EAAgBoC,EAC/ElC,GAAqC,IAAAc,EAG3B,QAAVA,EAAAhB,SAAAA,IAAAA,IAAAA,EAAe,IACf,MAAMqC,EAAgBtC,cAAiB,CACtCuC,QAAS,CACR,UAAW,CAAA,GAIZX,iBACAY,WAAY,EACZC,YAAY,EACZC,iBAAiB,EACjBC,qBCda,CACb,KACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,QDKAC,gBAAiB,UAEdjD,oBChCU,CACb,KACA,MACA,MACA,QD6BAkD,uBCgBa,CACb,iBACA,iBACA,aACA,sBACA,oBACA,YACA,UDrBAC,mBAAoB,GAWpBC,UAAW,CACV,qBAAsB/E,gBAAgB,YAEvCgF,SAAS,EAKTC,iBAAkB,KAClBC,iBAAiB,EACjBC,2BCxBa,CACb,iBACA,kBACA,cACA,aAIA,SACA,SACA,gBDmBGlD,IAKJ,OAFAoC,GAAatB,oBAAoBuB,EAAenC,GAEzCmC,CACP,uKCrCec,oCAcf,MAZc,CACb,iBACA,kBACA,cACA,aAIA,SACA,SACA,YAGD,yCAhCeC,8BAcf,MAZc,CACb,KACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OAGD,uCA9BeC,4BAYf,MAVc,CACb,KACA,MACA,MACA,MAOD,2CAoCeC,gCAWf,MATc,CACb,iBACA,iBACA,aACA,sBACA,oBACA,YACA,SAGD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluelovers/jest-config",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "Jest preset configuration",
5
5
  "keywords": [
6
6
  "jest-preset",
@@ -79,9 +79,9 @@
79
79
  "build:tsdx": "ynpx @bluelovers/tsdx build --target node --name index",
80
80
  "ci:install": "echo ci:install",
81
81
  "ci:build": "echo ci:build",
82
- "preversion": "echo preversion && yarn run test",
82
+ "preversion": "echo preversion",
83
83
  "version": "echo version",
84
- "postversion": "echo postversion",
84
+ "postversion": "echo postversion && yarn run test & git commit ./dist -m \"build(dist): update build\" & echo update build",
85
85
  "prepublish": "echo prepublish",
86
86
  "prepare": "echo prepare",
87
87
  "prepublishOnly": "echo prepublishOnly",
@@ -111,5 +111,5 @@
111
111
  "devDependencies": {
112
112
  "@types/graceful-fs": "^4.1.5"
113
113
  },
114
- "gitHead": "e6cae6bd3d6390a52e7b836bbe319a9763d1906c"
114
+ "gitHead": "33217361c143aa7d157b26e6077a6b020ecd65db"
115
115
  }