yeojz / otplib

:key: One Time Password (OTP) / 2FA for Node.js and Browser - Supports HOTP, TOTP and Google Authenticator

Home Page:https://otplib.yeojz.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

crypto.createHmac is not a function TypeError: crypto.createHmac is not a function

shitallakhe opened this issue · comments

Hi,

I am using angular 14 and install otplib for 2FA but while running the application got below error

Module not found: Error: Can't resolve 'crypto' in '/Users/user/dev/www/mfa-auth-app/current/head/node_modules/@otplib/plugin-crypto'
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
- add a fallback 'resolve.fallback: { "crypto": require.resolve("crypto-browserify") }'
- install 'crypto-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
resolve.fallback: { "crypto": false }

    for this issue added 
     "browser": {
"crypto": false

}
In package.json

after ruuing the application getting another issue
http-rest-api.service.ts:41 ERROR Error: Uncaught (in promise): TypeError: crypto.createHmac is not a function
TypeError: crypto.createHmac is not a function

please help me out