@wangjinbao/wallet-connect 0.1.0
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.
- package/README.md +187 -0
- package/dist/cjs/index.js +11 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/styles.css +3 -0
- package/dist/cjs/types/components/AccountModal.d.ts +6 -0
- package/dist/cjs/types/components/AccountModal.d.ts.map +1 -0
- package/dist/cjs/types/components/ChainSwitcher.d.ts +6 -0
- package/dist/cjs/types/components/ChainSwitcher.d.ts.map +1 -0
- package/dist/cjs/types/components/ConnectButton.d.ts +2 -0
- package/dist/cjs/types/components/ConnectButton.d.ts.map +1 -0
- package/dist/cjs/types/components/WalletModal.d.ts +6 -0
- package/dist/cjs/types/components/WalletModal.d.ts.map +1 -0
- package/dist/cjs/types/components/WalletProvider.d.ts +13 -0
- package/dist/cjs/types/components/WalletProvider.d.ts.map +1 -0
- package/dist/cjs/types/context/WalletContext.d.ts +7 -0
- package/dist/cjs/types/context/WalletContext.d.ts.map +1 -0
- package/dist/cjs/types/hooks/useWallet.d.ts +6 -0
- package/dist/cjs/types/hooks/useWallet.d.ts.map +1 -0
- package/dist/cjs/types/index.d.ts +9 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/types/index.d.ts +2 -0
- package/dist/cjs/types/types/index.d.ts.map +1 -0
- package/dist/cjs/types/types/wallet.d.ts +89 -0
- package/dist/cjs/types/types/wallet.d.ts.map +1 -0
- package/dist/cjs/types/utils/chains.d.ts +26 -0
- package/dist/cjs/types/utils/chains.d.ts.map +1 -0
- package/dist/cjs/types/utils/errors.d.ts +30 -0
- package/dist/cjs/types/utils/errors.d.ts.map +1 -0
- package/dist/cjs/types/utils/format.d.ts +9 -0
- package/dist/cjs/types/utils/format.d.ts.map +1 -0
- package/dist/cjs/types/wallets/BaseWallet.d.ts +86 -0
- package/dist/cjs/types/wallets/BaseWallet.d.ts.map +1 -0
- package/dist/cjs/types/wallets/CoinbaseWallet.d.ts +16 -0
- package/dist/cjs/types/wallets/CoinbaseWallet.d.ts.map +1 -0
- package/dist/cjs/types/wallets/MetaMaskWallet.d.ts +16 -0
- package/dist/cjs/types/wallets/MetaMaskWallet.d.ts.map +1 -0
- package/dist/cjs/types/wallets/OKXWallet.d.ts +16 -0
- package/dist/cjs/types/wallets/OKXWallet.d.ts.map +1 -0
- package/dist/cjs/types/wallets/PhantomWallet.d.ts +20 -0
- package/dist/cjs/types/wallets/PhantomWallet.d.ts.map +1 -0
- package/dist/cjs/types/wallets/index.d.ts +15 -0
- package/dist/cjs/types/wallets/index.d.ts.map +1 -0
- package/dist/esm/index.js +11 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/styles.css +3 -0
- package/dist/esm/types/components/AccountModal.d.ts +6 -0
- package/dist/esm/types/components/AccountModal.d.ts.map +1 -0
- package/dist/esm/types/components/ChainSwitcher.d.ts +6 -0
- package/dist/esm/types/components/ChainSwitcher.d.ts.map +1 -0
- package/dist/esm/types/components/ConnectButton.d.ts +2 -0
- package/dist/esm/types/components/ConnectButton.d.ts.map +1 -0
- package/dist/esm/types/components/WalletModal.d.ts +6 -0
- package/dist/esm/types/components/WalletModal.d.ts.map +1 -0
- package/dist/esm/types/components/WalletProvider.d.ts +13 -0
- package/dist/esm/types/components/WalletProvider.d.ts.map +1 -0
- package/dist/esm/types/context/WalletContext.d.ts +7 -0
- package/dist/esm/types/context/WalletContext.d.ts.map +1 -0
- package/dist/esm/types/hooks/useWallet.d.ts +6 -0
- package/dist/esm/types/hooks/useWallet.d.ts.map +1 -0
- package/dist/esm/types/index.d.ts +9 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/types/index.d.ts +2 -0
- package/dist/esm/types/types/index.d.ts.map +1 -0
- package/dist/esm/types/types/wallet.d.ts +89 -0
- package/dist/esm/types/types/wallet.d.ts.map +1 -0
- package/dist/esm/types/utils/chains.d.ts +26 -0
- package/dist/esm/types/utils/chains.d.ts.map +1 -0
- package/dist/esm/types/utils/errors.d.ts +30 -0
- package/dist/esm/types/utils/errors.d.ts.map +1 -0
- package/dist/esm/types/utils/format.d.ts +9 -0
- package/dist/esm/types/utils/format.d.ts.map +1 -0
- package/dist/esm/types/wallets/BaseWallet.d.ts +86 -0
- package/dist/esm/types/wallets/BaseWallet.d.ts.map +1 -0
- package/dist/esm/types/wallets/CoinbaseWallet.d.ts +16 -0
- package/dist/esm/types/wallets/CoinbaseWallet.d.ts.map +1 -0
- package/dist/esm/types/wallets/MetaMaskWallet.d.ts +16 -0
- package/dist/esm/types/wallets/MetaMaskWallet.d.ts.map +1 -0
- package/dist/esm/types/wallets/OKXWallet.d.ts +16 -0
- package/dist/esm/types/wallets/OKXWallet.d.ts.map +1 -0
- package/dist/esm/types/wallets/PhantomWallet.d.ts +20 -0
- package/dist/esm/types/wallets/PhantomWallet.d.ts.map +1 -0
- package/dist/esm/types/wallets/index.d.ts +15 -0
- package/dist/esm/types/wallets/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +273 -0
- package/package.json +72 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*
|
|
2
|
+
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
|
|
3
|
+
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.wjb-connect-button{border-radius:.75rem;font-weight:700;padding:.625rem 1rem;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.wjb-connect-button:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-offset-width:2px;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.wjb-connect-button{align-items:center;display:flex;gap:.5rem;justify-content:center}.wjb-connect-button-primary{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.wjb-connect-button-primary:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.wjb-connect-button-primary{--tw-text-opacity:1;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);color:rgb(255 255 255/var(--tw-text-opacity))}.wjb-connect-button-primary,.wjb-connect-button-primary:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.wjb-connect-button-primary:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);--tw-scale-x:1.02;--tw-scale-y:1.02}.wjb-connect-button-primary:active,.wjb-connect-button-primary:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.wjb-connect-button-primary:active{--tw-scale-x:0.98;--tw-scale-y:0.98}.wjb-connect-button-primary:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity))}.wjb-wallet-connected{align-items:center;display:flex;gap:.75rem}.wjb-wallet-info-group{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(229 231 235/var(--tw-border-opacity));border-radius:.75rem;border-width:1px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);display:flex;padding:.25rem}@media (prefers-color-scheme:dark){.wjb-wallet-info-group{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity));border-color:rgb(55 65 81/var(--tw-border-opacity))}}.wjb-chain-button{align-items:center;border-radius:.5rem;display:flex;gap:.5rem;padding:.375rem .75rem}.wjb-chain-button:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}@media (prefers-color-scheme:dark){.wjb-chain-button:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}}.wjb-chain-button{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity));font-size:.875rem;font-weight:700;line-height:1.25rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (prefers-color-scheme:dark){.wjb-chain-button{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity))}}.wjb-balance{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));display:none;font-size:.875rem;font-weight:500;line-height:1.25rem;padding-left:.75rem;padding-right:.75rem}@media (min-width:640px){.wjb-balance{display:block}}@media (prefers-color-scheme:dark){.wjb-balance{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity))}}.wjb-account-button{--tw-bg-opacity:1;align-items:center;background-color:rgb(243 244 246/var(--tw-bg-opacity));border-radius:.5rem;display:flex;gap:.5rem;margin-left:.25rem;padding:.375rem .75rem}@media (prefers-color-scheme:dark){.wjb-account-button{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}}.wjb-account-button:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}@media (prefers-color-scheme:dark){.wjb-account-button:hover{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}}.wjb-account-button{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));font-size:.875rem;font-weight:700;line-height:1.25rem;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (prefers-color-scheme:dark){.wjb-account-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}.wjb-account-avatar{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#a855f7 var(--tw-gradient-to-position);--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));border-radius:9999px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);height:1.5rem;width:1.5rem}.wjb-modal-overlay{--tw-backdrop-blur:blur(2px);align-items:center;animation:fade-in .2s ease-out;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background-color:rgba(0,0,0,.4);display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:50}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.wjb-modal-overlay{animation:fadeIn .2s ease-in-out}.wjb-wallet-modal-content{--tw-bg-opacity:1;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:1.5rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (prefers-color-scheme:dark){.wjb-wallet-modal-content{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}}.wjb-wallet-modal-content{display:flex;flex-direction:column;max-width:48rem;overflow:hidden;width:100%}@media (min-width:768px){.wjb-wallet-modal-content{flex-direction:row}}.wjb-wallet-modal-content{animation:scale-up cubic-bezier(.16,1,.3,1) .2s ease-out}.wjb-modal-left{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(243 244 246/var(--tw-border-opacity));padding:1.5rem;width:100%}@media (min-width:768px){.wjb-modal-left{border-bottom-width:0;border-right-width:1px;width:20rem}}@media (prefers-color-scheme:dark){.wjb-modal-left{--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity))}}.wjb-modal-right{--tw-bg-opacity:1;align-items:center;background-color:rgb(249 250 251/var(--tw-bg-opacity));display:flex;flex:1 1 0%;flex-direction:column;justify-content:center;padding:1.5rem;text-align:center}@media (prefers-color-scheme:dark){.wjb-modal-right{background-color:rgba(31,41,55,.5)}}.wjb-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.wjb-modal-title{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));font-size:1.125rem;font-weight:700;line-height:1.75rem}@media (prefers-color-scheme:dark){.wjb-modal-title{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}.wjb-wallet-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.wjb-wallet-option{align-items:center;border-radius:.75rem;display:flex;gap:.75rem;padding:.75rem 1rem;width:100%}.wjb-wallet-option:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}@media (prefers-color-scheme:dark){.wjb-wallet-option:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}}.wjb-wallet-option{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));font-weight:700;text-align:left;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (prefers-color-scheme:dark){.wjb-wallet-option{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}.wjb-chain-switcher-content{--tw-bg-opacity:1;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:1rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);padding:.5rem;width:20rem}@media (prefers-color-scheme:dark){.wjb-chain-switcher-content{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}}.wjb-chain-switcher-content{animation:scale-up cubic-bezier(.16,1,.3,1) .2s ease-out}.wjb-chain-option{align-items:center;border-radius:.75rem;display:flex;justify-content:space-between;padding:.75rem 1rem;width:100%}.wjb-chain-option:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}@media (prefers-color-scheme:dark){.wjb-chain-option:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}}.wjb-chain-option{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));font-weight:500}@media (prefers-color-scheme:dark){.wjb-chain-option{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}.wjb-chain-option{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.wjb-chain-option.active{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity));color:rgb(59 130 246/var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.wjb-chain-option.active{background-color:rgba(30,58,138,.1)}}.wjb-chain-icon{border-radius:9999px;height:1.5rem;margin-right:.75rem;width:1.5rem}.wjb-account-modal-content{--tw-bg-opacity:1;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:1.5rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);padding:2rem;text-align:center;width:20rem}@media (prefers-color-scheme:dark){.wjb-account-modal-content{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}}.wjb-account-modal-content{align-items:center;animation:scale-up cubic-bezier(.16,1,.3,1) .2s ease-out;display:flex;flex-direction:column;gap:1rem;position:relative}.wjb-account-modal-close{--tw-text-opacity:1;border-radius:9999px;color:rgb(156 163 175/var(--tw-text-opacity));padding:.5rem;position:absolute;right:1rem;top:1rem}.wjb-account-modal-close:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity));color:rgb(75 85 99/var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.wjb-account-modal-close:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}}.wjb-account-avatar-large{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#a855f7 var(--tw-gradient-to-position);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));border-radius:9999px;height:5rem;margin-bottom:.5rem;width:5rem}.wjb-account-address-large{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity));font-size:1.25rem;font-weight:700;line-height:1.75rem}@media (prefers-color-scheme:dark){.wjb-account-address-large{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}.wjb-account-balance-large{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity));font-weight:500}@media (prefers-color-scheme:dark){.wjb-account-balance-large{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}}.wjb-account-actions{display:flex;gap:.75rem;margin-top:1rem;width:100%}.wjb-action-button{align-items:center;border-radius:.75rem;display:flex;flex:1 1 0%;flex-direction:column;gap:.5rem;padding:.75rem}.wjb-action-button:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}@media (prefers-color-scheme:dark){.wjb-action-button:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}}.wjb-action-button{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity));font-size:.75rem;font-weight:500;line-height:1rem}@media (prefers-color-scheme:dark){.wjb-action-button{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}}.wjb-action-button{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-up{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-5{height:1.25rem}.h-8{height:2rem}.w-12{width:3rem}.w-5{width:1.25rem}.w-8{width:2rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.-rotate-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-6{--tw-rotate:-6deg}.rotate-12{--tw-rotate:12deg}.rotate-12,.rotate-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-6{--tw-rotate:6deg}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border-b{border-bottom-width:1px}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity))}.bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity))}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity))}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity))}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.text-left{text-align:left}.text-\[10px\]{font-size:10px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity))}.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity))}.hover\:text-red-600:hover{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.hover\:opacity-100:hover{opacity:1}@media (min-width:768px){.md\:flex{display:flex}}@media (prefers-color-scheme:dark){.dark\:border-gray-800{--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity))}.dark\:bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.dark\:text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountModal.d.ts","sourceRoot":"","sources":["../../../src/components/AccountModal.tsx"],"names":[],"mappings":"AAIA,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,iBAAiB,2CAiF1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChainSwitcher.d.ts","sourceRoot":"","sources":["../../../src/components/ChainSwitcher.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,kBAAkB,2CAuD5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConnectButton.d.ts","sourceRoot":"","sources":["../../../src/components/ConnectButton.tsx"],"names":[],"mappings":"AAOA,wBAAgB,aAAa,4CAgH5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WalletModal.d.ts","sourceRoot":"","sources":["../../../src/components/WalletModal.tsx"],"names":[],"mappings":"AAIA,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE,gBAAgB,2CAuJxD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { WalletProviderConfig } from "../types";
|
|
3
|
+
interface WalletProviderProps {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
config: WalletProviderConfig;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* 钱包提供者组件
|
|
9
|
+
* 管理钱包连接状态并向子组件提供钱包上下文
|
|
10
|
+
*/
|
|
11
|
+
export declare function WalletProvider({ children, config }: WalletProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=WalletProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WalletProvider.d.ts","sourceRoot":"","sources":["../../../src/components/WalletProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,oBAAoB,EAAkC,MAAM,UAAU,CAAC;AAKhF,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAID;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,mBAAmB,2CAgRvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WalletContext.d.ts","sourceRoot":"","sources":["../../../src/context/WalletContext.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,aAAa,oDAAiD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWallet.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWallet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C;;GAEG;AACH,wBAAgB,SAAS,IAAI,kBAAkB,CAQ9C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "./components/styles.css";
|
|
2
|
+
export { WalletProvider } from "./components/WalletProvider";
|
|
3
|
+
export { ConnectButton } from "./components/ConnectButton";
|
|
4
|
+
export { useWallet } from "./hooks/useWallet";
|
|
5
|
+
export type { Chain, WalletInfo, WalletState, WalletContextValue, WalletProviderConfig, EthereumProvider, } from "./types";
|
|
6
|
+
export { BaseWallet, MetaMaskWallet, OKXWallet, PhantomWallet, CoinbaseWallet, } from "./wallets";
|
|
7
|
+
export { mainnet, sepolia, defaultChains } from "./utils/chains";
|
|
8
|
+
export { ErrorCode } from "./utils/errors";
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,YAAY,EACV,KAAK,EACL,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,UAAU,EACV,cAAc,EACd,SAAS,EACT,aAAa,EACb,cAAc,GACf,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 基于 EIP-1193 的以太坊提供者接口
|
|
3
|
+
*/
|
|
4
|
+
export interface EthereumProvider {
|
|
5
|
+
request(args: RequestArguments): Promise<unknown>;
|
|
6
|
+
on(event: string, listener: (...args: unknown[]) => void): void;
|
|
7
|
+
removeListener(event: string, listener: (...args: unknown[]) => void): void;
|
|
8
|
+
isMetaMask?: boolean;
|
|
9
|
+
isOkxWallet?: boolean;
|
|
10
|
+
isCoinbaseWallet?: boolean;
|
|
11
|
+
isPhantom?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* JSON-RPC 调用请求参数
|
|
15
|
+
*/
|
|
16
|
+
export interface RequestArguments {
|
|
17
|
+
method: string;
|
|
18
|
+
params?: unknown[] | Record<string, unknown>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* 链配置
|
|
22
|
+
*/
|
|
23
|
+
export interface Chain {
|
|
24
|
+
chainId: string;
|
|
25
|
+
chainName: string;
|
|
26
|
+
nativeCurrency: {
|
|
27
|
+
name: string;
|
|
28
|
+
symbol: string;
|
|
29
|
+
decimals: number;
|
|
30
|
+
};
|
|
31
|
+
rpcUrls: string[];
|
|
32
|
+
blockExplorerUrls?: string[];
|
|
33
|
+
iconUrls?: string[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* 钱包信息
|
|
37
|
+
*/
|
|
38
|
+
export interface WalletInfo {
|
|
39
|
+
id: string;
|
|
40
|
+
name: string;
|
|
41
|
+
icon?: string;
|
|
42
|
+
downloadUrl?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* 钱包连接状态
|
|
46
|
+
*/
|
|
47
|
+
export interface WalletState {
|
|
48
|
+
isConnected: boolean;
|
|
49
|
+
account: string | null;
|
|
50
|
+
chainId: string | null;
|
|
51
|
+
balance: string | null;
|
|
52
|
+
wallet: WalletInfo | null;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* 钱包事件类型
|
|
56
|
+
*/
|
|
57
|
+
export type WalletEventType = "accountsChanged" | "chainChanged" | "connect" | "disconnect";
|
|
58
|
+
/**
|
|
59
|
+
* 事件监听器类型
|
|
60
|
+
*/
|
|
61
|
+
export type WalletEventListener = (data: unknown) => void;
|
|
62
|
+
/**
|
|
63
|
+
* 钱包错误类型
|
|
64
|
+
*/
|
|
65
|
+
export declare class WalletError extends Error {
|
|
66
|
+
code: number;
|
|
67
|
+
data?: unknown;
|
|
68
|
+
constructor(message: string, code: number, data?: unknown);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* 钱包提供者上下文值
|
|
72
|
+
*/
|
|
73
|
+
export interface WalletContextValue {
|
|
74
|
+
state: WalletState;
|
|
75
|
+
connect: (walletId: string) => Promise<void>;
|
|
76
|
+
disconnect: () => Promise<void>;
|
|
77
|
+
switchChain: (chainId: string) => Promise<void>;
|
|
78
|
+
availableWallets: WalletInfo[];
|
|
79
|
+
supportedChains: Chain[];
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* 钱包提供者配置
|
|
83
|
+
*/
|
|
84
|
+
export interface WalletProviderConfig {
|
|
85
|
+
chains: Chain[];
|
|
86
|
+
autoConnect?: boolean;
|
|
87
|
+
appName?: string;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/types/wallet.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAChE,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,cAAc,GACd,SAAS,GACT,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;AAE1D;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;gBAEH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAM1D;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,eAAe,EAAE,KAAK,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Chain } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* 以太坊主网
|
|
4
|
+
*/
|
|
5
|
+
export declare const mainnet: Chain;
|
|
6
|
+
/**
|
|
7
|
+
* Sepolia 测试网
|
|
8
|
+
*/
|
|
9
|
+
export declare const sepolia: Chain;
|
|
10
|
+
/**
|
|
11
|
+
* 默认链列表
|
|
12
|
+
*/
|
|
13
|
+
export declare const defaultChains: Chain[];
|
|
14
|
+
/**
|
|
15
|
+
* 根据 chainId 获取链配置
|
|
16
|
+
*/
|
|
17
|
+
export declare function getChainById(chainId: string, chains: Chain[]): Chain | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* 将 chainId 格式化为十六进制字符串
|
|
20
|
+
*/
|
|
21
|
+
export declare function formatChainId(chainId: number | string): string;
|
|
22
|
+
/**
|
|
23
|
+
* 将 chainId 解析为数字
|
|
24
|
+
*/
|
|
25
|
+
export declare function parseChainId(chainId: string): number;
|
|
26
|
+
//# sourceMappingURL=chains.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/utils/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAUrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAUrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,EAAuB,CAAC;AAEzD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,KAAK,EAAE,GACd,KAAK,GAAG,SAAS,CAInB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAQ9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKpD"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { WalletError } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* 基于 EIP-1193 的错误代码
|
|
4
|
+
*/
|
|
5
|
+
export declare const ErrorCode: {
|
|
6
|
+
readonly USER_REJECTED: 4001;
|
|
7
|
+
readonly UNAUTHORIZED: 4100;
|
|
8
|
+
readonly UNSUPPORTED_METHOD: 4200;
|
|
9
|
+
readonly DISCONNECTED: 4900;
|
|
10
|
+
readonly CHAIN_DISCONNECTED: 4901;
|
|
11
|
+
readonly UNRECOGNIZED_CHAIN: 4902;
|
|
12
|
+
readonly INVALID_PARAMS: -32602;
|
|
13
|
+
readonly INTERNAL_ERROR: -32603;
|
|
14
|
+
readonly PROVIDER_NOT_FOUND: -32000;
|
|
15
|
+
readonly WALLET_NOT_INSTALLED: -32001;
|
|
16
|
+
readonly ALREADY_CONNECTED: -32002;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* 创建钱包错误
|
|
20
|
+
*/
|
|
21
|
+
export declare function createWalletError(message: string, code: number, data?: unknown): WalletError;
|
|
22
|
+
/**
|
|
23
|
+
* 检查错误是否为用户拒绝
|
|
24
|
+
*/
|
|
25
|
+
export declare function isUserRejectedError(error: unknown): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* 解析提供者错误
|
|
28
|
+
*/
|
|
29
|
+
export declare function parseProviderError(error: unknown): WalletError;
|
|
30
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;CAYZ,CAAC;AAEX;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,GACb,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAwB9D"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Format balance from hex/wei to formatted string
|
|
3
|
+
*/
|
|
4
|
+
export declare function formatBalance(rawBalance: string | undefined): string;
|
|
5
|
+
/**
|
|
6
|
+
* Format address to short form 0x...1234
|
|
7
|
+
*/
|
|
8
|
+
export declare function formatAddress(address: string | null | undefined): string;
|
|
9
|
+
//# sourceMappingURL=format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/utils/format.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAwBpE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAGxE"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { EthereumProvider, RequestArguments, Chain, WalletInfo, WalletEventListener } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* 钱包基类(抽象类)
|
|
4
|
+
* 所有钱包实现都应继承此类
|
|
5
|
+
*/
|
|
6
|
+
export declare abstract class BaseWallet {
|
|
7
|
+
protected provider: EthereumProvider | null;
|
|
8
|
+
protected eventListeners: Map<string, Set<WalletEventListener>>;
|
|
9
|
+
/**
|
|
10
|
+
* 获取钱包信息
|
|
11
|
+
*/
|
|
12
|
+
abstract getInfo(): WalletInfo;
|
|
13
|
+
/**
|
|
14
|
+
* 检查钱包是否安装
|
|
15
|
+
*/
|
|
16
|
+
abstract isInstalled(): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* 获取提供者实例
|
|
19
|
+
*/
|
|
20
|
+
abstract getProvider(): EthereumProvider | null;
|
|
21
|
+
/**
|
|
22
|
+
* 连接钱包
|
|
23
|
+
*/
|
|
24
|
+
connect(): Promise<string[]>;
|
|
25
|
+
/**
|
|
26
|
+
* 断开钱包连接
|
|
27
|
+
*/
|
|
28
|
+
disconnect(): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* 获取当前账户
|
|
31
|
+
*/
|
|
32
|
+
getAccounts(): Promise<string[]>;
|
|
33
|
+
/**
|
|
34
|
+
* 获取当前账户余额
|
|
35
|
+
*/
|
|
36
|
+
getBalance(address: string): Promise<string>;
|
|
37
|
+
/**
|
|
38
|
+
* 获取当前链 ID
|
|
39
|
+
*/
|
|
40
|
+
getChainId(): Promise<string>;
|
|
41
|
+
/**
|
|
42
|
+
* 切换到指定链
|
|
43
|
+
*/
|
|
44
|
+
switchChain(chain: Chain): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* 添加事件监听器
|
|
47
|
+
*/
|
|
48
|
+
on(event: string, listener: WalletEventListener): void;
|
|
49
|
+
/**
|
|
50
|
+
* 移除事件监听器
|
|
51
|
+
*/
|
|
52
|
+
off(event: string, listener: WalletEventListener): void;
|
|
53
|
+
/**
|
|
54
|
+
* 发起 JSON-RPC 请求
|
|
55
|
+
*/
|
|
56
|
+
protected request<T = unknown>(args: RequestArguments): Promise<T>;
|
|
57
|
+
/**
|
|
58
|
+
* 设置提供者事件监听
|
|
59
|
+
*/
|
|
60
|
+
protected setupEventListeners(): void;
|
|
61
|
+
/**
|
|
62
|
+
* 清理资源和监听器
|
|
63
|
+
*/
|
|
64
|
+
protected cleanup(): void;
|
|
65
|
+
/**
|
|
66
|
+
* 处理账户变更事件
|
|
67
|
+
*/
|
|
68
|
+
protected handleAccountsChanged: (accounts: unknown) => void;
|
|
69
|
+
/**
|
|
70
|
+
* 处理链变更事件
|
|
71
|
+
*/
|
|
72
|
+
protected handleChainChanged: (chainId: unknown) => void;
|
|
73
|
+
/**
|
|
74
|
+
* 处理断开连接事件
|
|
75
|
+
*/
|
|
76
|
+
protected handleDisconnect: () => void;
|
|
77
|
+
/**
|
|
78
|
+
* 向所有监听器触发事件
|
|
79
|
+
*/
|
|
80
|
+
protected emit(event: string, data: unknown): void;
|
|
81
|
+
/**
|
|
82
|
+
* 检查错误是否为未知链错误
|
|
83
|
+
*/
|
|
84
|
+
protected isUnrecognizedChainError(error: unknown): boolean;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=BaseWallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseWallet.d.ts","sourceRoot":"","sources":["../../../src/wallets/BaseWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,EACL,UAAU,EACV,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAOlB;;;GAGG;AACH,8BAAsB,UAAU;IAC9B,SAAS,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IACnD,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAa;IAE5E;;OAEG;IACH,QAAQ,CAAC,OAAO,IAAI,UAAU;IAE9B;;OAEG;IACH,QAAQ,CAAC,WAAW,IAAI,OAAO;IAE/B;;OAEG;IACH,QAAQ,CAAC,WAAW,IAAI,gBAAgB,GAAG,IAAI;IAE/C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAgClC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBtC;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBlD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAenC;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAqC9C;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAOtD;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAOvD;;OAEG;cACa,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC;IAaxE;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAQrC;;OAEG;IACH,SAAS,CAAC,OAAO,IAAI,IAAI;IAazB;;OAEG;IACH,SAAS,CAAC,qBAAqB,aAAc,OAAO,KAAG,IAAI,CAEzD;IAEF;;OAEG;IACH,SAAS,CAAC,kBAAkB,YAAa,OAAO,KAAG,IAAI,CAErD;IAEF;;OAEG;IACH,SAAS,CAAC,gBAAgB,QAAO,IAAI,CAGnC;IAEF;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAalD;;OAEG;IACH,SAAS,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAM5D"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseWallet } from "./BaseWallet";
|
|
2
|
+
import { EthereumProvider, WalletInfo } from "../types";
|
|
3
|
+
declare global {
|
|
4
|
+
interface Window {
|
|
5
|
+
coinbaseWalletExtension?: EthereumProvider;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Coinbase 钱包实现
|
|
10
|
+
*/
|
|
11
|
+
export declare class CoinbaseWallet extends BaseWallet {
|
|
12
|
+
getInfo(): WalletInfo;
|
|
13
|
+
isInstalled(): boolean;
|
|
14
|
+
getProvider(): EthereumProvider | null;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=CoinbaseWallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CoinbaseWallet.d.ts","sourceRoot":"","sources":["../../../src/wallets/CoinbaseWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,uBAAuB,CAAC,EAAE,gBAAgB,CAAC;KAC5C;CACF;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,IAAI,UAAU;IAQrB,WAAW,IAAI,OAAO;IAKtB,WAAW,IAAI,gBAAgB,GAAG,IAAI;CAIvC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseWallet } from "./BaseWallet";
|
|
2
|
+
import { EthereumProvider, WalletInfo } from "../types";
|
|
3
|
+
declare global {
|
|
4
|
+
interface Window {
|
|
5
|
+
ethereum?: EthereumProvider;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* MetaMask 钱包实现
|
|
10
|
+
*/
|
|
11
|
+
export declare class MetaMaskWallet extends BaseWallet {
|
|
12
|
+
getInfo(): WalletInfo;
|
|
13
|
+
isInstalled(): boolean;
|
|
14
|
+
getProvider(): EthereumProvider | null;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=MetaMaskWallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetaMaskWallet.d.ts","sourceRoot":"","sources":["../../../src/wallets/MetaMaskWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,QAAQ,CAAC,EAAE,gBAAgB,CAAC;KAC7B;CACF;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,IAAI,UAAU;IAQrB,WAAW,IAAI,OAAO;IAKtB,WAAW,IAAI,gBAAgB,GAAG,IAAI;CAWvC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseWallet } from "./BaseWallet";
|
|
2
|
+
import { EthereumProvider, WalletInfo } from "../types";
|
|
3
|
+
declare global {
|
|
4
|
+
interface Window {
|
|
5
|
+
okxwallet?: EthereumProvider;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* OKX 钱包实现
|
|
10
|
+
*/
|
|
11
|
+
export declare class OKXWallet extends BaseWallet {
|
|
12
|
+
getInfo(): WalletInfo;
|
|
13
|
+
isInstalled(): boolean;
|
|
14
|
+
getProvider(): EthereumProvider | null;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=OKXWallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OKXWallet.d.ts","sourceRoot":"","sources":["../../../src/wallets/OKXWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC9B;CACF;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,UAAU;IACvC,OAAO,IAAI,UAAU;IAQrB,WAAW,IAAI,OAAO;IAKtB,WAAW,IAAI,gBAAgB,GAAG,IAAI;CAIvC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseWallet } from "./BaseWallet";
|
|
2
|
+
import { EthereumProvider, WalletInfo } from "../types";
|
|
3
|
+
declare global {
|
|
4
|
+
interface Window {
|
|
5
|
+
phantom?: {
|
|
6
|
+
ethereum?: EthereumProvider;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Phantom 钱包实现
|
|
12
|
+
* Phantom 支持 Solana 和 Ethereum
|
|
13
|
+
* 我们使用 ethereum 属性以兼容 EVM
|
|
14
|
+
*/
|
|
15
|
+
export declare class PhantomWallet extends BaseWallet {
|
|
16
|
+
getInfo(): WalletInfo;
|
|
17
|
+
isInstalled(): boolean;
|
|
18
|
+
getProvider(): EthereumProvider | null;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=PhantomWallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PhantomWallet.d.ts","sourceRoot":"","sources":["../../../src/wallets/PhantomWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,OAAO,CAAC,EAAE;YACR,QAAQ,CAAC,EAAE,gBAAgB,CAAC;SAC7B,CAAC;KACH;CACF;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,OAAO,IAAI,UAAU;IAQrB,WAAW,IAAI,OAAO;IAKtB,WAAW,IAAI,gBAAgB,GAAG,IAAI;CAIvC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { BaseWallet } from "./BaseWallet";
|
|
2
|
+
export { MetaMaskWallet } from "./MetaMaskWallet";
|
|
3
|
+
export { OKXWallet } from "./OKXWallet";
|
|
4
|
+
export { PhantomWallet } from "./PhantomWallet";
|
|
5
|
+
export { CoinbaseWallet } from "./CoinbaseWallet";
|
|
6
|
+
import { BaseWallet } from "./BaseWallet";
|
|
7
|
+
/**
|
|
8
|
+
* 所有可用钱包的注册表
|
|
9
|
+
*/
|
|
10
|
+
export declare const walletRegistry: BaseWallet[];
|
|
11
|
+
/**
|
|
12
|
+
* 根据 ID 获取钱包
|
|
13
|
+
*/
|
|
14
|
+
export declare function getWalletById(id: string): BaseWallet | undefined;
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMlD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,EAKtC,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAEhE"}
|