From f8b5af15a47125a6e1707206eb496bf8f6c54d4d Mon Sep 17 00:00:00 2001 From: chmanie Date: Wed, 21 Jun 2023 16:12:31 +0200 Subject: [PATCH 1/2] [ethers-v5] Add node16 moduleSuffix to directories --- examples/ethers-v5-nodenext/types/ethers-contracts/index.ts | 2 +- packages/typechain/src/codegen/createBarrelFiles.ts | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/ethers-v5-nodenext/types/ethers-contracts/index.ts b/examples/ethers-v5-nodenext/types/ethers-contracts/index.ts index b3d3485be..ef12768a1 100644 --- a/examples/ethers-v5-nodenext/types/ethers-contracts/index.ts +++ b/examples/ethers-v5-nodenext/types/ethers-contracts/index.ts @@ -2,5 +2,5 @@ /* tslint:disable */ /* eslint-disable */ export type { Dai } from "./Dai.js"; -export * as factories from "./factories"; +export * as factories from "./factories/index.js"; export { Dai__factory } from "./factories/Dai__factory.js"; diff --git a/packages/typechain/src/codegen/createBarrelFiles.ts b/packages/typechain/src/codegen/createBarrelFiles.ts index fd4cfbd3d..2c4b0f85b 100644 --- a/packages/typechain/src/codegen/createBarrelFiles.ts +++ b/packages/typechain/src/codegen/createBarrelFiles.ts @@ -59,6 +59,9 @@ export function createBarrelFiles( `export type { ${namespaceIdentifier} };`, ].join('\n') + if (moduleSuffix) { + return `export * as ${namespaceIdentifier} from './${p}/index${moduleSuffix}';` + } return `export * as ${namespaceIdentifier} from './${p}';` }) .join('\n') From 773f4b96effb09a1986c39cc9ddae53144f38457 Mon Sep 17 00:00:00 2001 From: chmanie Date: Wed, 21 Jun 2023 16:15:10 +0200 Subject: [PATCH 2/2] [ethers-v5] Add changeset for directory moduleSuffix change --- .changeset/lazy-eggs-brush.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/lazy-eggs-brush.md diff --git a/.changeset/lazy-eggs-brush.md b/.changeset/lazy-eggs-brush.md new file mode 100644 index 000000000..f5c5a00e9 --- /dev/null +++ b/.changeset/lazy-eggs-brush.md @@ -0,0 +1,6 @@ +--- +'typechain': patch +--- + +Add the node16 moduleSuffix also to directories (including the `index` filename) as in ESM directory root files have to +be explicitly stated (including their file extension).