Open oliviergabison opened 8 months ago
Hello @oliviergabison , thanks for reaching out and reporting this! We are currently investigating the issue, and will keep you updated.
Hello @oliviergabison , just wanted to update you on our findings so far.
We've been able to recreate your issue trying to import the library into a Next.js 13 project, and have discovered the issue lies in the easypost-node > superagent > formidable > hexoid
dependency chain. Specifically, formidable
does not seem to be importing hexoid
properly.
In our research, we came across another library that seems to be facing a similar issue, if any of the conversation there might be able to help you get unblocked: https://github.com/pubnub/javascript/issues/352. In the meantime, we'll continue investigating if there's anything we need/can fix with our library specifically.
Thanks again for reporting this!
I'm running into this as well
Ok, I think I finally found the issue. It is definitely a common issue with formidable + webpack
That last pull request actually provides a solution though. In the diff, in the Next.js config, you can see they create a webpack override for it. I did that as well, and it fixed the issue for me.
npm i --save-dev webpack
next.config.js
to include this:
import webpack from "webpack";
/* @type {import('next').NextConfig} / const nextConfig = { webpack: (config) => { config.plugins.push( new webpack.NormalModuleReplacementPlugin( /^hexoid$/, "hexoid/dist/index.js" ) ); return config; }, };
export default nextConfig;
@oliviergabison @jonknyc, did the override suggestion above help in your cases?
@oliviergabison @jonknyc, did the override suggestion above help in your cases?
I ended up just calling the API with fetch, instead of using the SDK.
e.g.
const response = await fetch("https://api.easypost.com/v2/trackers", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.EASYPOST_API_KEY}`,
},
body: JSON.stringify({
tracker: {
carrier,
tracking_code: trackingCode,
},
}),
})
Software Version
7.2.0
Language Version
20.10.0
Operating System
Mac OS 13.3.1
What happened?
const client = new EasyPostClient(process.env.EASYPOST_API_KEY!);
.TypeError: a is not a function
What was expected?
To be able to build the app while using EasyPostClient
Sample Code
Relevant logs
No response