jaydenseric / graphql-upload

Middleware and an Upload scalar to add support for GraphQL multipart requests (file uploads via queries and mutations) to various Node.js GraphQL servers.
https://npm.im/graphql-upload
MIT License
1.42k stars 131 forks source link

No "exports" main defined in graphql-upload/package.json #340

Closed ShilpaM007 closed 1 year ago

ShilpaM007 commented 1 year ago

I am getting error

node:internal/modules/cjs/loader:498
[server]       throw e;
[server]       ^
[server] 
[server] Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in C:\Users\ShilpaMittal\Documents\GitHub\customer-feedback-ui\server\node_modules\graphql-upload\package.json
[server]     at new NodeError (node:internal/errors:393:5)
[server]     at throwExportsNotFound (node:internal/modules/esm/resolve:340:9)
[server]     at packageExportsResolve (node:internal/modules/esm/resolve:619:3)
[server]     at resolveExports (node:internal/modules/cjs/loader:492:36)
[server]     at Module._findPath (node:internal/modules/cjs/loader:532:31)
[server]     at Module._resolveFilename (node:internal/modules/cjs/loader:941:27)
[server]     at Module._load (node:internal/modules/cjs/loader:803:27)
[server]     at Module.require (node:internal/modules/cjs/loader:1021:19)
[server]     at require (node:internal/modules/cjs/helpers:103:18)
[server]     at Object.<anonymous> (C:\Users\ShilpaMittal\Documents\GitHub\customer-feedback-ui\server\server.js:7:34) {
[server]   code: 'ERR_PACKAGE_PATH_NOT_EXPORTED'
[server] }
[server]
[server] Node.js v18.9.0

I tried adding exports as mentioned in (https://github.com/jaydenseric/graphql-upload/blob/cd9e4f1c5d7cdf66173973a3637192b11c30796c/package.json#L39-L46) but then that started throwing below error -

 node:internal/modules/cjs/loader:995
[server]     throw new ERR_REQUIRE_ESM(filename, true);
[server]     ^
[server]
[server] Error [ERR_REQUIRE_ESM]: require() of ES Module C:\Users\ShilpaMittal\Documents\GitHub\customer-feedback-ui\server\node_modules\graphql-upload\graphqlUploadExpress.mjs not supported.
[server] Instead change the require of C:\Users\ShilpaMittal\Documents\GitHub\customer-feedback-ui\server\node_modules\graphql-upload\graphqlUploadExpress.mjs to a dynamic import() which is available in all CommonJS modules.        
[server]     at Object.<anonymous> (C:\Users\ShilpaMittal\Documents\GitHub\customer-feedback-ui\server\server.js:7:34) {
[server]   code: 'ERR_REQUIRE_ESM'
[server] }
[server]
[server] Node.js v18.9.0

Please guide me through this. Thanks in advance

bombillazo commented 1 year ago

@ShilpaM007 I too had this, see this comment for the proper way to import: https://github.com/jaydenseric/graphql-upload/issues/337#issuecomment-1240038750

jaydenseric commented 1 year ago

Thanks @bombillazo for sharing the right answer :)

https://github.com/jaydenseric/graphql-upload/issues/337#issuecomment-1240038750