From 970db695f6fb7bf0aa2a61294b93464e3170adad Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Thu, 11 Aug 2022 16:33:18 -0400 Subject: [PATCH 1/7] Fix jest ts configuration --- package-lock.json | 249 +++++++++++++++++- package.json | 1 + packages/jest-utils/package.json | 1 - .../{vite.config.ts => vite.config.mts} | 0 packages/nx-plugin/preset.json | 5 + .../nx-plugin/src/generators/ts-iso/index.ts | 2 + packages/nx-plugin/src/utils/dependencies.ts | 1 + 7 files changed, 256 insertions(+), 3 deletions(-) rename packages/jest-utils/{vite.config.ts => vite.config.mts} (100%) diff --git a/package-lock.json b/package-lock.json index 960e114..25cad14 100644 --- a/package-lock.json +++ b/package-lock.json @@ -35,6 +35,7 @@ "nx": "^14.5.0", "shx": "^0.3.4", "ts-jest": "^28.0.7", + "ts-node": "^10.9.1", "typescript": "^4.7.4", "vite": "^3.0.3" } @@ -518,6 +519,28 @@ "version": "0.2.3", "license": "MIT" }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "devOptional": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "devOptional": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/@eslint/eslintrc": { "version": "1.3.0", "license": "MIT", @@ -2004,6 +2027,30 @@ "node": ">= 6" } }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "devOptional": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "devOptional": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "devOptional": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "devOptional": true + }, "node_modules/@types/babel__core": { "version": "7.1.19", "license": "MIT", @@ -2433,6 +2480,12 @@ "node": ">= 8" } }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "devOptional": true + }, "node_modules/argparse": { "version": "1.0.10", "license": "MIT", @@ -3063,6 +3116,12 @@ "safe-buffer": "~5.1.1" } }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "devOptional": true + }, "node_modules/cross-spawn": { "version": "7.0.3", "license": "MIT", @@ -3198,6 +3257,15 @@ "node": ">=8" } }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "devOptional": true, + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/diff-sequences": { "version": "28.1.1", "license": "MIT", @@ -8036,7 +8104,7 @@ }, "node_modules/make-error": { "version": "1.3.6", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/makeerror": { @@ -9466,6 +9534,58 @@ "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "devOptional": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "devOptional": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/tsconfig-paths": { "version": "3.14.1", "license": "MIT", @@ -9626,6 +9746,12 @@ "version": "2.3.0", "license": "MIT" }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "devOptional": true + }, "node_modules/v8-to-istanbul": { "version": "8.1.1", "license": "ISC", @@ -9981,6 +10107,15 @@ "node": ">=8" } }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "devOptional": true, + "engines": { + "node": ">=6" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "dev": true, @@ -10062,6 +10197,12 @@ "nx-spawn": "dist/index.js" } }, + "packages/testapp": { + "name": "@eternagame/testapp", + "version": "1.0.0", + "extraneous": true, + "license": "BSD-3-Clause" + }, "packages/tsconfig": { "name": "@eternagame/tsconfig", "version": "1.1.1", @@ -10382,6 +10523,27 @@ "@bcoe/v8-coverage": { "version": "0.2.3" }, + "@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "devOptional": true, + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "devOptional": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } + } + }, "@eslint/eslintrc": { "version": "1.3.0", "requires": { @@ -11484,6 +11646,30 @@ "@tootallnate/once": { "version": "1.1.2" }, + "@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "devOptional": true + }, + "@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "devOptional": true + }, + "@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "devOptional": true + }, + "@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "devOptional": true + }, "@types/babel__core": { "version": "7.1.19", "requires": { @@ -11730,6 +11916,12 @@ "picomatch": "^2.0.4" } }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "devOptional": true + }, "argparse": { "version": "1.0.10", "requires": { @@ -12110,6 +12302,12 @@ "safe-buffer": "~5.1.1" } }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "devOptional": true + }, "cross-spawn": { "version": "7.0.3", "requires": { @@ -12186,6 +12384,12 @@ "detect-newline": { "version": "3.1.0" }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "devOptional": true + }, "diff-sequences": { "version": "28.1.1" }, @@ -15396,7 +15600,7 @@ }, "make-error": { "version": "1.3.6", - "dev": true + "devOptional": true }, "makeerror": { "version": "1.0.12", @@ -16202,6 +16406,35 @@ } } }, + "ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "devOptional": true, + "requires": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "devOptional": true + } + } + }, "tsconfig-paths": { "version": "3.14.1", "requires": { @@ -16292,6 +16525,12 @@ "v8-compile-cache": { "version": "2.3.0" }, + "v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "devOptional": true + }, "v8-to-istanbul": { "version": "8.1.1", "requires": { @@ -16497,6 +16736,12 @@ "yargs-parser": { "version": "21.0.1" }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "devOptional": true + }, "yocto-queue": { "version": "0.1.0", "dev": true diff --git a/package.json b/package.json index 17c8436..43bb80f 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "nx": "^14.5.0", "shx": "^0.3.4", "ts-jest": "^28.0.7", + "ts-node": "^10.9.1", "typescript": "^4.7.4", "vite": "^3.0.3" }, diff --git a/packages/jest-utils/package.json b/packages/jest-utils/package.json index cf58c6b..7d51f2d 100644 --- a/packages/jest-utils/package.json +++ b/packages/jest-utils/package.json @@ -3,7 +3,6 @@ "description": "Eterna standard Jest setup and utilities", "version": "1.1.0", "license": "BSD-3-Clause", - "type": "module", "scripts": { "prepublishOnly": "nx build", "build": "vite build", diff --git a/packages/jest-utils/vite.config.ts b/packages/jest-utils/vite.config.mts similarity index 100% rename from packages/jest-utils/vite.config.ts rename to packages/jest-utils/vite.config.mts diff --git a/packages/nx-plugin/preset.json b/packages/nx-plugin/preset.json index 0164d7d..7fb80e8 100644 --- a/packages/nx-plugin/preset.json +++ b/packages/nx-plugin/preset.json @@ -45,6 +45,11 @@ "inputs": ["default", "^default", "test"], "dependsOn": ["build"] }, + "test:cov": { + "inputs": ["default", "^default", "test"], + "dependsOn": ["build"], + "outputs": ["./coverage"] + }, "e2e": { "inputs": ["default", "^default"], "dependsOn": ["build"] diff --git a/packages/nx-plugin/src/generators/ts-iso/index.ts b/packages/nx-plugin/src/generators/ts-iso/index.ts index 99b73dd..d21d4bb 100644 --- a/packages/nx-plugin/src/generators/ts-iso/index.ts +++ b/packages/nx-plugin/src/generators/ts-iso/index.ts @@ -92,6 +92,8 @@ function updatePackageJson(tree: Tree, options: NormalizedSchema) { '@types/jest', 'ts-jest', 'typescript', + // For loading TS jest config files + 'ts-node', ]), ); } diff --git a/packages/nx-plugin/src/utils/dependencies.ts b/packages/nx-plugin/src/utils/dependencies.ts index cdb5a2b..5d3f48d 100644 --- a/packages/nx-plugin/src/utils/dependencies.ts +++ b/packages/nx-plugin/src/utils/dependencies.ts @@ -46,6 +46,7 @@ const VERSIONS = { jest: '^27.5.0', '@types/jest': '^27.4.0', 'ts-jest': '^27.1.3', + 'ts-node': '^10.9.1', } as const; export default function getDependencyVersions( From fc883884e65c3359af0078c9c89ed11280e62601 Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Thu, 11 Aug 2022 16:34:51 -0400 Subject: [PATCH 2/7] Remove ts-node --- package-lock.json | 79 +++++++++++++++++++++++++++++++---------------- package.json | 1 - 2 files changed, 52 insertions(+), 28 deletions(-) diff --git a/package-lock.json b/package-lock.json index 25cad14..6cae69f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -35,7 +35,6 @@ "nx": "^14.5.0", "shx": "^0.3.4", "ts-jest": "^28.0.7", - "ts-node": "^10.9.1", "typescript": "^4.7.4", "vite": "^3.0.3" } @@ -523,7 +522,8 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "devOptional": true, + "optional": true, + "peer": true, "dependencies": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -535,7 +535,8 @@ "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "devOptional": true, + "optional": true, + "peer": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -2031,25 +2032,29 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/@tsconfig/node16": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/@types/babel__core": { "version": "7.1.19", @@ -2484,7 +2489,8 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/argparse": { "version": "1.0.10", @@ -3120,7 +3126,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/cross-spawn": { "version": "7.0.3", @@ -3261,7 +3268,8 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "devOptional": true, + "optional": true, + "peer": true, "engines": { "node": ">=0.3.1" } @@ -9538,7 +9546,8 @@ "version": "10.9.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "devOptional": true, + "optional": true, + "peer": true, "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -9581,7 +9590,8 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "devOptional": true, + "optional": true, + "peer": true, "engines": { "node": ">=0.4.0" } @@ -9750,7 +9760,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "devOptional": true + "optional": true, + "peer": true }, "node_modules/v8-to-istanbul": { "version": "8.1.1", @@ -10111,7 +10122,8 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "devOptional": true, + "optional": true, + "peer": true, "engines": { "node": ">=6" } @@ -10527,7 +10539,8 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "devOptional": true, + "optional": true, + "peer": true, "requires": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -10536,7 +10549,8 @@ "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "devOptional": true, + "optional": true, + "peer": true, "requires": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -11650,25 +11664,29 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "devOptional": true + "optional": true, + "peer": true }, "@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "devOptional": true + "optional": true, + "peer": true }, "@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "devOptional": true + "optional": true, + "peer": true }, "@tsconfig/node16": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "devOptional": true + "optional": true, + "peer": true }, "@types/babel__core": { "version": "7.1.19", @@ -11920,7 +11938,8 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "devOptional": true + "optional": true, + "peer": true }, "argparse": { "version": "1.0.10", @@ -12306,7 +12325,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "devOptional": true + "optional": true, + "peer": true }, "cross-spawn": { "version": "7.0.3", @@ -12388,7 +12408,8 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "devOptional": true + "optional": true, + "peer": true }, "diff-sequences": { "version": "28.1.1" @@ -16410,7 +16431,8 @@ "version": "10.9.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "devOptional": true, + "optional": true, + "peer": true, "requires": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -16431,7 +16453,8 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "devOptional": true + "optional": true, + "peer": true } } }, @@ -16529,7 +16552,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "devOptional": true + "optional": true, + "peer": true }, "v8-to-istanbul": { "version": "8.1.1", @@ -16740,7 +16764,8 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "devOptional": true + "optional": true, + "peer": true }, "yocto-queue": { "version": "0.1.0", diff --git a/package.json b/package.json index 43bb80f..17c8436 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,6 @@ "nx": "^14.5.0", "shx": "^0.3.4", "ts-jest": "^28.0.7", - "ts-node": "^10.9.1", "typescript": "^4.7.4", "vite": "^3.0.3" }, From c6e8e52c4c54db492e31b1f6bbca2f2c80700cfc Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Thu, 11 Aug 2022 16:37:10 -0400 Subject: [PATCH 3/7] Fully reset lockfile --- package-lock.json | 274 +--------------------------------------------- 1 file changed, 2 insertions(+), 272 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6cae69f..960e114 100644 --- a/package-lock.json +++ b/package-lock.json @@ -518,30 +518,6 @@ "version": "0.2.3", "license": "MIT" }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, "node_modules/@eslint/eslintrc": { "version": "1.3.0", "license": "MIT", @@ -2028,34 +2004,6 @@ "node": ">= 6" } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "optional": true, - "peer": true - }, "node_modules/@types/babel__core": { "version": "7.1.19", "license": "MIT", @@ -2485,13 +2433,6 @@ "node": ">= 8" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "optional": true, - "peer": true - }, "node_modules/argparse": { "version": "1.0.10", "license": "MIT", @@ -3122,13 +3063,6 @@ "safe-buffer": "~5.1.1" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "optional": true, - "peer": true - }, "node_modules/cross-spawn": { "version": "7.0.3", "license": "MIT", @@ -3264,16 +3198,6 @@ "node": ">=8" } }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "optional": true, - "peer": true, - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/diff-sequences": { "version": "28.1.1", "license": "MIT", @@ -8112,7 +8036,7 @@ }, "node_modules/make-error": { "version": "1.3.6", - "devOptional": true, + "dev": true, "license": "ISC" }, "node_modules/makeerror": { @@ -9542,60 +9466,6 @@ "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "optional": true, - "peer": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "optional": true, - "peer": true, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/tsconfig-paths": { "version": "3.14.1", "license": "MIT", @@ -9756,13 +9626,6 @@ "version": "2.3.0", "license": "MIT" }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "optional": true, - "peer": true - }, "node_modules/v8-to-istanbul": { "version": "8.1.1", "license": "ISC", @@ -10118,16 +9981,6 @@ "node": ">=8" } }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "optional": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "dev": true, @@ -10209,12 +10062,6 @@ "nx-spawn": "dist/index.js" } }, - "packages/testapp": { - "name": "@eternagame/testapp", - "version": "1.0.0", - "extraneous": true, - "license": "BSD-3-Clause" - }, "packages/tsconfig": { "name": "@eternagame/tsconfig", "version": "1.1.1", @@ -10535,29 +10382,6 @@ "@bcoe/v8-coverage": { "version": "0.2.3" }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "optional": true, - "peer": true, - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "optional": true, - "peer": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, "@eslint/eslintrc": { "version": "1.3.0", "requires": { @@ -11660,34 +11484,6 @@ "@tootallnate/once": { "version": "1.1.2" }, - "@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "optional": true, - "peer": true - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "optional": true, - "peer": true - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "optional": true, - "peer": true - }, - "@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "optional": true, - "peer": true - }, "@types/babel__core": { "version": "7.1.19", "requires": { @@ -11934,13 +11730,6 @@ "picomatch": "^2.0.4" } }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "optional": true, - "peer": true - }, "argparse": { "version": "1.0.10", "requires": { @@ -12321,13 +12110,6 @@ "safe-buffer": "~5.1.1" } }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "optional": true, - "peer": true - }, "cross-spawn": { "version": "7.0.3", "requires": { @@ -12404,13 +12186,6 @@ "detect-newline": { "version": "3.1.0" }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "optional": true, - "peer": true - }, "diff-sequences": { "version": "28.1.1" }, @@ -15621,7 +15396,7 @@ }, "make-error": { "version": "1.3.6", - "devOptional": true + "dev": true }, "makeerror": { "version": "1.0.12", @@ -16427,37 +16202,6 @@ } } }, - "ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "optional": true, - "peer": true, - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "dependencies": { - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "optional": true, - "peer": true - } - } - }, "tsconfig-paths": { "version": "3.14.1", "requires": { @@ -16548,13 +16292,6 @@ "v8-compile-cache": { "version": "2.3.0" }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "optional": true, - "peer": true - }, "v8-to-istanbul": { "version": "8.1.1", "requires": { @@ -16760,13 +16497,6 @@ "yargs-parser": { "version": "21.0.1" }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "optional": true, - "peer": true - }, "yocto-queue": { "version": "0.1.0", "dev": true From 7317f7e7149aa097f79d23eaa0f0b483e1db8473 Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Thu, 11 Aug 2022 16:38:41 -0400 Subject: [PATCH 4/7] Mark test:cov as cacheable --- packages/nx-plugin/preset.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/nx-plugin/preset.json b/packages/nx-plugin/preset.json index 7fb80e8..d3f3a94 100644 --- a/packages/nx-plugin/preset.json +++ b/packages/nx-plugin/preset.json @@ -13,7 +13,7 @@ "default": { "runner": "nx/tasks-runners/default", "options": { - "cacheableOperations": ["build", "lint", "test", "e2e"] + "cacheableOperations": ["build", "lint", "test", "test:cov", "e2e"] } } }, From adb0a62590ad385b67c1e9548e2c8c512820ff01 Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Fri, 12 Aug 2022 19:12:06 -0400 Subject: [PATCH 5/7] Use ts-check instead of relying on ts-node, fix absolute path resolution in tests --- packages/jest-utils/package.json | 1 + packages/jest-utils/src/index.ts | 1 + packages/jest-utils/{vite.config.mts => vite.config.ts} | 0 .../files/{jest.config.ts__tmpl__ => jest.config.js__tmpl__} | 1 + .../src/generators/ts-iso/files/tsconfig.spec.json__tmpl__ | 3 +++ packages/nx-plugin/src/generators/ts-iso/index.ts | 2 -- packages/nx-plugin/src/utils/dependencies.ts | 1 - 7 files changed, 6 insertions(+), 3 deletions(-) rename packages/jest-utils/{vite.config.mts => vite.config.ts} (100%) rename packages/nx-plugin/src/generators/ts-iso/files/{jest.config.ts__tmpl__ => jest.config.js__tmpl__} (87%) diff --git a/packages/jest-utils/package.json b/packages/jest-utils/package.json index 7d51f2d..cf58c6b 100644 --- a/packages/jest-utils/package.json +++ b/packages/jest-utils/package.json @@ -3,6 +3,7 @@ "description": "Eterna standard Jest setup and utilities", "version": "1.1.0", "license": "BSD-3-Clause", + "type": "module", "scripts": { "prepublishOnly": "nx build", "build": "vite build", diff --git a/packages/jest-utils/src/index.ts b/packages/jest-utils/src/index.ts index 6dd4edb..0830f54 100644 --- a/packages/jest-utils/src/index.ts +++ b/packages/jest-utils/src/index.ts @@ -14,6 +14,7 @@ export function getConfig(mode: 'typescript' | 'vue') { '!**/*.(spec|test).(js|mjs|cjs|ts|mts|cts)', '!**/(__tests__|test|tests|spec)/**/*.(js|mjs|cjs|ts|mts|cts)', ], + modulePaths: ['/src/'], globals: { 'ts-jest': { tsconfig: 'tsconfig.spec.json', diff --git a/packages/jest-utils/vite.config.mts b/packages/jest-utils/vite.config.ts similarity index 100% rename from packages/jest-utils/vite.config.mts rename to packages/jest-utils/vite.config.ts diff --git a/packages/nx-plugin/src/generators/ts-iso/files/jest.config.ts__tmpl__ b/packages/nx-plugin/src/generators/ts-iso/files/jest.config.js__tmpl__ similarity index 87% rename from packages/nx-plugin/src/generators/ts-iso/files/jest.config.ts__tmpl__ rename to packages/nx-plugin/src/generators/ts-iso/files/jest.config.js__tmpl__ index f644f5b..953c32e 100644 --- a/packages/nx-plugin/src/generators/ts-iso/files/jest.config.ts__tmpl__ +++ b/packages/nx-plugin/src/generators/ts-iso/files/jest.config.js__tmpl__ @@ -1,3 +1,4 @@ +// @ts-check import { getConfig } from '@eternagame/jest-utils'; export default getConfig('typescript'); diff --git a/packages/nx-plugin/src/generators/ts-iso/files/tsconfig.spec.json__tmpl__ b/packages/nx-plugin/src/generators/ts-iso/files/tsconfig.spec.json__tmpl__ index b707f8f..79ec3d1 100644 --- a/packages/nx-plugin/src/generators/ts-iso/files/tsconfig.spec.json__tmpl__ +++ b/packages/nx-plugin/src/generators/ts-iso/files/tsconfig.spec.json__tmpl__ @@ -3,6 +3,9 @@ "references": [ {"path": "./tsconfig.build.json"} ], + "compilerOptions": { + "baseUrl": "src" + }, "include": [ "**/*.spec.ts", "**/*.test.ts", diff --git a/packages/nx-plugin/src/generators/ts-iso/index.ts b/packages/nx-plugin/src/generators/ts-iso/index.ts index d21d4bb..99b73dd 100644 --- a/packages/nx-plugin/src/generators/ts-iso/index.ts +++ b/packages/nx-plugin/src/generators/ts-iso/index.ts @@ -92,8 +92,6 @@ function updatePackageJson(tree: Tree, options: NormalizedSchema) { '@types/jest', 'ts-jest', 'typescript', - // For loading TS jest config files - 'ts-node', ]), ); } diff --git a/packages/nx-plugin/src/utils/dependencies.ts b/packages/nx-plugin/src/utils/dependencies.ts index 5d3f48d..cdb5a2b 100644 --- a/packages/nx-plugin/src/utils/dependencies.ts +++ b/packages/nx-plugin/src/utils/dependencies.ts @@ -46,7 +46,6 @@ const VERSIONS = { jest: '^27.5.0', '@types/jest': '^27.4.0', 'ts-jest': '^27.1.3', - 'ts-node': '^10.9.1', } as const; export default function getDependencyVersions( From 1484bb75b795087e7a2d087a2d0115dd23ca9573 Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Fri, 12 Aug 2022 19:18:57 -0400 Subject: [PATCH 6/7] Add missing semicolon to spec template --- .../src/generators/ts-iso/files/src/index.spec.ts__tmpl__ | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/nx-plugin/src/generators/ts-iso/files/src/index.spec.ts__tmpl__ b/packages/nx-plugin/src/generators/ts-iso/files/src/index.spec.ts__tmpl__ index 26ca66f..2ea2be4 100644 --- a/packages/nx-plugin/src/generators/ts-iso/files/src/index.spec.ts__tmpl__ +++ b/packages/nx-plugin/src/generators/ts-iso/files/src/index.spec.ts__tmpl__ @@ -1 +1 @@ -test.todo('Write tests') +test.todo('Write tests'); From 8a83520eefef189c022c57e280a1cffe6f2b9824 Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Fri, 12 Aug 2022 19:48:32 -0400 Subject: [PATCH 7/7] Be a bit more robust with determining modulePaths --- packages/jest-utils/src/index.ts | 34 +++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/packages/jest-utils/src/index.ts b/packages/jest-utils/src/index.ts index 0830f54..fbffc50 100644 --- a/packages/jest-utils/src/index.ts +++ b/packages/jest-utils/src/index.ts @@ -1,9 +1,37 @@ import type { Config } from '@jest/types'; +import { existsSync, readFileSync } from 'fs'; + +/** + * Given an object of an unknown type, check if it's an object that contains a particular key + */ +export function inOperator( + k: K, + o: T, +): o is T & Record { + return o && typeof o === 'object' && k in o; +} + +function getModulePaths(tsconfig: string): string[] { + // The user is putting their tsconfig somewhere we don't understand. Instead of + // preventing them from doing it, let them take care of modulePaths themselves + if (!tsconfig || !existsSync(tsconfig)) return []; + + const config: unknown = JSON.parse(readFileSync(tsconfig, 'utf-8')); + // If they don't have a baseUrl set, don't set modulePaths + if (!inOperator('compilerOptions', config)) return []; + const { compilerOptions } = config; + if (!inOperator('baseUrl', compilerOptions)) return []; + const { baseUrl } = compilerOptions; + if (typeof baseUrl !== 'string') return []; + return [baseUrl]; +} // We may want to add other things, so don't default export so that we don't need to // break the API later // eslint-disable-next-line import/prefer-default-export -export function getConfig(mode: 'typescript' | 'vue') { +export function getConfig(mode: 'typescript' | 'vue', options?: { tsconfig?: string }) { + const tsconfig = options?.tsconfig ?? 'tsconfig.spec.json'; + const config: Config.InitialOptions = { testMatch: [ '**/(__tests__|test|tests|spec)/**/*.[jt]s?(x)', @@ -14,10 +42,10 @@ export function getConfig(mode: 'typescript' | 'vue') { '!**/*.(spec|test).(js|mjs|cjs|ts|mts|cts)', '!**/(__tests__|test|tests|spec)/**/*.(js|mjs|cjs|ts|mts|cts)', ], - modulePaths: ['/src/'], + modulePaths: getModulePaths(tsconfig), globals: { 'ts-jest': { - tsconfig: 'tsconfig.spec.json', + tsconfig, }, }, };