diff --git a/nx-transformer.js b/nx-transformer.js index 8be4633..6f63130 100644 --- a/nx-transformer.js +++ b/nx-transformer.js @@ -1,2 +1,6 @@ -"use strict"; -module.exports = require("./").nxTransformerPlugin; +// Keeping register here in the root for backwards compatibiliy, TODO remove in the next major version +console.warn( + "typescript-transform-paths: Calling the top level nx-transformer file is deprecated and will be removed in the future. Use a tool that supports package.json exports", +); + +require("./dist/nx-transfomer"); diff --git a/package.json b/package.json index f655caf..8bd0aa3 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,8 @@ "types": "./dist/index.d.ts", "default": "./dist/index.js" }, - "./register": "./register.js", - "./nx-transformer": "./nx-transformer.js" + "./register": "./dist/register-entry.js", + "./nx-transformer": "./dist/nx-transformer.js" }, "files": [ "dist", diff --git a/register.js b/register.js old mode 100755 new mode 100644 index 6e9b581..d0bcee8 --- a/register.js +++ b/register.js @@ -1,11 +1,5 @@ -let tsNode; -try { - tsNode = require("ts-node"); -} catch { - throw new Error( - `Cannot resolve ts-node. Make sure ts-node is installed before using typescript-transform-paths/register`, - ); -} - -tsNode.register(); -require("./").register(); +// Keeping register here in the root for backwards compatibiliy, TODO remove in the next major version +console.warn( + "typescript-transform-paths: Calling the top level register file is deprecated and will be removed in the future. Use a tool that supports package.json exports", +); +require("./dist/register-entry"); diff --git a/src/nx-transformer.ts b/src/nx-transformer.ts new file mode 100644 index 0000000..d11cd50 --- /dev/null +++ b/src/nx-transformer.ts @@ -0,0 +1 @@ +export { nxTransformerPlugin as default } from "./plugins"; diff --git a/src/register-entry.ts b/src/register-entry.ts new file mode 100755 index 0000000..706eae3 --- /dev/null +++ b/src/register-entry.ts @@ -0,0 +1,13 @@ +let tsNode; +try { + // eslint-disable-next-line @typescript-eslint/no-require-imports + tsNode = require("ts-node"); +} catch { + throw new Error( + `Cannot resolve ts-node. Make sure ts-node is installed before using typescript-transform-paths/register`, + ); +} + +tsNode.register(); +// eslint-disable-next-line @typescript-eslint/no-require-imports +require("./").register();