1.0.8 • Published 4 months ago
@wepin/login v1.0.8
@wepin/login
Login library for Wepin Wallet
Install
yarn add @wepin/login
or
npm install @wepin/login
Import
import '@wepin/login'
var WepinLogin = window.WepinLogin
Functions
login
A new window will open and proceed to log in to firebase. Returns idToken
upon successful login.
const idToken = await WepinLogin.login({ appId, appKey, provider });
Parameters
- appId
string
- App ID assigned when registering the app
- appKey
string
- App Key assigned when registering the app
- provider
string
- Provider for Firebase login
google
: Google Login Providerapple
: Apple ID Login Providernaver
: Naver Login Providerdiscord
: Discord Login Provider
- locale:
'en'
|'ko'
- optional- locale value of loading image (default: 'en')
Return value
Promise<string>
- If success to login,
idToken
is returned. - If fail to login, Throws an Error object containing the message below.
Invalid provider
: Incorrect value of provider parameterUser canceled
: When the user closes the window during the login process.Internal error
: In others error situations.
- If success to login,
logout
- Logout of firebase. Returns true on successful logout.
const result = await WepinLogin.logout({ appId, appKey });
Parameters
- appId
string
- App ID assigned when registering the app
- appKey
string
- App Key assigned when registering the app
Return value
Promise<boolean>
- If success to login,
true
is returned. - If fail to login, Throws an Error object containing the message below.
Already logout
: When the user is already logged outInternal error
: In others error situations.
- If success to login,
loginWithExternalToken
- It proceed to log in to the firebase with external token(e.g., idToken). Returns
idToken
upon successful login.
const idToken = await WepinLogin.loginWithExternalToken({ appId, appKey, token, sign});
Parameters
appId
string
- App ID assigned when registering the app
appKey
string
- App Key assigned when registering the app
token
string
- External token value to be used for login (e.g., idToken).
sign
string
- Signature value for the token provided as the first parameter. (Signature Generation Methods)
locale:
'en'
|'ko'
- optional- locale value of loading image(default: 'en')
Return value
Promise<string>
- If success to login,
idToken
is returned. - If fail to login, Throws an Error object containing the message below.
Invalid provider
: Incorrect value of provider parameterUser canceled
: When the user closes the window during the login process.Internal error
: In others error situations.
- If success to login,
getSignForLogin
Generates signatures to verify the issuer. It is mainly used to generate signatures for login-related information such as ID tokens.
import {getSignForLogin} from '@wepin/login'
const result = getSignForLogin(privKey, message);
Parameters
- privkey
string
- The private key used for signature generation.
- message
string
- The message or payload to be signed.
Return value
string
- The generated signature.
‼️ Caution ‼️
The private key (
privkey
) must be stored securely and must not be exposed to the outside. It is recommended to execute thegetSignForLogin()
method on the backend rather than the frontend for enhanced security and protection of sensitive information.
Example
var privKey = '0400112233445566778899001122334455667788990011223344556677889900'
var idToken = 'idtokenabcdef'
var sign = getSignForLogin(privKey, idtoken)
var idToken = await WepinLogin.loginWithExternalToken({appKey, appId, token: idToken, sign})