@berachain/wagmi 0.4.0-beta.4 → 0.4.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -70,10 +70,6 @@ interface BeraWagmiApi {
70
70
  * This is used to disable EIP-5792 temporarily.
71
71
  */
72
72
  onSmartAccountRejection(): void;
73
- /**
74
- * List of external chains that are whitelisted for that app.
75
- */
76
- chains: Chain[];
77
73
  defaultChainId: ChainId;
78
74
  }
79
75
  declare enum ChainId {
@@ -70,10 +70,6 @@ interface BeraWagmiApi {
70
70
  * This is used to disable EIP-5792 temporarily.
71
71
  */
72
72
  onSmartAccountRejection(): void;
73
- /**
74
- * List of external chains that are whitelisted for that app.
75
- */
76
- chains: Chain[];
77
73
  defaultChainId: ChainId;
78
74
  }
79
75
  declare enum ChainId {
@@ -0,0 +1 @@
1
+ import{usePublicClient as he}from"wagmi";import{useContext as V}from"react";import{createContext as H}from"react";import{jsx as Q}from"react/jsx-runtime";var I=H(void 0);function N({children:e,address:n,defaultChainId:o}){return Q(I.Provider,{value:{address:n,defaultChainId:o},children:e})}function E(){let e=V(I);if(!e)throw new Error("LightweightAccountContext not found");let{address:n,defaultChainId:o}=e;return{isConnected:!!n,address:n,defaultChainId:o}}import{useBlockNumber as $e,useChains as et,useConfig as tt,useEnsAvatar as z,useEnsName as D,useSwitchChain as nt,useTransactionReceipt as ot}from"wagmi";import{createContext as ae,useContext as se,useMemo as T}from"react";import ce from"swr/immutable";import{normalize as de}from"viem/ens";import{useAccount as le,useDisconnect as ue,usePublicClient as pe,useWalletClient as me}from"wagmi";import{useMemo as R}from"react";import{defineChain as M}from"thirdweb";import{ConnectButton as X,useActiveAccount as Y,useActiveWallet as Z,useAutoConnect as $,useProfiles as ee,useConnectModal as te,useDisconnect as ne,useWalletInfo as oe}from"thirdweb/react";import{useConnect as ie}from"wagmi";import{jsx as re}from"react/jsx-runtime";function L({config:e,theme:n,chains:o=[],chain:t,publicJsonRpcUrl:d=t.rpcUrls.default.http[0]}){let{connectors:h,connect:w}=ie(),l=Z(),a=Y(),{disconnect:A}=ne(),{data:g}=oe(l?.id),{data:m}=ee({client:e.client}),f=R(()=>M({id:t.id,blockExplorers:t.blockExplorers,blockTime:t.blockTime,ensTlds:t.ensTlds,testnet:t.testnet,contracts:t.contracts,nativeCurrency:t.nativeCurrency,name:t.name,rpcUrls:{default:{http:[d]}}}),[d,t]),u={client:e.client,chain:f,wallets:e.wallets};async function p(r){let i=h.find(s=>s.id==="in-app-wallet");if(i){let s={withCapabilities:!0,wallet:r};w({connector:i,chainId:t.id,...s})}else console.error("no tw connector found")}let{isLoading:W}=$({...u,onConnect:p}),v=R(()=>crypto.randomUUID(),[l?.id,a?.address]),{connect:P}=te();return{async connect({strategy:r}){if(!e.hasEmbeddedWallets){console.error("useBeraWagmi.connect: this function is not available if embedded wallets are disabled");return}let i=e.wallets.find(s=>s.id==="inApp");if(!i){console.error("useBeraWagmi.connect: no inApp wallet found");return}await i.connect({...u,strategy:r}),await p(i)},async openConnectModal(){let r=await P({...u,wallets:e.wallets,theme:n==="auto"?void 0:n,size:"compact",chains:[f,...o.filter(i=>i.id!==f.id).map(i=>M({id:i.id}))]});await p(r)},disconnect(){l&&A(l)},isConnecting:W,connectionId:v,connectorName:g?.name??null,isEmbeddedWallet:g?.id==="inApp",wallet:a,profiles:m,DebugConnectButton(){return re(X,{...u,connectModal:{size:"compact"},onConnect:r=>p(r)})}}}import{jsx as k}from"react/jsx-runtime";function C(){let e=se(O);if(!e)throw new Error("BeraWagmiContext not found");return e}var O=ae(void 0);function Se({children:e,config:n,flags:{disableEip5792:o,disable5792Upgrade:t,accountOverride:d}={},theme:h,onSmartAccountRejection:w,chains:l=[],defaultChain:a,thirdweb:A,publicJsonRpcUrl:g}){let{wallet:m,openConnectModal:f,connect:u,DebugConnectButton:p,connectionId:W,disconnect:v,connectorName:P,isEmbeddedWallet:r,profiles:i,isConnecting:s}=L({config:n,theme:h,chains:l,chain:a,publicJsonRpcUrl:g}),{address:y,chainId:B}=le(),{disconnect:S}=ue(),_=pe(),c=T(()=>{if(!(!y||!m))return d??y},[d,y,m]),{data:b}=D({config:n.wagmi,chainId:a.id,address:c}),{data:x}=ce(c?["BeraWagmiProvider_code",c,B]:null,([F,G,we])=>_?.getCode({address:G}),{refreshInterval:6e4}),[q,J]=T(()=>x?x.startsWith("0xef01")?[!1,!0]:[!0,!1]:[!1,!1],[x]),{data:U}=me(),K=T(()=>{try{return b?de(b):void 0}catch{}},[b]),j=z({name:K});return k(O.Provider,{value:{flags:{disableEip5792:!!o,disable5792Upgrade:!!t},walletClient:U,onSmartAccountRejection:()=>{w?.()},isEmbeddedWalletsEnabled:A.embeddedWallets??!0,isConnecting:s,isConnected:!!c&&!!U,DebugConnectButton:p,account:m&&B&&c?{connectionId:W,chainId:B,connectorName:P,isEmbeddedWallet:r,profiles:i,wallet:{address:c,ensName:b?.replace(".bera",".\u{1F43B}\u26D3\uFE0F")??null,ensAvatar:j.data??null,has7702Authorization:J,isContract:q}}:void 0,connect:u,openConnectModal:async()=>{await f()},disconnect:()=>{S(),v()},defaultChainId:a.id},children:k(N,{address:c,defaultChainId:a.id,children:e})})}function fe(){let{account:e,isConnected:n}=C();return{...e,isConnected:n}}import{useMemo as Ce}from"react";import{useCapabilities as ge}from"wagmi";function be({chainId:e}){let{flags:n,account:o}=C(),{data:t}=ge({account:o?.wallet?.address,scopeKey:o?.connectionId,query:{retry:3},chainId:e});return{supportsAtomic:Ce(()=>n.disableEip5792||!t?!1:t?.atomic?.status==="supported"||!n.disable5792Upgrade&&t?.atomic?.status==="ready",[t,n.disableEip5792,n.disable5792Upgrade,e]),capabilities:t}}function Xe(e){let{defaultChainId:n}=E(),{chainId:o,...t}=e??{};return he({chainId:o??n,...t})}export{E as a,fe as b,be as c,Xe as d,$e as e,et as f,tt as g,z as h,D as i,nt as j,ot as k,C as l,Se as m};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _wagmi = require('wagmi');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var I=_react.createContext.call(void 0, void 0);function N({children:e,address:n,defaultChainId:o}){return _jsxruntime.jsx.call(void 0, I.Provider,{value:{address:n,defaultChainId:o},children:e})}function E(){let e=_react.useContext.call(void 0, I);if(!e)throw new Error("LightweightAccountContext not found");let{address:n,defaultChainId:o}=e;return{isConnected:!!n,address:n,defaultChainId:o}}var _immutable = require('swr/immutable'); var _immutable2 = _interopRequireDefault(_immutable);var _ens = require('viem/ens');var _thirdweb = require('thirdweb');var _react3 = require('thirdweb/react');function L({config:e,theme:n,chains:o=[],chain:t,publicJsonRpcUrl:d=t.rpcUrls.default.http[0]}){let{connectors:h,connect:w}=_wagmi.useConnect.call(void 0, ),l=_react3.useActiveWallet.call(void 0, ),a=_react3.useActiveAccount.call(void 0, ),{disconnect:A}=_react3.useDisconnect.call(void 0, ),{data:g}=_react3.useWalletInfo.call(void 0, _optionalChain([l, 'optionalAccess', _2 => _2.id])),{data:m}=_react3.useProfiles.call(void 0, {client:e.client}),f=_react.useMemo.call(void 0, ()=>_thirdweb.defineChain.call(void 0, {id:t.id,blockExplorers:t.blockExplorers,blockTime:t.blockTime,ensTlds:t.ensTlds,testnet:t.testnet,contracts:t.contracts,nativeCurrency:t.nativeCurrency,name:t.name,rpcUrls:{default:{http:[d]}}}),[d,t]),u={client:e.client,chain:f,wallets:e.wallets};async function p(r){let i=h.find(s=>s.id==="in-app-wallet");if(i){let s={withCapabilities:!0,wallet:r};w({connector:i,chainId:t.id,...s})}else console.error("no tw connector found")}let{isLoading:W}=_react3.useAutoConnect.call(void 0, {...u,onConnect:p}),v=_react.useMemo.call(void 0, ()=>crypto.randomUUID(),[_optionalChain([l, 'optionalAccess', _3 => _3.id]),_optionalChain([a, 'optionalAccess', _4 => _4.address])]),{connect:P}=_react3.useConnectModal.call(void 0, );return{async connect({strategy:r}){if(!e.hasEmbeddedWallets){console.error("useBeraWagmi.connect: this function is not available if embedded wallets are disabled");return}let i=e.wallets.find(s=>s.id==="inApp");if(!i){console.error("useBeraWagmi.connect: no inApp wallet found");return}await i.connect({...u,strategy:r}),await p(i)},async openConnectModal(){let r=await P({...u,wallets:e.wallets,theme:n==="auto"?void 0:n,size:"compact",chains:[f,...o.filter(i=>i.id!==f.id).map(i=>_thirdweb.defineChain.call(void 0, {id:i.id}))]});await p(r)},disconnect(){l&&A(l)},isConnecting:W,connectionId:v,connectorName:_nullishCoalesce(_optionalChain([g, 'optionalAccess', _5 => _5.name]), () => (null)),isEmbeddedWallet:_optionalChain([g, 'optionalAccess', _6 => _6.id])==="inApp",wallet:a,profiles:m,DebugConnectButton(){return _jsxruntime.jsx.call(void 0, _react3.ConnectButton,{...u,connectModal:{size:"compact"},onConnect:r=>p(r)})}}}function C(){let e=_react.useContext.call(void 0, O);if(!e)throw new Error("BeraWagmiContext not found");return e}var O=_react.createContext.call(void 0, void 0);function Se({children:e,config:n,flags:{disableEip5792:o,disable5792Upgrade:t,accountOverride:d}={},theme:h,onSmartAccountRejection:w,chains:l=[],defaultChain:a,thirdweb:A,publicJsonRpcUrl:g}){let{wallet:m,openConnectModal:f,connect:u,DebugConnectButton:p,connectionId:W,disconnect:v,connectorName:P,isEmbeddedWallet:r,profiles:i,isConnecting:s}=L({config:n,theme:h,chains:l,chain:a,publicJsonRpcUrl:g}),{address:y,chainId:B}=_wagmi.useAccount.call(void 0, ),{disconnect:S}=_wagmi.useDisconnect.call(void 0, ),_=_wagmi.usePublicClient.call(void 0, ),c=_react.useMemo.call(void 0, ()=>{if(!(!y||!m))return _nullishCoalesce(d, () => (y))},[d,y,m]),{data:b}=_wagmi.useEnsName.call(void 0, {config:n.wagmi,chainId:a.id,address:c}),{data:x}=_immutable2.default.call(void 0, c?["BeraWagmiProvider_code",c,B]:null,([F,G,we])=>_optionalChain([_, 'optionalAccess', _7 => _7.getCode, 'call', _8 => _8({address:G})]),{refreshInterval:6e4}),[q,J]=_react.useMemo.call(void 0, ()=>x?x.startsWith("0xef01")?[!1,!0]:[!0,!1]:[!1,!1],[x]),{data:U}=_wagmi.useWalletClient.call(void 0, ),K=_react.useMemo.call(void 0, ()=>{try{return b?_ens.normalize.call(void 0, b):void 0}catch (e2){}},[b]),j=_wagmi.useEnsAvatar.call(void 0, {name:K});return _jsxruntime.jsx.call(void 0, O.Provider,{value:{flags:{disableEip5792:!!o,disable5792Upgrade:!!t},walletClient:U,onSmartAccountRejection:()=>{_optionalChain([w, 'optionalCall', _9 => _9()])},isEmbeddedWalletsEnabled:_nullishCoalesce(A.embeddedWallets, () => (!0)),isConnecting:s,isConnected:!!c&&!!U,DebugConnectButton:p,account:m&&B&&c?{connectionId:W,chainId:B,connectorName:P,isEmbeddedWallet:r,profiles:i,wallet:{address:c,ensName:_nullishCoalesce(_optionalChain([b, 'optionalAccess', _10 => _10.replace, 'call', _11 => _11(".bera",".\u{1F43B}\u26D3\uFE0F")]), () => (null)),ensAvatar:_nullishCoalesce(j.data, () => (null)),has7702Authorization:J,isContract:q}}:void 0,connect:u,openConnectModal:async()=>{await f()},disconnect:()=>{S(),v()},defaultChainId:a.id},children:_jsxruntime.jsx.call(void 0, N,{address:c,defaultChainId:a.id,children:e})})}function fe(){let{account:e,isConnected:n}=C();return{...e,isConnected:n}}function be({chainId:e}){let{flags:n,account:o}=C(),{data:t}=_wagmi.useCapabilities.call(void 0, {account:_optionalChain([o, 'optionalAccess', _12 => _12.wallet, 'optionalAccess', _13 => _13.address]),scopeKey:_optionalChain([o, 'optionalAccess', _14 => _14.connectionId]),query:{retry:3},chainId:e});return{supportsAtomic:_react.useMemo.call(void 0, ()=>n.disableEip5792||!t?!1:_optionalChain([t, 'optionalAccess', _15 => _15.atomic, 'optionalAccess', _16 => _16.status])==="supported"||!n.disable5792Upgrade&&_optionalChain([t, 'optionalAccess', _17 => _17.atomic, 'optionalAccess', _18 => _18.status])==="ready",[t,n.disableEip5792,n.disable5792Upgrade,e]),capabilities:t}}function Xe(e){let{defaultChainId:n}=E(),{chainId:o,...t}=_nullishCoalesce(e, () => ({}));return _wagmi.usePublicClient.call(void 0, {chainId:_nullishCoalesce(o, () => (n)),...t})}exports.a = E; exports.b = fe; exports.c = be; exports.d = Xe; exports.e = _wagmi.useBlockNumber; exports.f = _wagmi.useChains; exports.g = _wagmi.useConfig; exports.h = _wagmi.useEnsAvatar; exports.i = _wagmi.useEnsName; exports.j = _wagmi.useSwitchChain; exports.k = _wagmi.useTransactionReceipt; exports.l = C; exports.m = Se;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";var _chunkHDH4V7DJcjs = require('../chunk-HDH4V7DJ.cjs');var _chunk63VDHYYBcjs = require('../chunk-63VDHYYB.cjs');var _react = require('react');var _reactquery = require('@tanstack/react-query');var _react3 = require('thirdweb/react');var _wagmi = require('wagmi');var _jsxruntime = require('react/jsx-runtime');var u=new _reactquery.QueryClient;function h({transports:n,defaultChain:e,chains:i,thirdweb:o,...f}){let t=_react.useMemo.call(void 0, ()=>_chunkHDH4V7DJcjs.a.call(void 0, {thirdweb:o,transports:n,defaultChain:e,chains:i}),[e,o,n,i]);return _jsxruntime.jsx.call(void 0, _react3.ThirdwebProvider,{children:_jsxruntime.jsx.call(void 0, _wagmi.WagmiProvider,{config:t.wagmi,reconnectOnMount:!1,children:_jsxruntime.jsx.call(void 0, _reactquery.QueryClientProvider,{client:u,children:_jsxruntime.jsx.call(void 0, _chunk63VDHYYBcjs.m,{...f,thirdweb:o,chains:i,defaultChain:e,config:t})})})})}exports.WagmiProvider = h;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";var _chunkHDH4V7DJcjs = require('../chunk-HDH4V7DJ.cjs');var _chunkZCJIFG7Wcjs = require('../chunk-ZCJIFG7W.cjs');var _react = require('react');var _reactquery = require('@tanstack/react-query');var _react3 = require('thirdweb/react');var _wagmi = require('wagmi');var _jsxruntime = require('react/jsx-runtime');var u=new _reactquery.QueryClient;function B({transports:t,defaultChain:e,chains:i,thirdweb:o,...f}){let n=_react.useMemo.call(void 0, ()=>_chunkHDH4V7DJcjs.a.call(void 0, {thirdweb:o,transports:t,defaultChain:e,chains:i}),[e,o,t,i]);return _jsxruntime.jsx.call(void 0, _react3.ThirdwebProvider,{children:_jsxruntime.jsx.call(void 0, _wagmi.WagmiProvider,{config:n.wagmi,reconnectOnMount:!1,children:_jsxruntime.jsx.call(void 0, _reactquery.QueryClientProvider,{client:u,children:_jsxruntime.jsx.call(void 0, _chunkZCJIFG7Wcjs.m,{...f,thirdweb:o,chains:i,defaultChain:e,config:n})})})})}exports.WagmiProvider = B;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { Transport, Chain } from 'viem';
3
- import { I as IBeraWagmiProviderProps } from '../BeraWagmi-LchnqEU8.cjs';
3
+ import { I as IBeraWagmiProviderProps } from '../BeraWagmi-Bcm59a7m.cjs';
4
4
  import 'react';
5
5
  import 'thirdweb/wallets';
6
6
  import 'wagmi';
@@ -10,7 +10,6 @@ import 'thirdweb';
10
10
  type WagmiProviderProps = Omit<IBeraWagmiProviderProps, "config" | "defaultChain"> & {
11
11
  transports?: Record<number, Transport>;
12
12
  defaultChain: Chain;
13
- chains?: Chain[];
14
13
  };
15
14
  declare function WagmiProvider({ transports, defaultChain, chains, thirdweb, ...beraWagmiProps }: WagmiProviderProps): react_jsx_runtime.JSX.Element;
16
15
 
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { Transport, Chain } from 'viem';
3
- import { I as IBeraWagmiProviderProps } from '../BeraWagmi-hVislkpK.js';
3
+ import { I as IBeraWagmiProviderProps } from '../BeraWagmi-4q0Ls6Dc.js';
4
4
  import 'react';
5
5
  import 'thirdweb/wallets';
6
6
  import 'wagmi';
@@ -10,7 +10,6 @@ import 'thirdweb';
10
10
  type WagmiProviderProps = Omit<IBeraWagmiProviderProps, "config" | "defaultChain"> & {
11
11
  transports?: Record<number, Transport>;
12
12
  defaultChain: Chain;
13
- chains?: Chain[];
14
13
  };
15
14
  declare function WagmiProvider({ transports, defaultChain, chains, thirdweb, ...beraWagmiProps }: WagmiProviderProps): react_jsx_runtime.JSX.Element;
16
15
 
@@ -1 +1 @@
1
- "use client";import{a as m}from"../chunk-YD5OWUSZ.mjs";import{m as a}from"../chunk-LNXUPM6A.mjs";import{useMemo as p}from"react";import{QueryClient as d,QueryClientProvider as g}from"@tanstack/react-query";import{ThirdwebProvider as s}from"thirdweb/react";import{WagmiProvider as P}from"wagmi";import{jsx as r}from"react/jsx-runtime";var u=new d;function h({transports:n,defaultChain:e,chains:i,thirdweb:o,...f}){let t=p(()=>m({thirdweb:o,transports:n,defaultChain:e,chains:i}),[e,o,n,i]);return r(s,{children:r(P,{config:t.wagmi,reconnectOnMount:!1,children:r(g,{client:u,children:r(a,{...f,thirdweb:o,chains:i,defaultChain:e,config:t})})})})}export{h as WagmiProvider};
1
+ "use client";import{a as m}from"../chunk-YD5OWUSZ.mjs";import{m as a}from"../chunk-PPRCI25K.mjs";import{useMemo as p}from"react";import{QueryClient as d,QueryClientProvider as g}from"@tanstack/react-query";import{ThirdwebProvider as P}from"thirdweb/react";import{WagmiProvider as s}from"wagmi";import{jsx as r}from"react/jsx-runtime";var u=new d;function B({transports:t,defaultChain:e,chains:i,thirdweb:o,...f}){let n=p(()=>m({thirdweb:o,transports:t,defaultChain:e,chains:i}),[e,o,t,i]);return r(P,{children:r(s,{config:n.wagmi,reconnectOnMount:!1,children:r(g,{client:u,children:r(a,{...f,thirdweb:o,chains:i,defaultChain:e,config:n})})})})}export{B as WagmiProvider};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk63VDHYYBcjs = require('../chunk-63VDHYYB.cjs');exports.useBeraAccount = _chunk63VDHYYBcjs.b; exports.useBeraWagmi = _chunk63VDHYYBcjs.l; exports.useBeraWallet = _chunk63VDHYYBcjs.a; exports.useBlockNumber = _chunk63VDHYYBcjs.e; exports.useCapabilities = _chunk63VDHYYBcjs.c; exports.useChains = _chunk63VDHYYBcjs.f; exports.useConfig = _chunk63VDHYYBcjs.g; exports.useEnsAvatar = _chunk63VDHYYBcjs.h; exports.useEnsName = _chunk63VDHYYBcjs.i; exports.usePublicClient = _chunk63VDHYYBcjs.d; exports.useSwitchChain = _chunk63VDHYYBcjs.j; exports.useTransactionReceipt = _chunk63VDHYYBcjs.k;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZCJIFG7Wcjs = require('../chunk-ZCJIFG7W.cjs');exports.useBeraAccount = _chunkZCJIFG7Wcjs.b; exports.useBeraWagmi = _chunkZCJIFG7Wcjs.l; exports.useBeraWallet = _chunkZCJIFG7Wcjs.a; exports.useBlockNumber = _chunkZCJIFG7Wcjs.e; exports.useCapabilities = _chunkZCJIFG7Wcjs.c; exports.useChains = _chunkZCJIFG7Wcjs.f; exports.useConfig = _chunkZCJIFG7Wcjs.g; exports.useEnsAvatar = _chunkZCJIFG7Wcjs.h; exports.useEnsName = _chunkZCJIFG7Wcjs.i; exports.usePublicClient = _chunkZCJIFG7Wcjs.d; exports.useSwitchChain = _chunkZCJIFG7Wcjs.j; exports.useTransactionReceipt = _chunkZCJIFG7Wcjs.k;
@@ -1,7 +1,7 @@
1
1
  import { UsePublicClientParameters, UsePublicClientReturnType } from 'wagmi';
2
2
  export { useBlockNumber, useChains, useConfig, useEnsAvatar, useEnsName, useSwitchChain, useTransactionReceipt } from 'wagmi';
3
- import { B as BeraWagmiApi, C as ChainId } from '../BeraWagmi-LchnqEU8.cjs';
4
- export { u as useBeraWagmi } from '../BeraWagmi-LchnqEU8.cjs';
3
+ import { B as BeraWagmiApi, C as ChainId } from '../BeraWagmi-Bcm59a7m.cjs';
4
+ export { u as useBeraWagmi } from '../BeraWagmi-Bcm59a7m.cjs';
5
5
  import 'react';
6
6
  import 'thirdweb/wallets';
7
7
  import 'viem';
@@ -1,7 +1,7 @@
1
1
  import { UsePublicClientParameters, UsePublicClientReturnType } from 'wagmi';
2
2
  export { useBlockNumber, useChains, useConfig, useEnsAvatar, useEnsName, useSwitchChain, useTransactionReceipt } from 'wagmi';
3
- import { B as BeraWagmiApi, C as ChainId } from '../BeraWagmi-hVislkpK.js';
4
- export { u as useBeraWagmi } from '../BeraWagmi-hVislkpK.js';
3
+ import { B as BeraWagmiApi, C as ChainId } from '../BeraWagmi-4q0Ls6Dc.js';
4
+ export { u as useBeraWagmi } from '../BeraWagmi-4q0Ls6Dc.js';
5
5
  import 'react';
6
6
  import 'thirdweb/wallets';
7
7
  import 'viem';
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l}from"../chunk-LNXUPM6A.mjs";export{b as useBeraAccount,l as useBeraWagmi,a as useBeraWallet,e as useBlockNumber,c as useCapabilities,f as useChains,g as useConfig,h as useEnsAvatar,i as useEnsName,d as usePublicClient,j as useSwitchChain,k as useTransactionReceipt};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l}from"../chunk-PPRCI25K.mjs";export{b as useBeraAccount,l as useBeraWagmi,a as useBeraWallet,e as useBlockNumber,c as useCapabilities,f as useChains,g as useConfig,h as useEnsAvatar,i as useEnsName,d as usePublicClient,j as useSwitchChain,k as useTransactionReceipt};
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@berachain/wagmi",
3
- "version": "0.4.0-beta.4",
3
+ "version": "0.4.0-beta.5",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
7
7
  "src"
