Comparing version 29.0.2 to 29.0.3
@@ -136,15 +136,14 @@ "use strict"; | ||
var _b, _c; | ||
var _d = __read(_a, 2), fileRegex = _d[0], transformerName = _d[1]; | ||
if (transformerName === 'ts-jest') { | ||
if (tsconfig || shouldPostProcessWithBabel) { | ||
var tsJestConf = {}; | ||
if (tsconfig) | ||
tsJestConf.tsconfig = tsconfig; | ||
if (shouldPostProcessWithBabel) | ||
tsJestConf.babelConfig = true; | ||
return __assign(__assign({}, acc), (_b = {}, _b[fileRegex] = [transformerName, tsJestConf], _b)); | ||
} | ||
return __assign(__assign({}, acc), (_c = {}, _c[fileRegex] = transformerName, _c)); | ||
var _d = __read(_a, 2), fileRegex = _d[0], transformerConfig = _d[1]; | ||
if (tsconfig || shouldPostProcessWithBabel) { | ||
var tsJestConf = {}; | ||
if (tsconfig) | ||
tsJestConf.tsconfig = tsconfig; | ||
if (shouldPostProcessWithBabel) | ||
tsJestConf.babelConfig = true; | ||
return __assign(__assign({}, acc), (_b = {}, _b[fileRegex] = typeof transformerConfig === 'string' | ||
? [transformerConfig, tsJestConf] | ||
: [transformerConfig[0], __assign(__assign({}, transformerConfig[1]), tsJestConf)], _b)); | ||
} | ||
return acc; | ||
return __assign(__assign({}, acc), (_c = {}, _c[fileRegex] = transformerConfig, _c)); | ||
}, {}); | ||
@@ -151,0 +150,0 @@ if (Object.keys(transformerConfig).length) { |
"use strict"; | ||
var __assign = (this && this.__assign) || function () { | ||
__assign = Object.assign || function(t) { | ||
for (var s, i = 1, n = arguments.length; i < n; i++) { | ||
s = arguments[i]; | ||
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) | ||
t[p] = s[p]; | ||
} | ||
return t; | ||
}; | ||
return __assign.apply(this, arguments); | ||
}; | ||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
@@ -79,3 +90,3 @@ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
var run = function (args /* , logger: Logger*/) { return __awaiter(void 0, void 0, void 0, function () { | ||
var nullLogger, file, filePath, footNotes, name, isPackage, actualConfig, migratedConfig, presetName, preset, jsTransformers, jsWithTs, jsWithBabel, presetValue, migratedValue, presetValue, migratedValue, globalsTsJestConfig, before, after, stringify, prefix; | ||
var nullLogger, file, filePath, footNotes, name, isPackage, actualConfig, migratedConfig, presetName, preset, jsTransformers, jsWithTs, jsWithBabel, presetValue, migratedValue, presetValue, migratedValue, globalsTsJestConfig, migratedConfigTransform, presetValueTransform_1, before, after, stringify, prefix; | ||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; | ||
@@ -198,6 +209,28 @@ return __generator(this, function (_l) { | ||
// check if it's the same as the preset's one | ||
if (preset && | ||
migratedConfig.transform && | ||
(0, fast_json_stable_stringify_1.default)(migratedConfig.transform) === (0, fast_json_stable_stringify_1.default)(preset.value.transform)) { | ||
delete migratedConfig.transform; | ||
if (preset && migratedConfig.transform) { | ||
if ((0, fast_json_stable_stringify_1.default)(migratedConfig.transform) === (0, fast_json_stable_stringify_1.default)(preset.value.transform)) { | ||
delete migratedConfig.transform; | ||
} | ||
else { | ||
migratedConfigTransform = migratedConfig.transform; | ||
presetValueTransform_1 = preset.value.transform; | ||
if (migratedConfigTransform && presetValueTransform_1) { | ||
migratedConfig.transform = Object.entries(migratedConfigTransform).reduce( | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
function (acc, _a) { | ||
var _b, _c; | ||
var _d = __read(_a, 2), fileRegex = _d[0], transformerConfig = _d[1]; | ||
var presetValueTransformerConfig = presetValueTransform_1[fileRegex]; | ||
var shouldRemoveDuplicatedConfig = (presetValueTransformerConfig && | ||
Array.isArray(presetValueTransformerConfig) && | ||
transformerConfig === presetValueTransformerConfig[0] && | ||
!Object.keys(presetValueTransformerConfig[1]).length) || | ||
transformerConfig === presetValueTransformerConfig; | ||
return shouldRemoveDuplicatedConfig | ||
? acc | ||
: acc | ||
? __assign(__assign({}, acc), (_b = {}, _b[fileRegex] = transformerConfig, _b)) : (_c = {}, _c[fileRegex] = transformerConfig, _c); | ||
}, undefined); | ||
} | ||
} | ||
} | ||
@@ -204,0 +237,0 @@ // cleanup |
import type { Config } from '@jest/types'; | ||
declare type JestPathMapping = Config.InitialOptions['moduleNameMapper']; | ||
export declare const pathsToModuleNameMapper: (mapping: import("typescript").MapLike<string[]>, { prefix }?: { | ||
prefix: string; | ||
export declare const pathsToModuleNameMapper: (mapping: import("typescript").MapLike<string[]>, { prefix, useESM }?: { | ||
prefix?: string | undefined; | ||
useESM?: boolean | undefined; | ||
}) => JestPathMapping; | ||
export {}; |
@@ -25,8 +25,7 @@ "use strict"; | ||
var e_1, _b; | ||
var _c = _a === void 0 ? Object.create(null) : _a, _d = _c.prefix, prefix = _d === void 0 ? '' : _d; | ||
var _c = _a === void 0 ? {} : _a, _d = _c.prefix, prefix = _d === void 0 ? '' : _d, _e = _c.useESM, useESM = _e === void 0 ? false : _e; | ||
var jestMap = {}; | ||
try { | ||
for (var _e = __values(Object.keys(mapping)), _f = _e.next(); !_f.done; _f = _e.next()) { | ||
var fromPath = _f.value; | ||
var pattern = void 0; | ||
for (var _f = __values(Object.keys(mapping)), _g = _f.next(); !_g.done; _g = _f.next()) { | ||
var fromPath = _g.value; | ||
var toPaths = mapping[fromPath]; | ||
@@ -45,4 +44,4 @@ // check that we have only one target path | ||
}); | ||
pattern = "^".concat(escapeRegex(fromPath), "$"); | ||
jestMap[pattern] = paths.length === 1 ? paths[0] : paths; | ||
var cjsPattern = "^".concat(escapeRegex(fromPath), "$"); | ||
jestMap[cjsPattern] = paths.length === 1 ? paths[0] : paths; | ||
} | ||
@@ -55,4 +54,8 @@ else if (segments.length === 2) { | ||
}); | ||
pattern = "^".concat(escapeRegex(segments[0]), "(.*)").concat(escapeRegex(segments[1]), "$"); | ||
jestMap[pattern] = paths.length === 1 ? paths[0] : paths; | ||
if (useESM) { | ||
var esmPattern = "^".concat(escapeRegex(segments[0]), "(.*)").concat(escapeRegex(segments[1]), "\\.js$"); | ||
jestMap[esmPattern] = paths.length === 1 ? paths[0] : paths; | ||
} | ||
var cjsPattern = "^".concat(escapeRegex(segments[0]), "(.*)").concat(escapeRegex(segments[1]), "$"); | ||
jestMap[cjsPattern] = paths.length === 1 ? paths[0] : paths; | ||
} | ||
@@ -67,8 +70,11 @@ else { | ||
try { | ||
if (_f && !_f.done && (_b = _e.return)) _b.call(_e); | ||
if (_g && !_g.done && (_b = _f.return)) _b.call(_f); | ||
} | ||
finally { if (e_1) throw e_1.error; } | ||
} | ||
if (useESM) { | ||
jestMap['^(\\.{1,2}/.*)\\.js$'] = '$1'; | ||
} | ||
return jestMap; | ||
}; | ||
exports.pathsToModuleNameMapper = pathsToModuleNameMapper; |
@@ -112,3 +112,3 @@ "use strict"; | ||
TsJestTransformer.prototype._configsFor = function (transformOptions) { | ||
var _a, _b; | ||
var _a, _b, _c; | ||
var config = transformOptions.config, cacheFS = transformOptions.cacheFS; | ||
@@ -147,4 +147,6 @@ var ccs = TsJestTransformer._cachedConfigSets.find(function (cs) { return cs.jestConfig.value === config; }); | ||
} | ||
var jestGlobalsConfig = (_b = config.globals) !== null && _b !== void 0 ? _b : {}; | ||
var tsJestGlobalsConfig = (_c = jestGlobalsConfig['ts-jest']) !== null && _c !== void 0 ? _c : {}; | ||
var migratedConfig = this.tsJestConfig | ||
? __assign(__assign({}, config), { globals: __assign(__assign({}, ((_b = config.globals) !== null && _b !== void 0 ? _b : Object.create(null))), { 'ts-jest': this.tsJestConfig }) }) : config; | ||
? __assign(__assign({}, config), { globals: __assign(__assign({}, jestGlobalsConfig), { 'ts-jest': __assign(__assign({}, tsJestGlobalsConfig), this.tsJestConfig) }) }) : config; | ||
configSet = this._createConfigSet(migratedConfig); | ||
@@ -151,0 +153,0 @@ var jest_1 = __assign({}, migratedConfig); |
@@ -25,6 +25,7 @@ "use strict"; | ||
var supportESM = extensionsToTreatAsEsm === null || extensionsToTreatAsEsm === void 0 ? void 0 : extensionsToTreatAsEsm.length; | ||
var tsJestTransformOptions = supportESM ? { useESM: true } : {}; | ||
return __assign(__assign(__assign(__assign({}, (extensionsToTreatAsEsm ? { extensionsToTreatAsEsm: extensionsToTreatAsEsm } : undefined)), (moduleFileExtensions ? { moduleFileExtensions: moduleFileExtensions } : undefined)), (testMatch ? { testMatch: testMatch } : undefined)), { transform: __assign(__assign({}, extraOptions.transform), (_a = {}, _a[allowJs ? (supportESM ? '^.+\\.m?[tj]sx?$' : '^.+\\.[tj]sx?$') : '^.+\\.tsx?$'] = legacy | ||
? 'ts-jest/legacy' | ||
: 'ts-jest', _a)) }); | ||
? ['ts-jest/legacy', tsJestTransformOptions] | ||
: ['ts-jest', tsJestTransformOptions], _a)) }); | ||
} | ||
exports.createJestPreset = createJestPreset; |
@@ -23,3 +23,2 @@ import type { TransformedSource, TransformOptions } from '@jest/transform'; | ||
export declare type BabelConfig = _babel.TransformOptions; | ||
export declare type TsJestPresets = Pick<Config.InitialOptions, 'extensionsToTreatAsEsm' | 'moduleFileExtensions' | 'transform' | 'testMatch'>; | ||
export interface AstTransformer<T = Record<string, unknown>> { | ||
@@ -149,5 +148,6 @@ path: string; | ||
transform?: { | ||
[regex: string]: 'ts-jest' | ['ts-jest', TsJestTransformerOptions] | string | [string, Record<string, unknown>]; | ||
[regex: string]: 'ts-jest' | 'ts-jest/legacy' | ['ts-jest', TsJestTransformerOptions] | ['ts-jest/legacy', TsJestTransformerOptions] | string | Config.TransformerConfig; | ||
}; | ||
} | ||
export declare type TsJestPresets = Pick<JestConfigWithTsJest, 'extensionsToTreatAsEsm' | 'moduleFileExtensions' | 'transform' | 'testMatch'>; | ||
export declare type StringMap = Map<string, string>; | ||
@@ -154,0 +154,0 @@ export interface DepGraphInfo { |
{ | ||
"name": "ts-jest", | ||
"version": "29.0.2", | ||
"version": "29.0.3", | ||
"main": "dist/index.js", | ||
@@ -111,4 +111,4 @@ "types": "dist/index.d.ts", | ||
"@types/yargs-parser": "21.x", | ||
"@typescript-eslint/eslint-plugin": "^5.38.0", | ||
"@typescript-eslint/parser": "^5.38.0", | ||
"@typescript-eslint/eslint-plugin": "^5.38.1", | ||
"@typescript-eslint/parser": "^5.38.1", | ||
"babel-jest": "^29.0.3", | ||
@@ -118,3 +118,3 @@ "conventional-changelog-cli": "2.x", | ||
"esbuild": "~0.15.9", | ||
"eslint": "^8.23.1", | ||
"eslint": "^8.24.0", | ||
"eslint-config-prettier": "latest", | ||
@@ -121,0 +121,0 @@ "eslint-plugin-import": "latest", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
306081
4144