Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: TypeError: api_1.default is not a constructor in Nestjs #446

Open
mustafakendiguzel opened this issue Apr 15, 2024 · 2 comments
Open
Labels
triage Issue is being researched

Comments

@mustafakendiguzel
Copy link

mustafakendiguzel commented Apr 15, 2024

Software Version

7.3.0

Language Version

21.4.0

Operating System

Windows

What happened?

  1. Imported easypost-node library in nestjs
  2. Attempt to create new EasyPostClient via
import EasyPost from '@easypost/api';
export class ShippingMailingService {
  private readonly easyPostClient: EasyPost
  constructor() { 
    this.easyPostClient = new EasyPost('apiKey')
  }
}
  1. Upon building, error is thrown that . TypeError: api_1.default is not a constructor
  2. Tsconfig.json
{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": false,
    "removeComments": true,
    "noLib": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "resolveJsonModule": true,
    "target": "es2017",
    "sourceMap": true,
    "allowJs": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "lib": ["ES7", "ES2021", "DOM"],
    "incremental": true,
    "skipLibCheck": true,
    "strictNullChecks": false,
    "noImplicitAny": false,
    "strictBindCallApply": false,
    "forceConsistentCasingInFileNames": false,
    "noFallthroughCasesInSwitch": false,
  }
}

What was expected?

To be able to build the app while using EasyPostClient

Sample Code

import EasyPost from '@easypost/api';

export class ShippingMailingService {
  private readonly easyPostClient: EasyPost
  constructor() { 
    this.easyPostClient = new EasyPost('apiKey')
  }
}

Relevant logs

No response

@mustafakendiguzel mustafakendiguzel added the triage Issue is being researched label Apr 15, 2024
@nwithan8
Copy link
Member

Hello there, thanks for writing in!

I believe there's an issue with your provided code snippet, you should be trying to construct an EasyPostClient object, not an EasyPost object

import EasyPostClient from '@easypost/api'; 

export class ShippingMailingService { 
  private readonly easyPostClient: EasyPostClient constructor() { this.easyPostClient = new EasyPostClient('apiKey') } }

@mustafakendiguzel
Copy link
Author

Hello there, thanks for writing in!

I believe there's an issue with your provided code snippet, you should be trying to construct an EasyPostClient object, not an EasyPost object

import EasyPostClient from '@easypost/api'; 

export class ShippingMailingService { 
  private readonly easyPostClient: EasyPostClient constructor() { this.easyPostClient = new EasyPostClient('apiKey') } }

Thanks for the answer @nwithan8.
I get the same error that didn't solve this problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage Issue is being researched
Projects
None yet
Development

No branches or pull requests

2 participants