8
8
  ],
9
+ "sideEffects": false,
9
10
  "types": "./dist/index.d.ts",
10
11
  "module": "./dist/index.mjs",
11
12
  "main": "./dist/index.cjs",
@@ -99,10 +99,7 @@ export interface BeraWagmiApi {
99
99
  * This is used to disable EIP-5792 temporarily.
100
100
  */
101
101
  onSmartAccountRejection(): void;
102
- /**
103
- * List of external chains that are whitelisted for that app.
104
- */
105
- chains: Chain[];
102
+
106
103
  defaultChainId: ChainId;
107
104
  }
108
105
 
@@ -149,7 +146,7 @@ export function BeraWagmiProvider({
149
146
  flags: { disableEip5792, disable5792Upgrade, accountOverride } = {},
150
147
  theme,
151
148
  onSmartAccountRejection,
152
- chains,
149
+ chains = [],
153
150
  defaultChain,
154
151
  thirdweb,
155
152
  publicJsonRpcUrl,
@@ -272,14 +269,13 @@ export function BeraWagmiProvider({
272
269
  : undefined,
273
270
  connect,
274
271
  openConnectModal: async () => {
275
- console.log("openConnectModal.called");
276
272
  await openConnectModal();
277
273
  },
278
274
  disconnect: () => {
279
275
  disconnectWagmi();
280
276
  disconnectProvider();
281
277
  },
282
- chains,
278
+ // chains,
283
279
  defaultChainId: defaultChain.id,
284
280
  }}
285
281
  >
@@ -15,7 +15,6 @@ type WagmiProviderProps = Omit<
15
15
  > & {
16
16
  transports?: Record<number, Transport>;
17
17
  defaultChain: Chain;
18
- chains?: Chain[];
19
18
  };
20
19
 
21
20
  const queryClient = new QueryClient();
@@ -26,13 +26,13 @@ import type { BeraWagmiApi } from "./BeraWagmi";
26
26
  export function useThirdweb({
27
27
  config,
28
28
  theme,
29
- chains,
29
+ chains = [],
30
30
  chain,
31
31
  publicJsonRpcUrl = chain.rpcUrls.default.http[0],
32
32
  }: {
33
33
  config: ReturnType<typeof getConfig>;
34
34
  theme: "light" | "dark" | "auto" | undefined;
35
- chains: Chain[];
35
+ chains?: Chain[];
36
36
  publicJsonRpcUrl?: string;
37
37
  chain: Chain;
38
38
  }): Pick<
@@ -148,11 +148,14 @@ export function useThirdweb({
148
148
  size: "compact",
149
149
  chains: [
150
150
  thirdwebChain,
151
- ...chains.map((c) =>
152
- defineChain({
153
- id: c.id,
154
- }),
155
- ),
151
+ ...chains
152
+ // avoid duplicates
153
+ .filter((c) => c.id !== thirdwebChain.id)
154
+ .map((c) =>
155
+ defineChain({
156
+ id: c.id,
157
+ }),
158
+ ),
156
159
  ],
157
160
  }); // opens the connect modal
158
161
 
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _wagmi = require('wagmi');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var I=_react.createContext.call(void 0, void 0);function M({children:e,address:n,defaultChainId:o}){return _jsxruntime.jsx.call(void 0, I.Provider,{value:{address:n,defaultChainId:o},children:e})}function E(){let e=_react.useContext.call(void 0, I);if(!e)throw new Error("LightweightAccountContext not found");let{address:n,defaultChainId:o}=e;return{isConnected:!!n,address:n,defaultChainId:o}}var _immutable = require('swr/immutable'); var _immutable2 = _interopRequireDefault(_immutable);var _ens = require('viem/ens');var _thirdweb = require('thirdweb');var _react3 = require('thirdweb/react');function L({config:e,theme:n,chains:o,chain:t,publicJsonRpcUrl:l=t.rpcUrls.default.http[0]}){let{connectors:b,connect:w}=_wagmi.useConnect.call(void 0, ),a=_react3.useActiveWallet.call(void 0, ),s=_react3.useActiveAccount.call(void 0, ),{disconnect:A}=_react3.useDisconnect.call(void 0, ),{data:C}=_react3.useWalletInfo.call(void 0, _optionalChain([a, 'optionalAccess', _2 => _2.id])),{data:m}=_react3.useProfiles.call(void 0, {client:e.client}),g=_react.useMemo.call(void 0, ()=>_thirdweb.defineChain.call(void 0, {id:t.id,blockExplorers:t.blockExplorers,blockTime:t.blockTime,ensTlds:t.ensTlds,testnet:t.testnet,contracts:t.contracts,nativeCurrency:t.nativeCurrency,name:t.name,rpcUrls:{default:{http:[l]}}}),[l,t]),u={client:e.client,chain:g,wallets:e.wallets};async function p(r){let i=b.find(c=>c.id==="in-app-wallet");if(i){let c={withCapabilities:!0,wallet:r};w({connector:i,chainId:t.id,...c})}else console.error("no tw connector found")}let{isLoading:W}=_react3.useAutoConnect.call(void 0, {...u,onConnect:p}),v=_react.useMemo.call(void 0, ()=>crypto.randomUUID(),[_optionalChain([a, 'optionalAccess', _3 => _3.id]),_optionalChain([s, 'optionalAccess', _4 => _4.address])]),{connect:P}=_react3.useConnectModal.call(void 0, );return{async connect({strategy:r}){if(!e.hasEmbeddedWallets){console.error("useBeraWagmi.connect: this function is not available if embedded wallets are disabled");return}let i=e.wallets.find(c=>c.id==="inApp");if(!i){console.error("useBeraWagmi.connect: no inApp wallet found");return}await i.connect({...u,strategy:r}),await p(i)},async openConnectModal(){let r=await P({...u,wallets:e.wallets,theme:n==="auto"?void 0:n,size:"compact",chains:[g,...o.map(i=>_thirdweb.defineChain.call(void 0, {id:i.id}))]});await p(r)},disconnect(){a&&A(a)},isConnecting:W,connectionId:v,connectorName:_nullishCoalesce(_optionalChain([C, 'optionalAccess', _5 => _5.name]), () => (null)),isEmbeddedWallet:_optionalChain([C, 'optionalAccess', _6 => _6.id])==="inApp",wallet:s,profiles:m,DebugConnectButton(){return _jsxruntime.jsx.call(void 0, _react3.ConnectButton,{...u,connectModal:{size:"compact"},onConnect:r=>p(r)})}}}function f(){let e=_react.useContext.call(void 0, O);if(!e)throw new Error("BeraWagmiContext not found");return e}var O=_react.createContext.call(void 0, void 0);function Se({children:e,config:n,flags:{disableEip5792:o,disable5792Upgrade:t,accountOverride:l}={},theme:b,onSmartAccountRejection:w,chains:a,defaultChain:s,thirdweb:A,publicJsonRpcUrl:C}){let{wallet:m,openConnectModal:g,connect:u,DebugConnectButton:p,connectionId:W,disconnect:v,connectorName:P,isEmbeddedWallet:r,profiles:i,isConnecting:c}=L({config:n,theme:b,chains:a,chain:s,publicJsonRpcUrl:C}),{address:y,chainId:B}=_wagmi.useAccount.call(void 0, ),{disconnect:S}=_wagmi.useDisconnect.call(void 0, ),_=_wagmi.usePublicClient.call(void 0, ),d=_react.useMemo.call(void 0, ()=>{if(!(!y||!m))return _nullishCoalesce(l, () => (y))},[l,y,m]),{data:h}=_wagmi.useEnsName.call(void 0, {config:n.wagmi,chainId:s.id,address:d}),{data:x}=_immutable2.default.call(void 0, d?["BeraWagmiProvider_code",d,B]:null,([F,G,we])=>_optionalChain([_, 'optionalAccess', _7 => _7.getCode, 'call', _8 => _8({address:G})]),{refreshInterval:6e4}),[q,J]=_react.useMemo.call(void 0, ()=>x?x.startsWith("0xef01")?[!1,!0]:[!0,!1]:[!1,!1],[x]),{data:U}=_wagmi.useWalletClient.call(void 0, ),K=_react.useMemo.call(void 0, ()=>{try{return h?_ens.normalize.call(void 0, h):void 0}catch (e2){}},[h]),j=_wagmi.useEnsAvatar.call(void 0, {name:K});return _jsxruntime.jsx.call(void 0, O.Provider,{value:{flags:{disableEip5792:!!o,disable5792Upgrade:!!t},walletClient:U,onSmartAccountRejection:()=>{_optionalChain([w, 'optionalCall', _9 => _9()])},isEmbeddedWalletsEnabled:_nullishCoalesce(A.embeddedWallets, () => (!0)),isConnecting:c,isConnected:!!d&&!!U,DebugConnectButton:p,account:m&&B&&d?{connectionId:W,chainId:B,connectorName:P,isEmbeddedWallet:r,profiles:i,wallet:{address:d,ensName:_nullishCoalesce(_optionalChain([h, 'optionalAccess', _10 => _10.replace, 'call', _11 => _11(".bera",".\u{1F43B}\u26D3\uFE0F")]), () => (null)),ensAvatar:_nullishCoalesce(j.data, () => (null)),has7702Authorization:J,isContract:q}}:void 0,connect:u,openConnectModal:async()=>{console.log("openConnectModal.called"),await g()},disconnect:()=>{S(),v()},chains:a,defaultChainId:s.id},children:_jsxruntime.jsx.call(void 0, M,{address:d,defaultChainId:s.id,children:e})})}function fe(){let{account:e,isConnected:n}=f();return{...e,isConnected:n}}function he({chainId:e}){let{flags:n,account:o}=f(),{data:t}=_wagmi.useCapabilities.call(void 0, {account:_optionalChain([o, 'optionalAccess', _12 => _12.wallet, 'optionalAccess', _13 => _13.address]),scopeKey:_optionalChain([o, 'optionalAccess', _14 => _14.connectionId]),query:{retry:3},chainId:e});return{supportsAtomic:_react.useMemo.call(void 0, ()=>n.disableEip5792||!t?!1:_optionalChain([t, 'optionalAccess', _15 => _15.atomic, 'optionalAccess', _16 => _16.status])==="supported"||!n.disable5792Upgrade&&_optionalChain([t, 'optionalAccess', _17 => _17.atomic, 'optionalAccess', _18 => _18.status])==="ready",[t,n.disableEip5792,n.disable5792Upgrade,e]),capabilities:t}}function Xe(e){let{defaultChainId:n}=E(),{chainId:o,...t}=_nullishCoalesce(e, () => ({}));return _wagmi.usePublicClient.call(void 0, {chainId:_nullishCoalesce(o, () => (n)),...t})}exports.a = E; exports.b = fe; exports.c = he; exports.d = Xe; exports.e = _wagmi.useBlockNumber; exports.f = _wagmi.useChains; exports.g = _wagmi.useConfig; exports.h = _wagmi.useEnsAvatar; exports.i = _wagmi.useEnsName; exports.j = _wagmi.useSwitchChain; exports.k = _wagmi.useTransactionReceipt; exports.l = f; exports.m = Se;
@@ -1 +0,0 @@
1
- import{usePublicClient as be}from"wagmi";import{useContext as V}from"react";import{createContext as H}from"react";import{jsx as Q}from"react/jsx-runtime";var I=H(void 0);function M({children:e,address:n,defaultChainId:o}){return Q(I.Provider,{value:{address:n,defaultChainId:o},children:e})}function E(){let e=V(I);if(!e)throw new Error("LightweightAccountContext not found");let{address:n,defaultChainId:o}=e;return{isConnected:!!n,address:n,defaultChainId:o}}import{useBlockNumber as $e,useChains as et,useConfig as tt,useEnsAvatar as z,useEnsName as D,useSwitchChain as nt,useTransactionReceipt as ot}from"wagmi";import{createContext as ae,useContext as se,useMemo as T}from"react";import ce from"swr/immutable";import{normalize as de}from"viem/ens";import{useAccount as le,useDisconnect as ue,usePublicClient as pe,useWalletClient as me}from"wagmi";import{useMemo as N}from"react";import{defineChain as R}from"thirdweb";import{ConnectButton as X,useActiveAccount as Y,useActiveWallet as Z,useAutoConnect as $,useProfiles as ee,useConnectModal as te,useDisconnect as ne,useWalletInfo as oe}from"thirdweb/react";import{useConnect as ie}from"wagmi";import{jsx as re}from"react/jsx-runtime";function L({config:e,theme:n,chains:o,chain:t,publicJsonRpcUrl:l=t.rpcUrls.default.http[0]}){let{connectors:b,connect:w}=ie(),a=Z(),s=Y(),{disconnect:A}=ne(),{data:C}=oe(a?.id),{data:m}=ee({client:e.client}),g=N(()=>R({id:t.id,blockExplorers:t.blockExplorers,blockTime:t.blockTime,ensTlds:t.ensTlds,testnet:t.testnet,contracts:t.contracts,nativeCurrency:t.nativeCurrency,name:t.name,rpcUrls:{default:{http:[l]}}}),[l,t]),u={client:e.client,chain:g,wallets:e.wallets};async function p(r){let i=b.find(c=>c.id==="in-app-wallet");if(i){let c={withCapabilities:!0,wallet:r};w({connector:i,chainId:t.id,...c})}else console.error("no tw connector found")}let{isLoading:W}=$({...u,onConnect:p}),v=N(()=>crypto.randomUUID(),[a?.id,s?.address]),{connect:P}=te();return{async connect({strategy:r}){if(!e.hasEmbeddedWallets){console.error("useBeraWagmi.connect: this function is not available if embedded wallets are disabled");return}let i=e.wallets.find(c=>c.id==="inApp");if(!i){console.error("useBeraWagmi.connect: no inApp wallet found");return}await i.connect({...u,strategy:r}),await p(i)},async openConnectModal(){let r=await P({...u,wallets:e.wallets,theme:n==="auto"?void 0:n,size:"compact",chains:[g,...o.map(i=>R({id:i.id}))]});await p(r)},disconnect(){a&&A(a)},isConnecting:W,connectionId:v,connectorName:C?.name??null,isEmbeddedWallet:C?.id==="inApp",wallet:s,profiles:m,DebugConnectButton(){return re(X,{...u,connectModal:{size:"compact"},onConnect:r=>p(r)})}}}import{jsx as k}from"react/jsx-runtime";function f(){let e=se(O);if(!e)throw new Error("BeraWagmiContext not found");return e}var O=ae(void 0);function Se({children:e,config:n,flags:{disableEip5792:o,disable5792Upgrade:t,accountOverride:l}={},theme:b,onSmartAccountRejection:w,chains:a,defaultChain:s,thirdweb:A,publicJsonRpcUrl:C}){let{wallet:m,openConnectModal:g,connect:u,DebugConnectButton:p,connectionId:W,disconnect:v,connectorName:P,isEmbeddedWallet:r,profiles:i,isConnecting:c}=L({config:n,theme:b,chains:a,chain:s,publicJsonRpcUrl:C}),{address:y,chainId:B}=le(),{disconnect:S}=ue(),_=pe(),d=T(()=>{if(!(!y||!m))return l??y},[l,y,m]),{data:h}=D({config:n.wagmi,chainId:s.id,address:d}),{data:x}=ce(d?["BeraWagmiProvider_code",d,B]:null,([F,G,we])=>_?.getCode({address:G}),{refreshInterval:6e4}),[q,J]=T(()=>x?x.startsWith("0xef01")?[!1,!0]:[!0,!1]:[!1,!1],[x]),{data:U}=me(),K=T(()=>{try{return h?de(h):void 0}catch{}},[h]),j=z({name:K});return k(O.Provider,{value:{flags:{disableEip5792:!!o,disable5792Upgrade:!!t},walletClient:U,onSmartAccountRejection:()=>{w?.()},isEmbeddedWalletsEnabled:A.embeddedWallets??!0,isConnecting:c,isConnected:!!d&&!!U,DebugConnectButton:p,account:m&&B&&d?{connectionId:W,chainId:B,connectorName:P,isEmbeddedWallet:r,profiles:i,wallet:{address:d,ensName:h?.replace(".bera",".\u{1F43B}\u26D3\uFE0F")??null,ensAvatar:j.data??null,has7702Authorization:J,isContract:q}}:void 0,connect:u,openConnectModal:async()=>{console.log("openConnectModal.called"),await g()},disconnect:()=>{S(),v()},chains:a,defaultChainId:s.id},children:k(M,{address:d,defaultChainId:s.id,children:e})})}function fe(){let{account:e,isConnected:n}=f();return{...e,isConnected:n}}import{useMemo as Ce}from"react";import{useCapabilities as ge}from"wagmi";function he({chainId:e}){let{flags:n,account:o}=f(),{data:t}=ge({account:o?.wallet?.address,scopeKey:o?.connectionId,query:{retry:3},chainId:e});return{supportsAtomic:Ce(()=>n.disableEip5792||!t?!1:t?.atomic?.status==="supported"||!n.disable5792Upgrade&&t?.atomic?.status==="ready",[t,n.disableEip5792,n.disable5792Upgrade,e]),capabilities:t}}function Xe(e){let{defaultChainId:n}=E(),{chainId:o,...t}=e??{};return be({chainId:o??n,...t})}export{E as a,fe as b,he as c,Xe as d,$e as e,et as f,tt as g,z as h,D as i,nt as j,ot as k,f as l,Se as m};