UNPKG

@betswirl/wagmi-provider

Version:

Wagmi client & wallet for Betswirl core SDK

2 lines 4.66 kB
import {BetSwirlWallet,BetSwirlClient,waitRolledBet,placeCoinTossBet,waitCoinTossRolledBet,placeDiceBet,waitDiceRolledBet,placeRouletteBet,waitRouletteRolledBet,getCasinoGames,getCasinoTokens,casinoChainById,getCasinoGameToken,getBetRequirements,getChainlinkVrfCost,getKenoConfiguration}from'@betswirl/sdk-core';import {getPublicClient,call,readContract,readContracts,getTransactionReceipt,watchContractEvent,simulateContract,writeContract,waitForTransactionReceipt,switchChain}from'@wagmi/core';var u=Object.defineProperty;var g=(s,n,t)=>n in s?u(s,n,{enumerable:true,configurable:true,writable:true,value:t}):s[n]=t;var o=(s,n,t)=>g(s,n+"",t);var r=class extends BetSwirlWallet{constructor(t){super();o(this,"wagmiConfig");this.wagmiConfig=t;}getChainId(){return this.wagmiConfig.state.chainId}getAccount(t){if(!(this.wagmiConfig.connectors.length>0))return this.wagmiConfig.getClient({chainId:t}).account}getPublicClient(t){return getPublicClient(this.wagmiConfig,{chainId:t})}async readContract(t,i){return i&&typeof i=="bigint"?call(this.wagmiConfig,{to:t.data.to,data:t.encodedData,gasPrice:i}):readContract(this.wagmiConfig,{address:t.data.to,abi:t.data.abi,functionName:t.data.functionName,args:t.data.args})}async readContracts(t){let i=t.map(e=>({address:e.data.to,abi:e.data.abi,functionName:e.data.functionName,args:e.data.args})),a=await readContracts(this.wagmiConfig,{contracts:i});if(a.some(e=>e.status==="failure"||e===void 0))throw new Error("[wagmiWallet] An error occured while reading contracts");return a.map(e=>e.result)}async getTransactionReceipt(t){return getTransactionReceipt(this.wagmiConfig,{hash:t})}watchContractEvent(t){return watchContractEvent(this.wagmiConfig,{address:t.data.to,abi:t.data.abi,eventName:t.data.eventName,args:t.data.args,pollingInterval:t.data.pollingInterval,onLogs:i=>t.callbacks.onLogs?.(i),onError:i=>t.callbacks.onError?.(i)})}async writeContract(t,i,a){let{request:e}=await simulateContract(this.wagmiConfig,{address:t.data.to,abi:t.data.abi,functionName:t.data.functionName,args:t.data.args,gasPrice:a,account:this.getAccount(),value:i});return await writeContract(this.wagmiConfig,e)}async waitTransaction(t,i){return await waitForTransactionReceipt(this.wagmiConfig,{hash:t,pollingInterval:i})}};var l=class s extends BetSwirlClient{constructor(t,i={}){super(new r(t),i);o(this,"wagmiConfig");this.wagmiConfig=t;}async waitRolledBet(t,i){return this._switchChain(t.chainId),waitRolledBet(this.betSwirlWallet,t,{...this.betSwirlDefaultOptions,...i})}async playCoinToss(t,i,a,e){return this._switchChain(e),placeCoinTossBet(this.betSwirlWallet,{...t,affiliate:this.betSwirlDefaultOptions.affiliate},{...this.betSwirlDefaultOptions,...i},a)}async waitCoinToss(t,i){return this._switchChain(t.chainId),waitCoinTossRolledBet(this.betSwirlWallet,t,{...this.betSwirlDefaultOptions,...i})}async playDice(t,i,a,e){return this._switchChain(e),placeDiceBet(this.betSwirlWallet,{...t,affiliate:this.betSwirlDefaultOptions.affiliate},{...this.betSwirlDefaultOptions,...i},a)}async waitDice(t,i){return this._switchChain(t.chainId),waitDiceRolledBet(this.betSwirlWallet,t,{...this.betSwirlDefaultOptions,...i})}async playRoulette(t,i,a,e){return this._switchChain(e),placeRouletteBet(this.betSwirlWallet,{...t,affiliate:this.betSwirlDefaultOptions.affiliate},{...this.betSwirlDefaultOptions,...i},a)}async waitRoulette(t,i){return this._switchChain(t.chainId),waitRouletteRolledBet(this.betSwirlWallet,t,{...this.betSwirlDefaultOptions,...i})}async getCasinoGames(t=false,i){return this._switchChain(i),getCasinoGames(this.betSwirlWallet,t)}async getCasinoTokens(t=false,i){return this._switchChain(i),getCasinoTokens(this.betSwirlWallet,t)}async getCasinoGameToken(t,i,a){let e=casinoChainById[t.chainId];return this._switchChain(t.chainId),getCasinoGameToken(this.betSwirlWallet,t,i,a||e.defaultAffiliate)}async getBetRequirements(t,i,a,e){return this._switchChain(e),getBetRequirements(this.betSwirlWallet,t,i,a)}async getChainlinkVrfCost(t,i,a,e,h,d){return this._switchChain(d),getChainlinkVrfCost(this.betSwirlWallet,t,i,a,e||this.betSwirlDefaultOptions.gasPrice,h||this.betSwirlDefaultOptions.gasPriceType)}async getKenoConfiguration(t,i){return this._switchChain(i),getKenoConfiguration(this.betSwirlWallet,t)}async _switchChain(t){let i=t||this.betSwirlDefaultOptions.chainId;i&&await this.betSwirlWallet.getChainId()!==i&&await switchChain(this.wagmiConfig,{chainId:i});}static init(t,i){return new s(t,i)}};function U(s,n){return l.init(s,n)}export{l as WagmiBetSwirlClient,r as WagmiBetSwirlWallet,U as initWagmiBetSwirlClient};//# sourceMappingURL=index.mjs.map //# sourceMappingURL=index.mjs.map