메서드
Wepin widget Javascript SDK에서 제공하는 메서드 입니다.
openWidget
await wepin.openWidget()openWidget 는 위젯 윈도우를 보여 줍니다. 사용자 로그인 여부에 따라 위젯 윈도우에 표시되는 화면은 다릅니다. 로그인이 되어 있지 않으면 로그인 화면이 표시됩니다.
Return value
Promise<void>
closeWidget
wepin.closeWidget()closeWidget 는 위젯 윈도우를 닫습니다. 윈도우를 닫아도 로그아웃 되지 않습니다.
getAccounts
let accounts = await wepin.getAccounts(['Ethereum'])or
let accounts = await wepin.getAccounts()앱에서 사용 가능 한 네트워크의 사용자 주소를 반환합니다. getAccounts 는 위젯 로그인 이후에 사용가능한 메서드입니다. getAccounts의 파라미터는 아래와 같습니다.
Parameters
networks: Array of string 반환 받고자 하는 주소의 네트워크 입니다. 네트워크를 지정하지 않으면 앱에서 사용 가능한 모든 주소가 반환됩니다.
networks에 넣을 수 있는 블록체인 네트워크의 이름은 아래의 페이지에서 확인 가능합니다.
Return Value
Promise<Array>사용자가 로그인 한 경우, 네트워크의 계정 정보
account가 반환됩니다.accounts assigned at@wepin/typesasIAccountaccountIAccount@wepin/types선언되어 있습니다.addressStringnetworkStringcontractString optionaltoken contract address. (
@wepin/types(0.0.12 버전 이상)IAccount에 정의되어 있습니다.)
networks파라미터가 없는 경우에는 모든 계정 정보가 반환됩니다.Example
[ { "address": "0x0000001111112222223333334444445555556666", "network": "Ethereum" }, { "address": '0x0000001111112222223333334444445555556666', "network": 'Ethereum', "contract": '0x777777888888999999000000111111222222333333', }, ]
Promise<void>사용자가 로그인 하지 않은 경우
getStatus (0.3.1 버전 이상 지원)
var status = wepin.getStatus()위핀의 Lifecycle 상태 값을 반환합니다.
Return Value
<WepinLifeCycle>
WepinLifeCycle는@wepin/types(0.0.7 버전 이상)에 정의되어 있습니다.not_initialized: if wepin is not initializedinitializing: if wepin is initializinginitialized: if wepin is initializedbefore_login: if wepin is initialized but the user is not logged inlogin: if the user is logged in
login (0.3.1 버전 이상 지원)
var userInfo = await wepin.login()사용자가 로그인하지 않은 경우 위젯 화면을 띄워 사용자 로그인을 요청합니다. 그리고 그 결과를 반환합니다.
Return Value
Promise <IWepinUser>
IWepinUser는@wepin/types(0.0.7 버전 이상)에 정의되어 있습니다.statusString <'success'|'fail'>userInfoObject (optional)userIdStringemailStringproviderString <'google'|'apple'>
Example
{ "status": "success", "userInfo": { "userID": "123455", "email": "[email protected]", "provider": "google" } }
logout (0.3.1 버전 이상 지원)
await wepin.logout()위핀 사용자 로그아웃을 합니다.
Return Value
Promise<void>
finalize (0.3.1 버전 이상 지원)
wepin.finalize()위핀 객체 사용을 종료합니다. 위핀의 상태가 not_initialized 로 변경됩니다.
Return Value
void
loginWithExternalToken (0.5.1 버전 이상 지원)
var userInfo = await wepin.loginWithExternalToken(token, sign, withUI?)External Token(예: idToken)을 이용하여 위핀에 로그인 합니다.
loginWithExternalToken() 메서드는 로그인한 사용자의 정보를 반환합니다.
사용자가 위핀에 등록되어 있지 않고, withUI 값이 true로 설정된 경우, 위젯에 등록 페이지가 표시됩니다. 그러나 withUI 값이 false 또는 정의되지 않은 경우, require/wepin-register 예외가 발생합니다.
Parameters
token<string>로그인에 사용될 외부 토큰 값입니다. 예를 들어, idToken과 같은 값이 사용됩니다.
sign<string>첫 번째 매개변수로 제공된 토큰의 서명 값입니다. (Signature Generation Methods)
서명에 사용할 키는 위핀 워크스페이스에서 발급 받을 수 있습니다. 개발 도구 메뉴에서 로그인 탭의 인증키 발급 받기를 클릭하여 인증키를 확인하세요.
withUI<boolean> optional회원가입이 필요한 경우 위젯 화면을 표시할 지 여부를 나타냅니다.
Return Value
Promise<IWepinUser>IWepinUser는@wepin/types(0.0.7 버전 이상)에 정의되어 있습니다.status<'success'|'fail'>userInfo<object> optionaluserId<string>email<string>provider<'external_token'>
Example
{ status: 'success', userInfo: { userID: '123455', email: '[email protected]', provider: 'external_token' } }
require/wepin-register: 이 오류가 발생할 경우,wepin.register(pin)메서드를 수행해야 합니다.
signUpWithEmailAndPassword (0.5.1 버전 이상 지원)
await wepin.signUpWithEmailAndPassword(email, password)이메일과 비밀번호로 위핀에 회원가입을 합니다.
Parameters
email<string> - User emailpassword<string> - User password
Return Value
Promise<boolean>회원가입에 성공하면 true를 반환합니다.
loginWithEmailAndPassword(0.5.1 버전 이상 지원)
await wepin.loginWithEmailAndPassword(email, password)이메일과 비밀번호로 위핀에 로그인 합니다.
Parameters
email<string> - User emailpassword<string> - User password
Return Value
Promise<IWepinUser>IWepinUser는@wepin/types(0.0.8 버전 이상) 에 정의되어 있습니다.status<'success'|'fail'>userInfo<object> optionaluserId<string>email<string>provider<'email'>
Example
{ status: 'success', userInfo: { userID: '123455', email: '[email protected]', provider: 'email' } }
require/wepin-register: 이 오류가 발생하면, wepin.register(pin) 메서드를 수행해야 합니다.
register(0.5.1 버전 이상 지원)
await wepin.register(pin)지갑 PIN을 사용하여 위핀에 회원가입을 합니다.
Parameters
pin<string> - 위핀 지갑에서 사용할 PIN
Return Value
Promise<boolean>회원가입에 성공하면 true를 반환합니다.
회원가입 성공 후, wepin.login(email, password) 메서드를 다시 실행해야 합니다.
getBalance(0.5.1 버전 이상 지원)
await wepin.getBalance(account)계정의 잔액 정보를 반환합니다. 위핀에 로그인한 후에만 사용할 수 있습니다.
Parameters
account<IAccount> - 사용자의 계정 정보IAccount는@wepin/types에 정의되어 있습니다.
Return Value
Promise<IAccountBalance>IAccountBalance와ITokenBalance는@wepin/types(버전0.0.8이상)에 정의되어 있습니다.symbol<string> - symbol of accountbalance<string> - balance of accounttokens<Array<ITokenBalance>> - token balance information for accountname<string> - token namecontract<string> - token contract addresssymbol<string> - token symbolbalance<string> - token balance
Example
{ symbol: 'ETH', balance: '1.1', tokens:[ { name: 'test', contract: '0x123...213', symbol: 'TEST', balance: '10' }, ] }
send(0.5.3 버전 이상 지원)
await wepin.send(account, options?)widget을 이용하여 send기능을 수행하고 send 트랜젝션의 ID정보를 반환합니다. 위핀에 로그인한 후에만 사용할 수 있습니다.
Parameters
account<IAccount> - 사용자의 계정 정보IAccount는@wepin/types에 정의되어 있습니다.
options<ISendOptions> - 보내기 기능에 필요한 정보ISendOptions는@wepin/types에 정의되어 있습니다.toAddress<string> - 보낼 주소amount<string> - 보낼 금액 (network 단위)
Example
// without options
const result = Wepin.send({
address: '0x0000001111112222223333334444445555556666',
network: 'Ethereum',
})
// with options
const result = Wepin.send(
{
address: '0x0000001111112222223333334444445555556666',
network: 'Ethereum',
},
{ amount: '0.1', toAddress: '0x777777888888999999000000111111222222333333' }
)Return Value
Promise<string>send 트랜잭션의 txID
Example
'0x0000001111112222223333334444445555556666.............aaaaaabbbbbbccccccddddddeeeeeeffffff'
Exceptions
에러 메세지 유형은 다음과 같습니다.
invalid/email-format
invalid email format
invalid/password-format
invalid password format (A minimum of 8 characters consisting of letters, numbers and special characters. )
invalid/pin-format
invalid PIN format (6-8 digit number) (*Do not use the same number more than four times when registering)
invalid/firebase-token
invalid firebase token
invalid/wepin-api-key
invalid wepin api key
invalid/account
invalid account
invalid/email-domain
invalid email domain
invalid/to-address
invalid to address
auth/existed-email
existed email
auth/too-many-requests
too mandy firebase requests
auth/wrong-password
wrong password
auth/expired-token
expired login session
auth/unknown/${string}
unknown auth error
fail/send-email
failed to sent validation email
fail/reset-password
failed to set password
fail/email-verified
failed to verify email
fail/wepin-login
login wepin failed
fail/wepin-register
failed to register with wepin
fail/get-balance
failed to get balance
fail/check-email
failed to check email
fail/requireFee
insufficient fee
fail/requireNetworkFee
insufficient network fee(only token transaction request)
require/email-verified
email verification required
require/signup
wepin sign-up required
require/wepin-register
wepin registration required
require/login
wepin login required
unknown/${string}
unknown error
Last updated
Was this helpful?