unfetch icon indicating copy to clipboard operation
unfetch copied to clipboard

Package.json conditional exports points to non-existent files

Open IronGeek opened this issue 1 year ago • 1 comments

The conditional exports in package.json points to files which does not exist:

https://github.com/developit/unfetch/blob/ee5810e7f9cd769677984b159d7e250adf4611b9/package.json#L16-L20

This causes the following errors when importing unfetch with typescript:

Cannot find module 'unfetch' or its corresponding type declarations.ts(2307)

Also, if you're declaring conditional exports and have type declarations (d.ts) in different location, I think you need to add "types" as the first export condition (see: https://www.typescriptlang.org/docs/handbook/esm-node.html, and https://github.com/microsoft/TypeScript/issues/48235)

Therefore, I believe the correct exports should've been:

  "exports": {
    ".": {
      "types": "./src/index.d.ts",
      "import": "./dist/unfetch.mjs",
      "default": "./dist/unfetch.js"
    },

FWIW, I'm using Typescript 4.9 with moduleResolution": "NodeNext"

IronGeek avatar Feb 05 '23 09:02 IronGeek

Sorry, I just realized this might be related to this issue: https://github.com/developit/unfetch/issues/162

IronGeek avatar Feb 05 '23 09:02 IronGeek