Comparing version
export * from './paths-to-module-name-mapper'; | ||
export * from './types'; |
@@ -18,1 +18,2 @@ "use strict"; | ||
__exportStar(require("./paths-to-module-name-mapper"), exports); | ||
__exportStar(require("./types"), exports); |
import { Logger } from 'bs-logger'; | ||
import type { CompilerOptions, CustomTransformers, Program, TranspileOutput } from 'typescript'; | ||
import { CompilerOptions, CustomTransformers, Program, TranspileOutput } from 'typescript'; | ||
import type { StringMap, TsCompilerInstance, TsJestAstTransformer, TsJestCompileOptions, TTypeScript } from '../../types'; | ||
@@ -4,0 +4,0 @@ import { CompiledOutput } from '../../types'; |
@@ -57,6 +57,24 @@ "use strict"; | ||
var lodash_memoize_1 = __importDefault(require("lodash.memoize")); | ||
var typescript_1 = __importDefault(require("typescript")); | ||
var constants_1 = require("../../constants"); | ||
// import { tsTranspileModule } from '../../transpilers/typescript/transpile-module' | ||
var transpile_module_1 = require("../../transpilers/typescript/transpile-module"); | ||
var utils_1 = require("../../utils"); | ||
var messages_1 = require("../../utils/messages"); | ||
var compiler_utils_1 = require("./compiler-utils"); | ||
var isModernNodeResolution = function (module) { | ||
return module ? [typescript_1.default.ModuleKind.Node16, /* ModuleKind.Node18 */ 101, typescript_1.default.ModuleKind.NodeNext].includes(module) : false; | ||
}; | ||
var shouldUseNativeTsTranspile = function (compilerOptions) { | ||
if (!compilerOptions) { | ||
return true; | ||
} | ||
var module = compilerOptions.module; | ||
return !isModernNodeResolution(module); | ||
}; | ||
var assertCompilerOptionsWithJestTransformMode = function (compilerOptions, isEsmMode, logger) { | ||
if (isEsmMode && compilerOptions.module === typescript_1.default.ModuleKind.CommonJS) { | ||
logger.error("The current compiler option \"module\" value is not suitable for Jest ESM mode. Please either use ES module kinds or Node16/NodeNext module kinds with \"type: module\" in package.json" /* Errors.InvalidModuleKindForEsm */); | ||
} | ||
}; | ||
var TsCompiler = /** @class */ (function () { | ||
@@ -120,11 +138,19 @@ function TsCompiler(configSet, runtimeCacheFS) { | ||
if (!isEsm) { | ||
return __assign(__assign({}, compilerOptions), { module: this._ts.ModuleKind.CommonJS, moduleResolution: moduleResolution }); | ||
return __assign(__assign({}, compilerOptions), { module: this._ts.ModuleKind.CommonJS, moduleResolution: moduleResolution, | ||
/** | ||
* This option is only supported in `Node16`/`NodeNext` and `Bundler` module, see https://www.typescriptlang.org/tsconfig/#customConditions | ||
*/ | ||
customConditions: undefined }); | ||
} | ||
var moduleKind = (_b = compilerOptions.module) !== null && _b !== void 0 ? _b : this._ts.ModuleKind.ESNext; | ||
var esModuleInterop = compilerOptions.esModuleInterop; | ||
if ([this._ts.ModuleKind.Node16, this._ts.ModuleKind.NodeNext].includes(moduleKind)) { | ||
if (isModernNodeResolution(moduleKind)) { | ||
esModuleInterop = true; | ||
moduleKind = this._ts.ModuleKind.ESNext; | ||
} | ||
return __assign(__assign({}, compilerOptions), { module: moduleKind, esModuleInterop: esModuleInterop, moduleResolution: moduleResolution }); | ||
return __assign(__assign({}, compilerOptions), { module: moduleKind, esModuleInterop: esModuleInterop, moduleResolution: moduleResolution, | ||
/** | ||
* This option is only supported in `Node16`/`NodeNext` and `Bundler` module, see https://www.typescriptlang.org/tsconfig/#customConditions | ||
*/ | ||
customConditions: undefined }); | ||
}; | ||
@@ -135,2 +161,5 @@ TsCompiler.prototype.getCompiledOutput = function (fileContent, fileName, options) { | ||
this._compilerOptions = this.fixupCompilerOptionsForModuleKind(this._initialCompilerOptions, isEsmMode); | ||
if (!this._initialCompilerOptions.isolatedModules && isModernNodeResolution(this._initialCompilerOptions.module)) { | ||
this._logger.warn("Using hybrid module kind (Node16/18/Next) is only supported in \"isolatedModules: true\". Please set \"isolatedModules: true\" in your tsconfig.json." /* Helps.UsingModernNodeResolution */); | ||
} | ||
var moduleKind = this._initialCompilerOptions.module; | ||
@@ -201,2 +230,3 @@ var currentModuleKind = this._compilerOptions.module; | ||
this._logger.debug({ fileName: fileName }, 'getCompiledOutput(): compiling as isolated module'); | ||
assertCompilerOptionsWithJestTransformMode(this._initialCompilerOptions, isEsmMode, this._logger); | ||
var result = this._transpileOutput(fileContent, fileName); | ||
@@ -212,7 +242,15 @@ if (result.diagnostics && this.configSet.shouldReportDiagnostics(fileName)) { | ||
TsCompiler.prototype._transpileOutput = function (fileContent, fileName) { | ||
return this._ts.transpileModule(fileContent, { | ||
if (shouldUseNativeTsTranspile(this._initialCompilerOptions)) { | ||
return this._ts.transpileModule(fileContent, { | ||
fileName: fileName, | ||
transformers: this._makeTransformers(this.configSet.resolvedTransformers), | ||
compilerOptions: this._compilerOptions, | ||
reportDiagnostics: this.configSet.shouldReportDiagnostics(fileName), | ||
}); | ||
} | ||
return (0, transpile_module_1.tsTranspileModule)(fileContent, { | ||
fileName: fileName, | ||
transformers: this._makeTransformers(this.configSet.resolvedTransformers), | ||
compilerOptions: this._compilerOptions, | ||
reportDiagnostics: this.configSet.shouldReportDiagnostics(fileName), | ||
compilerOptions: this._initialCompilerOptions, | ||
reportDiagnostics: fileName ? this.configSet.shouldReportDiagnostics(fileName) : false, | ||
}); | ||
@@ -219,0 +257,0 @@ }; |
import { Logger } from 'bs-logger'; | ||
import type * as ts from 'typescript'; | ||
import type { TsConfigCompilerOptionsJson } from '../../config/types'; | ||
import type { RawCompilerOptions } from '../../raw-compiler-options'; | ||
@@ -26,3 +27,3 @@ import type { TsJestAstTransformer, TsJestTransformOptions, TTypeScript } from '../../types'; | ||
*/ | ||
protected _resolveTsConfig(compilerOptions?: RawCompilerOptions, resolvedConfigFile?: string): Record<string, any>; | ||
protected _resolveTsConfig(compilerOptions?: RawCompilerOptions | TsConfigCompilerOptionsJson, resolvedConfigFile?: string): Record<string, any>; | ||
isTestFile(fileName: string): boolean; | ||
@@ -29,0 +30,0 @@ shouldStringifyContent(filePath: string): boolean; |
@@ -162,2 +162,3 @@ "use strict"; | ||
var exports = m.exports; | ||
// eslint-disable-next-line @typescript-eslint/no-unused-expressions | ||
parent && parent.children && parent.children.splice(parent.children.indexOf(m), 1); | ||
@@ -211,7 +212,4 @@ return exports; | ||
this.compilerModule = importer_1.importer.typescript("Using \"ts-jest\" requires this package to be installed." /* ImportReasons.TsJest */, (_e = options.compiler) !== null && _e !== void 0 ? _e : 'typescript'); | ||
// isolatedModules | ||
this.isolatedModules = (_f = options.isolatedModules) !== null && _f !== void 0 ? _f : false; | ||
this.logger.debug({ compilerModule: this.compilerModule }, 'normalized compiler module config via ts-jest option'); | ||
this._setupConfigSet(options); | ||
this._resolveTsCacheDir(); | ||
this._matchablePatterns = __spreadArray(__spreadArray([], __read(this._jestCfg.testMatch), false), __read(this._jestCfg.testRegex), false).filter(function (pattern) { | ||
@@ -228,2 +226,16 @@ /** | ||
this._matchTestFilePath = (0, jest_util_1.globsToMatcher)(this._matchablePatterns.filter(function (pattern) { return typeof pattern === 'string'; })); | ||
// isolatedModules | ||
if (options.isolatedModules) { | ||
this.parsedTsConfig.options.isolatedModules = true; | ||
if (this.tsconfigFilePath) { | ||
this.logger.warn((0, messages_1.interpolate)("\"isolatedModules\" is deprecated and will be removed in v30.0.0. Please remove \"isolatedModules\" from your \"ts-jest\" transform options and enable \"isolatedModules: true\" in {{tsconfigFilePath}} instead." /* Deprecations.IsolatedModulesWithTsconfigPath */, { | ||
tsconfigFilePath: this.tsconfigFilePath, | ||
})); | ||
} | ||
else { | ||
this.logger.warn("\"isolatedModules\" is deprecated and will be removed in v30.0.0. Please remove \"isolatedModules\" from your \"ts-jest\" transform options and enable \"isolatedModules: true\" in a tsconfig file instead." /* Deprecations.IsolatedModulesWithoutTsconfigPath */); | ||
} | ||
} | ||
this.isolatedModules = (_f = this.parsedTsConfig.options.isolatedModules) !== null && _f !== void 0 ? _f : false; | ||
this._resolveTsCacheDir(); | ||
} | ||
@@ -281,2 +293,3 @@ /** | ||
if (ignoreCodes) { | ||
// eslint-disable-next-line @typescript-eslint/no-unused-expressions | ||
Array.isArray(ignoreCodes) ? ignoreList.push.apply(ignoreList, __spreadArray([], __read(ignoreCodes), false)) : ignoreList.push(ignoreCodes); | ||
@@ -435,3 +448,3 @@ } | ||
result.errors.push({ | ||
code: 151001 /* DiagnosticCodes.ConfigModuleOption */, | ||
code: messages_1.TsJestDiagnosticCodes.ConfigModuleOption, | ||
messageText: "If you have issues related to imports, you should consider setting `esModuleInterop` to `true` in your TypeScript configuration file (usually `tsconfig.json`). See https://blogs.msdn.microsoft.com/typescript/2018/01/31/announcing-typescript-2-7/#easier-ecmascript-module-interoperability for more information." /* Errors.ConfigNoModuleInterop */, | ||
@@ -454,2 +467,3 @@ category: this.compilerModule.DiagnosticCategory.Message, | ||
if (val === undefined) { | ||
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete | ||
delete finalOptions[key]; | ||
@@ -496,3 +510,2 @@ } | ||
}; | ||
// eslint-disable-next-line no-dupe-class-members | ||
ConfigSet.prototype._resolveTsConfig = function (compilerOptions, resolvedConfigFile) { | ||
@@ -503,8 +516,8 @@ var config = { compilerOptions: Object.create(null) }; | ||
// Read project configuration when available. | ||
var configFileName = resolvedConfigFile | ||
this.tsconfigFilePath = resolvedConfigFile | ||
? (0, normalize_slashes_1.normalizeSlashes)(resolvedConfigFile) | ||
: ts.findConfigFile((0, normalize_slashes_1.normalizeSlashes)(this.rootDir), ts.sys.fileExists); | ||
if (configFileName) { | ||
this.logger.debug({ tsConfigFileName: configFileName }, 'readTsConfig(): reading', configFileName); | ||
var result = ts.readConfigFile(configFileName, ts.sys.readFile); | ||
if (this.tsconfigFilePath) { | ||
this.logger.debug({ tsConfigFileName: this.tsconfigFilePath }, 'readTsConfig(): reading', this.tsconfigFilePath); | ||
var result = ts.readConfigFile(this.tsconfigFilePath, ts.sys.readFile); | ||
// Return diagnostics. | ||
@@ -515,3 +528,3 @@ if (result.error) { | ||
config = result.config; | ||
basePath = (0, normalize_slashes_1.normalizeSlashes)((0, path_1.dirname)(configFileName)); | ||
basePath = (0, normalize_slashes_1.normalizeSlashes)((0, path_1.dirname)(this.tsconfigFilePath)); | ||
} | ||
@@ -521,3 +534,3 @@ // Override default configuration options `ts-jest` requires. | ||
// parse json, merge config extending others, ... | ||
return ts.parseJsonConfigFileContent(config, ts.sys, basePath, undefined, configFileName); | ||
return ts.parseJsonConfigFileContent(config, ts.sys, basePath, undefined, this.tsconfigFilePath); | ||
}; | ||
@@ -535,2 +548,3 @@ ConfigSet.prototype.isTestFile = function (fileName) { | ||
var _this = this; | ||
if (logger === void 0) { logger = this.logger; } | ||
var ignoreCodes = this._diagnostics.ignoreCodes; | ||
@@ -555,4 +569,3 @@ var DiagnosticCategory = this.compilerModule.DiagnosticCategory; | ||
} | ||
/* istanbul ignore next (already covered) */ | ||
logger ? logger.warn({ error: error }, error.message) : this.logger.warn({ error: error }, error.message); | ||
logger.warn({ error: error }, error.message); | ||
}; | ||
@@ -596,3 +609,5 @@ ConfigSet.prototype.shouldReportDiagnostics = function (filePath) { | ||
} | ||
catch (_) { } | ||
catch (_e) { | ||
this.logger.debug({ path: path }, 'failed to resolve path', path); | ||
} | ||
} | ||
@@ -608,3 +623,5 @@ if (!nodeResolved) { | ||
} | ||
catch (_) { } | ||
catch (_f) { | ||
this.logger.debug({ path: path }, 'failed to resolve path', path); | ||
} | ||
} | ||
@@ -611,0 +628,0 @@ if (throwIfMissing && !(0, fs_1.existsSync)(path)) { |
@@ -86,3 +86,2 @@ "use strict"; | ||
var sha1_1 = require("../utils/sha1"); | ||
var version_checkers_1 = require("../utils/version-checkers"); | ||
var compiler_1 = require("./compiler"); | ||
@@ -100,3 +99,2 @@ var config_set_1 = require("./config/config-set"); | ||
this._logger = utils_1.rootLogger.child({ namespace: 'ts-jest-transformer' }); | ||
version_checkers_1.VersionCheckers.jest.warn(); | ||
/** | ||
@@ -170,3 +168,2 @@ * For some unknown reasons, `this` is undefined in `getCacheKey` and `process` | ||
}; | ||
// eslint-disable-next-line class-methods-use-this | ||
TsJestTransformer.prototype._createConfigSet = function (config) { | ||
@@ -173,0 +170,0 @@ return new config_set_1.ConfigSet(config); |
@@ -0,1 +1,4 @@ | ||
/** | ||
* @deprecated This interface will be replaced with {@link TsConfigJson.CompilerOptions} in the next major release. | ||
*/ | ||
export interface RawCompilerOptions { | ||
@@ -2,0 +5,0 @@ /** |
@@ -5,2 +5,3 @@ import type { TransformedSource, TransformOptions } from '@jest/transform'; | ||
import type * as _ts from 'typescript'; | ||
import type { TsConfigCompilerOptionsJson } from './config/types'; | ||
import { ESM_JS_TRANSFORM_PATTERN, ESM_TS_JS_TRANSFORM_PATTERN, ESM_TS_TRANSFORM_PATTERN, JS_TRANSFORM_PATTERN, TS_JS_TRANSFORM_PATTERN, TS_TRANSFORM_PATTERN } from './constants'; | ||
@@ -24,3 +25,3 @@ import type { ConfigSet } from './legacy/config/config-set'; | ||
/** | ||
* @deprecated use `TsJestTransformerOptions` instead | ||
* @deprecated use {@link TsJestTransformerOptions} instead | ||
*/ | ||
@@ -35,9 +36,15 @@ export interface TsJestGlobalOptions { | ||
* | ||
* @default undefined uses the default tsconfig file | ||
* @default `undefined` (the default config file will be used if it exists) | ||
* | ||
* @remarks | ||
* | ||
* {@link RawCompilerOptions} will be replaced with {@link TsConfigCompilerOptionsJson} in the next major release | ||
*/ | ||
tsconfig?: boolean | string | RawCompilerOptions; | ||
tsconfig?: boolean | string | RawCompilerOptions | TsConfigCompilerOptionsJson; | ||
/** | ||
* Compiles files as isolated modules (disables some features and type-checking) | ||
* @deprecated use {@link TsConfigCompilerOptionsJson.isolatedModules} instead | ||
* | ||
* @default undefined (disabled) | ||
* Compiles files as isolated modules (disables some features) | ||
* | ||
* @default `undefined` (disables transpiling files with {@link _ts.transpileModule}) | ||
*/ | ||
@@ -48,3 +55,3 @@ isolatedModules?: boolean; | ||
* | ||
* @default 'typescript' | ||
* @default `typescript` | ||
*/ | ||
@@ -62,3 +69,3 @@ compiler?: 'typescript' | 'ttypescript' | string; | ||
* | ||
* @default undefined shows all diagnostics | ||
* @default `undefined` | ||
*/ | ||
@@ -69,3 +76,3 @@ diagnostics?: boolean | { | ||
* | ||
* @default undefined (enabled) | ||
* @default `undefined` (enables formatting errors) | ||
*/ | ||
@@ -78,3 +85,3 @@ pretty?: boolean; | ||
* @see https://github.com/Microsoft/TypeScript/blob/master/src/compiler/diagnosticMessages.json | ||
* @default [6059,18002,18003] | ||
* @default `[6059,18002,18003]` | ||
*/ | ||
@@ -89,3 +96,3 @@ ignoreCodes?: number | string | Array<number | string>; | ||
* | ||
* @default undefined (disabled) | ||
* @default `undefined` (TypeScript errors will be thrown as exceptions) | ||
*/ | ||
@@ -101,3 +108,3 @@ warnOnly?: boolean; | ||
* | ||
* @default undefined does NOT use babel | ||
* @default `undefined` (not using `Babel`) | ||
*/ | ||
@@ -104,0 +111,0 @@ babelConfig?: boolean | string | BabelConfig; |
@@ -11,4 +11,5 @@ "use strict"; | ||
} | ||
catch (err) { } | ||
return; | ||
catch (_a) { | ||
return undefined; | ||
} | ||
} |
@@ -50,9 +50,3 @@ "use strict"; | ||
var messages_1 = require("./messages"); | ||
var version_checkers_1 = require("./version-checkers"); | ||
var logger = logger_1.rootLogger.child({ namespace: 'Importer' }); | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
var passThru = function (action) { return function (input) { | ||
action(); | ||
return input; | ||
}; }; | ||
/** | ||
@@ -62,5 +56,3 @@ * @internal | ||
var Importer = /** @class */ (function () { | ||
function Importer(_patches) { | ||
if (_patches === void 0) { _patches = {}; } | ||
this._patches = _patches; | ||
function Importer() { | ||
} | ||
@@ -70,11 +62,3 @@ Object.defineProperty(Importer, "instance", { | ||
logger.debug('creating Importer singleton'); | ||
// here we can define patches to apply to modules. | ||
// it could be fixes that are not deployed, or | ||
// abstractions so that multiple versions work the same | ||
return new Importer({ | ||
'@babel/core': [passThru(version_checkers_1.VersionCheckers.babelCore.warn)], | ||
'babel-jest': [passThru(version_checkers_1.VersionCheckers.babelJest.warn)], | ||
typescript: [passThru(version_checkers_1.VersionCheckers.typescript.warn)], | ||
jest: [passThru(version_checkers_1.VersionCheckers.jest.warn)], | ||
}); | ||
return new Importer(); | ||
}, | ||
@@ -113,10 +97,7 @@ enumerable: false, | ||
loaded = req; | ||
if (loaded.error) { | ||
// require-ing it failed | ||
logger.error({ requireResult: contextReq }, "failed loading module '".concat(name, "'"), loaded.error.message); | ||
if (req.error) { | ||
logger.error({ requireResult: contextReq }, "failed loading module '".concat(name, "'"), req.error.message); | ||
} | ||
else { | ||
// it has been loaded, let's patch it | ||
logger.debug({ requireResult: contextReq }, 'loaded module', name); | ||
loaded.exports = this._patch(name, loaded.exports); | ||
} | ||
@@ -134,3 +115,2 @@ break; | ||
}; | ||
// eslint-disable-next-line no-dupe-class-members | ||
Importer.prototype.tryTheseOr = function (moduleNames, missingResult, allowLoadError) { | ||
@@ -148,9 +128,2 @@ if (allowLoadError === void 0) { allowLoadError = false; } | ||
}; | ||
Importer.prototype._patch = function (name, unpatched) { | ||
if (name in this._patches) { | ||
logger.debug('patching', name); | ||
return this._patches[name].reduce(function (mod, patcher) { return patcher(mod); }, unpatched); | ||
} | ||
return unpatched; | ||
}; | ||
Importer.prototype._import = function (why, moduleName, _a) { | ||
@@ -161,3 +134,3 @@ var _b = _a === void 0 ? {} : _a, _c = _b.alternatives, alternatives = _c === void 0 ? [] : _c, _d = _b.installTip, installTip = _d === void 0 ? moduleName : _d; | ||
// if we could load one, return it | ||
if (res && res.exists) { | ||
if (res === null || res === void 0 ? void 0 : res.exists) { | ||
if (!res.error) | ||
@@ -193,5 +166,2 @@ return res.exports; | ||
__decorate([ | ||
(0, memoize_1.Memoize)(function (name) { return name; }) | ||
], Importer.prototype, "_patch", null); | ||
__decorate([ | ||
(0, memoize_1.Memoize)() | ||
@@ -220,3 +190,3 @@ ], Importer, "instance", null); | ||
} | ||
catch (error) { | ||
catch (_a) { | ||
try { | ||
@@ -223,0 +193,0 @@ result.exports = requireModule(moduleName); |
@@ -9,3 +9,2 @@ "use strict"; | ||
exports.normalize = normalize; | ||
/* eslint-disable no-redeclare */ | ||
var fast_json_stable_stringify_1 = __importDefault(require("fast-json-stable-stringify")); | ||
@@ -36,3 +35,3 @@ var UNDEFINED = 'undefined'; | ||
} | ||
return result === undefined ? input : result; | ||
return result !== null && result !== void 0 ? result : input; | ||
} | ||
@@ -39,0 +38,0 @@ /** |
@@ -9,2 +9,3 @@ "use strict"; | ||
var _a; | ||
var _b; | ||
return ({ | ||
@@ -16,3 +17,3 @@ context: (_a = {}, | ||
_a), | ||
targets: process.env.TS_JEST_LOG || undefined, | ||
targets: (_b = process.env.TS_JEST_LOG) !== null && _b !== void 0 ? _b : undefined, | ||
}); | ||
@@ -19,0 +20,0 @@ }; |
@@ -1,1 +0,4 @@ | ||
export {}; | ||
export declare const TsJestDiagnosticCodes: { | ||
readonly Generic: 151000; | ||
readonly ConfigModuleOption: 151001; | ||
}; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.TsJestDiagnosticCodes = void 0; | ||
exports.interpolate = interpolate; | ||
@@ -13,1 +14,5 @@ /** | ||
} | ||
exports.TsJestDiagnosticCodes = { | ||
Generic: 151000, | ||
ConfigModuleOption: 151001, | ||
}; |
{ | ||
"name": "ts-jest", | ||
"version": "29.2.6", | ||
"version": "29.3.0", | ||
"main": "dist/index.js", | ||
"types": "dist/index.d.ts", | ||
"type": "commonjs", | ||
"bin": { | ||
@@ -11,11 +12,11 @@ "ts-jest": "cli.js" | ||
"scripts": { | ||
"prebuild": "rimraf dist coverage *.tgz", | ||
"prebuild": "rimraf --glob dist coverage *.tgz", | ||
"build": "tsc -p tsconfig.build.json", | ||
"postbuild": "node scripts/post-build.js", | ||
"test": "jest -c=jest-src.config.ts", | ||
"test": "jest -c=jest.config.ts", | ||
"test-e2e-cjs": "jest -c=jest-e2e.config.cjs --no-cache", | ||
"test-e2e-esm": "node --experimental-vm-modules --no-warnings node_modules/jest/bin/jest.js -c=jest-e2e.config.mjs --no-cache", | ||
"test-examples": "node scripts/test-examples.js", | ||
"lint": "eslint --ext .js,.ts .", | ||
"lint-fix": "eslint --fix --ext .js,.ts .", | ||
"lint": "eslint .", | ||
"lint-fix": "eslint --fix .", | ||
"lint-prettier": "prettier \"**/*.{yml,yaml,md}\" --write", | ||
@@ -29,5 +30,3 @@ "lint-prettier-ci": "prettier '**/*.{yml,yaml,md}' --check", | ||
"preversion": "npm run test", | ||
"version": "npm run changelog && git add CHANGELOG.md", | ||
"raw:options": "node scripts/generate-raw-compiler-options.js", | ||
"update-e2e": "node scripts/update-e2e.js" | ||
"version": "npm run changelog && git add CHANGELOG.md" | ||
}, | ||
@@ -65,2 +64,3 @@ "repository": { | ||
"semver": "^7.7.1", | ||
"type-fest": "^4.37.0", | ||
"yargs-parser": "^21.1.1" | ||
@@ -93,12 +93,8 @@ }, | ||
}, | ||
"husky": { | ||
"hooks": { | ||
"pre-commit": "lint-staged", | ||
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS", | ||
"post-commit": "git reset" | ||
} | ||
}, | ||
"devDependencies": { | ||
"@commitlint/cli": "~18.6.1", | ||
"@commitlint/config-angular": "~18.6.1", | ||
"@commitlint/cli": "^19.8.0", | ||
"@commitlint/config-angular": "^19.8.0", | ||
"@eslint/compat": "^1.2.7", | ||
"@eslint/eslintrc": "^3.3.1", | ||
"@eslint/js": "^9.23.0", | ||
"@jest/globals": "^29.7.0", | ||
@@ -116,17 +112,16 @@ "@jest/transform": "^29.7.0", | ||
"@types/micromatch": "^4.0.9", | ||
"@types/node": "20.17.19", | ||
"@types/node": "20.17.25", | ||
"@types/semver": "^7.5.8", | ||
"@types/yargs": "^17.0.33", | ||
"@types/yargs-parser": "21.0.3", | ||
"@typescript-eslint/eslint-plugin": "^7.18.0", | ||
"@typescript-eslint/parser": "^7.18.0", | ||
"@typescript-eslint/eslint-plugin": "^8.27.0", | ||
"@typescript-eslint/parser": "^8.27.0", | ||
"babel-jest": "^29.7.0", | ||
"conventional-changelog-cli": "^5.0.0", | ||
"esbuild": "~0.25.0", | ||
"eslint": "^8.57.1", | ||
"eslint-config-prettier": "^9.1.0", | ||
"esbuild": "~0.25.1", | ||
"eslint": "^9.23.0", | ||
"eslint-config-prettier": "^10.1.1", | ||
"eslint-plugin-import": "^2.31.0", | ||
"eslint-plugin-jest": "^28.11.0", | ||
"eslint-plugin-jsdoc": "^48.11.0", | ||
"eslint-plugin-prefer-arrow": "^1.2.3", | ||
"eslint-plugin-jsdoc": "^50.6.9", | ||
"eslint-plugin-prettier": "^4.2.1", | ||
@@ -137,16 +132,13 @@ "execa": "5.1.1", | ||
"glob-gitignore": "^1.0.15", | ||
"husky": "~4.3.8", | ||
"globals": "^16.0.0", | ||
"husky": "^9.1.7", | ||
"jest": "^29.7.0", | ||
"js-yaml": "^4.1.0", | ||
"json-schema-to-typescript": "^13.1.2", | ||
"lint-staged": "^15.4.3", | ||
"lint-staged": "^15.5.0", | ||
"memfs": "^4.17.0", | ||
"prettier": "^2.8.8", | ||
"typescript": "~5.5.4" | ||
"rimraf": "^5.0.10", | ||
"typescript": "~5.5.4", | ||
"typescript-eslint": "^8.27.0" | ||
}, | ||
"lint-staged": { | ||
"*.{ts,tsx,js,jsx}": [ | ||
"eslint --fix", | ||
"git add" | ||
] | ||
}, | ||
"engines": { | ||
@@ -153,0 +145,0 @@ "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" |
@@ -1,2 +0,1 @@ | ||
// eslint-disable-next-line no-console | ||
console.warn( | ||
@@ -3,0 +2,0 @@ 'ts-jest[main] (WARN) Replace any occurrences of "ts-jest/dist/preprocessor.js" or ' + |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
337307
3.32%96
3.23%4596
3.96%25
-3.85%16
6.67%46
12.2%+ Added
+ Added