From 4cc1275afd7b91df9f07fb32df7a23964cbf3c34 Mon Sep 17 00:00:00 2001 From: KyleBoyer Date: Tue, 23 Apr 2024 15:31:33 -0500 Subject: [PATCH] fix(pkg): add a `default` fallback export (#542) Co-authored-by: wolfy1339 --- README.md | 6 ++++++ scripts/build.mjs | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 767debd..817dbea 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,12 @@ import { retry } from "@octokit/plugin-retry"; +> [!IMPORTANT] +> As we use [conditional exports](https://nodejs.org/api/packages.html#conditional-exports), you will need to adapt your `tsconfig.json` by setting `"moduleResolution": "node16", "module": "node16"`. +> +> See the TypeScript docs on [package.json "exports"](https://www.typescriptlang.org/docs/handbook/modules/reference.html#packagejson-exports).
+> See this [helpful guide on transitioning to ESM](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c) from [@sindresorhus](https://github.com/sindresorhus) + ```js const MyOctokit = Octokit.plugin(retry); const octokit = new MyOctokit({ auth: "secret123" }); diff --git a/scripts/build.mjs b/scripts/build.mjs index 74b256e..e77e944 100644 --- a/scripts/build.mjs +++ b/scripts/build.mjs @@ -60,12 +60,15 @@ async function main() { { ...pkg, files: ["dist-*/**", "bin/**"], - main: "./dist-bundle/index.js", types: "./dist-types/index.d.ts", exports: { ".": { types: "./dist-types/index.d.ts", import: "./dist-bundle/index.js", + // Tooling currently are having issues with the "exports" field when there is no "default", ex: TypeScript, eslint, ncc, jest + // See https://github.com/octokit/core.js/issues/667#issuecomment-2037592361 + // See https://github.com/octokit/plugin-retry.js/issues/541 + default: "./dist-bundle/index.js", }, }, sideEffects: false,