@pooflabs/web 0.0.70-rc.1 → 0.0.70
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/dist/auth/providers/solana-mobile-wallet-provider.d.ts +16 -6
- package/dist/{index-DEHeP5Qr.esm.js → index-Buv6IzVV.esm.js} +904 -609
- package/dist/index-Buv6IzVV.esm.js.map +1 -0
- package/dist/{index-BO2G95MR.js → index-De5j2Ofs.js} +1226 -18
- package/dist/index-De5j2Ofs.js.map +1 -0
- package/dist/{index-B3B6I7hT.esm.js → index-DgZ0DRmj.esm.js} +1222 -14
- package/dist/index-DgZ0DRmj.esm.js.map +1 -0
- package/dist/{index-CMKICH1P.js → index-Rzm01Zbu.js} +904 -610
- package/dist/index-Rzm01Zbu.js.map +1 -0
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +7 -2
- package/dist/index-B3B6I7hT.esm.js.map +0 -1
- package/dist/index-BO2G95MR.js.map +0 -1
- package/dist/index-CMKICH1P.js.map +0 -1
- package/dist/index-DEHeP5Qr.esm.js.map +0 -1
|
@@ -6,6 +6,21 @@ import * as React$2 from 'react';
|
|
|
6
6
|
import React__default, { createContext } from 'react';
|
|
7
7
|
import 'react/jsx-runtime';
|
|
8
8
|
|
|
9
|
+
function _mergeNamespaces(n, m) {
|
|
10
|
+
m.forEach(function (e) {
|
|
11
|
+
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
12
|
+
if (k !== 'default' && !(k in n)) {
|
|
13
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () { return e[k]; }
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
|
|
9
24
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
10
25
|
|
|
11
26
|
function getDefaultExportFromCjs$1 (x) {
|
|
@@ -9179,21 +9194,21 @@ function requireSrc () {
|
|
|
9179
9194
|
return src$1;
|
|
9180
9195
|
}
|
|
9181
9196
|
|
|
9182
|
-
var bs58$1;
|
|
9183
|
-
var hasRequiredBs58;
|
|
9197
|
+
var bs58$1$1;
|
|
9198
|
+
var hasRequiredBs58$1;
|
|
9184
9199
|
|
|
9185
|
-
function requireBs58 () {
|
|
9186
|
-
if (hasRequiredBs58) return bs58$1;
|
|
9187
|
-
hasRequiredBs58 = 1;
|
|
9200
|
+
function requireBs58$1 () {
|
|
9201
|
+
if (hasRequiredBs58$1) return bs58$1$1;
|
|
9202
|
+
hasRequiredBs58$1 = 1;
|
|
9188
9203
|
var basex = requireSrc();
|
|
9189
9204
|
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
9190
9205
|
|
|
9191
|
-
bs58$1 = basex(ALPHABET);
|
|
9192
|
-
return bs58$1;
|
|
9206
|
+
bs58$1$1 = basex(ALPHABET);
|
|
9207
|
+
return bs58$1$1;
|
|
9193
9208
|
}
|
|
9194
9209
|
|
|
9195
|
-
var bs58Exports = requireBs58();
|
|
9196
|
-
var bs58$2 = /*@__PURE__*/getDefaultExportFromCjs(bs58Exports);
|
|
9210
|
+
var bs58Exports$1 = requireBs58$1();
|
|
9211
|
+
var bs58$2 = /*@__PURE__*/getDefaultExportFromCjs(bs58Exports$1);
|
|
9197
9212
|
|
|
9198
9213
|
// ─────────────────────────────────────────────────────────────
|
|
9199
9214
|
// Local implementation of getSimulationComputeUnits
|
|
@@ -13546,7 +13561,7 @@ async function loadDependencies() {
|
|
|
13546
13561
|
const [reactModule, reactDomModule, phantomModule] = await Promise.all([
|
|
13547
13562
|
import('react'),
|
|
13548
13563
|
import('react-dom/client'),
|
|
13549
|
-
import('./index-
|
|
13564
|
+
import('./index-DgZ0DRmj.esm.js')
|
|
13550
13565
|
]);
|
|
13551
13566
|
// Extract default export from ESM module namespace
|
|
13552
13567
|
// Dynamic import() returns { default: Module, ...exports }, not the module directly
|
|
@@ -13661,14 +13676,10 @@ class PhantomWalletProvider {
|
|
|
13661
13676
|
// Keep Phantom UI above host overlays while avoiding global click-capture.
|
|
13662
13677
|
this.containerElement.style.position = 'fixed';
|
|
13663
13678
|
this.containerElement.style.zIndex = '2147483647';
|
|
13664
|
-
|
|
13665
|
-
|
|
13666
|
-
|
|
13667
|
-
|
|
13668
|
-
this.containerElement.style.pointerEvents = 'none';
|
|
13669
|
-
}
|
|
13670
|
-
// When Privy fallback is off, the container just hosts PhantomProvider
|
|
13671
|
-
// without covering the viewport or blocking pointer events
|
|
13679
|
+
// Full-viewport overlay for custom modal; pointer-events: none lets
|
|
13680
|
+
// clicks pass through to page except where the modal sets 'auto'
|
|
13681
|
+
this.containerElement.style.inset = '0';
|
|
13682
|
+
this.containerElement.style.pointerEvents = 'none';
|
|
13672
13683
|
document.body.appendChild(this.containerElement);
|
|
13673
13684
|
const that = this;
|
|
13674
13685
|
const { PhantomProvider: ReactPhantomProvider, usePhantom, useConnect, useDisconnect, useModal, useSolana, useDiscoveredWallets, AddressType, darkTheme, lightTheme } = phantomReactSdk;
|
|
@@ -13794,7 +13805,7 @@ class PhantomWalletProvider {
|
|
|
13794
13805
|
}, [phantom === null || phantom === void 0 ? void 0 : phantom.isConnected, phantom === null || phantom === void 0 ? void 0 : phantom.isLoading, phantom === null || phantom === void 0 ? void 0 : phantom.addresses, solana, solana === null || solana === void 0 ? void 0 : solana.connected, solanaHook.isAvailable, disconnect]);
|
|
13795
13806
|
// Suppress SDK modal if it opens during custom modal login flow
|
|
13796
13807
|
React$1.useEffect(() => {
|
|
13797
|
-
if (modal.isOpened && that.loginInProgress
|
|
13808
|
+
if (modal.isOpened && that.loginInProgress) {
|
|
13798
13809
|
modal.close();
|
|
13799
13810
|
}
|
|
13800
13811
|
}, [modal.isOpened]);
|
|
@@ -13971,8 +13982,8 @@ class PhantomWalletProvider {
|
|
|
13971
13982
|
that.loginInProgress = false;
|
|
13972
13983
|
}
|
|
13973
13984
|
};
|
|
13974
|
-
// --- Custom modal
|
|
13975
|
-
if (!showWalletModal
|
|
13985
|
+
// --- Custom wallet modal ---
|
|
13986
|
+
if (!showWalletModal) {
|
|
13976
13987
|
return null;
|
|
13977
13988
|
}
|
|
13978
13989
|
const theme = that.config.theme === 'light' ? lightTheme : darkTheme;
|
|
@@ -14002,6 +14013,47 @@ class PhantomWalletProvider {
|
|
|
14002
14013
|
transition: 'background-color 0.2s',
|
|
14003
14014
|
});
|
|
14004
14015
|
const walletButtons = [];
|
|
14016
|
+
// Google OAuth button — shown when 'google' is in resolved providers
|
|
14017
|
+
if (sdkProviders.includes('google')) {
|
|
14018
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14019
|
+
key: 'google-oauth',
|
|
14020
|
+
style: buttonStyle('google-oauth'),
|
|
14021
|
+
onClick: () => handleWalletClick({ provider: 'google' }),
|
|
14022
|
+
onMouseEnter: () => setHoveredBtn('google-oauth'),
|
|
14023
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14024
|
+
}, React$1.createElement('svg', {
|
|
14025
|
+
width: '20', height: '20', viewBox: '0 0 24 24',
|
|
14026
|
+
style: { flexShrink: '0' },
|
|
14027
|
+
}, React$1.createElement('path', {
|
|
14028
|
+
d: 'M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z',
|
|
14029
|
+
fill: '#4285F4',
|
|
14030
|
+
}), React$1.createElement('path', {
|
|
14031
|
+
d: 'M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z',
|
|
14032
|
+
fill: '#34A853',
|
|
14033
|
+
}), React$1.createElement('path', {
|
|
14034
|
+
d: 'M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18A11.96 11.96 0 0 0 1 12c0 1.94.46 3.77 1.18 5.41l3.66-2.84z',
|
|
14035
|
+
fill: '#FBBC05',
|
|
14036
|
+
}), React$1.createElement('path', {
|
|
14037
|
+
d: 'M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z',
|
|
14038
|
+
fill: '#EA4335',
|
|
14039
|
+
})), 'Continue with Google'));
|
|
14040
|
+
}
|
|
14041
|
+
// Apple OAuth button — shown when 'apple' is in resolved providers
|
|
14042
|
+
if (sdkProviders.includes('apple')) {
|
|
14043
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14044
|
+
key: 'apple-oauth',
|
|
14045
|
+
style: buttonStyle('apple-oauth'),
|
|
14046
|
+
onClick: () => handleWalletClick({ provider: 'apple' }),
|
|
14047
|
+
onMouseEnter: () => setHoveredBtn('apple-oauth'),
|
|
14048
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14049
|
+
}, React$1.createElement('svg', {
|
|
14050
|
+
width: '20', height: '20', viewBox: '0 0 24 24',
|
|
14051
|
+
fill: textColor,
|
|
14052
|
+
style: { flexShrink: '0' },
|
|
14053
|
+
}, React$1.createElement('path', {
|
|
14054
|
+
d: 'M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24 0-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z',
|
|
14055
|
+
})), 'Continue with Apple'));
|
|
14056
|
+
}
|
|
14005
14057
|
// Fallback icon for Phantom — uses the official SVG path from @phantom/wallet-sdk-ui
|
|
14006
14058
|
// (SDK intentionally leaves wallet.icon empty for Phantom, expecting its own UI to render it)
|
|
14007
14059
|
const PHANTOM_ICON = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHJ4PSI2IiBmaWxsPSIjQUI5RkYyIi8+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNCw0KSI+PHBhdGggZD0iTTIuMzY2NTUgMTguMzI3MUM0LjkxODcxIDE4LjMyNzEgNi44MzY3IDE2LjEwNzYgNy45ODEzMSAxNC4zNTM3QzcuODQyMSAxNC43NDE3IDcuNzY0NzYgMTUuMTI5OCA3Ljc2NDc2IDE1LjUwMjNDNy43NjQ3NiAxNi41MjY3IDguMzUyNTMgMTcuMjU2MiA5LjUxMjYgMTcuMjU2MkMxMS4xMDU4IDE3LjI1NjIgMTIuODA3MiAxNS44NTkzIDEzLjY4ODkgMTQuMzUzN0MxMy42MjcgMTQuNTcxIDEzLjU5NjEgMTQuNzcyOCAxMy41OTYxIDE0Ljk1OUMxMy41OTYxIDE1LjY3MyAxMy45OTgyIDE2LjEyMzEgMTQuODE4IDE2LjEyMzFDMTcuNDAxMSAxNi4xMjMxIDE5Ljk5OTcgMTEuNTQ0NCAxOS45OTk3IDcuNTM5ODdDMTkuOTk5NyA0LjQyMDExIDE4LjQyMiAxLjY3Mjg1IDE0LjQ2MjIgMS42NzI4NUM3LjUwMTgxIDEuNjcyODUgMCAxMC4xNzg1IDAgMTUuNjczQzAgMTcuODMwNSAxLjE2MDA3IDE4LjMyNzEgMi4zNjY1NSAxOC4zMjcxWk0xMi4wNjQ4IDcuMTk4NDFDMTIuMDY0OCA2LjQyMjM1IDEyLjQ5NzkgNS44NzkxIDEzLjEzMiA1Ljg3OTFDMTMuNzUwNyA1Ljg3OTEgMTQuMTgzOCA2LjQyMjM1IDE0LjE4MzggNy4xOTg0MUMxNC4xODM4IDcuOTc0NDcgMTMuNzUwNyA4LjUzMzIzIDEzLjEzMiA4LjUzMzIzQzEyLjQ5NzkgOC41MzMyMyAxMi4wNjQ4IDcuOTc0NDcgMTIuMDY0OCA3LjE5ODQxWk0xNS4zNzQ4IDcuMTk4NDFDMTUuMzc0OCA2LjQyMjM1IDE1LjgwNzkgNS44NzkxIDE2LjQ0MjEgNS44NzkxQzE3LjA2MDggNS44NzkxIDE3LjQ5MzkgNi40MjIzNSAxNy40OTM5IDcuMTk4NDFDMTcuNDkzOSA3Ljk3NDQ3IDE3LjA2MDggOC41MzMyMyAxNi40NDIxIDguNTMzMjNDMTUuODA3OSA4LjUzMzIzIDE1LjM3NDggNy45NzQ0NyAxNS4zNzQ4IDcuMTk4NDFaIiBmaWxsPSJ3aGl0ZSIvPjwvZz48L3N2Zz4=';
|
|
@@ -14069,25 +14121,27 @@ class PhantomWalletProvider {
|
|
|
14069
14121
|
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14070
14122
|
})), 'Connect Mobile Wallet'));
|
|
14071
14123
|
}
|
|
14072
|
-
// Email button
|
|
14073
|
-
|
|
14074
|
-
|
|
14075
|
-
|
|
14076
|
-
|
|
14077
|
-
|
|
14078
|
-
|
|
14079
|
-
|
|
14080
|
-
|
|
14081
|
-
|
|
14082
|
-
|
|
14083
|
-
|
|
14084
|
-
|
|
14085
|
-
|
|
14086
|
-
|
|
14087
|
-
|
|
14088
|
-
|
|
14089
|
-
|
|
14090
|
-
|
|
14124
|
+
// Email button — only when Privy fallback is enabled
|
|
14125
|
+
if (that.config.enablePrivyFallback) {
|
|
14126
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14127
|
+
key: 'email-login',
|
|
14128
|
+
style: buttonStyle('email-login'),
|
|
14129
|
+
onClick: handleEmailClick,
|
|
14130
|
+
onMouseEnter: () => setHoveredBtn('email-login'),
|
|
14131
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14132
|
+
},
|
|
14133
|
+
// Email icon
|
|
14134
|
+
React$1.createElement('svg', {
|
|
14135
|
+
width: '20', height: '20', viewBox: '0 0 24 24', fill: 'none',
|
|
14136
|
+
style: { flexShrink: '0' },
|
|
14137
|
+
}, React$1.createElement('path', {
|
|
14138
|
+
d: 'M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z',
|
|
14139
|
+
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14140
|
+
}), React$1.createElement('path', {
|
|
14141
|
+
d: 'M22 6l-10 7L2 6',
|
|
14142
|
+
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14143
|
+
})), 'Log in with email'));
|
|
14144
|
+
}
|
|
14091
14145
|
// Render custom modal
|
|
14092
14146
|
return React$1.createElement('div', {
|
|
14093
14147
|
// Overlay
|
|
@@ -14310,13 +14364,8 @@ class PhantomWalletProvider {
|
|
|
14310
14364
|
return new Promise((resolve, reject) => {
|
|
14311
14365
|
this.pendingLogin = { resolve, reject };
|
|
14312
14366
|
this.loginInProgress = true;
|
|
14313
|
-
//
|
|
14314
|
-
|
|
14315
|
-
this.phantomMethods.showCustomModal();
|
|
14316
|
-
}
|
|
14317
|
-
else {
|
|
14318
|
-
this.phantomMethods.openModal();
|
|
14319
|
-
}
|
|
14367
|
+
// Always use our custom wallet modal
|
|
14368
|
+
this.phantomMethods.showCustomModal();
|
|
14320
14369
|
// Safety timeout
|
|
14321
14370
|
setTimeout(() => {
|
|
14322
14371
|
if (this.pendingLogin) {
|
|
@@ -16742,356 +16791,6 @@ const x$8=[t$6,e$5,e$a,t$b,r$4,t$5,t$4,o$7,o$6,e$c,e$b,i$5,i$4,e$e,e$d,t$9,t$8,e
|
|
|
16742
16791
|
|
|
16743
16792
|
var t$3;((t$3={}).MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",t$3.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",t$3.INVALID_DATA="invalid_data",t$3.LINKED_TO_ANOTHER_USER="linked_to_another_user",t$3.ALLOWLIST_REJECTED="allowlist_rejected",t$3.OAUTH_USER_DENIED="oauth_user_denied",t$3.UNKNOWN_AUTH_ERROR="unknown_auth_error",t$3.USER_EXITED_AUTH_FLOW="exited_auth_flow",t$3.MUST_BE_AUTHENTICATED="must_be_authenticated",t$3.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",t$3.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",t$3.CLIENT_REQUEST_TIMEOUT="client_request_timeout",t$3.INVALID_CREDENTIALS="invalid_credentials",t$3);const n$3={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:true},E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:true,retryable:true},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:true,retryable:false},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:true,retryable:false},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:true,retryable:true},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:true,retryable:true},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:true,retryable:false},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:true,retryable:false},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:true,retryable:false},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:true,retryable:false},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:true,retryable:true},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:true,retryable:false},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:true,retryable:false},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:true,retryable:true},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:true,retryable:true},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:true,retryable:false},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:true,retryable:false},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:true,retryable:false},E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:false},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:false},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don’t see your wallet? Check your other browser windows.",retryable:false},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:true}};
|
|
16744
16793
|
|
|
16745
|
-
var eventemitter3 = {exports: {}};
|
|
16746
|
-
|
|
16747
|
-
var hasRequiredEventemitter3;
|
|
16748
|
-
|
|
16749
|
-
function requireEventemitter3 () {
|
|
16750
|
-
if (hasRequiredEventemitter3) return eventemitter3.exports;
|
|
16751
|
-
hasRequiredEventemitter3 = 1;
|
|
16752
|
-
(function (module) {
|
|
16753
|
-
|
|
16754
|
-
var has = Object.prototype.hasOwnProperty
|
|
16755
|
-
, prefix = '~';
|
|
16756
|
-
|
|
16757
|
-
/**
|
|
16758
|
-
* Constructor to create a storage for our `EE` objects.
|
|
16759
|
-
* An `Events` instance is a plain object whose properties are event names.
|
|
16760
|
-
*
|
|
16761
|
-
* @constructor
|
|
16762
|
-
* @private
|
|
16763
|
-
*/
|
|
16764
|
-
function Events() {}
|
|
16765
|
-
|
|
16766
|
-
//
|
|
16767
|
-
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
16768
|
-
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
16769
|
-
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
16770
|
-
// character to make sure that the built-in object properties are not
|
|
16771
|
-
// overridden or used as an attack vector.
|
|
16772
|
-
//
|
|
16773
|
-
if (Object.create) {
|
|
16774
|
-
Events.prototype = Object.create(null);
|
|
16775
|
-
|
|
16776
|
-
//
|
|
16777
|
-
// This hack is needed because the `__proto__` property is still inherited in
|
|
16778
|
-
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
16779
|
-
//
|
|
16780
|
-
if (!new Events().__proto__) prefix = false;
|
|
16781
|
-
}
|
|
16782
|
-
|
|
16783
|
-
/**
|
|
16784
|
-
* Representation of a single event listener.
|
|
16785
|
-
*
|
|
16786
|
-
* @param {Function} fn The listener function.
|
|
16787
|
-
* @param {*} context The context to invoke the listener with.
|
|
16788
|
-
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
16789
|
-
* @constructor
|
|
16790
|
-
* @private
|
|
16791
|
-
*/
|
|
16792
|
-
function EE(fn, context, once) {
|
|
16793
|
-
this.fn = fn;
|
|
16794
|
-
this.context = context;
|
|
16795
|
-
this.once = once || false;
|
|
16796
|
-
}
|
|
16797
|
-
|
|
16798
|
-
/**
|
|
16799
|
-
* Add a listener for a given event.
|
|
16800
|
-
*
|
|
16801
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
16802
|
-
* @param {(String|Symbol)} event The event name.
|
|
16803
|
-
* @param {Function} fn The listener function.
|
|
16804
|
-
* @param {*} context The context to invoke the listener with.
|
|
16805
|
-
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
16806
|
-
* @returns {EventEmitter}
|
|
16807
|
-
* @private
|
|
16808
|
-
*/
|
|
16809
|
-
function addListener(emitter, event, fn, context, once) {
|
|
16810
|
-
if (typeof fn !== 'function') {
|
|
16811
|
-
throw new TypeError('The listener must be a function');
|
|
16812
|
-
}
|
|
16813
|
-
|
|
16814
|
-
var listener = new EE(fn, context || emitter, once)
|
|
16815
|
-
, evt = prefix ? prefix + event : event;
|
|
16816
|
-
|
|
16817
|
-
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
16818
|
-
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
16819
|
-
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
16820
|
-
|
|
16821
|
-
return emitter;
|
|
16822
|
-
}
|
|
16823
|
-
|
|
16824
|
-
/**
|
|
16825
|
-
* Clear event by name.
|
|
16826
|
-
*
|
|
16827
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
16828
|
-
* @param {(String|Symbol)} evt The Event name.
|
|
16829
|
-
* @private
|
|
16830
|
-
*/
|
|
16831
|
-
function clearEvent(emitter, evt) {
|
|
16832
|
-
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
16833
|
-
else delete emitter._events[evt];
|
|
16834
|
-
}
|
|
16835
|
-
|
|
16836
|
-
/**
|
|
16837
|
-
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
16838
|
-
* `EventEmitter` interface.
|
|
16839
|
-
*
|
|
16840
|
-
* @constructor
|
|
16841
|
-
* @public
|
|
16842
|
-
*/
|
|
16843
|
-
function EventEmitter() {
|
|
16844
|
-
this._events = new Events();
|
|
16845
|
-
this._eventsCount = 0;
|
|
16846
|
-
}
|
|
16847
|
-
|
|
16848
|
-
/**
|
|
16849
|
-
* Return an array listing the events for which the emitter has registered
|
|
16850
|
-
* listeners.
|
|
16851
|
-
*
|
|
16852
|
-
* @returns {Array}
|
|
16853
|
-
* @public
|
|
16854
|
-
*/
|
|
16855
|
-
EventEmitter.prototype.eventNames = function eventNames() {
|
|
16856
|
-
var names = []
|
|
16857
|
-
, events
|
|
16858
|
-
, name;
|
|
16859
|
-
|
|
16860
|
-
if (this._eventsCount === 0) return names;
|
|
16861
|
-
|
|
16862
|
-
for (name in (events = this._events)) {
|
|
16863
|
-
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
16864
|
-
}
|
|
16865
|
-
|
|
16866
|
-
if (Object.getOwnPropertySymbols) {
|
|
16867
|
-
return names.concat(Object.getOwnPropertySymbols(events));
|
|
16868
|
-
}
|
|
16869
|
-
|
|
16870
|
-
return names;
|
|
16871
|
-
};
|
|
16872
|
-
|
|
16873
|
-
/**
|
|
16874
|
-
* Return the listeners registered for a given event.
|
|
16875
|
-
*
|
|
16876
|
-
* @param {(String|Symbol)} event The event name.
|
|
16877
|
-
* @returns {Array} The registered listeners.
|
|
16878
|
-
* @public
|
|
16879
|
-
*/
|
|
16880
|
-
EventEmitter.prototype.listeners = function listeners(event) {
|
|
16881
|
-
var evt = prefix ? prefix + event : event
|
|
16882
|
-
, handlers = this._events[evt];
|
|
16883
|
-
|
|
16884
|
-
if (!handlers) return [];
|
|
16885
|
-
if (handlers.fn) return [handlers.fn];
|
|
16886
|
-
|
|
16887
|
-
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
16888
|
-
ee[i] = handlers[i].fn;
|
|
16889
|
-
}
|
|
16890
|
-
|
|
16891
|
-
return ee;
|
|
16892
|
-
};
|
|
16893
|
-
|
|
16894
|
-
/**
|
|
16895
|
-
* Return the number of listeners listening to a given event.
|
|
16896
|
-
*
|
|
16897
|
-
* @param {(String|Symbol)} event The event name.
|
|
16898
|
-
* @returns {Number} The number of listeners.
|
|
16899
|
-
* @public
|
|
16900
|
-
*/
|
|
16901
|
-
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
16902
|
-
var evt = prefix ? prefix + event : event
|
|
16903
|
-
, listeners = this._events[evt];
|
|
16904
|
-
|
|
16905
|
-
if (!listeners) return 0;
|
|
16906
|
-
if (listeners.fn) return 1;
|
|
16907
|
-
return listeners.length;
|
|
16908
|
-
};
|
|
16909
|
-
|
|
16910
|
-
/**
|
|
16911
|
-
* Calls each of the listeners registered for a given event.
|
|
16912
|
-
*
|
|
16913
|
-
* @param {(String|Symbol)} event The event name.
|
|
16914
|
-
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
16915
|
-
* @public
|
|
16916
|
-
*/
|
|
16917
|
-
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
16918
|
-
var evt = prefix ? prefix + event : event;
|
|
16919
|
-
|
|
16920
|
-
if (!this._events[evt]) return false;
|
|
16921
|
-
|
|
16922
|
-
var listeners = this._events[evt]
|
|
16923
|
-
, len = arguments.length
|
|
16924
|
-
, args
|
|
16925
|
-
, i;
|
|
16926
|
-
|
|
16927
|
-
if (listeners.fn) {
|
|
16928
|
-
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
16929
|
-
|
|
16930
|
-
switch (len) {
|
|
16931
|
-
case 1: return listeners.fn.call(listeners.context), true;
|
|
16932
|
-
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
16933
|
-
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
16934
|
-
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
16935
|
-
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
16936
|
-
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
16937
|
-
}
|
|
16938
|
-
|
|
16939
|
-
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
16940
|
-
args[i - 1] = arguments[i];
|
|
16941
|
-
}
|
|
16942
|
-
|
|
16943
|
-
listeners.fn.apply(listeners.context, args);
|
|
16944
|
-
} else {
|
|
16945
|
-
var length = listeners.length
|
|
16946
|
-
, j;
|
|
16947
|
-
|
|
16948
|
-
for (i = 0; i < length; i++) {
|
|
16949
|
-
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
16950
|
-
|
|
16951
|
-
switch (len) {
|
|
16952
|
-
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
16953
|
-
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
16954
|
-
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
16955
|
-
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
16956
|
-
default:
|
|
16957
|
-
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
16958
|
-
args[j - 1] = arguments[j];
|
|
16959
|
-
}
|
|
16960
|
-
|
|
16961
|
-
listeners[i].fn.apply(listeners[i].context, args);
|
|
16962
|
-
}
|
|
16963
|
-
}
|
|
16964
|
-
}
|
|
16965
|
-
|
|
16966
|
-
return true;
|
|
16967
|
-
};
|
|
16968
|
-
|
|
16969
|
-
/**
|
|
16970
|
-
* Add a listener for a given event.
|
|
16971
|
-
*
|
|
16972
|
-
* @param {(String|Symbol)} event The event name.
|
|
16973
|
-
* @param {Function} fn The listener function.
|
|
16974
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
16975
|
-
* @returns {EventEmitter} `this`.
|
|
16976
|
-
* @public
|
|
16977
|
-
*/
|
|
16978
|
-
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
16979
|
-
return addListener(this, event, fn, context, false);
|
|
16980
|
-
};
|
|
16981
|
-
|
|
16982
|
-
/**
|
|
16983
|
-
* Add a one-time listener for a given event.
|
|
16984
|
-
*
|
|
16985
|
-
* @param {(String|Symbol)} event The event name.
|
|
16986
|
-
* @param {Function} fn The listener function.
|
|
16987
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
16988
|
-
* @returns {EventEmitter} `this`.
|
|
16989
|
-
* @public
|
|
16990
|
-
*/
|
|
16991
|
-
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
16992
|
-
return addListener(this, event, fn, context, true);
|
|
16993
|
-
};
|
|
16994
|
-
|
|
16995
|
-
/**
|
|
16996
|
-
* Remove the listeners of a given event.
|
|
16997
|
-
*
|
|
16998
|
-
* @param {(String|Symbol)} event The event name.
|
|
16999
|
-
* @param {Function} fn Only remove the listeners that match this function.
|
|
17000
|
-
* @param {*} context Only remove the listeners that have this context.
|
|
17001
|
-
* @param {Boolean} once Only remove one-time listeners.
|
|
17002
|
-
* @returns {EventEmitter} `this`.
|
|
17003
|
-
* @public
|
|
17004
|
-
*/
|
|
17005
|
-
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
17006
|
-
var evt = prefix ? prefix + event : event;
|
|
17007
|
-
|
|
17008
|
-
if (!this._events[evt]) return this;
|
|
17009
|
-
if (!fn) {
|
|
17010
|
-
clearEvent(this, evt);
|
|
17011
|
-
return this;
|
|
17012
|
-
}
|
|
17013
|
-
|
|
17014
|
-
var listeners = this._events[evt];
|
|
17015
|
-
|
|
17016
|
-
if (listeners.fn) {
|
|
17017
|
-
if (
|
|
17018
|
-
listeners.fn === fn &&
|
|
17019
|
-
(!once || listeners.once) &&
|
|
17020
|
-
(!context || listeners.context === context)
|
|
17021
|
-
) {
|
|
17022
|
-
clearEvent(this, evt);
|
|
17023
|
-
}
|
|
17024
|
-
} else {
|
|
17025
|
-
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
17026
|
-
if (
|
|
17027
|
-
listeners[i].fn !== fn ||
|
|
17028
|
-
(once && !listeners[i].once) ||
|
|
17029
|
-
(context && listeners[i].context !== context)
|
|
17030
|
-
) {
|
|
17031
|
-
events.push(listeners[i]);
|
|
17032
|
-
}
|
|
17033
|
-
}
|
|
17034
|
-
|
|
17035
|
-
//
|
|
17036
|
-
// Reset the array, or remove it completely if we have no more listeners.
|
|
17037
|
-
//
|
|
17038
|
-
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
17039
|
-
else clearEvent(this, evt);
|
|
17040
|
-
}
|
|
17041
|
-
|
|
17042
|
-
return this;
|
|
17043
|
-
};
|
|
17044
|
-
|
|
17045
|
-
/**
|
|
17046
|
-
* Remove all listeners, or those of the specified event.
|
|
17047
|
-
*
|
|
17048
|
-
* @param {(String|Symbol)} [event] The event name.
|
|
17049
|
-
* @returns {EventEmitter} `this`.
|
|
17050
|
-
* @public
|
|
17051
|
-
*/
|
|
17052
|
-
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
17053
|
-
var evt;
|
|
17054
|
-
|
|
17055
|
-
if (event) {
|
|
17056
|
-
evt = prefix ? prefix + event : event;
|
|
17057
|
-
if (this._events[evt]) clearEvent(this, evt);
|
|
17058
|
-
} else {
|
|
17059
|
-
this._events = new Events();
|
|
17060
|
-
this._eventsCount = 0;
|
|
17061
|
-
}
|
|
17062
|
-
|
|
17063
|
-
return this;
|
|
17064
|
-
};
|
|
17065
|
-
|
|
17066
|
-
//
|
|
17067
|
-
// Alias methods names because people roll like that.
|
|
17068
|
-
//
|
|
17069
|
-
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
17070
|
-
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
17071
|
-
|
|
17072
|
-
//
|
|
17073
|
-
// Expose the prefix.
|
|
17074
|
-
//
|
|
17075
|
-
EventEmitter.prefixed = prefix;
|
|
17076
|
-
|
|
17077
|
-
//
|
|
17078
|
-
// Allow `EventEmitter` to be imported as module namespace.
|
|
17079
|
-
//
|
|
17080
|
-
EventEmitter.EventEmitter = EventEmitter;
|
|
17081
|
-
|
|
17082
|
-
//
|
|
17083
|
-
// Expose the module.
|
|
17084
|
-
//
|
|
17085
|
-
{
|
|
17086
|
-
module.exports = EventEmitter;
|
|
17087
|
-
}
|
|
17088
|
-
} (eventemitter3));
|
|
17089
|
-
return eventemitter3.exports;
|
|
17090
|
-
}
|
|
17091
|
-
|
|
17092
|
-
var eventemitter3Exports = requireEventemitter3();
|
|
17093
|
-
var EventEmitter3 = /*@__PURE__*/getDefaultExportFromCjs$1(eventemitter3Exports);
|
|
17094
|
-
|
|
17095
16794
|
function n$2(n,t){if(!Object.prototype.hasOwnProperty.call(n,t))throw TypeError("attempted to use private field on non-instance");return n}var t$2=0;function s$3(n){return "__private_"+t$2+++"_"+n}var a$3=/*#__PURE__*/s$3("_wallet"),e$2=/*#__PURE__*/s$3("_account");let r$2 = class r{get standardWallet(){return n$2(this,a$3)[a$3]}get address(){return n$2(this,e$2)[e$2].address}async disconnect(){if(!n$2(this,a$3)[a$3].features["standard:disconnect"]?.disconnect)throw Error("Wallet does not support disconnect");await n$2(this,a$3)[a$3].features["standard:disconnect"].disconnect();}async signMessage(...t){if(!n$2(this,a$3)[a$3].features["solana:signMessage"]?.signMessage)throw Error("Wallet does not support signMessage");let s=await n$2(this,a$3)[a$3].features["solana:signMessage"].signMessage(...t.map((t=>({...t,account:n$2(this,e$2)[e$2]}))));return 1===t.length?s[0]:[...s]}async signTransaction(...t){if(!n$2(this,a$3)[a$3].features["solana:signTransaction"]?.signTransaction)throw Error("Wallet does not support signTransaction");let s=await n$2(this,a$3)[a$3].features["solana:signTransaction"].signTransaction(...t.map((t=>({...t,account:n$2(this,e$2)[e$2]}))));return 1===t.length?s[0]:[...s]}async signAndSendTransaction(...t){if(!n$2(this,a$3)[a$3].features["solana:signAndSendTransaction"]?.signAndSendTransaction)throw Error("Wallet does not support signAndSendTransaction");let s=await n$2(this,a$3)[a$3].features["solana:signAndSendTransaction"].signAndSendTransaction(...t.map((t=>({...t,account:n$2(this,e$2)[e$2]}))));return 1===t.length?s[0]:[...s]}async signAndSendAllTransactions(t){if(!n$2(this,a$3)[a$3].features["solana:signAndSendTransaction"]?.signAndSendTransaction)throw Error("Wallet does not support signAndSendTransaction");return [...await n$2(this,a$3)[a$3].features["solana:signAndSendTransaction"].signAndSendTransaction(...t.map((t=>({...t,account:n$2(this,e$2)[e$2]}))))]}constructor({wallet:t,account:s}){Object.defineProperty(this,a$3,{writable:true,value:void 0}),Object.defineProperty(this,e$2,{writable:true,value:void 0}),n$2(this,a$3)[a$3]=t,n$2(this,e$2)[e$2]=s;}};
|
|
17096
16795
|
|
|
17097
16796
|
// This file is autogenerated. It's used to publish ESM to npm.
|
|
@@ -21307,6 +21006,356 @@ function createSolanaRpcSubscriptionsFromTransport(transport) {
|
|
|
21307
21006
|
});
|
|
21308
21007
|
}
|
|
21309
21008
|
|
|
21009
|
+
var eventemitter3 = {exports: {}};
|
|
21010
|
+
|
|
21011
|
+
var hasRequiredEventemitter3;
|
|
21012
|
+
|
|
21013
|
+
function requireEventemitter3 () {
|
|
21014
|
+
if (hasRequiredEventemitter3) return eventemitter3.exports;
|
|
21015
|
+
hasRequiredEventemitter3 = 1;
|
|
21016
|
+
(function (module) {
|
|
21017
|
+
|
|
21018
|
+
var has = Object.prototype.hasOwnProperty
|
|
21019
|
+
, prefix = '~';
|
|
21020
|
+
|
|
21021
|
+
/**
|
|
21022
|
+
* Constructor to create a storage for our `EE` objects.
|
|
21023
|
+
* An `Events` instance is a plain object whose properties are event names.
|
|
21024
|
+
*
|
|
21025
|
+
* @constructor
|
|
21026
|
+
* @private
|
|
21027
|
+
*/
|
|
21028
|
+
function Events() {}
|
|
21029
|
+
|
|
21030
|
+
//
|
|
21031
|
+
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
21032
|
+
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
21033
|
+
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
21034
|
+
// character to make sure that the built-in object properties are not
|
|
21035
|
+
// overridden or used as an attack vector.
|
|
21036
|
+
//
|
|
21037
|
+
if (Object.create) {
|
|
21038
|
+
Events.prototype = Object.create(null);
|
|
21039
|
+
|
|
21040
|
+
//
|
|
21041
|
+
// This hack is needed because the `__proto__` property is still inherited in
|
|
21042
|
+
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
21043
|
+
//
|
|
21044
|
+
if (!new Events().__proto__) prefix = false;
|
|
21045
|
+
}
|
|
21046
|
+
|
|
21047
|
+
/**
|
|
21048
|
+
* Representation of a single event listener.
|
|
21049
|
+
*
|
|
21050
|
+
* @param {Function} fn The listener function.
|
|
21051
|
+
* @param {*} context The context to invoke the listener with.
|
|
21052
|
+
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
21053
|
+
* @constructor
|
|
21054
|
+
* @private
|
|
21055
|
+
*/
|
|
21056
|
+
function EE(fn, context, once) {
|
|
21057
|
+
this.fn = fn;
|
|
21058
|
+
this.context = context;
|
|
21059
|
+
this.once = once || false;
|
|
21060
|
+
}
|
|
21061
|
+
|
|
21062
|
+
/**
|
|
21063
|
+
* Add a listener for a given event.
|
|
21064
|
+
*
|
|
21065
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
21066
|
+
* @param {(String|Symbol)} event The event name.
|
|
21067
|
+
* @param {Function} fn The listener function.
|
|
21068
|
+
* @param {*} context The context to invoke the listener with.
|
|
21069
|
+
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
21070
|
+
* @returns {EventEmitter}
|
|
21071
|
+
* @private
|
|
21072
|
+
*/
|
|
21073
|
+
function addListener(emitter, event, fn, context, once) {
|
|
21074
|
+
if (typeof fn !== 'function') {
|
|
21075
|
+
throw new TypeError('The listener must be a function');
|
|
21076
|
+
}
|
|
21077
|
+
|
|
21078
|
+
var listener = new EE(fn, context || emitter, once)
|
|
21079
|
+
, evt = prefix ? prefix + event : event;
|
|
21080
|
+
|
|
21081
|
+
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
21082
|
+
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
21083
|
+
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
21084
|
+
|
|
21085
|
+
return emitter;
|
|
21086
|
+
}
|
|
21087
|
+
|
|
21088
|
+
/**
|
|
21089
|
+
* Clear event by name.
|
|
21090
|
+
*
|
|
21091
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
21092
|
+
* @param {(String|Symbol)} evt The Event name.
|
|
21093
|
+
* @private
|
|
21094
|
+
*/
|
|
21095
|
+
function clearEvent(emitter, evt) {
|
|
21096
|
+
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
21097
|
+
else delete emitter._events[evt];
|
|
21098
|
+
}
|
|
21099
|
+
|
|
21100
|
+
/**
|
|
21101
|
+
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
21102
|
+
* `EventEmitter` interface.
|
|
21103
|
+
*
|
|
21104
|
+
* @constructor
|
|
21105
|
+
* @public
|
|
21106
|
+
*/
|
|
21107
|
+
function EventEmitter() {
|
|
21108
|
+
this._events = new Events();
|
|
21109
|
+
this._eventsCount = 0;
|
|
21110
|
+
}
|
|
21111
|
+
|
|
21112
|
+
/**
|
|
21113
|
+
* Return an array listing the events for which the emitter has registered
|
|
21114
|
+
* listeners.
|
|
21115
|
+
*
|
|
21116
|
+
* @returns {Array}
|
|
21117
|
+
* @public
|
|
21118
|
+
*/
|
|
21119
|
+
EventEmitter.prototype.eventNames = function eventNames() {
|
|
21120
|
+
var names = []
|
|
21121
|
+
, events
|
|
21122
|
+
, name;
|
|
21123
|
+
|
|
21124
|
+
if (this._eventsCount === 0) return names;
|
|
21125
|
+
|
|
21126
|
+
for (name in (events = this._events)) {
|
|
21127
|
+
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
21128
|
+
}
|
|
21129
|
+
|
|
21130
|
+
if (Object.getOwnPropertySymbols) {
|
|
21131
|
+
return names.concat(Object.getOwnPropertySymbols(events));
|
|
21132
|
+
}
|
|
21133
|
+
|
|
21134
|
+
return names;
|
|
21135
|
+
};
|
|
21136
|
+
|
|
21137
|
+
/**
|
|
21138
|
+
* Return the listeners registered for a given event.
|
|
21139
|
+
*
|
|
21140
|
+
* @param {(String|Symbol)} event The event name.
|
|
21141
|
+
* @returns {Array} The registered listeners.
|
|
21142
|
+
* @public
|
|
21143
|
+
*/
|
|
21144
|
+
EventEmitter.prototype.listeners = function listeners(event) {
|
|
21145
|
+
var evt = prefix ? prefix + event : event
|
|
21146
|
+
, handlers = this._events[evt];
|
|
21147
|
+
|
|
21148
|
+
if (!handlers) return [];
|
|
21149
|
+
if (handlers.fn) return [handlers.fn];
|
|
21150
|
+
|
|
21151
|
+
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
21152
|
+
ee[i] = handlers[i].fn;
|
|
21153
|
+
}
|
|
21154
|
+
|
|
21155
|
+
return ee;
|
|
21156
|
+
};
|
|
21157
|
+
|
|
21158
|
+
/**
|
|
21159
|
+
* Return the number of listeners listening to a given event.
|
|
21160
|
+
*
|
|
21161
|
+
* @param {(String|Symbol)} event The event name.
|
|
21162
|
+
* @returns {Number} The number of listeners.
|
|
21163
|
+
* @public
|
|
21164
|
+
*/
|
|
21165
|
+
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
21166
|
+
var evt = prefix ? prefix + event : event
|
|
21167
|
+
, listeners = this._events[evt];
|
|
21168
|
+
|
|
21169
|
+
if (!listeners) return 0;
|
|
21170
|
+
if (listeners.fn) return 1;
|
|
21171
|
+
return listeners.length;
|
|
21172
|
+
};
|
|
21173
|
+
|
|
21174
|
+
/**
|
|
21175
|
+
* Calls each of the listeners registered for a given event.
|
|
21176
|
+
*
|
|
21177
|
+
* @param {(String|Symbol)} event The event name.
|
|
21178
|
+
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
21179
|
+
* @public
|
|
21180
|
+
*/
|
|
21181
|
+
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
21182
|
+
var evt = prefix ? prefix + event : event;
|
|
21183
|
+
|
|
21184
|
+
if (!this._events[evt]) return false;
|
|
21185
|
+
|
|
21186
|
+
var listeners = this._events[evt]
|
|
21187
|
+
, len = arguments.length
|
|
21188
|
+
, args
|
|
21189
|
+
, i;
|
|
21190
|
+
|
|
21191
|
+
if (listeners.fn) {
|
|
21192
|
+
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
21193
|
+
|
|
21194
|
+
switch (len) {
|
|
21195
|
+
case 1: return listeners.fn.call(listeners.context), true;
|
|
21196
|
+
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
21197
|
+
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
21198
|
+
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
21199
|
+
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
21200
|
+
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
21201
|
+
}
|
|
21202
|
+
|
|
21203
|
+
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
21204
|
+
args[i - 1] = arguments[i];
|
|
21205
|
+
}
|
|
21206
|
+
|
|
21207
|
+
listeners.fn.apply(listeners.context, args);
|
|
21208
|
+
} else {
|
|
21209
|
+
var length = listeners.length
|
|
21210
|
+
, j;
|
|
21211
|
+
|
|
21212
|
+
for (i = 0; i < length; i++) {
|
|
21213
|
+
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
21214
|
+
|
|
21215
|
+
switch (len) {
|
|
21216
|
+
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
21217
|
+
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
21218
|
+
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
21219
|
+
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
21220
|
+
default:
|
|
21221
|
+
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
21222
|
+
args[j - 1] = arguments[j];
|
|
21223
|
+
}
|
|
21224
|
+
|
|
21225
|
+
listeners[i].fn.apply(listeners[i].context, args);
|
|
21226
|
+
}
|
|
21227
|
+
}
|
|
21228
|
+
}
|
|
21229
|
+
|
|
21230
|
+
return true;
|
|
21231
|
+
};
|
|
21232
|
+
|
|
21233
|
+
/**
|
|
21234
|
+
* Add a listener for a given event.
|
|
21235
|
+
*
|
|
21236
|
+
* @param {(String|Symbol)} event The event name.
|
|
21237
|
+
* @param {Function} fn The listener function.
|
|
21238
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
21239
|
+
* @returns {EventEmitter} `this`.
|
|
21240
|
+
* @public
|
|
21241
|
+
*/
|
|
21242
|
+
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
21243
|
+
return addListener(this, event, fn, context, false);
|
|
21244
|
+
};
|
|
21245
|
+
|
|
21246
|
+
/**
|
|
21247
|
+
* Add a one-time listener for a given event.
|
|
21248
|
+
*
|
|
21249
|
+
* @param {(String|Symbol)} event The event name.
|
|
21250
|
+
* @param {Function} fn The listener function.
|
|
21251
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
21252
|
+
* @returns {EventEmitter} `this`.
|
|
21253
|
+
* @public
|
|
21254
|
+
*/
|
|
21255
|
+
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
21256
|
+
return addListener(this, event, fn, context, true);
|
|
21257
|
+
};
|
|
21258
|
+
|
|
21259
|
+
/**
|
|
21260
|
+
* Remove the listeners of a given event.
|
|
21261
|
+
*
|
|
21262
|
+
* @param {(String|Symbol)} event The event name.
|
|
21263
|
+
* @param {Function} fn Only remove the listeners that match this function.
|
|
21264
|
+
* @param {*} context Only remove the listeners that have this context.
|
|
21265
|
+
* @param {Boolean} once Only remove one-time listeners.
|
|
21266
|
+
* @returns {EventEmitter} `this`.
|
|
21267
|
+
* @public
|
|
21268
|
+
*/
|
|
21269
|
+
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
21270
|
+
var evt = prefix ? prefix + event : event;
|
|
21271
|
+
|
|
21272
|
+
if (!this._events[evt]) return this;
|
|
21273
|
+
if (!fn) {
|
|
21274
|
+
clearEvent(this, evt);
|
|
21275
|
+
return this;
|
|
21276
|
+
}
|
|
21277
|
+
|
|
21278
|
+
var listeners = this._events[evt];
|
|
21279
|
+
|
|
21280
|
+
if (listeners.fn) {
|
|
21281
|
+
if (
|
|
21282
|
+
listeners.fn === fn &&
|
|
21283
|
+
(!once || listeners.once) &&
|
|
21284
|
+
(!context || listeners.context === context)
|
|
21285
|
+
) {
|
|
21286
|
+
clearEvent(this, evt);
|
|
21287
|
+
}
|
|
21288
|
+
} else {
|
|
21289
|
+
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
21290
|
+
if (
|
|
21291
|
+
listeners[i].fn !== fn ||
|
|
21292
|
+
(once && !listeners[i].once) ||
|
|
21293
|
+
(context && listeners[i].context !== context)
|
|
21294
|
+
) {
|
|
21295
|
+
events.push(listeners[i]);
|
|
21296
|
+
}
|
|
21297
|
+
}
|
|
21298
|
+
|
|
21299
|
+
//
|
|
21300
|
+
// Reset the array, or remove it completely if we have no more listeners.
|
|
21301
|
+
//
|
|
21302
|
+
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
21303
|
+
else clearEvent(this, evt);
|
|
21304
|
+
}
|
|
21305
|
+
|
|
21306
|
+
return this;
|
|
21307
|
+
};
|
|
21308
|
+
|
|
21309
|
+
/**
|
|
21310
|
+
* Remove all listeners, or those of the specified event.
|
|
21311
|
+
*
|
|
21312
|
+
* @param {(String|Symbol)} [event] The event name.
|
|
21313
|
+
* @returns {EventEmitter} `this`.
|
|
21314
|
+
* @public
|
|
21315
|
+
*/
|
|
21316
|
+
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
21317
|
+
var evt;
|
|
21318
|
+
|
|
21319
|
+
if (event) {
|
|
21320
|
+
evt = prefix ? prefix + event : event;
|
|
21321
|
+
if (this._events[evt]) clearEvent(this, evt);
|
|
21322
|
+
} else {
|
|
21323
|
+
this._events = new Events();
|
|
21324
|
+
this._eventsCount = 0;
|
|
21325
|
+
}
|
|
21326
|
+
|
|
21327
|
+
return this;
|
|
21328
|
+
};
|
|
21329
|
+
|
|
21330
|
+
//
|
|
21331
|
+
// Alias methods names because people roll like that.
|
|
21332
|
+
//
|
|
21333
|
+
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
21334
|
+
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
21335
|
+
|
|
21336
|
+
//
|
|
21337
|
+
// Expose the prefix.
|
|
21338
|
+
//
|
|
21339
|
+
EventEmitter.prefixed = prefix;
|
|
21340
|
+
|
|
21341
|
+
//
|
|
21342
|
+
// Allow `EventEmitter` to be imported as module namespace.
|
|
21343
|
+
//
|
|
21344
|
+
EventEmitter.EventEmitter = EventEmitter;
|
|
21345
|
+
|
|
21346
|
+
//
|
|
21347
|
+
// Expose the module.
|
|
21348
|
+
//
|
|
21349
|
+
{
|
|
21350
|
+
module.exports = EventEmitter;
|
|
21351
|
+
}
|
|
21352
|
+
} (eventemitter3));
|
|
21353
|
+
return eventemitter3.exports;
|
|
21354
|
+
}
|
|
21355
|
+
|
|
21356
|
+
var eventemitter3Exports = requireEventemitter3();
|
|
21357
|
+
var EventEmitter = /*@__PURE__*/getDefaultExportFromCjs$1(eventemitter3Exports);
|
|
21358
|
+
|
|
21310
21359
|
/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
21311
21360
|
function isBytes$1(a) {
|
|
21312
21361
|
return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');
|
|
@@ -21643,9 +21692,9 @@ const genBase58 = /* @__NO_SIDE_EFFECTS__ */ (abc) => chain(radix(58), alphabet$
|
|
|
21643
21692
|
*/
|
|
21644
21693
|
const base58$1 = genBase58('123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
|
|
21645
21694
|
|
|
21646
|
-
const x$7=e=>e instanceof o$8?e:e?.code?new O$6(e):new o$8("Unknown connector error",e);let S$5 = class S extends i$6{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n;}};let O$6 = class O extends S$5{constructor(t){super(t.message,t.code,t.data);let n=Object.values(n$3).find((e=>e.eipCode===t.code));this.details=n||n$3.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=n$3.E32002_CONNECTION_ALREADY_PENDING:this.details=n$3.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=n$3.E32002_WALLET_LOCKED));}};let R$4 = class R{get(e){let t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){ void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e);}del(e){localStorage.removeItem(e);}getKeys(){return Object.entries(localStorage).map((([e])=>e))}};var v$7="undefined"!=typeof window&&window.localStorage?new R$4:new class{get(e){return this._cache[e]}put(e,t){ void 0!==t?this._cache[e]=t:this.del(e);}del(e){delete this._cache[e];}getKeys(){return Object.keys(this._cache)}constructor(){this._cache={};}};let N$8 = class N extends
|
|
21695
|
+
const x$7=e=>e instanceof o$8?e:e?.code?new O$6(e):new o$8("Unknown connector error",e);let S$5 = class S extends i$6{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n;}};let O$6 = class O extends S$5{constructor(t){super(t.message,t.code,t.data);let n=Object.values(n$3).find((e=>e.eipCode===t.code));this.details=n||n$3.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=n$3.E32002_CONNECTION_ALREADY_PENDING:this.details=n$3.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=n$3.E32002_WALLET_LOCKED));}};let R$4 = class R{get(e){let t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){ void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e);}del(e){localStorage.removeItem(e);}getKeys(){return Object.entries(localStorage).map((([e])=>e))}};var v$7="undefined"!=typeof window&&window.localStorage?new R$4:new class{get(e){return this._cache[e]}put(e,t){ void 0!==t?this._cache[e]=t:this.del(e);}del(e){delete this._cache[e];}getKeys(){return Object.keys(this._cache)}constructor(){this._cache={};}};let N$8 = class N extends EventEmitter{constructor(e){super(),this.walletClientType=e,this.connected=false,this.initialized=false;}};const I$4=()=>{let e=v$7.get(S$6);return e&&Array.isArray(e)&&e.map((e=>(e=>e&&"string"==typeof e.address&&"string"==typeof e.connectorType&&"string"==typeof e.walletClientType&&"number"==typeof e.connectedAt)(e))).every(Boolean)?e:[]};let j$7=["phantom","glow","solflare","backpack","okx_wallet","walletconnect","mobile_wallet_adapter","jupiter"];function W$5(e){return e.toLowerCase().split(" ").join("_")}let F$1 = class F extends N$8{get isInstalled(){return true}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((e=>({type:"solana",provider:new r$2({wallet:this._wallet,account:e}),address:e.address,connectedAt:Date.now(),walletClientType:this._wallet.name,connectorType:this.connectorType,imported:false,meta:{name:this._wallet.name,id:this._wallet.name,icon:this._wallet.icon},isConnected:async()=>this._wallet.accounts.length>0,disconnect:async()=>{await this.disconnect();}})))}async syncAccounts(){this.wallets=this.buildConnectedWallet(),this.emit("walletsUpdated");}get walletBranding(){return {id:L$6(this.wallet)?"walletconnect_solana":this.wallet.name,name:this.wallet.name,icon:this.wallet.icon}}async initialize(){this.subscribeListeners(),await this.syncAccounts(),this.shouldAttemptAutoConnect()&&(await(this.wallet.features["standard:connect"]?.connect({silent:true}).catch((()=>{}))),await this.isConnected()&&await this.syncAccounts()),this.initialized=true,this.emit("initialized");}async connect(e){if(e.showPrompt)try{await this.promptConnection();}catch(e){if(0===this._wallet.accounts.length)throw new T$6;throw e}if(!await this.isConnected())throw new T$6;return await this.syncAccounts(),this.getConnectedWallet()}async getConnectedWallet(){return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt))[0]||null}async isConnected(){return this._wallet.accounts.length>0}subscribeListeners(){this._unsubscribeListeners=this.wallet.features["standard:events"]?.on("change",this.onChange);}unsubscribeListeners(){this._unsubscribeListeners?.();}shouldAttemptAutoConnect(){return !(!this.autoConnectEnabled||!j$7.includes(this.walletClientType))&&("phantom"!==this.walletClientType&&"metamask"!==this.walletClientType.toLowerCase()||I$4().some((({walletClientType:e})=>"phantom"===e||"metamask"===e.toLowerCase())))}constructor(e,t){super(W$5(L$6(e)?"walletconnect_solana":e.name)),this.chainType="solana",this.connectorType="solana_adapter",this.disconnect=async()=>{await(this.wallet.features["standard:disconnect"]?.disconnect().catch((e=>console.error("Error disconnecting",e)))),await this.syncAccounts();},this.promptConnection=async()=>{try{await(this.wallet.features["standard:connect"]?.connect());}catch(e){throw x$7(e)}},this.onChange=()=>{this.syncAccounts();},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[];}};function L$6(e){return "isWalletConnectSolana"in e&&e.isWalletConnectSolana}const _$4="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAHdElNRQfoDAIVODUC+w+GAAAGsUlEQVRYw6WXbYwWVxXHf+fOLAtCXYS2QJdIaClipGCTknXXNqBQMVHbfmhItH4Aral+IAEaG03UxJgYKQJGTUxtDWjaxDSNtcZqIGDwpRuW1oYiVqpdpZSlpC3qysu+PHPP3w/3mXnmeXZbPzjJZO7cefn/z/mfe865xlscq3dGDIguGiHLaMQVLja4s87FShcLo5jtApdddnHexUmHIy475JmdUkPRAQMu7gzT4ljnxJpdk0QPmMFkyAKN2OfOFpc2uuh1J3MZDrjAvXmVEQUuoosRxw642FcEG7IoDxiFxNiu8NYE+vcUYIFYRKKs113bXWx2Z34CoQZsVHOiCZ7mopdzdsFhv8NexEgRDHMxUSNREbh1bwNZwBsFblmfu/a4a6AEENYO5i3AOoEWeEUCF4MOOxBDMQAOk99OJALA2u80sBCwWGBZWG/yRwMaCAbBIAsQTJT3gea1OWfNeaPzvjoHEI85rA8ObtB1v7cIdJkIHgkh9AXpocy0LJjIKvB2wPpZB0v3wkrw5jdNEjeYeMhFX3BAyfn2ke9NUrgB9LrrcZcGJFCld4fWNddXbvbWfWzGR6xJFZsBGh0cBh3bBIxIEGTQ3W0h4NuDaSAzyAxCmGq11Vzf5uaa1aG8p+WFtrEYQGwvjICJkAEqvC+YNmcmMlMNvEaCdrcbyUvQAWDTjVuESHObM6cPGWHmzDwLaEtmzG9Z3qF1zUpXmuuZBb1z4bqeNC6f0WE1NtUTwHzEloiy3BvFisy0sYoLlQtT6XW15md2Qf9SY+2Ngfdca/TMSm/9ewz+/Boc/It45h/i4kSTsKw90SQJsPTvjSZbkWemDW7qTRZ0JEYJWSKxZJ7xmf6M224MzMzbX1s8F1YugjtvMg6eErt/4/z1jUrz1rXUKxnZC2zIg2mdBTK1mFUOKC1fOt/48kdzVixIz86Nij+eEacvpJWyZJ5xy7th8VzjjpuMJfMCW58QL73ekXPVlhsyE+vyzFiplJyauEIyrGIquruMq7qTxk+dcB495rzyTzFepCUWLIFv/kBg081Gd55WUk1IDGFTS89K++TDYxddzKnWcbluHd450xgdh7EGrOo1rr868PMTzqWJRGZ2d8oB/xpL33Xnxl2rjeNn4blXRXduzJ4B5y+28kWscAwXl+yeR654FFZPHoUb710YuPeDOUdPO48di1xptKpeEeHqOcYXNwQKGd88EDk3mqxtxPSfGRlsXRtYt8z4ytPOH/7eqpg1Aso7fYKgK4NPrMpYvsC4/poMA34yVJIQC3sCD9yecdsNyaV5yPj6ryJnR1PAvSNP4J+/1cgDfLbfePaMGGtM7Qdyl12WmKOmXgKKAp54vmBRTxfLrjE+tSYjBPjRM5FrrzIeuD2jf2lLzw8vN4JlfPVp581LsO1DgXv7jSzAiXPw/d+JiYLpjsu26Yfjf5O0rF5WoxsNT9G/bX0XKxakmPjlSee6HlizJJXSX7/oRDc+vjKR+f2wODcKd78/gR8/C9uedF44myJxmhh4OY/ipMQyqaWxmjn95TfEroMFOzbkvG+RceeqViPx1Aln1yEnOow1AnffHCpJAJ5/Vex4UvzptZRdY/O/1dJIS/NkcNmR6MTYah6qzseA4TfFtw4UvHBW1bc/O+7sPhwZHYf/jMODh5yfPudVbXj2TAJ/8XxrOZagNamj4Ei2/GNfuyRxh8t6BG2l15up+MIVODEiFr8rcPS0+O6RBF6mrrEGHHtFzOo2Lo7Dl37hvPQ6mNV6R9JYKgnYWcE37K5HlE2OT/5A0udaPUBHH+BQOMzuNsYLuDyZflTW+fTcmJFDHhJhaZqewMuewXDxcDR9IYyPN6Jj+6K4MF2vV8qBtZJScqVRNi6lpGONVJis5mpKi1WbgwsY+zIsBpcR8mzIZfuTRVZrtdu9odrptR/Xx5XONXJqBmCN0P6YMUQq9WJiwt0Je102WHdbpxSqydMObBWYdwDWLVcqcIMYe3NPjg0Ht84od0Ajju1w2XCr9e6QoqM9V23ZtnmI6cfAMMb9AY0YEHdb6oobEh4y3H3Ize6LsmGvN5IdUnhttdQ9UVrfLk/ljWEZ9wXsqAdQk1EA+O22GcgdZTke/bAs3OPY4HSdcB20HhvVtTMu0jmI8ekAhz2IICj2hKpNqI60NcuIRUHEej1quzubXa2tmZhenrfZmv3YYQ9ipDAIgvHptmblccuDjdRcmjFpWbDi/9ycZjZkRbk5jYztai/AUwiUx+qdEQB/m+25i9lxyvbcjrg45Lmd0uT/3p7/Fw6ODf+WO019AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDI0LTEyLTAyVDIxOjU2OjQ4KzAwOjAwMVpslgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNC0xMi0wMlQyMTo1Njo0OCswMDowMEAH1CoAAAAodEVYdGRhdGU6dGltZXN0YW1wADIwMjQtMTItMDJUMjE6NTY6NTMrMDA6MDDZv6GRAAAAAElFTkSuQmCC";({[t$6.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[e$5.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[t$5.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[t$4.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[o$7.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[o$6.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[e$e.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[e$d.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[a$4.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[t$a.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[t$b.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[r$4.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"});
|
|
21647
21696
|
|
|
21648
|
-
const P$7=["solana:mainnet","solana:devnet","solana:testnet"];function C$5(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var U$4=0,D$3="__private_"+U$4+++"__implementation";function N$7(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var B$4=0;function R$3(e){return "__private_"+B$4+++"_"+e}var x$6=/*#__PURE__*/R$3("_address"),L$5=/*#__PURE__*/R$3("_publicKey"),V$5=/*#__PURE__*/R$3("_chains"),Q$3=/*#__PURE__*/R$3("_features"),G$6=/*#__PURE__*/R$3("_label"),K$4=/*#__PURE__*/R$3("_icon");let J$6 = class J{get address(){return N$7(this,x$6)[x$6]}get publicKey(){return N$7(this,L$5)[L$5].slice()}get chains(){return N$7(this,V$5)[V$5].slice()}get features(){return N$7(this,Q$3)[Q$3].slice()}get label(){return N$7(this,G$6)[G$6]}get icon(){return N$7(this,K$4)[K$4]}constructor({address:e,publicKey:n,label:t,icon:a}){Object.defineProperty(this,x$6,{writable:true,value:void 0}),Object.defineProperty(this,L$5,{writable:true,value:void 0}),Object.defineProperty(this,V$5,{writable:true,value:void 0}),Object.defineProperty(this,Q$3,{writable:true,value:void 0}),Object.defineProperty(this,G$6,{writable:true,value:void 0}),Object.defineProperty(this,K$4,{writable:true,value:void 0}),N$7(this,x$6)[x$6]=e,N$7(this,L$5)[L$5]=n,N$7(this,V$5)[V$5]=P$7,N$7(this,G$6)[G$6]=t,N$7(this,K$4)[K$4]=a,N$7(this,Q$3)[Q$3]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===J&&Object.freeze(this);}};function Y$4(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var k$5=0;function H$3(e){return "__private_"+k$5+++"_"+e}var Z$2=/*#__PURE__*/H$3("_listeners"),z$7=/*#__PURE__*/H$3("_version"),q$2=/*#__PURE__*/H$3("_name"),X$4=/*#__PURE__*/H$3("_icon"),$$5=/*#__PURE__*/H$3("_injection"),ee$4=/*#__PURE__*/H$3("_isPrivyWallet"),ne$3=/*#__PURE__*/H$3("_accounts"),te$4=/*#__PURE__*/H$3("_on"),ae$3=/*#__PURE__*/H$3("_emit"),se$3=/*#__PURE__*/H$3("_off"),ie$3=/*#__PURE__*/H$3("_connected"),re$3=/*#__PURE__*/H$3("_connect"),oe$4=/*#__PURE__*/H$3("_disconnect"),ce$3=/*#__PURE__*/H$3("_signMessage"),le$4=/*#__PURE__*/H$3("_signAndSendTransaction"),de$4=/*#__PURE__*/H$3("_signTransaction");function ue$
|
|
21697
|
+
const P$7=["solana:mainnet","solana:devnet","solana:testnet"];function C$5(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var U$4=0,D$3="__private_"+U$4+++"__implementation";function N$7(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var B$4=0;function R$3(e){return "__private_"+B$4+++"_"+e}var x$6=/*#__PURE__*/R$3("_address"),L$5=/*#__PURE__*/R$3("_publicKey"),V$5=/*#__PURE__*/R$3("_chains"),Q$3=/*#__PURE__*/R$3("_features"),G$6=/*#__PURE__*/R$3("_label"),K$4=/*#__PURE__*/R$3("_icon");let J$6 = class J{get address(){return N$7(this,x$6)[x$6]}get publicKey(){return N$7(this,L$5)[L$5].slice()}get chains(){return N$7(this,V$5)[V$5].slice()}get features(){return N$7(this,Q$3)[Q$3].slice()}get label(){return N$7(this,G$6)[G$6]}get icon(){return N$7(this,K$4)[K$4]}constructor({address:e,publicKey:n,label:t,icon:a}){Object.defineProperty(this,x$6,{writable:true,value:void 0}),Object.defineProperty(this,L$5,{writable:true,value:void 0}),Object.defineProperty(this,V$5,{writable:true,value:void 0}),Object.defineProperty(this,Q$3,{writable:true,value:void 0}),Object.defineProperty(this,G$6,{writable:true,value:void 0}),Object.defineProperty(this,K$4,{writable:true,value:void 0}),N$7(this,x$6)[x$6]=e,N$7(this,L$5)[L$5]=n,N$7(this,V$5)[V$5]=P$7,N$7(this,G$6)[G$6]=t,N$7(this,K$4)[K$4]=a,N$7(this,Q$3)[Q$3]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===J&&Object.freeze(this);}};function Y$4(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var k$5=0;function H$3(e){return "__private_"+k$5+++"_"+e}var Z$2=/*#__PURE__*/H$3("_listeners"),z$7=/*#__PURE__*/H$3("_version"),q$2=/*#__PURE__*/H$3("_name"),X$4=/*#__PURE__*/H$3("_icon"),$$5=/*#__PURE__*/H$3("_injection"),ee$4=/*#__PURE__*/H$3("_isPrivyWallet"),ne$3=/*#__PURE__*/H$3("_accounts"),te$4=/*#__PURE__*/H$3("_on"),ae$3=/*#__PURE__*/H$3("_emit"),se$3=/*#__PURE__*/H$3("_off"),ie$3=/*#__PURE__*/H$3("_connected"),re$3=/*#__PURE__*/H$3("_connect"),oe$4=/*#__PURE__*/H$3("_disconnect"),ce$3=/*#__PURE__*/H$3("_signMessage"),le$4=/*#__PURE__*/H$3("_signAndSendTransaction"),de$4=/*#__PURE__*/H$3("_signTransaction");function ue$3(e,...n){Y$4(this,Z$2)[Z$2][e]?.forEach((e=>e.apply(null,n)));}function ge$5(e,n){Y$4(this,Z$2)[Z$2][e]=Y$4(this,Z$2)[Z$2][e]?.filter((e=>n!==e));}let we$5=new class extends EventEmitter{setImplementation(e){C$5(this,D$3)[D$3]=e;}async signMessage(e){return C$5(this,D$3)[D$3].signMessage(e)}async signAndSendTransaction(e){return C$5(this,D$3)[D$3].signAndSendTransaction(e)}async signTransaction(e){return C$5(this,D$3)[D$3].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,D$3,{writable:true,value:void 0}),C$5(this,D$3)[D$3]=e;}}({signTransaction:N$a("signTransaction was not injected"),signAndSendTransaction:N$a("signAndSendTransaction was not injected"),signMessage:N$a("signMessage was not injected")});new class{get version(){return Y$4(this,z$7)[z$7]}get name(){return Y$4(this,q$2)[q$2]}get icon(){return Y$4(this,X$4)[X$4]}get chains(){return P$7.slice()}get features(){return {"standard:connect":{version:"1.0.0",connect:Y$4(this,re$3)[re$3]},"standard:disconnect":{version:"1.0.0",disconnect:Y$4(this,oe$4)[oe$4]},"standard:events":{version:"1.0.0",on:Y$4(this,te$4)[te$4]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:Y$4(this,le$4)[le$4]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:Y$4(this,de$4)[de$4]},"solana:signMessage":{version:"1.0.0",signMessage:Y$4(this,ce$3)[ce$3]},"privy:":{privy:{signMessage:Y$4(this,$$5)[$$5].signMessage,signTransaction:Y$4(this,$$5)[$$5].signTransaction,signAndSendTransaction:Y$4(this,$$5)[$$5].signAndSendTransaction}}}}get accounts(){return Y$4(this,ne$3)[ne$3].slice()}get isPrivyWallet(){return Y$4(this,ee$4)[ee$4]}constructor({name:e,icon:n,version:t,injection:a,wallets:s}){Object.defineProperty(this,ae$3,{value:ue$3}),Object.defineProperty(this,se$3,{value:ge$5}),Object.defineProperty(this,Z$2,{writable:true,value:void 0}),Object.defineProperty(this,z$7,{writable:true,value:void 0}),Object.defineProperty(this,q$2,{writable:true,value:void 0}),Object.defineProperty(this,X$4,{writable:true,value:void 0}),Object.defineProperty(this,$$5,{writable:true,value:void 0}),Object.defineProperty(this,ee$4,{writable:true,value:void 0}),Object.defineProperty(this,ne$3,{writable:true,value:void 0}),Object.defineProperty(this,te$4,{writable:true,value:void 0}),Object.defineProperty(this,ie$3,{writable:true,value:void 0}),Object.defineProperty(this,re$3,{writable:true,value:void 0}),Object.defineProperty(this,oe$4,{writable:true,value:void 0}),Object.defineProperty(this,ce$3,{writable:true,value:void 0}),Object.defineProperty(this,le$4,{writable:true,value:void 0}),Object.defineProperty(this,de$4,{writable:true,value:void 0}),Y$4(this,Z$2)[Z$2]={},Y$4(this,te$4)[te$4]=(e,n)=>(Y$4(this,Z$2)[Z$2][e]?.push(n)||(Y$4(this,Z$2)[Z$2][e]=[n]),()=>Y$4(this,se$3)[se$3](e,n)),Y$4(this,ie$3)[ie$3]=e=>{null!=e&&(Y$4(this,ne$3)[ne$3]=e.map((({address:e})=>new J$6({address:e,publicKey:base58$1.decode(e)})))),Y$4(this,ae$3)[ae$3]("change",{accounts:this.accounts});},Y$4(this,re$3)[re$3]=async()=>(Y$4(this,ae$3)[ae$3]("change",{accounts:this.accounts}),{accounts:this.accounts}),Y$4(this,oe$4)[oe$4]=async()=>{Y$4(this,ae$3)[ae$3]("change",{accounts:this.accounts});},Y$4(this,ce$3)[ce$3]=async(...e)=>{let n=[];for(let{account:t,...a}of e){let{signature:e}=await Y$4(this,$$5)[$$5].signMessage({...a,address:t.address});n.push({signedMessage:a.message,signature:e});}return n},Y$4(this,le$4)[le$4]=async(...e)=>{let n=[];for(let t of e){let{signature:e}=await Y$4(this,$$5)[$$5].signAndSendTransaction({...t,transaction:t.transaction,address:t.account.address,chain:t.chain||"solana:mainnet",options:t.options});n.push({signature:e});}return n},Y$4(this,de$4)[de$4]=async(...e)=>{let n=[];for(let{transaction:t,account:a,options:s,chain:i}of e){let{signedTransaction:e}=await Y$4(this,$$5)[$$5].signTransaction({transaction:t,address:a.address,chain:i||"solana:mainnet",options:s});n.push({signedTransaction:e});}return n},Y$4(this,q$2)[q$2]=e,Y$4(this,X$4)[X$4]=n,Y$4(this,z$7)[z$7]=t,Y$4(this,$$5)[$$5]=a,Y$4(this,ne$3)[ne$3]=[],Y$4(this,ee$4)[ee$4]=true,a.on("accountChanged",Y$4(this,ie$3)[ie$3],this),Y$4(this,ie$3)[ie$3](s);}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:we$5});
|
|
21649
21698
|
|
|
21650
21699
|
var __classPrivateFieldGet$1 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
21651
21700
|
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
@@ -22267,7 +22316,7 @@ function requireEvents () {
|
|
|
22267
22316
|
var eventsExports = requireEvents();
|
|
22268
22317
|
var xe$3 = /*@__PURE__*/getDefaultExportFromCjs$1(eventsExports);
|
|
22269
22318
|
|
|
22270
|
-
var cjs$
|
|
22319
|
+
var cjs$4 = {};
|
|
22271
22320
|
|
|
22272
22321
|
/******************************************************************************
|
|
22273
22322
|
Copyright (c) Microsoft Corporation.
|
|
@@ -22916,11 +22965,11 @@ function requireTypes () {
|
|
|
22916
22965
|
return types;
|
|
22917
22966
|
}
|
|
22918
22967
|
|
|
22919
|
-
var hasRequiredCjs$
|
|
22968
|
+
var hasRequiredCjs$4;
|
|
22920
22969
|
|
|
22921
|
-
function requireCjs$
|
|
22922
|
-
if (hasRequiredCjs$
|
|
22923
|
-
hasRequiredCjs$
|
|
22970
|
+
function requireCjs$4 () {
|
|
22971
|
+
if (hasRequiredCjs$4) return cjs$4;
|
|
22972
|
+
hasRequiredCjs$4 = 1;
|
|
22924
22973
|
(function (exports$1) {
|
|
22925
22974
|
Object.defineProperty(exports$1, "__esModule", { value: true });
|
|
22926
22975
|
const tslib_1 = require$$0;
|
|
@@ -22929,11 +22978,11 @@ function requireCjs$3 () {
|
|
|
22929
22978
|
tslib_1.__exportStar(requireTypes(), exports$1);
|
|
22930
22979
|
tslib_1.__exportStar(requireConstants(), exports$1);
|
|
22931
22980
|
|
|
22932
|
-
} (cjs$
|
|
22933
|
-
return cjs$
|
|
22981
|
+
} (cjs$4));
|
|
22982
|
+
return cjs$4;
|
|
22934
22983
|
}
|
|
22935
22984
|
|
|
22936
|
-
var cjsExports$3 = requireCjs$
|
|
22985
|
+
var cjsExports$3 = requireCjs$4();
|
|
22937
22986
|
|
|
22938
22987
|
class IEvents {
|
|
22939
22988
|
}
|
|
@@ -24438,15 +24487,15 @@ function createVersionParts(count) {
|
|
|
24438
24487
|
return output;
|
|
24439
24488
|
}
|
|
24440
24489
|
|
|
24441
|
-
var cjs$
|
|
24490
|
+
var cjs$3 = {};
|
|
24442
24491
|
|
|
24443
|
-
var hasRequiredCjs$
|
|
24492
|
+
var hasRequiredCjs$3;
|
|
24444
24493
|
|
|
24445
|
-
function requireCjs$
|
|
24446
|
-
if (hasRequiredCjs$
|
|
24447
|
-
hasRequiredCjs$
|
|
24448
|
-
Object.defineProperty(cjs$
|
|
24449
|
-
cjs$
|
|
24494
|
+
function requireCjs$3 () {
|
|
24495
|
+
if (hasRequiredCjs$3) return cjs$3;
|
|
24496
|
+
hasRequiredCjs$3 = 1;
|
|
24497
|
+
Object.defineProperty(cjs$3, "__esModule", { value: true });
|
|
24498
|
+
cjs$3.getLocalStorage = cjs$3.getLocalStorageOrThrow = cjs$3.getCrypto = cjs$3.getCryptoOrThrow = cjs$3.getLocation = cjs$3.getLocationOrThrow = cjs$3.getNavigator = cjs$3.getNavigatorOrThrow = cjs$3.getDocument = cjs$3.getDocumentOrThrow = cjs$3.getFromWindowOrThrow = cjs$3.getFromWindow = void 0;
|
|
24450
24499
|
function getFromWindow(name) {
|
|
24451
24500
|
let res = undefined;
|
|
24452
24501
|
if (typeof window !== "undefined" && typeof window[name] !== "undefined") {
|
|
@@ -24454,7 +24503,7 @@ function requireCjs$2 () {
|
|
|
24454
24503
|
}
|
|
24455
24504
|
return res;
|
|
24456
24505
|
}
|
|
24457
|
-
cjs$
|
|
24506
|
+
cjs$3.getFromWindow = getFromWindow;
|
|
24458
24507
|
function getFromWindowOrThrow(name) {
|
|
24459
24508
|
const res = getFromWindow(name);
|
|
24460
24509
|
if (!res) {
|
|
@@ -24462,63 +24511,63 @@ function requireCjs$2 () {
|
|
|
24462
24511
|
}
|
|
24463
24512
|
return res;
|
|
24464
24513
|
}
|
|
24465
|
-
cjs$
|
|
24514
|
+
cjs$3.getFromWindowOrThrow = getFromWindowOrThrow;
|
|
24466
24515
|
function getDocumentOrThrow() {
|
|
24467
24516
|
return getFromWindowOrThrow("document");
|
|
24468
24517
|
}
|
|
24469
|
-
cjs$
|
|
24518
|
+
cjs$3.getDocumentOrThrow = getDocumentOrThrow;
|
|
24470
24519
|
function getDocument() {
|
|
24471
24520
|
return getFromWindow("document");
|
|
24472
24521
|
}
|
|
24473
|
-
cjs$
|
|
24522
|
+
cjs$3.getDocument = getDocument;
|
|
24474
24523
|
function getNavigatorOrThrow() {
|
|
24475
24524
|
return getFromWindowOrThrow("navigator");
|
|
24476
24525
|
}
|
|
24477
|
-
cjs$
|
|
24526
|
+
cjs$3.getNavigatorOrThrow = getNavigatorOrThrow;
|
|
24478
24527
|
function getNavigator() {
|
|
24479
24528
|
return getFromWindow("navigator");
|
|
24480
24529
|
}
|
|
24481
|
-
cjs$
|
|
24530
|
+
cjs$3.getNavigator = getNavigator;
|
|
24482
24531
|
function getLocationOrThrow() {
|
|
24483
24532
|
return getFromWindowOrThrow("location");
|
|
24484
24533
|
}
|
|
24485
|
-
cjs$
|
|
24534
|
+
cjs$3.getLocationOrThrow = getLocationOrThrow;
|
|
24486
24535
|
function getLocation() {
|
|
24487
24536
|
return getFromWindow("location");
|
|
24488
24537
|
}
|
|
24489
|
-
cjs$
|
|
24538
|
+
cjs$3.getLocation = getLocation;
|
|
24490
24539
|
function getCryptoOrThrow() {
|
|
24491
24540
|
return getFromWindowOrThrow("crypto");
|
|
24492
24541
|
}
|
|
24493
|
-
cjs$
|
|
24542
|
+
cjs$3.getCryptoOrThrow = getCryptoOrThrow;
|
|
24494
24543
|
function getCrypto() {
|
|
24495
24544
|
return getFromWindow("crypto");
|
|
24496
24545
|
}
|
|
24497
|
-
cjs$
|
|
24546
|
+
cjs$3.getCrypto = getCrypto;
|
|
24498
24547
|
function getLocalStorageOrThrow() {
|
|
24499
24548
|
return getFromWindowOrThrow("localStorage");
|
|
24500
24549
|
}
|
|
24501
|
-
cjs$
|
|
24550
|
+
cjs$3.getLocalStorageOrThrow = getLocalStorageOrThrow;
|
|
24502
24551
|
function getLocalStorage() {
|
|
24503
24552
|
return getFromWindow("localStorage");
|
|
24504
24553
|
}
|
|
24505
|
-
cjs$
|
|
24554
|
+
cjs$3.getLocalStorage = getLocalStorage;
|
|
24506
24555
|
|
|
24507
|
-
return cjs$
|
|
24556
|
+
return cjs$3;
|
|
24508
24557
|
}
|
|
24509
24558
|
|
|
24510
|
-
var cjsExports$2 = requireCjs$
|
|
24559
|
+
var cjsExports$2 = requireCjs$3();
|
|
24511
24560
|
|
|
24512
|
-
var cjs$
|
|
24561
|
+
var cjs$2 = {};
|
|
24513
24562
|
|
|
24514
|
-
var hasRequiredCjs$
|
|
24563
|
+
var hasRequiredCjs$2;
|
|
24515
24564
|
|
|
24516
|
-
function requireCjs$
|
|
24517
|
-
if (hasRequiredCjs$
|
|
24518
|
-
hasRequiredCjs$
|
|
24519
|
-
Object.defineProperty(cjs$
|
|
24520
|
-
cjs$
|
|
24521
|
-
const window_getters_1 = requireCjs$
|
|
24565
|
+
function requireCjs$2 () {
|
|
24566
|
+
if (hasRequiredCjs$2) return cjs$2;
|
|
24567
|
+
hasRequiredCjs$2 = 1;
|
|
24568
|
+
Object.defineProperty(cjs$2, "__esModule", { value: true });
|
|
24569
|
+
cjs$2.getWindowMetadata = void 0;
|
|
24570
|
+
const window_getters_1 = requireCjs$3();
|
|
24522
24571
|
function getWindowMetadata() {
|
|
24523
24572
|
let doc;
|
|
24524
24573
|
let loc;
|
|
@@ -24611,12 +24660,12 @@ function requireCjs$1 () {
|
|
|
24611
24660
|
};
|
|
24612
24661
|
return meta;
|
|
24613
24662
|
}
|
|
24614
|
-
cjs$
|
|
24663
|
+
cjs$2.getWindowMetadata = getWindowMetadata;
|
|
24615
24664
|
|
|
24616
|
-
return cjs$
|
|
24665
|
+
return cjs$2;
|
|
24617
24666
|
}
|
|
24618
24667
|
|
|
24619
|
-
var cjsExports$1 = requireCjs$
|
|
24668
|
+
var cjsExports$1 = requireCjs$2();
|
|
24620
24669
|
|
|
24621
24670
|
/** @internal */
|
|
24622
24671
|
const version = '0.1.1';
|
|
@@ -28612,12 +28661,7 @@ function base$1 (ALPHABET) {
|
|
|
28612
28661
|
}
|
|
28613
28662
|
|
|
28614
28663
|
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
28615
|
-
var
|
|
28616
|
-
|
|
28617
|
-
var index = /*#__PURE__*/Object.freeze({
|
|
28618
|
-
__proto__: null,
|
|
28619
|
-
default: bs58
|
|
28620
|
-
});
|
|
28664
|
+
var ue$2 = base$1(ALPHABET);
|
|
28621
28665
|
|
|
28622
28666
|
function utf8Count(str) {
|
|
28623
28667
|
const strLength = str.length;
|
|
@@ -32321,7 +32365,7 @@ var c$2 = /*@__PURE__*/getDefaultExportFromCjs$1(browserExports);
|
|
|
32321
32365
|
const i=1e3*1024;var C$2=Object.defineProperty,B$2=(r,e,t)=>e in r?C$2(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,s=(r,e,t)=>B$2(r,typeof e!="symbol"?e+"":e,t);let S$2 = class S{constructor(e){s(this,"nodeValue"),s(this,"sizeInBytes"),s(this,"next"),this.nodeValue=e,this.sizeInBytes=new TextEncoder().encode(this.nodeValue).length,this.next=null;}get value(){return this.nodeValue}get size(){return this.sizeInBytes}};let v$4 = class v{constructor(e){s(this,"lengthInNodes"),s(this,"sizeInBytes"),s(this,"head"),s(this,"tail"),s(this,"maxSizeInBytes"),this.head=null,this.tail=null,this.lengthInNodes=0,this.maxSizeInBytes=e,this.sizeInBytes=0;}append(e){const t=new S$2(e);if(t.size>this.maxSizeInBytes)throw new Error(`[LinkedList] Value too big to insert into list: ${e} with size ${t.size}`);for(;this.size+t.size>this.maxSizeInBytes;)this.shift();this.head?(this.tail&&(this.tail.next=t),this.tail=t):(this.head=t,this.tail=t),this.lengthInNodes++,this.sizeInBytes+=t.size;}shift(){if(!this.head)return;const e=this.head;this.head=this.head.next,this.head||(this.tail=null),this.lengthInNodes--,this.sizeInBytes-=e.size;}toArray(){const e=[];let t=this.head;for(;t!==null;)e.push(t.value),t=t.next;return e}get length(){return this.lengthInNodes}get size(){return this.sizeInBytes}toOrderedArray(){return Array.from(this)}[Symbol.iterator](){let e=this.head;return {next:()=>{if(!e)return {done:true,value:null};const t=e.value;return e=e.next,{done:false,value:t}}}}};var _$1=Object.defineProperty,x$2=(r,e,t)=>e in r?_$1(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,a=(r,e,t)=>x$2(r,typeof e!="symbol"?e+"":e,t);let L$3 = class L{constructor(e,t=i){a(this,"logs"),a(this,"level"),a(this,"levelValue"),a(this,"MAX_LOG_SIZE_IN_BYTES"),this.level=e??"error",this.levelValue=browserExports.levels.values[this.level],this.MAX_LOG_SIZE_IN_BYTES=t,this.logs=new v$4(this.MAX_LOG_SIZE_IN_BYTES);}forwardToConsole(e,t){t===browserExports.levels.values.error?console.error(e):t===browserExports.levels.values.warn?console.warn(e):t===browserExports.levels.values.debug?console.debug(e):t===browserExports.levels.values.trace?console.trace(e):console.log(e);}appendToLogs(e){this.logs.append(safeJsonStringify({timestamp:new Date().toISOString(),log:e}));const t=typeof e=="string"?JSON.parse(e).level:e.level;t>=this.levelValue&&this.forwardToConsole(e,t);}getLogs(){return this.logs}clearLogs(){this.logs=new v$4(this.MAX_LOG_SIZE_IN_BYTES);}getLogArray(){return Array.from(this.logs)}logsToBlob(e){const t=this.getLogArray();return t.push(safeJsonStringify({extraMetadata:e})),new Blob(t,{type:"application/json"})}};var z$4=Object.defineProperty,T$2=(r,e,t)=>e in r?z$4(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,k=(r,e,t)=>T$2(r,e+"",t);let E$2 = class E{constructor(e,t=i){k(this,"baseChunkLogger"),this.baseChunkLogger=new L$3(e,t);}write(e){this.baseChunkLogger.appendToLogs(e);}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs();}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}downloadLogsBlobInBrowser(e){const t=URL.createObjectURL(this.logsToBlob(e)),o=document.createElement("a");o.href=t,o.download=`walletconnect-logs-${new Date().toISOString()}.txt`,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(t);}};var A$2=Object.defineProperty,$$3=(r,e,t)=>e in r?A$2(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,N$3=(r,e,t)=>$$3(r,e+"",t);let j$3 = class j{constructor(e,t=i){N$3(this,"baseChunkLogger"),this.baseChunkLogger=new L$3(e,t);}write(e){this.baseChunkLogger.appendToLogs(e);}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs();}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}};var P$3=Object.defineProperty,V$2=Object.defineProperties,G$3=Object.getOwnPropertyDescriptors,p$2=Object.getOwnPropertySymbols,M$2=Object.prototype.hasOwnProperty,U$2=Object.prototype.propertyIsEnumerable,f$4=(r,e,t)=>e in r?P$3(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,g$2=(r,e)=>{for(var t in e||(e={}))M$2.call(e,t)&&f$4(r,t,e[t]);if(p$2)for(var t of p$2(e))U$2.call(e,t)&&f$4(r,t,e[t]);return r},h$1=(r,e)=>V$2(r,G$3(e));function I$1(r){var e,t;const o=new E$2((e=r.opts)==null?void 0:e.level,r.maxSizeInBytes);return {logger:c$2(h$1(g$2({},r.opts),{level:"trace",browser:h$1(g$2({},(t=r.opts)==null?void 0:t.browser),{write:u=>o.write(u)})})),chunkLoggerController:o}}function O$2(r){var e;const t=new j$3((e=r.opts)==null?void 0:e.level,r.maxSizeInBytes);return {logger:c$2(h$1(g$2({},r.opts),{level:"trace"}),t),chunkLoggerController:t}}function Y$2(r){return typeof r.loggerOverride<"u"&&typeof r.loggerOverride!="string"?{logger:r.loggerOverride,chunkLoggerController:null}:typeof window<"u"?I$1(r):O$2(r)}
|
|
32322
32366
|
|
|
32323
32367
|
const Ae$2=":";function Je$2(t){const[e,n]=t.split(Ae$2);return {namespace:e,reference:n}}function Ie$1(t,e){return t.includes(":")?[t]:e.chains||[]}var ei$1=Object.defineProperty,ni$1=Object.defineProperties,ri$1=Object.getOwnPropertyDescriptors,ar$1=Object.getOwnPropertySymbols,oi$1=Object.prototype.hasOwnProperty,si$1=Object.prototype.propertyIsEnumerable,en$1=(t,e,n)=>e in t?ei$1(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,ur$1=(t,e)=>{for(var n in e||(e={}))oi$1.call(e,n)&&en$1(t,n,e[n]);if(ar$1)for(var n of ar$1(e))si$1.call(e,n)&&en$1(t,n,e[n]);return t},ii$1=(t,e)=>ni$1(t,ri$1(e)),lr$1=(t,e,n)=>en$1(t,typeof e!="symbol"?e+"":e,n);const dr$1="ReactNative",et$2={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},pr$1="js";function rn$1(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function At$2(){return !cjsExports$2.getDocument()&&!!cjsExports$2.getNavigator()&&navigator.product===dr$1}function ai$1(){return At$2()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="android"}function ui$1(){return At$2()&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"&&(global==null?void 0:global.Platform.OS)==="ios"}function Wt$2(){return !rn$1()&&!!cjsExports$2.getNavigator()&&!!cjsExports$2.getDocument()}function Vt$2(){return At$2()?et$2.reactNative:rn$1()?et$2.node:Wt$2()?et$2.browser:et$2.unknown}function li$1(){var t;try{return At$2()&&typeof global<"u"&&typeof(global==null?void 0:global.Application)<"u"?(t=global.Application)==null?void 0:t.applicationId:void 0}catch{return}}function gr$1(t,e){const n=new URLSearchParams(t);return Object.entries(e).sort(([r],[o])=>r.localeCompare(o)).forEach(([r,o])=>{o!=null&&n.set(r,String(o));}),n.toString()}function di$1(t){var e,n;const r=br$1();try{return t!=null&&t.url&&r.url&&new URL(t.url).host!==new URL(r.url).host&&(console.warn(`The configured WalletConnect 'metadata.url':${t.url} differs from the actual page url:${r.url}. This is probably unintended and can lead to issues.`),t.url=r.url),(e=t?.icons)!=null&&e.length&&t.icons.length>0&&(t.icons=t.icons.filter(o=>o!=="")),ii$1(ur$1(ur$1({},r),t),{url:t?.url||r.url,name:t?.name||r.name,description:t?.description||r.description,icons:(n=t?.icons)!=null&&n.length&&t.icons.length>0?t.icons:r.icons})}catch(o){return console.warn("Error populating app metadata",o),t||r}}function br$1(){return cjsExports$1.getWindowMetadata()||{name:"",description:"",url:"",icons:[""]}}function yr$1(){if(Vt$2()===et$2.reactNative&&typeof global<"u"&&typeof(global==null?void 0:global.Platform)<"u"){const{OS:n,Version:r}=global.Platform;return [n,r].join("-")}const t=detect();if(t===null)return "unknown";const e=t.os?t.os.replace(" ","").toLowerCase():"unknown";return t.type==="browser"?[e,t.name,t.version].join("-"):[e,t.version].join("-")}function mr$1(){var t;const e=Vt$2();return e===et$2.browser?[e,((t=cjsExports$2.getLocation())==null?void 0:t.host)||"unknown"].join(":"):e}function wr$1(t,e,n){const r=yr$1(),o=mr$1();return [[t,e].join("-"),[pr$1,n].join("-"),r,o].join("/")}function pi$1({protocol:t,version:e,relayUrl:n,sdkVersion:r,auth:o,projectId:s,useOnCloseEvent:i,bundleId:c,packageName:f}){const u=n.split("?"),a=wr$1(t,e,r),l={auth:o,ua:a,projectId:s,useOnCloseEvent:i,packageName:f||void 0,bundleId:c||void 0},d=gr$1(u[1]||"",l);return u[0]+"?"+d}function It$3(t,e){return t.filter(n=>e.includes(n)).length===t.length}function mi$1(t){return Object.fromEntries(t.entries())}function wi$1(t){return new Map(Object.entries(t))}function Bi$1(t=cjsExports$3.FIVE_MINUTES,e){const n=cjsExports$3.toMiliseconds(t||cjsExports$3.FIVE_MINUTES);let r,o,s,i;return {resolve:c=>{s&&r&&(clearTimeout(s),r(c),i=Promise.resolve(c));},reject:c=>{s&&o&&(clearTimeout(s),o(c));},done:()=>new Promise((c,f)=>{if(i)return c(i);s=setTimeout(()=>{const u=new Error(e);i=Promise.reject(u),f(u);},n),r=c,o=f;})}}function Ai$1(t,e,n){return new Promise(async(r,o)=>{const s=setTimeout(()=>o(new Error(n)),e);try{const i=await t;r(i);}catch(i){o(i);}clearTimeout(s);})}function on$1(t,e){if(typeof e=="string"&&e.startsWith(`${t}:`))return e;if(t.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return `topic:${e}`}else if(t.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return `id:${e}`}throw new Error(`Unknown expirer target type: ${t}`)}function Ii$1(t){return on$1("topic",t)}function Si$1(t){return on$1("id",t)}function Oi$1(t){const[e,n]=t.split(":"),r={id:void 0,topic:void 0};if(e==="topic"&&typeof n=="string")r.topic=n;else if(e==="id"&&Number.isInteger(Number(n)))r.id=Number(n);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${n}`);return r}function Ni$1(t,e){return cjsExports$3.fromMiliseconds((Date.now())+cjsExports$3.toMiliseconds(t))}function Ui$1(t){return Date.now()>=cjsExports$3.toMiliseconds(t)}function _i$1(t,e){return `${t}${e?`:${e}`:""}`}function ut$2(t=[],e=[]){return [...new Set([...t,...e])]}async function Ri$1({id:t,topic:e,wcDeepLink:n}){var r;try{if(!n)return;const o=typeof n=="string"?JSON.parse(n):n,s=o?.href;if(typeof s!="string")return;const i=Br$1(s,t,e),c=Vt$2();if(c===et$2.browser){if(!((r=cjsExports$2.getDocument())!=null&&r.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}Ar$1(i);}else c===et$2.reactNative&&typeof(global==null?void 0:global.Linking)<"u"&&await global.Linking.openURL(i);}catch(o){console.error(o);}}function Br$1(t,e,n){const r=`requestId=${e}&sessionTopic=${n}`;t.endsWith("/")&&(t=t.slice(0,-1));let o=`${t}`;if(t.startsWith("https://t.me")){const s=t.includes("?")?"&startapp=":"?startapp=";o=`${o}${s}${Or$1(r,true)}`;}else o=`${o}/wc?${r}`;return o}function Ar$1(t){let e="_self";Sr$1()?e="_top":(Ir$1()||t.startsWith("https://")||t.startsWith("http://"))&&(e="_blank"),window.open(t,e,"noreferrer noopener");}async function $i$1(t,e){let n="";try{if(Wt$2()&&(n=localStorage.getItem(e),n))return n;n=await t.getItem(e);}catch(r){console.error(r);}return n}function Ti$1(t,e){if(!t.includes(e))return null;const n=t.split(/([&,?,=])/),r=n.indexOf(e);return n[r+2]}function Ci$1(){return typeof crypto<"u"&&crypto!=null&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,t=>{const e=Math.random()*16|0;return (t==="x"?e:e&3|8).toString(16)})}function ji$1(){return typeof process<"u"&&process.env.IS_VITEST==="true"}function Ir$1(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function Sr$1(){try{return window.self!==window.top}catch{return false}}function Or$1(t,e=false){const n=Buffer.from(t).toString("base64");return e?n.replace(/[=]/g,""):n}function cn$1(t){return Buffer.from(t,"base64").toString("utf-8")}function Li$1(t){return new Promise(e=>setTimeout(e,t))}let ki$1 = class ki{constructor({limit:e}){lr$1(this,"limit"),lr$1(this,"set"),this.limit=e,this.set=new Set;}add(e){if(!this.set.has(e)){if(this.set.size>=this.limit){const n=this.set.values().next().value;n&&this.set.delete(n);}this.set.add(e);}}has(e){return this.set.has(e)}};const Oe$3=BigInt(2**32-1),Nr$1=BigInt(32);function Ur$1(t,e=false){return e?{h:Number(t&Oe$3),l:Number(t>>Nr$1&Oe$3)}:{h:Number(t>>Nr$1&Oe$3)|0,l:Number(t&Oe$3)|0}}function _r$1(t,e=false){const n=t.length;let r=new Uint32Array(n),o=new Uint32Array(n);for(let s=0;s<n;s++){const{h:i,l:c}=Ur$1(t[s],e);[r[s],o[s]]=[i,c];}return [r,o]}const Rr$1=(t,e,n)=>t>>>n,$r$1=(t,e,n)=>t<<32-n|e>>>n,St$3=(t,e,n)=>t>>>n|e<<32-n,Ot$2=(t,e,n)=>t<<32-n|e>>>n,de$2=(t,e,n)=>t<<64-n|e>>>n-32,he$3=(t,e,n)=>t>>>n-32|e<<64-n,Pi$1=(t,e)=>e,Hi$1=(t,e)=>t,Di$1=(t,e,n)=>t<<n|e>>>32-n,Vi$1=(t,e,n)=>e<<n|t>>>32-n,Mi$1=(t,e,n)=>e<<n-32|t>>>64-n,Ki$1=(t,e,n)=>t<<n-32|e>>>64-n;function dt$2(t,e,n,r){const o=(e>>>0)+(r>>>0);return {h:t+n+(o/2**32|0)|0,l:o|0}}const fn$1=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),an$1=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,qi$1=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),Fi$1=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0,Zi=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0),Gi$1=(t,e,n,r,o,s)=>e+n+r+o+s+(t/2**32|0)|0,Xt$2=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Ne(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function mt$2(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function ht$1(t,...e){if(!Ne(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Ue$3(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");mt$2(t.outputLen),mt$2(t.blockLen);}function Nt$2(t,e=true){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function un$1(t,e){ht$1(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function pe$3(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function lt$1(...t){for(let e=0;e<t.length;e++)t[e].fill(0);}function ln$1(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function bt$1(t,e){return t<<32-e|t>>>e}const Tr$1=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Cr$1(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}const wt$2=Tr$1?t=>t:t=>Cr$1(t);function zi$1(t){for(let e=0;e<t.length;e++)t[e]=Cr$1(t[e]);return t}const Ut$2=Tr$1?t=>t:zi$1,jr$1=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Yi=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Jt$2(t){if(ht$1(t),jr$1)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=Yi[t[n]];return e}const vt$2={_0:48,_9:57,A:65,F:70,a:97,f:102};function Lr$1(t){if(t>=vt$2._0&&t<=vt$2._9)return t-vt$2._0;if(t>=vt$2.A&&t<=vt$2.F)return t-(vt$2.A-10);if(t>=vt$2.a&&t<=vt$2.f)return t-(vt$2.a-10)}function _e$3(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(jr$1)return Uint8Array.fromHex(t);const e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let o=0,s=0;o<n;o++,s+=2){const i=Lr$1(t.charCodeAt(s)),c=Lr$1(t.charCodeAt(s+1));if(i===void 0||c===void 0){const f=t[s]+t[s+1];throw new Error('hex string expected, got non-hex character "'+f+'" at index '+s)}r[o]=i*16+c;}return r}function kr$1(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function pt$1(t){return typeof t=="string"&&(t=kr$1(t)),ht$1(t),t}function _t$2(...t){let e=0;for(let r=0;r<t.length;r++){const o=t[r];ht$1(o),e+=o.length;}const n=new Uint8Array(e);for(let r=0,o=0;r<t.length;r++){const s=t[r];n.set(s,o),o+=s.length;}return n}class Re{}function ge$3(t){const e=r=>t().update(pt$1(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Wi$1(t){const e=(r,o)=>t(o).update(pt$1(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}function Mt$2(t=32){if(Xt$2&&typeof Xt$2.getRandomValues=="function")return Xt$2.getRandomValues(new Uint8Array(t));if(Xt$2&&typeof Xt$2.randomBytes=="function")return Uint8Array.from(Xt$2.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}const Xi=BigInt(0),be$3=BigInt(1),Ji=BigInt(2),Qi=BigInt(7),tc=BigInt(256),ec=BigInt(113),Pr$1=[],Hr$1=[],Dr$1=[];for(let t=0,e=be$3,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],Pr$1.push(2*(5*r+n)),Hr$1.push((t+1)*(t+2)/2%64);let o=Xi;for(let s=0;s<7;s++)e=(e<<be$3^(e>>Qi)*ec)%tc,e&Ji&&(o^=be$3<<(be$3<<BigInt(s))-be$3);Dr$1.push(o);}const Vr$1=_r$1(Dr$1,true),nc=Vr$1[0],rc=Vr$1[1],Mr$1=(t,e,n)=>n>32?Mi$1(t,e,n):Di$1(t,e,n),Kr$1=(t,e,n)=>n>32?Ki$1(t,e,n):Vi$1(t,e,n);function oc(t,e=24){const n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let i=0;i<10;i++)n[i]=t[i]^t[i+10]^t[i+20]^t[i+30]^t[i+40];for(let i=0;i<10;i+=2){const c=(i+8)%10,f=(i+2)%10,u=n[f],a=n[f+1],l=Mr$1(u,a,1)^n[c],d=Kr$1(u,a,1)^n[c+1];for(let h=0;h<50;h+=10)t[i+h]^=l,t[i+h+1]^=d;}let o=t[2],s=t[3];for(let i=0;i<24;i++){const c=Hr$1[i],f=Mr$1(o,s,c),u=Kr$1(o,s,c),a=Pr$1[i];o=t[a],s=t[a+1],t[a]=f,t[a+1]=u;}for(let i=0;i<50;i+=10){for(let c=0;c<10;c++)n[c]=t[i+c];for(let c=0;c<10;c++)t[i+c]^=~n[(c+2)%10]&n[(c+4)%10];}t[0]^=nc[r],t[1]^=rc[r];}lt$1(n);}let Jn$1 = class Jn extends Re{constructor(e,n,r,o=false,s=24){if(super(),this.pos=0,this.posOut=0,this.finished=false,this.destroyed=false,this.enableXOF=false,this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=o,this.rounds=s,mt$2(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=pe$3(this.state);}clone(){return this._cloneInto()}keccak(){Ut$2(this.state32),oc(this.state32,this.rounds),Ut$2(this.state32),this.posOut=0,this.pos=0;}update(e){Nt$2(this),e=pt$1(e),ht$1(e);const{blockLen:n,state:r}=this,o=e.length;for(let s=0;s<o;){const i=Math.min(n-this.pos,o-s);for(let c=0;c<i;c++)r[this.pos++]^=e[s++];this.pos===n&&this.keccak();}return this}finish(){if(this.finished)return;this.finished=true;const{state:e,suffix:n,pos:r,blockLen:o}=this;e[r]^=n,(n&128)!==0&&r===o-1&&this.keccak(),e[o-1]^=128,this.keccak();}writeInto(e){Nt$2(this,false),ht$1(e),this.finish();const n=this.state,{blockLen:r}=this;for(let o=0,s=e.length;o<s;){this.posOut>=r&&this.keccak();const i=Math.min(r-this.posOut,s-o);e.set(n.subarray(this.posOut,this.posOut+i),o),this.posOut+=i,o+=i;}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return mt$2(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(un$1(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=true,lt$1(this.state);}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:o,rounds:s,enableXOF:i}=this;return e||(e=new Jn(n,r,o,i,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=r,e.outputLen=o,e.enableXOF=i,e.destroyed=this.destroyed,e}};const sc=(t,e,n)=>ge$3(()=>new Jn$1(e,t,n)),ic=sc(1,136,256/8);function cc(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const o=BigInt(32),s=BigInt(4294967295),i=Number(n>>o&s),c=Number(n&s),f=r?4:0,u=r?0:4;t.setUint32(e+f,i,r),t.setUint32(e+u,c,r);}function fc(t,e,n){return t&e^~t&n}function ac(t,e,n){return t&e^t&n^e&n}let qr$1 = class qr extends Re{constructor(e,n,r,o){super(),this.finished=false,this.length=0,this.pos=0,this.destroyed=false,this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=o,this.buffer=new Uint8Array(e),this.view=ln$1(this.buffer);}update(e){Nt$2(this),e=pt$1(e),ht$1(e);const{view:n,buffer:r,blockLen:o}=this,s=e.length;for(let i=0;i<s;){const c=Math.min(o-this.pos,s-i);if(c===o){const f=ln$1(e);for(;o<=s-i;i+=o)this.process(f,i);continue}r.set(e.subarray(i,i+c),this.pos),this.pos+=c,i+=c,this.pos===o&&(this.process(n,0),this.pos=0);}return this.length+=e.length,this.roundClean(),this}digestInto(e){Nt$2(this),un$1(e,this),this.finished=true;const{buffer:n,view:r,blockLen:o,isLE:s}=this;let{pos:i}=this;n[i++]=128,lt$1(this.buffer.subarray(i)),this.padOffset>o-i&&(this.process(r,0),i=0);for(let l=i;l<o;l++)n[l]=0;cc(r,o-8,BigInt(this.length*8),s),this.process(r,0);const c=ln$1(e),f=this.outputLen;if(f%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=f/4,a=this.get();if(u>a.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)c.setUint32(4*l,a[l],s);}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:o,finished:s,destroyed:i,pos:c}=this;return e.destroyed=i,e.finished=s,e.length=o,e.pos=c,o%n&&e.buffer.set(r),e}clone(){return this._cloneInto()}};const Rt$3=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),X$2=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),J$3=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),uc=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),$t$2=new Uint32Array(64);class lc extends qr$1{constructor(e=32){super(64,e,8,false),this.A=Rt$3[0]|0,this.B=Rt$3[1]|0,this.C=Rt$3[2]|0,this.D=Rt$3[3]|0,this.E=Rt$3[4]|0,this.F=Rt$3[5]|0,this.G=Rt$3[6]|0,this.H=Rt$3[7]|0;}get(){const{A:e,B:n,C:r,D:o,E:s,F:i,G:c,H:f}=this;return [e,n,r,o,s,i,c,f]}set(e,n,r,o,s,i,c,f){this.A=e|0,this.B=n|0,this.C=r|0,this.D=o|0,this.E=s|0,this.F=i|0,this.G=c|0,this.H=f|0;}process(e,n){for(let l=0;l<16;l++,n+=4)$t$2[l]=e.getUint32(n,false);for(let l=16;l<64;l++){const d=$t$2[l-15],h=$t$2[l-2],y=bt$1(d,7)^bt$1(d,18)^d>>>3,m=bt$1(h,17)^bt$1(h,19)^h>>>10;$t$2[l]=m+$t$2[l-7]+y+$t$2[l-16]|0;}let{A:r,B:o,C:s,D:i,E:c,F:f,G:u,H:a}=this;for(let l=0;l<64;l++){const d=bt$1(c,6)^bt$1(c,11)^bt$1(c,25),h=a+d+fc(c,f,u)+uc[l]+$t$2[l]|0,m=(bt$1(r,2)^bt$1(r,13)^bt$1(r,22))+ac(r,o,s)|0;a=u,u=f,f=c,c=i+h|0,i=s,s=o,o=r,r=h+m|0;}r=r+this.A|0,o=o+this.B|0,s=s+this.C|0,i=i+this.D|0,c=c+this.E|0,f=f+this.F|0,u=u+this.G|0,a=a+this.H|0,this.set(r,o,s,i,c,f,u,a);}roundClean(){lt$1($t$2);}destroy(){this.set(0,0,0,0,0,0,0,0),lt$1(this.buffer);}}const Fr$1=_r$1(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),dc=Fr$1[0],hc=Fr$1[1],Tt$2=new Uint32Array(80),Ct$2=new Uint32Array(80);let dn$1 = class dn extends qr$1{constructor(e=64){super(128,e,16,false),this.Ah=J$3[0]|0,this.Al=J$3[1]|0,this.Bh=J$3[2]|0,this.Bl=J$3[3]|0,this.Ch=J$3[4]|0,this.Cl=J$3[5]|0,this.Dh=J$3[6]|0,this.Dl=J$3[7]|0,this.Eh=J$3[8]|0,this.El=J$3[9]|0,this.Fh=J$3[10]|0,this.Fl=J$3[11]|0,this.Gh=J$3[12]|0,this.Gl=J$3[13]|0,this.Hh=J$3[14]|0,this.Hl=J$3[15]|0;}get(){const{Ah:e,Al:n,Bh:r,Bl:o,Ch:s,Cl:i,Dh:c,Dl:f,Eh:u,El:a,Fh:l,Fl:d,Gh:h,Gl:y,Hh:m,Hl:v}=this;return [e,n,r,o,s,i,c,f,u,a,l,d,h,y,m,v]}set(e,n,r,o,s,i,c,f,u,a,l,d,h,y,m,v){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=o|0,this.Ch=s|0,this.Cl=i|0,this.Dh=c|0,this.Dl=f|0,this.Eh=u|0,this.El=a|0,this.Fh=l|0,this.Fl=d|0,this.Gh=h|0,this.Gl=y|0,this.Hh=m|0,this.Hl=v|0;}process(e,n){for(let R=0;R<16;R++,n+=4)Tt$2[R]=e.getUint32(n),Ct$2[R]=e.getUint32(n+=4);for(let R=16;R<80;R++){const Z=Tt$2[R-15]|0,H=Ct$2[R-15]|0,j=St$3(Z,H,1)^St$3(Z,H,8)^Rr$1(Z,H,7),L=Ot$2(Z,H,1)^Ot$2(Z,H,8)^$r$1(Z,H,7),k=Tt$2[R-2]|0,O=Ct$2[R-2]|0,T=St$3(k,O,19)^de$2(k,O,61)^Rr$1(k,O,6),C=Ot$2(k,O,19)^he$3(k,O,61)^$r$1(k,O,6),_=qi$1(L,C,Ct$2[R-7],Ct$2[R-16]),p=Fi$1(_,j,T,Tt$2[R-7],Tt$2[R-16]);Tt$2[R]=p|0,Ct$2[R]=_|0;}let{Ah:r,Al:o,Bh:s,Bl:i,Ch:c,Cl:f,Dh:u,Dl:a,Eh:l,El:d,Fh:h,Fl:y,Gh:m,Gl:v,Hh:U,Hl:F}=this;for(let R=0;R<80;R++){const Z=St$3(l,d,14)^St$3(l,d,18)^de$2(l,d,41),H=Ot$2(l,d,14)^Ot$2(l,d,18)^he$3(l,d,41),j=l&h^~l&m,L=d&y^~d&v,k=Zi(F,H,L,hc[R],Ct$2[R]),O=Gi$1(k,U,Z,j,dc[R],Tt$2[R]),T=k|0,C=St$3(r,o,28)^de$2(r,o,34)^de$2(r,o,39),_=Ot$2(r,o,28)^he$3(r,o,34)^he$3(r,o,39),p=r&s^r&c^s&c,b=o&i^o&f^i&f;U=m|0,F=v|0,m=h|0,v=y|0,h=l|0,y=d|0,{h:l,l:d}=dt$2(u|0,a|0,O|0,T|0),u=c|0,a=f|0,c=s|0,f=i|0,s=r|0,i=o|0;const g=fn$1(T,_,b);r=an$1(g,O,C,p),o=g|0;}(({h:r,l:o}=dt$2(this.Ah|0,this.Al|0,r|0,o|0))),{h:s,l:i}=dt$2(this.Bh|0,this.Bl|0,s|0,i|0),{h:c,l:f}=dt$2(this.Ch|0,this.Cl|0,c|0,f|0),{h:u,l:a}=dt$2(this.Dh|0,this.Dl|0,u|0,a|0),{h:l,l:d}=dt$2(this.Eh|0,this.El|0,l|0,d|0),{h,l:y}=dt$2(this.Fh|0,this.Fl|0,h|0,y|0),{h:m,l:v}=dt$2(this.Gh|0,this.Gl|0,m|0,v|0),{h:U,l:F}=dt$2(this.Hh|0,this.Hl|0,U|0,F|0),this.set(r,o,s,i,c,f,u,a,l,d,h,y,m,v,U,F);}roundClean(){lt$1(Tt$2,Ct$2);}destroy(){lt$1(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}};class pc extends dn$1{constructor(){super(48),this.Ah=X$2[0]|0,this.Al=X$2[1]|0,this.Bh=X$2[2]|0,this.Bl=X$2[3]|0,this.Ch=X$2[4]|0,this.Cl=X$2[5]|0,this.Dh=X$2[6]|0,this.Dl=X$2[7]|0,this.Eh=X$2[8]|0,this.El=X$2[9]|0,this.Fh=X$2[10]|0,this.Fl=X$2[11]|0,this.Gh=X$2[12]|0,this.Gl=X$2[13]|0,this.Hh=X$2[14]|0,this.Hl=X$2[15]|0;}}const Q$1=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class gc extends dn$1{constructor(){super(32),this.Ah=Q$1[0]|0,this.Al=Q$1[1]|0,this.Bh=Q$1[2]|0,this.Bl=Q$1[3]|0,this.Ch=Q$1[4]|0,this.Cl=Q$1[5]|0,this.Dh=Q$1[6]|0,this.Dl=Q$1[7]|0,this.Eh=Q$1[8]|0,this.El=Q$1[9]|0,this.Fh=Q$1[10]|0,this.Fl=Q$1[11]|0,this.Gh=Q$1[12]|0,this.Gl=Q$1[13]|0,this.Hh=Q$1[14]|0,this.Hl=Q$1[15]|0;}}const $e$2=ge$3(()=>new lc),bc=ge$3(()=>new dn$1),yc=ge$3(()=>new pc),mc=ge$3(()=>new gc),wc=Uint8Array.from([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9]),z$3=Uint32Array.from([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),S$1=new Uint32Array(32);function jt$2(t,e,n,r,o,s){const i=o[s],c=o[s+1];let f=S$1[2*t],u=S$1[2*t+1],a=S$1[2*e],l=S$1[2*e+1],d=S$1[2*n],h=S$1[2*n+1],y=S$1[2*r],m=S$1[2*r+1],v=fn$1(f,a,i);u=an$1(v,u,l,c),f=v|0,{Dh:m,Dl:y}={Dh:m^u,Dl:y^f},{Dh:m,Dl:y}={Dh:Pi$1(m,y),Dl:Hi$1(m)},{h,l:d}=dt$2(h,d,m,y),{Bh:l,Bl:a}={Bh:l^h,Bl:a^d},{Bh:l,Bl:a}={Bh:St$3(l,a,24),Bl:Ot$2(l,a,24)},S$1[2*t]=f,S$1[2*t+1]=u,S$1[2*e]=a,S$1[2*e+1]=l,S$1[2*n]=d,S$1[2*n+1]=h,S$1[2*r]=y,S$1[2*r+1]=m;}function Lt$2(t,e,n,r,o,s){const i=o[s],c=o[s+1];let f=S$1[2*t],u=S$1[2*t+1],a=S$1[2*e],l=S$1[2*e+1],d=S$1[2*n],h=S$1[2*n+1],y=S$1[2*r],m=S$1[2*r+1],v=fn$1(f,a,i);u=an$1(v,u,l,c),f=v|0,{Dh:m,Dl:y}={Dh:m^u,Dl:y^f},{Dh:m,Dl:y}={Dh:St$3(m,y,16),Dl:Ot$2(m,y,16)},{h,l:d}=dt$2(h,d,m,y),{Bh:l,Bl:a}={Bh:l^h,Bl:a^d},{Bh:l,Bl:a}={Bh:de$2(l,a,63),Bl:he$3(l,a,63)},S$1[2*t]=f,S$1[2*t+1]=u,S$1[2*e]=a,S$1[2*e+1]=l,S$1[2*n]=d,S$1[2*n+1]=h,S$1[2*r]=y,S$1[2*r+1]=m;}function vc(t,e={},n,r,o){if(mt$2(n),t<0||t>n)throw new Error("outputLen bigger than keyLen");const{key:s,salt:i,personalization:c}=e;if(s!==void 0&&(s.length<1||s.length>n))throw new Error("key length must be undefined or 1.."+n);if(i!==void 0&&i.length!==r)throw new Error("salt must be undefined or "+r);if(c!==void 0&&c.length!==o)throw new Error("personalization must be undefined or "+o)}class xc extends Re{constructor(e,n){super(),this.finished=false,this.destroyed=false,this.length=0,this.pos=0,mt$2(e),mt$2(n),this.blockLen=e,this.outputLen=n,this.buffer=new Uint8Array(e),this.buffer32=pe$3(this.buffer);}update(e){Nt$2(this),e=pt$1(e),ht$1(e);const{blockLen:n,buffer:r,buffer32:o}=this,s=e.length,i=e.byteOffset,c=e.buffer;for(let f=0;f<s;){this.pos===n&&(Ut$2(o),this.compress(o,0,false),Ut$2(o),this.pos=0);const u=Math.min(n-this.pos,s-f),a=i+f;if(u===n&&!(a%4)&&f+u<s){const l=new Uint32Array(c,a,Math.floor((s-f)/4));Ut$2(l);for(let d=0;f+n<s;d+=o.length,f+=n)this.length+=n,this.compress(l,d,false);Ut$2(l);continue}r.set(e.subarray(f,f+u),this.pos),this.pos+=u,this.length+=u,f+=u;}return this}digestInto(e){Nt$2(this),un$1(e,this);const{pos:n,buffer32:r}=this;this.finished=true,lt$1(this.buffer.subarray(n)),Ut$2(r),this.compress(r,0,true),Ut$2(r);const o=pe$3(e);this.get().forEach((s,i)=>o[i]=wt$2(s));}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){const{buffer:n,length:r,finished:o,destroyed:s,outputLen:i,pos:c}=this;return e||(e=new this.constructor({dkLen:i})),e.set(...this.get()),e.buffer.set(n),e.destroyed=s,e.finished=o,e.length=r,e.pos=c,e.outputLen=i,e}clone(){return this._cloneInto()}}class Ec extends xc{constructor(e={}){const n=e.dkLen===void 0?64:e.dkLen;super(128,n),this.v0l=z$3[0]|0,this.v0h=z$3[1]|0,this.v1l=z$3[2]|0,this.v1h=z$3[3]|0,this.v2l=z$3[4]|0,this.v2h=z$3[5]|0,this.v3l=z$3[6]|0,this.v3h=z$3[7]|0,this.v4l=z$3[8]|0,this.v4h=z$3[9]|0,this.v5l=z$3[10]|0,this.v5h=z$3[11]|0,this.v6l=z$3[12]|0,this.v6h=z$3[13]|0,this.v7l=z$3[14]|0,this.v7h=z$3[15]|0,vc(n,e,64,16,16);let{key:r,personalization:o,salt:s}=e,i=0;if(r!==void 0&&(r=pt$1(r),i=r.length),this.v0l^=this.outputLen|i<<8|65536|1<<24,s!==void 0){s=pt$1(s);const c=pe$3(s);this.v4l^=wt$2(c[0]),this.v4h^=wt$2(c[1]),this.v5l^=wt$2(c[2]),this.v5h^=wt$2(c[3]);}if(o!==void 0){o=pt$1(o);const c=pe$3(o);this.v6l^=wt$2(c[0]),this.v6h^=wt$2(c[1]),this.v7l^=wt$2(c[2]),this.v7h^=wt$2(c[3]);}if(r!==void 0){const c=new Uint8Array(this.blockLen);c.set(r),this.update(c);}}get(){let{v0l:e,v0h:n,v1l:r,v1h:o,v2l:s,v2h:i,v3l:c,v3h:f,v4l:u,v4h:a,v5l:l,v5h:d,v6l:h,v6h:y,v7l:m,v7h:v}=this;return [e,n,r,o,s,i,c,f,u,a,l,d,h,y,m,v]}set(e,n,r,o,s,i,c,f,u,a,l,d,h,y,m,v){this.v0l=e|0,this.v0h=n|0,this.v1l=r|0,this.v1h=o|0,this.v2l=s|0,this.v2h=i|0,this.v3l=c|0,this.v3h=f|0,this.v4l=u|0,this.v4h=a|0,this.v5l=l|0,this.v5h=d|0,this.v6l=h|0,this.v6h=y|0,this.v7l=m|0,this.v7h=v|0;}compress(e,n,r){this.get().forEach((f,u)=>S$1[u]=f),S$1.set(z$3,16);let{h:o,l:s}=Ur$1(BigInt(this.length));S$1[24]=z$3[8]^s,S$1[25]=z$3[9]^o,r&&(S$1[28]=~S$1[28],S$1[29]=~S$1[29]);let i=0;const c=wc;for(let f=0;f<12;f++)jt$2(0,4,8,12,e,n+2*c[i++]),Lt$2(0,4,8,12,e,n+2*c[i++]),jt$2(1,5,9,13,e,n+2*c[i++]),Lt$2(1,5,9,13,e,n+2*c[i++]),jt$2(2,6,10,14,e,n+2*c[i++]),Lt$2(2,6,10,14,e,n+2*c[i++]),jt$2(3,7,11,15,e,n+2*c[i++]),Lt$2(3,7,11,15,e,n+2*c[i++]),jt$2(0,5,10,15,e,n+2*c[i++]),Lt$2(0,5,10,15,e,n+2*c[i++]),jt$2(1,6,11,12,e,n+2*c[i++]),Lt$2(1,6,11,12,e,n+2*c[i++]),jt$2(2,7,8,13,e,n+2*c[i++]),Lt$2(2,7,8,13,e,n+2*c[i++]),jt$2(3,4,9,14,e,n+2*c[i++]),Lt$2(3,4,9,14,e,n+2*c[i++]);this.v0l^=S$1[0]^S$1[16],this.v0h^=S$1[1]^S$1[17],this.v1l^=S$1[2]^S$1[18],this.v1h^=S$1[3]^S$1[19],this.v2l^=S$1[4]^S$1[20],this.v2h^=S$1[5]^S$1[21],this.v3l^=S$1[6]^S$1[22],this.v3h^=S$1[7]^S$1[23],this.v4l^=S$1[8]^S$1[24],this.v4h^=S$1[9]^S$1[25],this.v5l^=S$1[10]^S$1[26],this.v5h^=S$1[11]^S$1[27],this.v6l^=S$1[12]^S$1[28],this.v6h^=S$1[13]^S$1[29],this.v7l^=S$1[14]^S$1[30],this.v7h^=S$1[15]^S$1[31],lt$1(S$1);}destroy(){this.destroyed=true,lt$1(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}}const Bc=Wi$1(t=>new Ec(t)),Ac="https://rpc.walletconnect.org/v1";function hn$1(t){const e=`Ethereum Signed Message:
|
|
32324
|
-
${t.length}`,n=new TextEncoder().encode(e+t);return "0x"+Buffer.from(ic(n)).toString("hex")}async function Zr$1(t,e,n,r,o,s){switch(n.t){case "eip191":return await Gr$1(t,e,n.s);case "eip1271":return await zr$1(t,e,n.s,r,o,s);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${n.t}`)}}function Gr$1(t,e,n){const r=fromHex(n);return recoverAddress({payload:hn$1(e),signature:r}).toLowerCase()===t.toLowerCase()}async function zr$1(t,e,n,r,o,s){const i=Je$2(r);if(!i.namespace||!i.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${r}`);try{const c="0x1626ba7e",f="0000000000000000000000000000000000000000000000000000000000000040",u=n.substring(2),a=(u.length/2).toString(16).padStart(64,"0"),l=(e.startsWith("0x")?e:hn$1(e)).substring(2),d=c+l+f+a+u,h=await fetch(`${s||Ac}/?chainId=${r}&projectId=${o}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:Ic(),jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:d},"latest"]})}),{result:y}=await h.json();return y?y.slice(0,c.length).toLowerCase()===c.toLowerCase():!1}catch(c){return console.error("isValidEip1271Signature: ",c),false}}function Ic(){return Date.now()+Math.floor(Math.random()*1e3)}function Sc(t){const e=atob(t),n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=e.charCodeAt(i);const r=n[0];if(r===0)throw new Error("No signatures found");const o=1+r*64;if(n.length<o)throw new Error("Transaction data too short for claimed signature count");if(n.length<100)throw new Error("Transaction too short");const s=Buffer.from(t,"base64").slice(1,65);return
|
|
32368
|
+
${t.length}`,n=new TextEncoder().encode(e+t);return "0x"+Buffer.from(ic(n)).toString("hex")}async function Zr$1(t,e,n,r,o,s){switch(n.t){case "eip191":return await Gr$1(t,e,n.s);case "eip1271":return await zr$1(t,e,n.s,r,o,s);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${n.t}`)}}function Gr$1(t,e,n){const r=fromHex(n);return recoverAddress({payload:hn$1(e),signature:r}).toLowerCase()===t.toLowerCase()}async function zr$1(t,e,n,r,o,s){const i=Je$2(r);if(!i.namespace||!i.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${r}`);try{const c="0x1626ba7e",f="0000000000000000000000000000000000000000000000000000000000000040",u=n.substring(2),a=(u.length/2).toString(16).padStart(64,"0"),l=(e.startsWith("0x")?e:hn$1(e)).substring(2),d=c+l+f+a+u,h=await fetch(`${s||Ac}/?chainId=${r}&projectId=${o}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:Ic(),jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:d},"latest"]})}),{result:y}=await h.json();return y?y.slice(0,c.length).toLowerCase()===c.toLowerCase():!1}catch(c){return console.error("isValidEip1271Signature: ",c),false}}function Ic(){return Date.now()+Math.floor(Math.random()*1e3)}function Sc(t){const e=atob(t),n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=e.charCodeAt(i);const r=n[0];if(r===0)throw new Error("No signatures found");const o=1+r*64;if(n.length<o)throw new Error("Transaction data too short for claimed signature count");if(n.length<100)throw new Error("Transaction too short");const s=Buffer.from(t,"base64").slice(1,65);return ue$2.encode(s)}function Oc(t){const e=new Uint8Array(Buffer.from(t,"base64")),n=Array.from("TransactionData::").map(s=>s.charCodeAt(0)),r=new Uint8Array(n.length+e.length);r.set(n),r.set(e,n.length);const o=Bc(r,{dkLen:32});return ue$2.encode(o)}function Nc(t){const e=new Uint8Array($e$2(Yr$1(t)));return ue$2.encode(e)}function Yr$1(t){if(t instanceof Uint8Array)return t;if(Array.isArray(t))return new Uint8Array(t);if(typeof t=="object"&&t!=null&&t.data)return new Uint8Array(Object.values(t.data));if(typeof t=="object"&&t)return new Uint8Array(Object.values(t));throw new Error("getNearUint8ArrayFromBytes: Unexpected result type from bytes array")}function Uc(t){const e=Buffer.from(t,"base64"),n=decode$2(e).txn;if(!n)throw new Error("Invalid signed transaction: missing 'txn' field");const r=encode$2(n),o=Buffer.from("TX"),s=Buffer.concat([o,Buffer.from(r)]),i=mc(s);return base32$2.encode(i).replace(/=+$/,"")}function pn$1(t){const e=[];let n=BigInt(t);for(;n>=BigInt(128);)e.push(Number(n&BigInt(127)|BigInt(128))),n>>=BigInt(7);return e.push(Number(n)),Buffer.from(e)}function _c(t){const e=Buffer.from(t.signed.bodyBytes,"base64"),n=Buffer.from(t.signed.authInfoBytes,"base64"),r=Buffer.from(t.signature.signature,"base64"),o=[];o.push(Buffer.from([10])),o.push(pn$1(e.length)),o.push(e),o.push(Buffer.from([18])),o.push(pn$1(n.length)),o.push(n),o.push(Buffer.from([26])),o.push(pn$1(r.length)),o.push(r);const s=Buffer.concat(o),i=$e$2(s);return Buffer.from(i).toString("hex").toUpperCase()}function Rc(t){var e,n;const r=[];try{if(typeof t=="string")return r.push(t),r;if(typeof t!="object")return r;t!=null&&t.id&&r.push(t.id);const o=(n=(e=t?.capabilities)==null?void 0:e.caip345)==null?void 0:n.transactionHashes;o&&r.push(...o);}catch(o){console.warn("getWalletSendCallsHashes failed: ",o);}return r}var $c=Object.defineProperty,Tc=Object.defineProperties,Cc=Object.getOwnPropertyDescriptors,Wr$1=Object.getOwnPropertySymbols,jc=Object.prototype.hasOwnProperty,Lc=Object.prototype.propertyIsEnumerable,Xr$1=(t,e,n)=>e in t?$c(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,gn$1=(t,e)=>{for(var n in e||(e={}))jc.call(e,n)&&Xr$1(t,n,e[n]);if(Wr$1)for(var n of Wr$1(e))Lc.call(e,n)&&Xr$1(t,n,e[n]);return t},Jr$1=(t,e)=>Tc(t,Cc(e));const kc="did:pkh:",Te$2=t=>t?.split(":"),Qr$1=t=>{const e=t&&Te$2(t);if(e)return t.includes(kc)?e[3]:e[1]},to$1=t=>{const e=t&&Te$2(t);if(e)return e[2]+":"+e[3]},bn$1=t=>{const e=t&&Te$2(t);if(e)return e.pop()};async function Pc(t){const{cacao:e,projectId:n}=t,{s:r,p:o}=e,s=eo$1(o,o.iss),i=bn$1(o.iss);return await Zr$1(i,s,r,to$1(o.iss),n)}const eo$1=(t,e)=>{const n=`${t.domain} wants you to sign in with your Ethereum account:`,r=bn$1(e);if(!t.aud&&!t.uri)throw new Error("Either `aud` or `uri` is required to construct the message");let o=t.statement||void 0;const s=`URI: ${t.aud||t.uri}`,i=`Version: ${t.version}`,c=`Chain ID: ${Qr$1(e)}`,f=`Nonce: ${t.nonce}`,u=`Issued At: ${t.iat}`,a=t.exp?`Expiration Time: ${t.exp}`:void 0,l=t.nbf?`Not Before: ${t.nbf}`:void 0,d=t.requestId?`Request ID: ${t.requestId}`:void 0,h=t.resources?`Resources:${t.resources.map(m=>`
|
|
32325
32369
|
- ${m}`).join("")}`:void 0,y=je$1(t.resources);if(y){const m=kt$2(y);o=wn$1(o,m);}return [n,r,"",o,"",s,i,c,f,u,a,l,d,h].filter(m=>m!=null).join(`
|
|
32326
32370
|
`)};function so$1(t){return Buffer.from(JSON.stringify(t)).toString("base64")}function io$1(t){return JSON.parse(Buffer.from(t,"base64").toString("utf-8"))}function yt$2(t){if(!t)throw new Error("No recap provided, value is undefined");if(!t.att)throw new Error("No `att` property found");const e=Object.keys(t.att);if(!(e!=null&&e.length))throw new Error("No resources found in `att` property");e.forEach(n=>{const r=t.att[n];if(Array.isArray(r))throw new Error(`Resource must be an object: ${n}`);if(typeof r!="object")throw new Error(`Resource must be an object: ${n}`);if(!Object.keys(r).length)throw new Error(`Resource object is empty: ${n}`);Object.keys(r).forEach(o=>{const s=r[o];if(!Array.isArray(s))throw new Error(`Ability limits ${o} must be an array of objects, found: ${s}`);if(!s.length)throw new Error(`Value of ${o} is empty array, must be an array with objects`);s.forEach(i=>{if(typeof i!="object")throw new Error(`Ability limits (${o}) must be an array of objects, found: ${i}`)});});});}function co$1(t,e,n,r={}){return n?.sort((o,s)=>o.localeCompare(s)),{att:{[t]:yn$1(e,n,r)}}}function yn$1(t,e,n={}){e=e?.sort((o,s)=>o.localeCompare(s));const r=e.map(o=>({[`${t}/${o}`]:[n]}));return Object.assign({},...r)}function Ce$2(t){return yt$2(t),`urn:recap:${so$1(t).replace(/=/g,"")}`}function kt$2(t){const e=io$1(t.replace("urn:recap:",""));return yt$2(e),e}function Kc(t,e,n){const r=co$1(t,e,n);return Ce$2(r)}function mn$1(t){return t&&t.includes("urn:recap:")}function qc(t,e){const n=kt$2(t),r=kt$2(e),o=ao$1(n,r);return Ce$2(o)}function ao$1(t,e){yt$2(t),yt$2(e);const n=Object.keys(t.att).concat(Object.keys(e.att)).sort((o,s)=>o.localeCompare(s)),r={att:{}};return n.forEach(o=>{var s,i;Object.keys(((s=t.att)==null?void 0:s[o])||{}).concat(Object.keys(((i=e.att)==null?void 0:i[o])||{})).sort((c,f)=>c.localeCompare(f)).forEach(c=>{var f,u;r.att[o]=Jr$1(gn$1({},r.att[o]),{[c]:((f=t.att[o])==null?void 0:f[c])||((u=e.att[o])==null?void 0:u[c])});});}),r}function wn$1(t="",e){yt$2(e);const n="I further authorize the stated URI to perform the following actions on my behalf: ";if(t.includes(n))return t;const r=[];let o=0;Object.keys(e.att).forEach(c=>{const f=Object.keys(e.att[c]).map(l=>({ability:l.split("/")[0],action:l.split("/")[1]}));f.sort((l,d)=>l.action.localeCompare(d.action));const u={};f.forEach(l=>{u[l.ability]||(u[l.ability]=[]),u[l.ability].push(l.action);});const a=Object.keys(u).map(l=>(o++,`(${o}) '${l}': '${u[l].join("', '")}' for '${c}'.`));r.push(a.join(", ").replace(".,","."));});const s=r.join(" "),i=`${n}${s}`;return `${t?t+" ":""}${i}`}function Fc(t){var e;const n=kt$2(t);yt$2(n);const r=(e=n.att)==null?void 0:e.eip155;return r?Object.keys(r).map(o=>o.split("/")[1]):[]}function Zc(t){const e=kt$2(t);yt$2(e);const n=[];return Object.values(e.att).forEach(r=>{Object.values(r).forEach(o=>{var s;(s=o?.[0])!=null&&s.chains&&n.push(o[0].chains);});}),[...new Set(n.flat())]}function je$1(t){if(!t)return;const e=t?.[t.length-1];return mn$1(e)?e:void 0}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function lo$1(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function vn$1(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function xn$1(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function ot$1(t,...e){if(!lo$1(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function ho$1(t,e=true){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Gc(t,e){ot$1(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Pt$2(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Qt$2(...t){for(let e=0;e<t.length;e++)t[e].fill(0);}function zc(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}const Yc=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Wc(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function En$1(t){if(typeof t=="string")t=Wc(t);else if(lo$1(t))t=Bn$1(t);else throw new Error("Uint8Array expected, got "+typeof t);return t}function Xc(t,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(t,e)}function Jc(t,e){if(t.length!==e.length)return false;let n=0;for(let r=0;r<t.length;r++)n|=t[r]^e[r];return n===0}const Qc=(t,e)=>{function n(r,...o){if(ot$1(r),!Yc)throw new Error("Non little-endian hardware is not yet supported");if(t.nonceLength!==void 0){const a=o[0];if(!a)throw new Error("nonce / iv required");t.varSizeNonce?ot$1(a):ot$1(a,t.nonceLength);}const s=t.tagLength;s&&o[1]!==void 0&&ot$1(o[1]);const i=e(r,...o),c=(a,l)=>{if(l!==void 0){if(a!==2)throw new Error("cipher output not supported");ot$1(l);}};let f=false;return {encrypt(a,l){if(f)throw new Error("cannot encrypt() twice with same key + nonce");return f=true,ot$1(a),c(i.encrypt.length,l),i.encrypt(a,l)},decrypt(a,l){if(ot$1(a),s&&a.length<s)throw new Error("invalid ciphertext length: smaller than tagLength="+s);return c(i.decrypt.length,l),i.decrypt(a,l)}}}return Object.assign(n,t),n};function po$1(t,e,n=true){if(e===void 0)return new Uint8Array(t);if(e.length!==t)throw new Error("invalid output length, expected "+t+", got: "+e.length);if(n&&!ef(e))throw new Error("invalid output, must be aligned");return e}function go$1(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const o=BigInt(32),s=BigInt(4294967295),i=Number(n>>o&s),c=Number(n&s),f=4,u=0;t.setUint32(e+f,i,r),t.setUint32(e+u,c,r);}function tf(t,e,n){vn$1(n);const r=new Uint8Array(16),o=zc(r);return go$1(o,0,BigInt(e),n),go$1(o,8,BigInt(t),n),r}function ef(t){return t.byteOffset%4===0}function Bn$1(t){return Uint8Array.from(t)}const bo$1=t=>Uint8Array.from(t.split("").map(e=>e.charCodeAt(0))),nf=bo$1("expand 16-byte k"),rf=bo$1("expand 32-byte k"),of=Pt$2(nf),sf=Pt$2(rf);function K$1(t,e){return t<<e|t>>>32-e}function An$1(t){return t.byteOffset%4===0}const Le$2=64,cf=16,yo$1=2**32-1,mo$1=new Uint32Array;function ff(t,e,n,r,o,s,i,c){const f=o.length,u=new Uint8Array(Le$2),a=Pt$2(u),l=An$1(o)&&An$1(s),d=l?Pt$2(o):mo$1,h=l?Pt$2(s):mo$1;for(let y=0;y<f;i++){if(t(e,n,r,a,i,c),i>=yo$1)throw new Error("arx: counter overflow");const m=Math.min(Le$2,f-y);if(l&&m===Le$2){const v=y/4;if(y%4!==0)throw new Error("arx: invalid block position");for(let U=0,F;U<cf;U++)F=v+U,h[F]=d[F]^a[U];y+=Le$2;continue}for(let v=0,U;v<m;v++)U=y+v,s[U]=o[U]^u[v];y+=m;}}function af(t,e){const{allowShortKeys:n,extendNonceFn:r,counterLength:o,counterRight:s,rounds:i}=Xc({allowShortKeys:false,counterLength:8,counterRight:false,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return xn$1(o),xn$1(i),vn$1(s),vn$1(n),(c,f,u,a,l=0)=>{ot$1(c),ot$1(f),ot$1(u);const d=u.length;if(a===void 0&&(a=new Uint8Array(d)),ot$1(a),xn$1(l),l<0||l>=yo$1)throw new Error("arx: counter overflow");if(a.length<d)throw new Error(`arx: output (${a.length}) is shorter than data (${d})`);const h=[];let y=c.length,m,v;if(y===32)h.push(m=Bn$1(c)),v=sf;else if(y===16&&n)m=new Uint8Array(32),m.set(c),m.set(c,16),v=of,h.push(m);else throw new Error(`arx: invalid 32-byte key, got length=${y}`);An$1(f)||h.push(f=Bn$1(f));const U=Pt$2(m);if(r){if(f.length!==24)throw new Error("arx: extended nonce must be 24 bytes");r(v,U,Pt$2(f.subarray(0,16)),U),f=f.subarray(16);}const F=16-o;if(F!==f.length)throw new Error(`arx: nonce must be ${F} or 16 bytes`);if(F!==12){const Z=new Uint8Array(12);Z.set(f,s?0:12-f.length),f=Z,h.push(f);}const R=Pt$2(f);return ff(t,v,U,R,u,a,l,i),Qt$2(...h),a}}const W$3=(t,e)=>t[e++]&255|(t[e++]&255)<<8;class uf{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=false,e=En$1(e),ot$1(e,32);const n=W$3(e,0),r=W$3(e,2),o=W$3(e,4),s=W$3(e,6),i=W$3(e,8),c=W$3(e,10),f=W$3(e,12),u=W$3(e,14);this.r[0]=n&8191,this.r[1]=(n>>>13|r<<3)&8191,this.r[2]=(r>>>10|o<<6)&7939,this.r[3]=(o>>>7|s<<9)&8191,this.r[4]=(s>>>4|i<<12)&255,this.r[5]=i>>>1&8190,this.r[6]=(i>>>14|c<<2)&8191,this.r[7]=(c>>>11|f<<5)&8065,this.r[8]=(f>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let a=0;a<8;a++)this.pad[a]=W$3(e,16+2*a);}process(e,n,r=false){const o=r?0:2048,{h:s,r:i}=this,c=i[0],f=i[1],u=i[2],a=i[3],l=i[4],d=i[5],h=i[6],y=i[7],m=i[8],v=i[9],U=W$3(e,n+0),F=W$3(e,n+2),R=W$3(e,n+4),Z=W$3(e,n+6),H=W$3(e,n+8),j=W$3(e,n+10),L=W$3(e,n+12),k=W$3(e,n+14);let O=s[0]+(U&8191),T=s[1]+((U>>>13|F<<3)&8191),C=s[2]+((F>>>10|R<<6)&8191),_=s[3]+((R>>>7|Z<<9)&8191),p=s[4]+((Z>>>4|H<<12)&8191),b=s[5]+(H>>>1&8191),g=s[6]+((H>>>14|j<<2)&8191),x=s[7]+((j>>>11|L<<5)&8191),E=s[8]+((L>>>8|k<<8)&8191),A=s[9]+(k>>>5|o),w=0,B=w+O*c+T*(5*v)+C*(5*m)+_*(5*y)+p*(5*h);w=B>>>13,B&=8191,B+=b*(5*d)+g*(5*l)+x*(5*a)+E*(5*u)+A*(5*f),w+=B>>>13,B&=8191;let I=w+O*f+T*c+C*(5*v)+_*(5*m)+p*(5*y);w=I>>>13,I&=8191,I+=b*(5*h)+g*(5*d)+x*(5*l)+E*(5*a)+A*(5*u),w+=I>>>13,I&=8191;let N=w+O*u+T*f+C*c+_*(5*v)+p*(5*m);w=N>>>13,N&=8191,N+=b*(5*y)+g*(5*h)+x*(5*d)+E*(5*l)+A*(5*a),w+=N>>>13,N&=8191;let D=w+O*a+T*u+C*f+_*c+p*(5*v);w=D>>>13,D&=8191,D+=b*(5*m)+g*(5*y)+x*(5*h)+E*(5*d)+A*(5*l),w+=D>>>13,D&=8191;let P=w+O*l+T*a+C*u+_*f+p*c;w=P>>>13,P&=8191,P+=b*(5*v)+g*(5*m)+x*(5*y)+E*(5*h)+A*(5*d),w+=P>>>13,P&=8191;let $=w+O*d+T*l+C*a+_*u+p*f;w=$>>>13,$&=8191,$+=b*c+g*(5*v)+x*(5*m)+E*(5*y)+A*(5*h),w+=$>>>13,$&=8191;let V=w+O*h+T*d+C*l+_*a+p*u;w=V>>>13,V&=8191,V+=b*f+g*c+x*(5*v)+E*(5*m)+A*(5*y),w+=V>>>13,V&=8191;let q=w+O*y+T*h+C*d+_*l+p*a;w=q>>>13,q&=8191,q+=b*u+g*f+x*c+E*(5*v)+A*(5*m),w+=q>>>13,q&=8191;let G=w+O*m+T*y+C*h+_*d+p*l;w=G>>>13,G&=8191,G+=b*a+g*u+x*f+E*c+A*(5*v),w+=G>>>13,G&=8191;let M=w+O*v+T*m+C*y+_*h+p*d;w=M>>>13,M&=8191,M+=b*l+g*a+x*u+E*f+A*c,w+=M>>>13,M&=8191,w=(w<<2)+w|0,w=w+B|0,B=w&8191,w=w>>>13,I+=w,s[0]=B,s[1]=I,s[2]=N,s[3]=D,s[4]=P,s[5]=$,s[6]=V,s[7]=q,s[8]=G,s[9]=M;}finalize(){const{h:e,pad:n}=this,r=new Uint16Array(10);let o=e[1]>>>13;e[1]&=8191;for(let c=2;c<10;c++)e[c]+=o,o=e[c]>>>13,e[c]&=8191;e[0]+=o*5,o=e[0]>>>13,e[0]&=8191,e[1]+=o,o=e[1]>>>13,e[1]&=8191,e[2]+=o,r[0]=e[0]+5,o=r[0]>>>13,r[0]&=8191;for(let c=1;c<10;c++)r[c]=e[c]+o,o=r[c]>>>13,r[c]&=8191;r[9]-=8192;let s=(o^1)-1;for(let c=0;c<10;c++)r[c]&=s;s=~s;for(let c=0;c<10;c++)e[c]=e[c]&s|r[c];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let i=e[0]+n[0];e[0]=i&65535;for(let c=1;c<8;c++)i=(e[c]+n[c]|0)+(i>>>16)|0,e[c]=i&65535;Qt$2(r);}update(e){ho$1(this),e=En$1(e),ot$1(e);const{buffer:n,blockLen:r}=this,o=e.length;for(let s=0;s<o;){const i=Math.min(r-this.pos,o-s);if(i===r){for(;r<=o-s;s+=r)this.process(e,s);continue}n.set(e.subarray(s,s+i),this.pos),this.pos+=i,s+=i,this.pos===r&&(this.process(n,0,false),this.pos=0);}return this}destroy(){Qt$2(this.h,this.r,this.buffer,this.pad);}digestInto(e){ho$1(this),Gc(e,this),this.finished=true;const{buffer:n,h:r}=this;let{pos:o}=this;if(o){for(n[o++]=1;o<16;o++)n[o]=0;this.process(n,0,true);}this.finalize();let s=0;for(let i=0;i<8;i++)e[s++]=r[i]>>>0,e[s++]=r[i]>>>8;return e}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}}function lf(t){const e=(r,o)=>t(o).update(En$1(r)).digest(),n=t(new Uint8Array(32));return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}const df=lf(t=>new uf(t));function hf(t,e,n,r,o,s=20){let i=t[0],c=t[1],f=t[2],u=t[3],a=e[0],l=e[1],d=e[2],h=e[3],y=e[4],m=e[5],v=e[6],U=e[7],F=o,R=n[0],Z=n[1],H=n[2],j=i,L=c,k=f,O=u,T=a,C=l,_=d,p=h,b=y,g=m,x=v,E=U,A=F,w=R,B=Z,I=H;for(let D=0;D<s;D+=2)j=j+T|0,A=K$1(A^j,16),b=b+A|0,T=K$1(T^b,12),j=j+T|0,A=K$1(A^j,8),b=b+A|0,T=K$1(T^b,7),L=L+C|0,w=K$1(w^L,16),g=g+w|0,C=K$1(C^g,12),L=L+C|0,w=K$1(w^L,8),g=g+w|0,C=K$1(C^g,7),k=k+_|0,B=K$1(B^k,16),x=x+B|0,_=K$1(_^x,12),k=k+_|0,B=K$1(B^k,8),x=x+B|0,_=K$1(_^x,7),O=O+p|0,I=K$1(I^O,16),E=E+I|0,p=K$1(p^E,12),O=O+p|0,I=K$1(I^O,8),E=E+I|0,p=K$1(p^E,7),j=j+C|0,I=K$1(I^j,16),x=x+I|0,C=K$1(C^x,12),j=j+C|0,I=K$1(I^j,8),x=x+I|0,C=K$1(C^x,7),L=L+_|0,A=K$1(A^L,16),E=E+A|0,_=K$1(_^E,12),L=L+_|0,A=K$1(A^L,8),E=E+A|0,_=K$1(_^E,7),k=k+p|0,w=K$1(w^k,16),b=b+w|0,p=K$1(p^b,12),k=k+p|0,w=K$1(w^k,8),b=b+w|0,p=K$1(p^b,7),O=O+T|0,B=K$1(B^O,16),g=g+B|0,T=K$1(T^g,12),O=O+T|0,B=K$1(B^O,8),g=g+B|0,T=K$1(T^g,7);let N=0;r[N++]=i+j|0,r[N++]=c+L|0,r[N++]=f+k|0,r[N++]=u+O|0,r[N++]=a+T|0,r[N++]=l+C|0,r[N++]=d+_|0,r[N++]=h+p|0,r[N++]=y+b|0,r[N++]=m+g|0,r[N++]=v+x|0,r[N++]=U+E|0,r[N++]=F+A|0,r[N++]=R+w|0,r[N++]=Z+B|0,r[N++]=H+I|0;}const pf=af(hf,{counterRight:false,counterLength:4,allowShortKeys:false}),gf=new Uint8Array(16),wo$1=(t,e)=>{t.update(e);const n=e.length%16;n&&t.update(gf.subarray(n));},bf=new Uint8Array(32);function vo$1(t,e,n,r,o){const s=t(e,n,bf),i=df.create(s);o&&wo$1(i,o),wo$1(i,r);const c=tf(r.length,o?o.length:0,true);i.update(c);const f=i.digest();return Qt$2(s,c),f}const yf=t=>(e,n,r)=>({encrypt(s,i){const c=s.length;i=po$1(c+16,i,false),i.set(s);const f=i.subarray(0,-16);t(e,n,f,f,1);const u=vo$1(t,e,n,f,r);return i.set(u,c),Qt$2(u),i},decrypt(s,i){i=po$1(s.length-16,i,false);const c=s.subarray(0,-16),f=s.subarray(-16),u=vo$1(t,e,n,c,r);if(!Jc(f,u))throw new Error("invalid tag");return i.set(s.subarray(0,-16)),t(e,n,i,i,1),Qt$2(u),i}}),xo$1=Qc({blockSize:64,nonceLength:12,tagLength:16},yf(pf));let Eo$1 = class Eo extends Re{constructor(e,n){super(),this.finished=false,this.destroyed=false,Ue$3(e);const r=pt$1(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,s=new Uint8Array(o);s.set(r.length>o?e.create().update(r).digest():r);for(let i=0;i<s.length;i++)s[i]^=54;this.iHash.update(s),this.oHash=e.create();for(let i=0;i<s.length;i++)s[i]^=106;this.oHash.update(s),lt$1(s);}update(e){return Nt$2(this),this.iHash.update(e),this}digestInto(e){Nt$2(this),ht$1(e,this.outputLen),this.finished=true,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy();}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:o,destroyed:s,blockLen:i,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=s,e.blockLen=i,e.outputLen=c,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=true,this.oHash.destroy(),this.iHash.destroy();}};const ke$3=(t,e,n)=>new Eo$1(t,e).update(n).digest();ke$3.create=(t,e)=>new Eo$1(t,e);function mf(t,e,n){return Ue$3(t),n===void 0&&(n=new Uint8Array(t.outputLen)),ke$3(t,pt$1(n),pt$1(e))}const In$1=Uint8Array.from([0]),Bo$1=Uint8Array.of();function wf(t,e,n,r=32){Ue$3(t),mt$2(r);const o=t.outputLen;if(r>255*o)throw new Error("Length should be <= 255*HashLen");const s=Math.ceil(r/o);n===void 0&&(n=Bo$1);const i=new Uint8Array(s*o),c=ke$3.create(t,e),f=c._cloneInto(),u=new Uint8Array(c.outputLen);for(let a=0;a<s;a++)In$1[0]=a+1,f.update(a===0?Bo$1:u).update(n).update(In$1).digestInto(u),i.set(u,o*a),c._cloneInto(f);return c.destroy(),f.destroy(),lt$1(u,In$1),i.slice(0,r)}const vf=(t,e,n,r,o)=>wf(t,mf(t,e,n),r,o),Pe$3=$e$2,Sn$1=BigInt(0),On$1=BigInt(1);function He$2(t,e=""){if(typeof t!="boolean"){const n=e&&`"${e}"`;throw new Error(n+"expected boolean, got type="+typeof t)}return t}function Kt$2(t,e,n=""){const r=Ne(t),o=t?.length,s=e!==void 0;if(!r||s&&o!==e){const i=n&&`"${n}" `,c=s?` of length ${e}`:"",f=r?`length=${o}`:`type=${typeof t}`;throw new Error(i+"expected Uint8Array"+c+", got "+f)}return t}function De$2(t){const e=t.toString(16);return e.length&1?"0"+e:e}function Ao$1(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Sn$1:BigInt("0x"+t)}function Ve$3(t){return Ao$1(Jt$2(t))}function Me$4(t){return ht$1(t),Ao$1(Jt$2(Uint8Array.from(t).reverse()))}function Nn$1(t,e){return _e$3(t.toString(16).padStart(e*2,"0"))}function Un$1(t,e){return Nn$1(t,e).reverse()}function tt$2(t,e,n){let r;if(typeof e=="string")try{r=_e$3(e);}catch(s){throw new Error(t+" must be hex string or Uint8Array, cause: "+s)}else if(Ne(e))r=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const o=r.length;if(typeof n=="number"&&o!==n)throw new Error(t+" of length "+n+" expected, got "+o);return r}const _n$1=t=>typeof t=="bigint"&&Sn$1<=t;function xf(t,e,n){return _n$1(t)&&_n$1(e)&&_n$1(n)&&e<=t&&t<n}function Rn$1(t,e,n,r){if(!xf(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function Io$1(t){let e;for(e=0;t>Sn$1;t>>=On$1,e+=1);return e}const ye$3=t=>(On$1<<BigInt(t))-On$1;function Ef(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");const r=h=>new Uint8Array(h),o=h=>Uint8Array.of(h);let s=r(t),i=r(t),c=0;const f=()=>{s.fill(1),i.fill(0),c=0;},u=(...h)=>n(i,s,...h),a=(h=r(0))=>{i=u(o(0),h),s=u(),h.length!==0&&(i=u(o(1),h),s=u());},l=()=>{if(c++>=1e3)throw new Error("drbg: tried 1000 values");let h=0;const y=[];for(;h<e;){s=u();const m=s.slice();y.push(m),h+=s.length;}return _t$2(...y)};return (h,y)=>{f(),a(h);let m;for(;!(m=y(l()));)a();return f(),m}}function Ke$3(t,e,n={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function r(o,s,i){const c=t[o];if(i&&c===void 0)return;const f=typeof c;if(f!==s||c===null)throw new Error(`param "${o}" is invalid: expected ${s}, got ${f}`)}Object.entries(e).forEach(([o,s])=>r(o,s,false)),Object.entries(n).forEach(([o,s])=>r(o,s,true));}function So$1(t){const e=new WeakMap;return (n,...r)=>{const o=e.get(n);if(o!==void 0)return o;const s=t(n,...r);return e.set(n,s),s}}const st$1=BigInt(0),nt$1=BigInt(1),qt$2=BigInt(2),Oo$1=BigInt(3),No$1=BigInt(4),Uo$1=BigInt(5),Bf=BigInt(7),_o$1=BigInt(8),Af=BigInt(9),Ro$1=BigInt(16);function ct$1(t,e){const n=t%e;return n>=st$1?n:e+n}function gt$2(t,e,n){let r=t;for(;e-- >st$1;)r*=r,r%=n;return r}function $o$1(t,e){if(t===st$1)throw new Error("invert: expected non-zero number");if(e<=st$1)throw new Error("invert: expected positive modulus, got "+e);let n=ct$1(t,e),r=e,o=st$1,s=nt$1;for(;n!==st$1;){const c=r/n,f=r%n,u=o-s*c;r=n,n=f,o=s,s=u;}if(r!==nt$1)throw new Error("invert: does not exist");return ct$1(o,e)}function $n$1(t,e,n){if(!t.eql(t.sqr(e),n))throw new Error("Cannot find square root")}function To$1(t,e){const n=(t.ORDER+nt$1)/No$1,r=t.pow(e,n);return $n$1(t,r,e),r}function If(t,e){const n=(t.ORDER-Uo$1)/_o$1,r=t.mul(e,qt$2),o=t.pow(r,n),s=t.mul(e,o),i=t.mul(t.mul(s,qt$2),o),c=t.mul(s,t.sub(i,t.ONE));return $n$1(t,c,e),c}function Sf(t){const e=Ht$2(t),n=Co$1(t),r=n(e,e.neg(e.ONE)),o=n(e,r),s=n(e,e.neg(r)),i=(t+Bf)/Ro$1;return (c,f)=>{let u=c.pow(f,i),a=c.mul(u,r);const l=c.mul(u,o),d=c.mul(u,s),h=c.eql(c.sqr(a),f),y=c.eql(c.sqr(l),f);u=c.cmov(u,a,h),a=c.cmov(d,l,y);const m=c.eql(c.sqr(a),f),v=c.cmov(u,a,m);return $n$1(c,v,f),v}}function Co$1(t){if(t<Oo$1)throw new Error("sqrt is not defined for small field");let e=t-nt$1,n=0;for(;e%qt$2===st$1;)e/=qt$2,n++;let r=qt$2;const o=Ht$2(t);for(;Lo$1(o,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return To$1;let s=o.pow(r,e);const i=(e+nt$1)/qt$2;return function(f,u){if(f.is0(u))return u;if(Lo$1(f,u)!==1)throw new Error("Cannot find square root");let a=n,l=f.mul(f.ONE,s),d=f.pow(u,e),h=f.pow(u,i);for(;!f.eql(d,f.ONE);){if(f.is0(d))return f.ZERO;let y=1,m=f.sqr(d);for(;!f.eql(m,f.ONE);)if(y++,m=f.sqr(m),y===a)throw new Error("Cannot find square root");const v=nt$1<<BigInt(a-y-1),U=f.pow(l,v);a=y,l=f.sqr(U),d=f.mul(d,l),h=f.mul(h,U);}return h}}function Of(t){return t%No$1===Oo$1?To$1:t%_o$1===Uo$1?If:t%Ro$1===Af?Sf(t):Co$1(t)}const Nf=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Uf(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},n=Nf.reduce((r,o)=>(r[o]="function",r),e);return Ke$3(t,n),t}function _f(t,e,n){if(n<st$1)throw new Error("invalid exponent, negatives unsupported");if(n===st$1)return t.ONE;if(n===nt$1)return e;let r=t.ONE,o=e;for(;n>st$1;)n&nt$1&&(r=t.mul(r,o)),o=t.sqr(o),n>>=nt$1;return r}function jo$1(t,e,n=false){const r=new Array(e.length).fill(n?t.ZERO:void 0),o=e.reduce((i,c,f)=>t.is0(c)?i:(r[f]=i,t.mul(i,c)),t.ONE),s=t.inv(o);return e.reduceRight((i,c,f)=>t.is0(c)?i:(r[f]=t.mul(i,r[f]),t.mul(i,c)),s),r}function Lo$1(t,e){const n=(t.ORDER-nt$1)/qt$2,r=t.pow(e,n),o=t.eql(r,t.ONE),s=t.eql(r,t.ZERO),i=t.eql(r,t.neg(t.ONE));if(!o&&!s&&!i)throw new Error("invalid Legendre symbol result");return o?1:s?0:-1}function ko$1(t,e){e!==void 0&&mt$2(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return {nBitLength:n,nByteLength:r}}function Ht$2(t,e,n=false,r={}){if(t<=st$1)throw new Error("invalid field: expected ORDER > 0, got "+t);let o,s,i=false,c;if(typeof e=="object"&&e!=null){if(r.sqrt||n)throw new Error("cannot specify opts in two arguments");const d=e;d.BITS&&(o=d.BITS),d.sqrt&&(s=d.sqrt),typeof d.isLE=="boolean"&&(n=d.isLE),typeof d.modFromBytes=="boolean"&&(i=d.modFromBytes),c=d.allowedLengths;}else typeof e=="number"&&(o=e),r.sqrt&&(s=r.sqrt);const{nBitLength:f,nByteLength:u}=ko$1(t,o);if(u>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let a;const l=Object.freeze({ORDER:t,isLE:n,BITS:f,BYTES:u,MASK:ye$3(f),ZERO:st$1,ONE:nt$1,allowedLengths:c,create:d=>ct$1(d,t),isValid:d=>{if(typeof d!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof d);return st$1<=d&&d<t},is0:d=>d===st$1,isValidNot0:d=>!l.is0(d)&&l.isValid(d),isOdd:d=>(d&nt$1)===nt$1,neg:d=>ct$1(-d,t),eql:(d,h)=>d===h,sqr:d=>ct$1(d*d,t),add:(d,h)=>ct$1(d+h,t),sub:(d,h)=>ct$1(d-h,t),mul:(d,h)=>ct$1(d*h,t),pow:(d,h)=>_f(l,d,h),div:(d,h)=>ct$1(d*$o$1(h,t),t),sqrN:d=>d*d,addN:(d,h)=>d+h,subN:(d,h)=>d-h,mulN:(d,h)=>d*h,inv:d=>$o$1(d,t),sqrt:s||(d=>(a||(a=Of(t)),a(l,d))),toBytes:d=>n?Un$1(d,u):Nn$1(d,u),fromBytes:(d,h=true)=>{if(c){if(!c.includes(d.length)||d.length>u)throw new Error("Field.fromBytes: expected "+c+" bytes, got "+d.length);const m=new Uint8Array(u);m.set(d,n?0:m.length-d.length),d=m;}if(d.length!==u)throw new Error("Field.fromBytes: expected "+u+" bytes, got "+d.length);let y=n?Me$4(d):Ve$3(d);if(i&&(y=ct$1(y,t)),!h&&!l.isValid(y))throw new Error("invalid field element: outside of range 0..ORDER");return y},invertBatch:d=>jo$1(l,d),cmov:(d,h,y)=>y?h:d});return Object.freeze(l)}function Po$1(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function Ho$1(t){const e=Po$1(t);return e+Math.ceil(e/2)}function Rf(t,e,n=false){const r=t.length,o=Po$1(e),s=Ho$1(e);if(r<16||r<s||r>1024)throw new Error("expected "+s+"-1024 bytes of input, got "+r);const i=n?Me$4(t):Ve$3(t),c=ct$1(i,e-nt$1)+nt$1;return n?Un$1(c,o):Nn$1(c,o)}const te$2=BigInt(0),Ft$2=BigInt(1);function qe$1(t,e){const n=e.negate();return t?n:e}function Tn$1(t,e){const n=jo$1(t.Fp,e.map(r=>r.Z));return e.map((r,o)=>t.fromAffine(r.toAffine(n[o])))}function Do$1(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Cn$1(t,e){Do$1(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),o=2**t,s=ye$3(t),i=BigInt(t);return {windows:n,windowSize:r,mask:s,maxNumber:o,shiftBy:i}}function Vo$1(t,e,n){const{windowSize:r,mask:o,maxNumber:s,shiftBy:i}=n;let c=Number(t&o),f=t>>i;c>r&&(c-=s,f+=Ft$2);const u=e*r,a=u+Math.abs(c)-1,l=c===0,d=c<0,h=e%2!==0;return {nextN:f,offset:a,isZero:l,isNeg:d,isNegF:h,offsetF:u}}function $f(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error("invalid point at index "+r)});}function Tf(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+r)});}const jn$1=new WeakMap,Mo$1=new WeakMap;function Ln$1(t){return Mo$1.get(t)||1}function Ko$1(t){if(t!==te$2)throw new Error("invalid wNAF")}class Cf{constructor(e,n){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=n;}_unsafeLadder(e,n,r=this.ZERO){let o=e;for(;n>te$2;)n&Ft$2&&(r=r.add(o)),o=o.double(),n>>=Ft$2;return r}precomputeWindow(e,n){const{windows:r,windowSize:o}=Cn$1(n,this.bits),s=[];let i=e,c=i;for(let f=0;f<r;f++){c=i,s.push(c);for(let u=1;u<o;u++)c=c.add(i),s.push(c);i=c.double();}return s}wNAF(e,n,r){if(!this.Fn.isValid(r))throw new Error("invalid scalar");let o=this.ZERO,s=this.BASE;const i=Cn$1(e,this.bits);for(let c=0;c<i.windows;c++){const{nextN:f,offset:u,isZero:a,isNeg:l,isNegF:d,offsetF:h}=Vo$1(r,c,i);r=f,a?s=s.add(qe$1(d,n[h])):o=o.add(qe$1(l,n[u]));}return Ko$1(r),{p:o,f:s}}wNAFUnsafe(e,n,r,o=this.ZERO){const s=Cn$1(e,this.bits);for(let i=0;i<s.windows&&r!==te$2;i++){const{nextN:c,offset:f,isZero:u,isNeg:a}=Vo$1(r,i,s);if(r=c,!u){const l=n[f];o=o.add(a?l.negate():l);}}return Ko$1(r),o}getPrecomputes(e,n,r){let o=jn$1.get(n);return o||(o=this.precomputeWindow(n,e),e!==1&&(typeof r=="function"&&(o=r(o)),jn$1.set(n,o))),o}cached(e,n,r){const o=Ln$1(e);return this.wNAF(o,this.getPrecomputes(o,e,r),n)}unsafe(e,n,r,o){const s=Ln$1(e);return s===1?this._unsafeLadder(e,n,o):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),n,o)}createCache(e,n){Do$1(n,this.bits),Mo$1.set(e,n),jn$1.delete(e);}hasCache(e){return Ln$1(e)!==1}}function jf(t,e,n,r){let o=e,s=t.ZERO,i=t.ZERO;for(;n>te$2||r>te$2;)n&Ft$2&&(s=s.add(o)),r&Ft$2&&(i=i.add(o)),o=o.double(),n>>=Ft$2,r>>=Ft$2;return {p1:s,p2:i}}function Lf(t,e,n,r){$f(n,t),Tf(r,e);const o=n.length,s=r.length;if(o!==s)throw new Error("arrays of points and scalars must have equal length");const i=t.ZERO,c=Io$1(BigInt(o));let f=1;c>12?f=c-3:c>4?f=c-2:c>0&&(f=2);const u=ye$3(f),a=new Array(Number(u)+1).fill(i),l=Math.floor((e.BITS-1)/f)*f;let d=i;for(let h=l;h>=0;h-=f){a.fill(i);for(let m=0;m<s;m++){const v=r[m],U=Number(v>>BigInt(h)&u);a[U]=a[U].add(n[m]);}let y=i;for(let m=a.length-1,v=i;m>0;m--)v=v.add(a[m]),y=y.add(v);if(d=d.add(y),h!==0)for(let m=0;m<f;m++)d=d.double();}return d}function qo$1(t,e,n){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Uf(e),e}else return Ht$2(t,{isLE:n})}function kf(t,e,n={},r){if(r===void 0&&(r=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(const f of ["p","n","h"]){const u=e[f];if(!(typeof u=="bigint"&&u>te$2))throw new Error(`CURVE.${f} must be positive bigint`)}const o=qo$1(e.p,n.Fp,r),s=qo$1(e.n,n.Fn,r),c=["Gx","Gy","a","b"];for(const f of c)if(!o.isValid(e[f]))throw new Error(`CURVE.${f} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:o,Fn:s}}BigInt(0),BigInt(1),BigInt(2),BigInt(8),kr$1("HashToScalar-");const me$4=BigInt(0),ee$3=BigInt(1),Fe$3=BigInt(2);function Pf(t){return Ke$3(t,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...t})}function Hf(t){const e=Pf(t),{P:n,type:r,adjustScalarBytes:o,powPminus2:s,randomBytes:i}=e,c=r==="x25519";if(!c&&r!=="x448")throw new Error("invalid type");const f=i||Mt$2,u=c?255:448,a=c?32:56,l=BigInt(c?9:5),d=BigInt(c?121665:39081),h=c?Fe$3**BigInt(254):Fe$3**BigInt(447),y=c?BigInt(8)*Fe$3**BigInt(251)-ee$3:BigInt(4)*Fe$3**BigInt(445)-ee$3,m=h+y+ee$3,v=p=>ct$1(p,n),U=F(l);function F(p){return Un$1(v(p),a)}function R(p){const b=tt$2("u coordinate",p,a);return c&&(b[31]&=127),v(Me$4(b))}function Z(p){return Me$4(o(tt$2("scalar",p,a)))}function H(p,b){const g=k(R(b),Z(p));if(g===me$4)throw new Error("invalid private or public key received");return F(g)}function j(p){return H(p,U)}function L(p,b,g){const x=v(p*(b-g));return b=v(b-x),g=v(g+x),{x_2:b,x_3:g}}function k(p,b){Rn$1("u",p,me$4,n),Rn$1("scalar",b,h,m);const g=b,x=p;let E=ee$3,A=me$4,w=p,B=ee$3,I=me$4;for(let D=BigInt(u-1);D>=me$4;D--){const P=g>>D&ee$3;I^=P,{x_2:E,x_3:w}=L(I,E,w),{x_2:A,x_3:B}=L(I,A,B),I=P;const $=E+A,V=v($*$),q=E-A,G=v(q*q),M=V-G,Y=w+B,Yt=w-B,ce=v(Yt*$),fe=v(Y*q),Qn=ce+fe,tr=ce-fe;w=v(Qn*Qn),B=v(x*v(tr*tr)),E=v(V*G),A=v(M*(V+v(d*M)));}(({x_2:E,x_3:w}=L(I,E,w))),{x_2:A,x_3:B}=L(I,A,B);const N=s(A);return v(E*N)}const O={secretKey:a,publicKey:a,seed:a},T=(p=f(a))=>(ht$1(p,O.seed),p);function C(p){const b=T(p);return {secretKey:b,publicKey:j(b)}}return {keygen:C,getSharedSecret:(p,b)=>H(p,b),getPublicKey:p=>j(p),scalarMult:H,scalarMultBase:j,utils:{randomSecretKey:T,randomPrivateKey:T},GuBytes:U.slice(),lengths:O}}const Df=BigInt(1),Fo$1=BigInt(2),Vf=BigInt(3),Mf=BigInt(5);BigInt(8);const Zo$1=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),qf={p:Zo$1,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")};function Ff(t){const e=BigInt(10),n=BigInt(20),r=BigInt(40),o=BigInt(80),s=Zo$1,c=t*t%s*t%s,f=gt$2(c,Fo$1,s)*c%s,u=gt$2(f,Df,s)*t%s,a=gt$2(u,Mf,s)*u%s,l=gt$2(a,e,s)*a%s,d=gt$2(l,n,s)*l%s,h=gt$2(d,r,s)*d%s,y=gt$2(h,o,s)*h%s,m=gt$2(y,o,s)*h%s,v=gt$2(m,e,s)*a%s;return {pow_p_5_8:gt$2(v,Fo$1,s)*t%s,b2:c}}function Zf(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}const Gf=Ht$2(qf.p,{isLE:true}),kn$1=(()=>{const t=Gf.ORDER;return Hf({P:t,type:"x25519",powPminus2:e=>{const{pow_p_5_8:n,b2:r}=Ff(e);return ct$1(gt$2(n,Vf,t)*r,t)},adjustScalarBytes:Zf})})(),Go$1=(t,e)=>(t+(t>=0?e:-e)/zo$1)/e;function zf(t,e,n){const[[r,o],[s,i]]=e,c=Go$1(i*t,n),f=Go$1(-o*t,n);let u=t-c*r-f*s,a=-c*o-f*i;const l=u<Et$3,d=a<Et$3;l&&(u=-u),d&&(a=-a);const h=ye$3(Math.ceil(Io$1(n)/2))+ne$2;if(u<Et$3||u>=h||a<Et$3||a>=h)throw new Error("splitScalar (endomorphism): failed, k="+t);return {k1neg:l,k1:u,k2neg:d,k2:a}}function Pn$1(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Hn$1(t,e){const n={};for(let r of Object.keys(e))n[r]=t[r]===void 0?e[r]:t[r];return He$2(n.lowS,"lowS"),He$2(n.prehash,"prehash"),n.format!==void 0&&Pn$1(n.format),n}class Yf extends Error{constructor(e=""){super(e);}}const xt$2={Err:Yf,_tlv:{encode:(t,e)=>{const{Err:n}=xt$2;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length&1)throw new n("tlv.encode: unpadded data");const r=e.length/2,o=De$2(r);if(o.length/2&128)throw new n("tlv.encode: long form length too big");const s=r>127?De$2(o.length/2|128):"";return De$2(t)+s+o+e},decode(t,e){const{Err:n}=xt$2;let r=0;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length<2||e[r++]!==t)throw new n("tlv.decode: wrong tlv");const o=e[r++],s=!!(o&128);let i=0;if(!s)i=o;else {const f=o&127;if(!f)throw new n("tlv.decode(long): indefinite length not supported");if(f>4)throw new n("tlv.decode(long): byte length is too big");const u=e.subarray(r,r+f);if(u.length!==f)throw new n("tlv.decode: length bytes not complete");if(u[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const a of u)i=i<<8|a;if(r+=f,i<128)throw new n("tlv.decode(long): not minimal encoding")}const c=e.subarray(r,r+i);if(c.length!==i)throw new n("tlv.decode: wrong value length");return {v:c,l:e.subarray(r+i)}}},_int:{encode(t){const{Err:e}=xt$2;if(t<Et$3)throw new e("integer: negative integers are not allowed");let n=De$2(t);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return n},decode(t){const{Err:e}=xt$2;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Ve$3(t)}},toSig(t){const{Err:e,_int:n,_tlv:r}=xt$2,o=tt$2("signature",t),{v:s,l:i}=r.decode(48,o);if(i.length)throw new e("invalid signature: left bytes after parsing");const{v:c,l:f}=r.decode(2,s),{v:u,l:a}=r.decode(2,f);if(a.length)throw new e("invalid signature: left bytes after parsing");return {r:n.decode(c),s:n.decode(u)}},hexFromSig(t){const{_tlv:e,_int:n}=xt$2,r=e.encode(2,n.encode(t.r)),o=e.encode(2,n.encode(t.s)),s=r+o;return e.encode(48,s)}},Et$3=BigInt(0),ne$2=BigInt(1),zo$1=BigInt(2),Ze$2=BigInt(3),Wf=BigInt(4);function re$2(t,e){const{BYTES:n}=t;let r;if(typeof e=="bigint")r=e;else {let o=tt$2("private key",e);try{r=t.fromBytes(o);}catch{throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof e}`)}}if(!t.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function Xf(t,e={}){const n=kf("weierstrass",t,e),{Fp:r,Fn:o}=n;let s=n.CURVE;const{h:i,n:c}=s;Ke$3(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:f}=e;if(f&&(!r.is0(s.a)||typeof f.beta!="bigint"||!Array.isArray(f.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const u=Wo$1(r,o);function a(){if(!r.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function l(_,p,b){const{x:g,y:x}=p.toAffine(),E=r.toBytes(g);if(He$2(b,"isCompressed"),b){a();const A=!r.isOdd(x);return _t$2(Yo$1(A),E)}else return _t$2(Uint8Array.of(4),E,r.toBytes(x))}function d(_){Kt$2(_,void 0,"Point");const{publicKey:p,publicKeyUncompressed:b}=u,g=_.length,x=_[0],E=_.subarray(1);if(g===p&&(x===2||x===3)){const A=r.fromBytes(E);if(!r.isValid(A))throw new Error("bad point: is not on curve, wrong x");const w=m(A);let B;try{B=r.sqrt(w);}catch(D){const P=D instanceof Error?": "+D.message:"";throw new Error("bad point: is not on curve, sqrt error"+P)}a();const I=r.isOdd(B);return (x&1)===1!==I&&(B=r.neg(B)),{x:A,y:B}}else if(g===b&&x===4){const A=r.BYTES,w=r.fromBytes(E.subarray(0,A)),B=r.fromBytes(E.subarray(A,A*2));if(!v(w,B))throw new Error("bad point: is not on curve");return {x:w,y:B}}else throw new Error(`bad point: got length ${g}, expected compressed=${p} or uncompressed=${b}`)}const h=e.toBytes||l,y=e.fromBytes||d;function m(_){const p=r.sqr(_),b=r.mul(p,_);return r.add(r.add(b,r.mul(_,s.a)),s.b)}function v(_,p){const b=r.sqr(p),g=m(_);return r.eql(b,g)}if(!v(s.Gx,s.Gy))throw new Error("bad curve params: generator point");const U=r.mul(r.pow(s.a,Ze$2),Wf),F=r.mul(r.sqr(s.b),BigInt(27));if(r.is0(r.add(U,F)))throw new Error("bad curve params: a or b");function R(_,p,b=false){if(!r.isValid(p)||b&&r.is0(p))throw new Error(`bad point coordinate ${_}`);return p}function Z(_){if(!(_ instanceof O))throw new Error("ProjectivePoint expected")}function H(_){if(!f||!f.basises)throw new Error("no endo");return zf(_,f.basises,o.ORDER)}const j=So$1((_,p)=>{const{X:b,Y:g,Z:x}=_;if(r.eql(x,r.ONE))return {x:b,y:g};const E=_.is0();p==null&&(p=E?r.ONE:r.inv(x));const A=r.mul(b,p),w=r.mul(g,p),B=r.mul(x,p);if(E)return {x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return {x:A,y:w}}),L=So$1(_=>{if(_.is0()){if(e.allowInfinityPoint&&!r.is0(_.Y))return;throw new Error("bad point: ZERO")}const{x:p,y:b}=_.toAffine();if(!r.isValid(p)||!r.isValid(b))throw new Error("bad point: x or y not field elements");if(!v(p,b))throw new Error("bad point: equation left != right");if(!_.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return true});function k(_,p,b,g,x){return b=new O(r.mul(b.X,_),b.Y,b.Z),p=qe$1(g,p),b=qe$1(x,b),p.add(b)}class O{constructor(p,b,g){this.X=R("x",p),this.Y=R("y",b,true),this.Z=R("z",g),Object.freeze(this);}static CURVE(){return s}static fromAffine(p){const{x:b,y:g}=p||{};if(!p||!r.isValid(b)||!r.isValid(g))throw new Error("invalid affine point");if(p instanceof O)throw new Error("projective point not allowed");return r.is0(b)&&r.is0(g)?O.ZERO:new O(b,g,r.ONE)}static fromBytes(p){const b=O.fromAffine(y(Kt$2(p,void 0,"point")));return b.assertValidity(),b}static fromHex(p){return O.fromBytes(tt$2("pointHex",p))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(p=8,b=true){return C.createCache(this,p),b||this.multiply(Ze$2),this}assertValidity(){L(this);}hasEvenY(){const{y:p}=this.toAffine();if(!r.isOdd)throw new Error("Field doesn't support isOdd");return !r.isOdd(p)}equals(p){Z(p);const{X:b,Y:g,Z:x}=this,{X:E,Y:A,Z:w}=p,B=r.eql(r.mul(b,w),r.mul(E,x)),I=r.eql(r.mul(g,w),r.mul(A,x));return B&&I}negate(){return new O(this.X,r.neg(this.Y),this.Z)}double(){const{a:p,b}=s,g=r.mul(b,Ze$2),{X:x,Y:E,Z:A}=this;let w=r.ZERO,B=r.ZERO,I=r.ZERO,N=r.mul(x,x),D=r.mul(E,E),P=r.mul(A,A),$=r.mul(x,E);return $=r.add($,$),I=r.mul(x,A),I=r.add(I,I),w=r.mul(p,I),B=r.mul(g,P),B=r.add(w,B),w=r.sub(D,B),B=r.add(D,B),B=r.mul(w,B),w=r.mul($,w),I=r.mul(g,I),P=r.mul(p,P),$=r.sub(N,P),$=r.mul(p,$),$=r.add($,I),I=r.add(N,N),N=r.add(I,N),N=r.add(N,P),N=r.mul(N,$),B=r.add(B,N),P=r.mul(E,A),P=r.add(P,P),N=r.mul(P,$),w=r.sub(w,N),I=r.mul(P,D),I=r.add(I,I),I=r.add(I,I),new O(w,B,I)}add(p){Z(p);const{X:b,Y:g,Z:x}=this,{X:E,Y:A,Z:w}=p;let B=r.ZERO,I=r.ZERO,N=r.ZERO;const D=s.a,P=r.mul(s.b,Ze$2);let $=r.mul(b,E),V=r.mul(g,A),q=r.mul(x,w),G=r.add(b,g),M=r.add(E,A);G=r.mul(G,M),M=r.add($,V),G=r.sub(G,M),M=r.add(b,x);let Y=r.add(E,w);return M=r.mul(M,Y),Y=r.add($,q),M=r.sub(M,Y),Y=r.add(g,x),B=r.add(A,w),Y=r.mul(Y,B),B=r.add(V,q),Y=r.sub(Y,B),N=r.mul(D,M),B=r.mul(P,q),N=r.add(B,N),B=r.sub(V,N),N=r.add(V,N),I=r.mul(B,N),V=r.add($,$),V=r.add(V,$),q=r.mul(D,q),M=r.mul(P,M),V=r.add(V,q),q=r.sub($,q),q=r.mul(D,q),M=r.add(M,q),$=r.mul(V,M),I=r.add(I,$),$=r.mul(Y,M),B=r.mul(G,B),B=r.sub(B,$),$=r.mul(G,V),N=r.mul(Y,N),N=r.add(N,$),new O(B,I,N)}subtract(p){return this.add(p.negate())}is0(){return this.equals(O.ZERO)}multiply(p){const{endo:b}=e;if(!o.isValidNot0(p))throw new Error("invalid scalar: out of range");let g,x;const E=A=>C.cached(this,A,w=>Tn$1(O,w));if(b){const{k1neg:A,k1:w,k2neg:B,k2:I}=H(p),{p:N,f:D}=E(w),{p:P,f:$}=E(I);x=D.add($),g=k(b.beta,N,P,A,B);}else {const{p:A,f:w}=E(p);g=A,x=w;}return Tn$1(O,[g,x])[0]}multiplyUnsafe(p){const{endo:b}=e,g=this;if(!o.isValid(p))throw new Error("invalid scalar: out of range");if(p===Et$3||g.is0())return O.ZERO;if(p===ne$2)return g;if(C.hasCache(this))return this.multiply(p);if(b){const{k1neg:x,k1:E,k2neg:A,k2:w}=H(p),{p1:B,p2:I}=jf(O,g,E,w);return k(b.beta,B,I,x,A)}else return C.unsafe(g,p)}multiplyAndAddUnsafe(p,b,g){const x=this.multiplyUnsafe(b).add(p.multiplyUnsafe(g));return x.is0()?void 0:x}toAffine(p){return j(this,p)}isTorsionFree(){const{isTorsionFree:p}=e;return i===ne$2?true:p?p(O,this):C.unsafe(this,c).is0()}clearCofactor(){const{clearCofactor:p}=e;return i===ne$2?this:p?p(O,this):this.multiplyUnsafe(i)}isSmallOrder(){return this.multiplyUnsafe(i).is0()}toBytes(p=true){return He$2(p,"isCompressed"),this.assertValidity(),h(O,this,p)}toHex(p=true){return Jt$2(this.toBytes(p))}toString(){return `<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(p=true){return this.toBytes(p)}_setWindowSize(p){this.precompute(p);}static normalizeZ(p){return Tn$1(O,p)}static msm(p,b){return Lf(O,o,p,b)}static fromPrivateKey(p){return O.BASE.multiply(re$2(o,p))}}O.BASE=new O(s.Gx,s.Gy,r.ONE),O.ZERO=new O(r.ZERO,r.ONE,r.ZERO),O.Fp=r,O.Fn=o;const T=o.BITS,C=new Cf(O,e.endo?Math.ceil(T/2):T);return O.BASE.precompute(8),O}function Yo$1(t){return Uint8Array.of(t?2:3)}function Wo$1(t,e){return {secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:true,signature:2*e.BYTES}}function Jf(t,e={}){const{Fn:n}=t,r=e.randomBytes||Mt$2,o=Object.assign(Wo$1(t.Fp,n),{seed:Ho$1(n.ORDER)});function s(h){try{return !!re$2(n,h)}catch{return false}}function i(h,y){const{publicKey:m,publicKeyUncompressed:v}=o;try{const U=h.length;return y===!0&&U!==m||y===!1&&U!==v?!1:!!t.fromBytes(h)}catch{return false}}function c(h=r(o.seed)){return Rf(Kt$2(h,o.seed,"seed"),n.ORDER)}function f(h,y=true){return t.BASE.multiply(re$2(n,h)).toBytes(y)}function u(h){const y=c(h);return {secretKey:y,publicKey:f(y)}}function a(h){if(typeof h=="bigint")return false;if(h instanceof t)return true;const{secretKey:y,publicKey:m,publicKeyUncompressed:v}=o;if(n.allowedLengths||y===m)return;const U=tt$2("key",h).length;return U===m||U===v}function l(h,y,m=true){if(a(h)===true)throw new Error("first arg must be private key");if(a(y)===false)throw new Error("second arg must be public key");const v=re$2(n,h);return t.fromHex(y).multiply(v).toBytes(m)}return Object.freeze({getPublicKey:f,getSharedSecret:l,keygen:u,Point:t,utils:{isValidSecretKey:s,isValidPublicKey:i,randomSecretKey:c,isValidPrivateKey:s,randomPrivateKey:c,normPrivateKeyToScalar:h=>re$2(n,h),precompute(h=8,y=t.BASE){return y.precompute(h,false)}},lengths:o})}function Qf(t,e,n={}){Ue$3(e),Ke$3(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||Mt$2,o=n.hmac||((b,...g)=>ke$3(e,b,_t$2(...g))),{Fp:s,Fn:i}=t,{ORDER:c,BITS:f}=i,{keygen:u,getPublicKey:a,getSharedSecret:l,utils:d,lengths:h}=Jf(t,n),y={prehash:false,lowS:typeof n.lowS=="boolean"?n.lowS:false,format:void 0,extraEntropy:false},m="compact";function v(b){const g=c>>ne$2;return b>g}function U(b,g){if(!i.isValidNot0(g))throw new Error(`invalid signature ${b}: out of range 1..Point.Fn.ORDER`);return g}function F(b,g){Pn$1(g);const x=h.signature,E=g==="compact"?x:g==="recovered"?x+1:void 0;return Kt$2(b,E,`${g} signature`)}class R{constructor(g,x,E){this.r=U("r",g),this.s=U("s",x),E!=null&&(this.recovery=E),Object.freeze(this);}static fromBytes(g,x=m){F(g,x);let E;if(x==="der"){const{r:I,s:N}=xt$2.toSig(Kt$2(g));return new R(I,N)}x==="recovered"&&(E=g[0],x="compact",g=g.subarray(1));const A=i.BYTES,w=g.subarray(0,A),B=g.subarray(A,A*2);return new R(i.fromBytes(w),i.fromBytes(B),E)}static fromHex(g,x){return this.fromBytes(_e$3(g),x)}addRecoveryBit(g){return new R(this.r,this.s,g)}recoverPublicKey(g){const x=s.ORDER,{r:E,s:A,recovery:w}=this;if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");if(c*zo$1<x&&w>1)throw new Error("recovery id is ambiguous for h>1 curve");const I=w===2||w===3?E+c:E;if(!s.isValid(I))throw new Error("recovery id 2 or 3 invalid");const N=s.toBytes(I),D=t.fromBytes(_t$2(Yo$1((w&1)===0),N)),P=i.inv(I),$=H(tt$2("msgHash",g)),V=i.create(-$*P),q=i.create(A*P),G=t.BASE.multiplyUnsafe(V).add(D.multiplyUnsafe(q));if(G.is0())throw new Error("point at infinify");return G.assertValidity(),G}hasHighS(){return v(this.s)}toBytes(g=m){if(Pn$1(g),g==="der")return _e$3(xt$2.hexFromSig(this));const x=i.toBytes(this.r),E=i.toBytes(this.s);if(g==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return _t$2(Uint8Array.of(this.recovery),x,E)}return _t$2(x,E)}toHex(g){return Jt$2(this.toBytes(g))}assertValidity(){}static fromCompact(g){return R.fromBytes(tt$2("sig",g),"compact")}static fromDER(g){return R.fromBytes(tt$2("sig",g),"der")}normalizeS(){return this.hasHighS()?new R(this.r,i.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return Jt$2(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return Jt$2(this.toBytes("compact"))}}const Z=n.bits2int||function(g){if(g.length>8192)throw new Error("input is too large");const x=Ve$3(g),E=g.length*8-f;return E>0?x>>BigInt(E):x},H=n.bits2int_modN||function(g){return i.create(Z(g))},j=ye$3(f);function L(b){return Rn$1("num < 2^"+f,b,Et$3,j),i.toBytes(b)}function k(b,g){return Kt$2(b,void 0,"message"),g?Kt$2(e(b),void 0,"prehashed message"):b}function O(b,g,x){if(["recovered","canonical"].some(V=>V in x))throw new Error("sign() legacy options not supported");const{lowS:E,prehash:A,extraEntropy:w}=Hn$1(x,y);b=k(b,A);const B=H(b),I=re$2(i,g),N=[L(I),L(B)];if(w!=null&&w!==false){const V=w===true?r(h.secretKey):w;N.push(tt$2("extraEntropy",V));}const D=_t$2(...N),P=B;function $(V){const q=Z(V);if(!i.isValidNot0(q))return;const G=i.inv(q),M=t.BASE.multiply(q).toAffine(),Y=i.create(M.x);if(Y===Et$3)return;const Yt=i.create(G*i.create(P+Y*I));if(Yt===Et$3)return;let ce=(M.x===Y?0:2)|Number(M.y&ne$2),fe=Yt;return E&&v(Yt)&&(fe=i.neg(Yt),ce^=1),new R(Y,fe,ce)}return {seed:D,k2sig:$}}function T(b,g,x={}){b=tt$2("message",b);const{seed:E,k2sig:A}=O(b,g,x);return Ef(e.outputLen,i.BYTES,o)(E,A)}function C(b){let g;const x=typeof b=="string"||Ne(b),E=!x&&b!==null&&typeof b=="object"&&typeof b.r=="bigint"&&typeof b.s=="bigint";if(!x&&!E)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(E)g=new R(b.r,b.s);else if(x){try{g=R.fromBytes(tt$2("sig",b),"der");}catch(A){if(!(A instanceof xt$2.Err))throw A}if(!g)try{g=R.fromBytes(tt$2("sig",b),"compact");}catch{return false}}return g||false}function _(b,g,x,E={}){const{lowS:A,prehash:w,format:B}=Hn$1(E,y);if(x=tt$2("publicKey",x),g=k(tt$2("message",g),w),"strict"in E)throw new Error("options.strict was renamed to lowS");const I=B===void 0?C(b):R.fromBytes(tt$2("sig",b),B);if(I===false)return false;try{const N=t.fromBytes(x);if(A&&I.hasHighS())return !1;const{r:D,s:P}=I,$=H(g),V=i.inv(P),q=i.create($*V),G=i.create(D*V),M=t.BASE.multiplyUnsafe(q).add(N.multiplyUnsafe(G));return M.is0()?!1:i.create(M.x)===D}catch{return false}}function p(b,g,x={}){const{prehash:E}=Hn$1(x,y);return g=k(g,E),R.fromBytes(b,"recovered").recoverPublicKey(g).toBytes()}return Object.freeze({keygen:u,getPublicKey:a,getSharedSecret:l,utils:d,lengths:h,Point:t,sign:T,verify:_,recoverPublicKey:p,Signature:R,hash:e})}function ta$1(t){const e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},n=t.Fp;let r=t.allowedPrivateKeyLengths?Array.from(new Set(t.allowedPrivateKeyLengths.map(i=>Math.ceil(i/2)))):void 0;const o=Ht$2(e.n,{BITS:t.nBitLength,allowedLengths:r,modFromBytes:t.wrapPrivateKey}),s={Fp:n,Fn:o,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return {CURVE:e,curveOpts:s}}function ea$1(t){const{CURVE:e,curveOpts:n}=ta$1(t),r={hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return {CURVE:e,curveOpts:n,hash:t.hash,ecdsaOpts:r}}function na(t,e){const n=e.Point;return Object.assign({},e,{ProjectivePoint:n,CURVE:Object.assign({},t,ko$1(n.Fn.ORDER,n.Fn.BITS))})}function ra(t){const{CURVE:e,curveOpts:n,hash:r,ecdsaOpts:o}=ea$1(t),s=Xf(e,n),i=Qf(s,r,o);return na(t,i)}function Dn$1(t,e){const n=r=>ra({...t,hash:r});return {...n(e),create:n}}const Xo$1={p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")},Jo$1={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")},Qo$1={p:BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),h:BigInt(1),a:BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")},oa=Ht$2(Xo$1.p),sa=Ht$2(Jo$1.p),ia=Ht$2(Qo$1.p),ca=Dn$1({...Xo$1,Fp:oa,lowS:false},$e$2);Dn$1({...Jo$1,Fp:sa,lowS:false},yc),Dn$1({...Qo$1,Fp:ia,lowS:false,allowedPrivateKeyLengths:[130,131,132]},bc);const fa=ca,Vn$1="base10",rt$1="base16",oe$3="base64pad",Ge$2="base64url",se$2="utf8",Mn$1=0,ie$2=1,we$3=2,aa=0,ts$1=1,ve$3=12,Kn$1=32;function ua(){const t=kn$1.utils.randomPrivateKey(),e=kn$1.getPublicKey(t);return {privateKey:toString(t,rt$1),publicKey:toString(e,rt$1)}}function la(){const t=Mt$2(Kn$1);return toString(t,rt$1)}function da(t,e){const n=kn$1.getSharedSecret(fromString(t,rt$1),fromString(e,rt$1)),r=vf(Pe$3,n,void 0,void 0,Kn$1);return toString(r,rt$1)}function ha(t){const e=Pe$3(fromString(t,rt$1));return toString(e,rt$1)}function pa(t){const e=Pe$3(fromString(t,se$2));return toString(e,rt$1)}function qn$1(t){return fromString(`${t}`,Vn$1)}function Zt$2(t){return Number(toString(t,Vn$1))}function es$1(t){return t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function ns$1(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=(4-e.length%4)%4;return e+"=".repeat(n)}function ga(t){const e=qn$1(typeof t.type<"u"?t.type:Mn$1);if(Zt$2(e)===ie$2&&typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const n=typeof t.senderPublicKey<"u"?fromString(t.senderPublicKey,rt$1):void 0,r=typeof t.iv<"u"?fromString(t.iv,rt$1):Mt$2(ve$3),o=fromString(t.symKey,rt$1),s=xo$1(o,r).encrypt(fromString(t.message,se$2)),i=Fn$1({type:e,sealed:s,iv:r,senderPublicKey:n});return t.encoding===Ge$2?es$1(i):i}function ba(t){const e=fromString(t.symKey,rt$1),{sealed:n,iv:r}=ze$1({encoded:t.encoded,encoding:t.encoding}),o=xo$1(e,r).decrypt(n);if(o===null)throw new Error("Failed to decrypt");return toString(o,se$2)}function ya(t,e){const n=qn$1(we$3),r=Mt$2(ve$3),o=fromString(t,se$2),s=Fn$1({type:n,sealed:o,iv:r});return e===Ge$2?es$1(s):s}function ma(t,e){const{sealed:n}=ze$1({encoded:t,encoding:e});return toString(n,se$2)}function Fn$1(t){if(Zt$2(t.type)===we$3)return toString(concat([t.type,t.sealed]),oe$3);if(Zt$2(t.type)===ie$2){if(typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return toString(concat([t.type,t.senderPublicKey,t.iv,t.sealed]),oe$3)}return toString(concat([t.type,t.iv,t.sealed]),oe$3)}function ze$1(t){const e=(t.encoding||oe$3)===Ge$2?ns$1(t.encoded):t.encoded,n=fromString(e,oe$3),r=n.slice(aa,ts$1),o=ts$1;if(Zt$2(r)===ie$2){const f=o+Kn$1,u=f+ve$3,a=n.slice(o,f),l=n.slice(f,u),d=n.slice(u);return {type:r,sealed:d,iv:l,senderPublicKey:a}}if(Zt$2(r)===we$3){const f=n.slice(o),u=Mt$2(ve$3);return {type:r,sealed:f,iv:u}}const s=o+ve$3,i=n.slice(o,s),c=n.slice(s);return {type:r,sealed:c,iv:i}}function wa(t,e){const n=ze$1({encoded:t,encoding:e?.encoding});return rs({type:Zt$2(n.type),senderPublicKey:typeof n.senderPublicKey<"u"?toString(n.senderPublicKey,rt$1):void 0,receiverPublicKey:e?.receiverPublicKey})}function rs(t){const e=t?.type||Mn$1;if(e===ie$2){if(typeof t?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof t?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return {type:e,senderPublicKey:t?.senderPublicKey,receiverPublicKey:t?.receiverPublicKey}}function va(t){return t.type===ie$2&&typeof t.senderPublicKey=="string"&&typeof t.receiverPublicKey=="string"}function xa(t){return t.type===we$3}function os(t){const e=Buffer.from(t.x,"base64"),n=Buffer.from(t.y,"base64");return concat([new Uint8Array([4]),e,n])}function Ea(t,e){const[n,r,o]=t.split("."),s=Buffer.from(ns$1(o),"base64");if(s.length!==64)throw new Error("Invalid signature length");const i=s.slice(0,32),c=s.slice(32,64),f=`${n}.${r}`,u=Pe$3(f),a=os(e);if(!fa.verify(concat([i,c]),u,a))throw new Error("Invalid signature");return sn$1(t).payload}const ss$1="irn";function Ba(t){return t?.relay||{protocol:ss$1}}function Aa(t){const e=C$3[t];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${t}`);return e}var Ia=Object.defineProperty,Sa=Object.defineProperties,Oa=Object.getOwnPropertyDescriptors,is$1=Object.getOwnPropertySymbols,Na=Object.prototype.hasOwnProperty,Ua=Object.prototype.propertyIsEnumerable,cs=(t,e,n)=>e in t?Ia(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,Zn$1=(t,e)=>{for(var n in e||(e={}))Na.call(e,n)&&cs(t,n,e[n]);if(is$1)for(var n of is$1(e))Ua.call(e,n)&&cs(t,n,e[n]);return t},_a=(t,e)=>Sa(t,Oa(e));function fs(t,e="-"){const n={},r="relay"+e;return Object.keys(t).forEach(o=>{if(o.startsWith(r)){const s=o.replace(r,""),i=t[o];n[s]=i;}}),n}function Ra(t){if(!t.includes("wc:")){const u=cn$1(t);u!=null&&u.includes("wc:")&&(t=u);}t=t.includes("wc://")?t.replace("wc://",""):t,t=t.includes("wc:")?t.replace("wc:",""):t;const e=t.indexOf(":"),n=t.indexOf("?")!==-1?t.indexOf("?"):void 0,r=t.substring(0,e),o=t.substring(e+1,n).split("@"),s=typeof n<"u"?t.substring(n):"",i=new URLSearchParams(s),c=Object.fromEntries(i.entries()),f=typeof c.methods=="string"?c.methods.split(","):void 0;return {protocol:r,topic:as(o[0]),version:parseInt(o[1],10),symKey:c.symKey,relay:fs(c),methods:f,expiryTimestamp:c.expiryTimestamp?parseInt(c.expiryTimestamp,10):void 0}}function as(t){return t.startsWith("//")?t.substring(2):t}function us(t,e="-"){const n="relay",r={};return Object.keys(t).forEach(o=>{const s=o,i=n+e+s;t[s]&&(r[i]=t[s]);}),r}function $a(t){const e=new URLSearchParams,n=Zn$1(Zn$1(_a(Zn$1({},us(t.relay)),{symKey:t.symKey}),t.expiryTimestamp&&{expiryTimestamp:t.expiryTimestamp.toString()}),t.methods&&{methods:t.methods.join(",")});return Object.entries(n).sort(([r],[o])=>r.localeCompare(o)).forEach(([r,o])=>{o!==void 0&&e.append(r,String(o));}),`${t.protocol}:${t.topic}@${t.version}?${e}`}function Ta(t,e,n){return `${t}?wc_ev=${n}&topic=${e}`}var Ca=Object.defineProperty,ja=Object.defineProperties,La=Object.getOwnPropertyDescriptors,ls=Object.getOwnPropertySymbols,ka=Object.prototype.hasOwnProperty,Pa=Object.prototype.propertyIsEnumerable,ds=(t,e,n)=>e in t?Ca(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,Ha=(t,e)=>{for(var n in e||(e={}))ka.call(e,n)&&ds(t,n,e[n]);if(ls)for(var n of ls(e))Pa.call(e,n)&&ds(t,n,e[n]);return t},Da=(t,e)=>ja(t,La(e));function Gt$2(t){const e=[];return t.forEach(n=>{const[r,o]=n.split(":");e.push(`${r}:${o}`);}),e}function hs(t){const e=[];return Object.values(t).forEach(n=>{e.push(...Gt$2(n.accounts));}),e}function ps(t,e){const n=[];return Object.values(t).forEach(r=>{Gt$2(r.accounts).includes(e)&&n.push(...r.methods);}),n}function gs(t,e){const n=[];return Object.values(t).forEach(r=>{Gt$2(r.accounts).includes(e)&&n.push(...r.events);}),n}function Gn$1(t){return t.includes(":")}function bs$1(t){return Gn$1(t)?t.split(":")[0]:t}function xe$1(t){var e,n,r;const o={};if(!Ye$2(t))return o;for(const[s,i]of Object.entries(t)){const c=Gn$1(s)?[s]:i.chains,f=i.methods||[],u=i.events||[],a=bs$1(s);o[a]=Da(Ha({},o[a]),{chains:ut$2(c,(e=o[a])==null?void 0:e.chains),methods:ut$2(f,(n=o[a])==null?void 0:n.methods),events:ut$2(u,(r=o[a])==null?void 0:r.events)});}return o}function ys(t){const e={};return t?.forEach(n=>{var r;const[o,s]=n.split(":");e[o]||(e[o]={accounts:[],chains:[],events:[],methods:[]}),e[o].accounts.push(n),(r=e[o].chains)==null||r.push(`${o}:${s}`);}),e}function Ka(t,e){e=e.map(r=>r.replace("did:pkh:",""));const n=ys(e);for(const[r,o]of Object.entries(n))o.methods?o.methods=ut$2(o.methods,t):o.methods=t,o.events=["chainChanged","accountsChanged"];return n}function qa(t,e){var n,r,o,s,i,c;const f=xe$1(t),u=xe$1(e),a={},l=Object.keys(f).concat(Object.keys(u));for(const d of l)a[d]={chains:ut$2((n=f[d])==null?void 0:n.chains,(r=u[d])==null?void 0:r.chains),methods:ut$2((o=f[d])==null?void 0:o.methods,(s=u[d])==null?void 0:s.methods),events:ut$2((i=f[d])==null?void 0:i.events,(c=u[d])==null?void 0:c.events)};return a}const ms={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},ws={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function Bt$2(t,e){const{message:n,code:r}=ws[t];return {message:e?`${n} ${e}`:n,code:r}}function zt$2(t,e){const{message:n,code:r}=ms[t];return {message:e?`${n} ${e}`:n,code:r}}function Ee$2(t,e){return Array.isArray(t)?true:false}function Ye$2(t){return Object.getPrototypeOf(t)===Object.prototype&&Object.keys(t).length}function Dt$1(t){return typeof t>"u"}function ft$2(t,e){return e&&Dt$1(t)?true:typeof t=="string"&&!!t.trim().length}function We$3(t,e){return e&&Dt$1(t)?true:typeof t=="number"&&!isNaN(t)}function Fa(t,e){const{requiredNamespaces:n}=e,r=Object.keys(t.namespaces),o=Object.keys(n);let s=true;return It$3(o,r)?(r.forEach(i=>{const{accounts:c,methods:f,events:u}=t.namespaces[i],a=Gt$2(c),l=n[i];(!It$3(Ie$1(i,l),a)||!It$3(l.methods,f)||!It$3(l.events,u))&&(s=false);}),s):false}function Be$2(t){return ft$2(t,false)&&t.includes(":")?t.split(":").length===2:false}function vs(t){if(ft$2(t,false)&&t.includes(":")){const e=t.split(":");if(e.length===3){const n=e[0]+":"+e[1];return !!e[2]&&Be$2(n)}}return false}function Za(t){function e(n){try{return typeof new URL(n)<"u"}catch{return false}}try{if(ft$2(t,!1)){if(e(t))return !0;const n=cn$1(t);return e(n)}}catch{}return false}function Ga(t){var e;return (e=t?.proposer)==null?void 0:e.publicKey}function za(t){return t?.topic}function Ya(t,e){let n=null;return ft$2(t?.publicKey,false)||(n=Bt$2("MISSING_OR_INVALID",`${e} controller public key should be a string`)),n}function zn$1(t){let e=true;return Ee$2(t)?t.length&&(e=t.every(n=>ft$2(n,false))):e=false,e}function xs$1(t,e,n){let r=null;return Ee$2(e)&&e.length?e.forEach(o=>{r||Be$2(o)||(r=zt$2("UNSUPPORTED_CHAINS",`${n}, chain ${o} should be a string and conform to "namespace:chainId" format`));}):Be$2(t)||(r=zt$2("UNSUPPORTED_CHAINS",`${n}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),r}function Es(t,e,n){let r=null;return Object.entries(t).forEach(([o,s])=>{if(r)return;const i=xs$1(o,Ie$1(o,s),`${e} ${n}`);i&&(r=i);}),r}function Bs(t,e){let n=null;return Ee$2(t)?t.forEach(r=>{n||vs(r)||(n=zt$2("UNSUPPORTED_ACCOUNTS",`${e}, account ${r} should be a string and conform to "namespace:chainId:address" format`));}):n=zt$2("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),n}function As$1(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const o=Bs(r?.accounts,`${e} namespace`);o&&(n=o);}),n}function Is(t,e){let n=null;return zn$1(t?.methods)?zn$1(t?.events)||(n=zt$2("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):n=zt$2("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),n}function Yn$1(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const o=Is(r,`${e}, namespace`);o&&(n=o);}),n}function Wa(t,e,n){let r=null;if(t&&Ye$2(t)){const o=Yn$1(t,e);o&&(r=o);const s=Es(t,e,n);s&&(r=s);}else r=Bt$2("MISSING_OR_INVALID",`${e}, ${n} should be an object with data`);return r}function Ss(t,e){let n=null;if(t&&Ye$2(t)){const r=Yn$1(t,e);r&&(n=r);const o=As$1(t,e);o&&(n=o);}else n=Bt$2("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return n}function Os$1(t){return ft$2(t.protocol,true)}function Xa(t,e){let n=false;return !t?n=true:t&&Ee$2(t)&&t.length&&t.forEach(r=>{n=Os$1(r);}),n}function Ja(t){return typeof t=="number"}function Qa(t){return typeof t<"u"&&typeof t!==null}function tu(t){return !(!t||typeof t!="object"||!t.code||!We$3(t.code,false)||!t.message||!ft$2(t.message,false))}function eu(t){return !(Dt$1(t)||!ft$2(t.method,false))}function nu(t){return !(Dt$1(t)||Dt$1(t.result)&&Dt$1(t.error)||!We$3(t.id,false)||!ft$2(t.jsonrpc,false))}function ru(t){return !(Dt$1(t)||!ft$2(t.name,false))}function ou(t,e){return !(!Be$2(e)||!hs(t).includes(e))}function su(t,e,n){return ft$2(n,false)?ps(t,e).includes(n):false}function iu(t,e,n){return ft$2(n,false)?gs(t,e).includes(n):false}function Ns$1(t,e,n){let r=null;const o=cu(t),s=fu(e),i=Object.keys(o),c=Object.keys(s),f=Us$1(Object.keys(t)),u=Us$1(Object.keys(e)),a=f.filter(l=>!u.includes(l));return a.length&&(r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces keys don't satisfy requiredNamespaces.
|
|
32327
32371
|
Required: ${a.toString()}
|
|
@@ -32329,7 +32373,7 @@ ${t.length}`,n=new TextEncoder().encode(e+t);return "0x"+Buffer.from(ic(n)).toSt
|
|
|
32329
32373
|
Required: ${i.toString()}
|
|
32330
32374
|
Approved: ${c.toString()}`)),Object.keys(e).forEach(l=>{if(!l.includes(":")||r)return;const d=Gt$2(e[l].accounts);d.includes(l)||(r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces accounts don't satisfy namespace accounts for ${l}
|
|
32331
32375
|
Required: ${l}
|
|
32332
|
-
Approved: ${d.toString()}`));}),i.forEach(l=>{r||(It$3(o[l].methods,s[l].methods)?It$3(o[l].events,s[l].events)||(r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces events don't satisfy namespace events for ${l}`)):r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces methods don't satisfy namespace methods for ${l}`));}),r}function cu(t){const e={};return Object.keys(t).forEach(n=>{var r;n.includes(":")?e[n]=t[n]:(r=t[n].chains)==null||r.forEach(o=>{e[o]={methods:t[n].methods,events:t[n].events};});}),e}function Us$1(t){return [...new Set(t.map(e=>e.includes(":")?e.split(":")[0]:e))]}function fu(t){const e={};return Object.keys(t).forEach(n=>{if(n.includes(":"))e[n]=t[n];else {const r=Gt$2(t[n].accounts);r?.forEach(o=>{e[o]={accounts:t[n].accounts.filter(s=>s.includes(`${o}:`)),methods:t[n].methods,events:t[n].events};});}}),e}function au(t,e){return We$3(t,false)&&t<=e.max&&t>=e.min}function uu(){const t=Vt$2();return new Promise(e=>{switch(t){case et$2.browser:e(_s());break;case et$2.reactNative:e(Rs());break;case et$2.node:e($s$1());break;default:e(true);}})}function _s(){return Wt$2()&&navigator?.onLine}async function Rs(){if(At$2()&&typeof global<"u"&&global!=null&&global.NetInfo){const t=await(global==null?void 0:global.NetInfo.fetch());return t?.isConnected}return true}function $s$1(){return true}function lu(t){switch(Vt$2()){case et$2.browser:Ts(t);break;case et$2.reactNative:Cs$1(t);break;}}function Ts(t){!At$2()&&Wt$2()&&(window.addEventListener("online",()=>t(true)),window.addEventListener("offline",()=>t(false)));}function Cs$1(t){At$2()&&typeof global<"u"&&global!=null&&global.NetInfo&&global?.NetInfo.addEventListener(e=>t(e?.isConnected));}function du(){var t;return Wt$2()&&cjsExports$2.getDocument()?((t=cjsExports$2.getDocument())==null?void 0:t.visibilityState)==="visible":true}const Wn$1={};class hu{static get(e){return Wn$1[e]}static set(e,n){Wn$1[e]=n;}static delete(e){delete Wn$1[e];}}function js$1(t){const e=
|
|
32376
|
+
Approved: ${d.toString()}`));}),i.forEach(l=>{r||(It$3(o[l].methods,s[l].methods)?It$3(o[l].events,s[l].events)||(r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces events don't satisfy namespace events for ${l}`)):r=Bt$2("NON_CONFORMING_NAMESPACES",`${n} namespaces methods don't satisfy namespace methods for ${l}`));}),r}function cu(t){const e={};return Object.keys(t).forEach(n=>{var r;n.includes(":")?e[n]=t[n]:(r=t[n].chains)==null||r.forEach(o=>{e[o]={methods:t[n].methods,events:t[n].events};});}),e}function Us$1(t){return [...new Set(t.map(e=>e.includes(":")?e.split(":")[0]:e))]}function fu(t){const e={};return Object.keys(t).forEach(n=>{if(n.includes(":"))e[n]=t[n];else {const r=Gt$2(t[n].accounts);r?.forEach(o=>{e[o]={accounts:t[n].accounts.filter(s=>s.includes(`${o}:`)),methods:t[n].methods,events:t[n].events};});}}),e}function au(t,e){return We$3(t,false)&&t<=e.max&&t>=e.min}function uu(){const t=Vt$2();return new Promise(e=>{switch(t){case et$2.browser:e(_s());break;case et$2.reactNative:e(Rs());break;case et$2.node:e($s$1());break;default:e(true);}})}function _s(){return Wt$2()&&navigator?.onLine}async function Rs(){if(At$2()&&typeof global<"u"&&global!=null&&global.NetInfo){const t=await(global==null?void 0:global.NetInfo.fetch());return t?.isConnected}return true}function $s$1(){return true}function lu(t){switch(Vt$2()){case et$2.browser:Ts(t);break;case et$2.reactNative:Cs$1(t);break;}}function Ts(t){!At$2()&&Wt$2()&&(window.addEventListener("online",()=>t(true)),window.addEventListener("offline",()=>t(false)));}function Cs$1(t){At$2()&&typeof global<"u"&&global!=null&&global.NetInfo&&global?.NetInfo.addEventListener(e=>t(e?.isConnected));}function du(){var t;return Wt$2()&&cjsExports$2.getDocument()?((t=cjsExports$2.getDocument())==null?void 0:t.visibilityState)==="visible":true}const Wn$1={};class hu{static get(e){return Wn$1[e]}static set(e,n){Wn$1[e]=n;}static delete(e){delete Wn$1[e];}}function js$1(t){const e=ue$2.decode(t);if(e.length<33)throw new Error("Too short to contain a public key");return e.slice(1,33)}function Ls$1({publicKey:t,signature:e,payload:n}){var r;const o=Xn$1(n.method),s=128|parseInt(((r=n.version)==null?void 0:r.toString())||"4"),i=gu(n.address),c=n.era==="00"?new Uint8Array([0]):Xn$1(n.era);if(c.length!==1&&c.length!==2)throw new Error("Invalid era length");const f=parseInt(n.nonce,16),u=new Uint8Array([f&255,f>>8&255]),a=BigInt(`0x${pu(n.tip)}`),l=yu(a),d=new Uint8Array([0,...t,i,...e,...c,...u,...l,...o]),h=bu(d.length+1);return new Uint8Array([...h,s,...d])}function ks$1(t){const e=Xn$1(t),n=blakejsExports.blake2b(e,void 0,32);return "0x"+Buffer.from(n).toString("hex")}function Xn$1(t){return new Uint8Array(t.replace(/^0x/,"").match(/.{1,2}/g).map(e=>parseInt(e,16)))}function pu(t){return t.startsWith("0x")?t.slice(2):t}function gu(t){const e=ue$2.decode(t)[0];return e===42?0:e===60?2:1}function bu(t){if(t<64)return new Uint8Array([t<<2]);if(t<16384){const e=t<<2|1;return new Uint8Array([e&255,e>>8&255])}else if(t<1<<30){const e=t<<2|2;return new Uint8Array([e&255,e>>8&255,e>>16&255,e>>24&255])}else throw new Error("Compact encoding > 2^30 not supported")}function yu(t){if(t<BigInt(1)<<BigInt(6))return new Uint8Array([Number(t<<BigInt(2))]);if(t<BigInt(1)<<BigInt(14)){const e=t<<BigInt(2)|BigInt(1);return new Uint8Array([Number(e&BigInt(255)),Number(e>>BigInt(8)&BigInt(255))])}else if(t<BigInt(1)<<BigInt(30)){const e=t<<BigInt(2)|BigInt(2);return new Uint8Array([Number(e&BigInt(255)),Number(e>>BigInt(8)&BigInt(255)),Number(e>>BigInt(16)&BigInt(255)),Number(e>>BigInt(24)&BigInt(255))])}else throw new Error("BigInt compact encoding not supported > 2^30")}function mu(t){const e=Uint8Array.from(Buffer.from(t.signature,"hex")),n=js$1(t.transaction.address),r=Ls$1({publicKey:n,signature:e,payload:t.transaction}),o=Buffer.from(r).toString("hex");return ks$1(o)}function wu({logger:t,name:e}){const n=typeof t=="string"?Y$2({opts:{level:t,name:e}}).logger:t;return n.level=typeof t=="string"?t:t.level,n}
|
|
32333
32377
|
|
|
32334
32378
|
const PARSE_ERROR = "PARSE_ERROR";
|
|
32335
32379
|
const INVALID_REQUEST = "INVALID_REQUEST";
|
|
@@ -32370,7 +32414,7 @@ function parseConnectionError(e, url, type) {
|
|
|
32370
32414
|
: e;
|
|
32371
32415
|
}
|
|
32372
32416
|
|
|
32373
|
-
var cjs = {};
|
|
32417
|
+
var cjs$1 = {};
|
|
32374
32418
|
|
|
32375
32419
|
var crypto$1 = {};
|
|
32376
32420
|
|
|
@@ -32427,22 +32471,22 @@ function requireEnv () {
|
|
|
32427
32471
|
return env;
|
|
32428
32472
|
}
|
|
32429
32473
|
|
|
32430
|
-
var hasRequiredCjs;
|
|
32474
|
+
var hasRequiredCjs$1;
|
|
32431
32475
|
|
|
32432
|
-
function requireCjs () {
|
|
32433
|
-
if (hasRequiredCjs) return cjs;
|
|
32434
|
-
hasRequiredCjs = 1;
|
|
32476
|
+
function requireCjs$1 () {
|
|
32477
|
+
if (hasRequiredCjs$1) return cjs$1;
|
|
32478
|
+
hasRequiredCjs$1 = 1;
|
|
32435
32479
|
(function (exports$1) {
|
|
32436
32480
|
Object.defineProperty(exports$1, "__esModule", { value: true });
|
|
32437
32481
|
const tslib_1 = require$$0;
|
|
32438
32482
|
tslib_1.__exportStar(requireCrypto(), exports$1);
|
|
32439
32483
|
tslib_1.__exportStar(requireEnv(), exports$1);
|
|
32440
32484
|
|
|
32441
|
-
} (cjs));
|
|
32442
|
-
return cjs;
|
|
32485
|
+
} (cjs$1));
|
|
32486
|
+
return cjs$1;
|
|
32443
32487
|
}
|
|
32444
32488
|
|
|
32445
|
-
var cjsExports = requireCjs();
|
|
32489
|
+
var cjsExports = requireCjs$1();
|
|
32446
32490
|
|
|
32447
32491
|
function payloadId(entropy = 3) {
|
|
32448
32492
|
const date = Date.now() * Math.pow(10, entropy);
|
|
@@ -33247,6 +33291,162 @@ function _(t){return t==null||typeof t!="object"&&typeof t!="function"}function
|
|
|
33247
33291
|
|
|
33248
33292
|
const q=e=>{let t,{get:s,on:i}=getWallets(),n=true,a=new F$1(new Me,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e);})),o=Array.from(r.values()).map((e=>new F$1(e,n))).concat(a),t?.(o);}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new F$1(e,n))).concat(a),t?.(o);}let d=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e;},onMount:()=>{d[0]||(d[0]=i("register",l)),d[1]||(d[1]=i("unregister",c));},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop();},get:()=>o}};function V(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var I=0;function D(e){return "__private_"+I+++"_"+e}var z=/*#__PURE__*/D("_address"),B=/*#__PURE__*/D("_publicKey"),J=/*#__PURE__*/D("_chains"),N=/*#__PURE__*/D("_features"),L=/*#__PURE__*/D("_label"),Y=/*#__PURE__*/D("_icon");class G{get address(){return V(this,z)[z]}get publicKey(){return V(this,B)[B].slice()}get chains(){return V(this,J)[J].slice()}get features(){return V(this,N)[N].slice()}get label(){return V(this,L)[L]}get icon(){return V(this,Y)[Y]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,z,{writable:true,value:void 0}),Object.defineProperty(this,B,{writable:true,value:void 0}),Object.defineProperty(this,J,{writable:true,value:void 0}),Object.defineProperty(this,N,{writable:true,value:void 0}),Object.defineProperty(this,L,{writable:true,value:void 0}),Object.defineProperty(this,Y,{writable:true,value:void 0}),V(this,z)[z]=e,V(this,B)[B]=t,V(this,J)[J]=P$7,V(this,N)[N]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],V(this,L)[L]=s,V(this,Y)[Y]=i;}}function Z(e){if("string"==typeof e)return base58$1.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return "string"==typeof t?base58$1.decode(t):t}function $(e){if("string"==typeof e){try{return base58$1.decode(e)}catch{}return base64$2.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return base58$1.decode(t)}catch{}return base64$2.decode(t)}return t}function H(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var Q=0;function X(e){return "__private_"+Q+++"_"+e}let ee="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",te="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var se=/*#__PURE__*/X("_listeners"),ie=/*#__PURE__*/X("_version"),ne=/*#__PURE__*/X("_name"),ae=/*#__PURE__*/X("_icon"),re=/*#__PURE__*/X("_provider"),oe=/*#__PURE__*/X("_accounts"),le=/*#__PURE__*/X("_privyAppName"),ce=/*#__PURE__*/X("_walletConnectCloudProjectId"),de=/*#__PURE__*/X("_walletEntry"),he=/*#__PURE__*/X("_onDisplayUriCallback"),ue=/*#__PURE__*/X("_providerEventListeners"),pe=/*#__PURE__*/X("_on"),fe=/*#__PURE__*/X("_emit"),ge=/*#__PURE__*/X("_off"),ve=/*#__PURE__*/X("_connected"),me=/*#__PURE__*/X("_disconnected"),ye=/*#__PURE__*/X("_connect"),we=/*#__PURE__*/X("_disconnect"),be=/*#__PURE__*/X("_signMessage"),je=/*#__PURE__*/X("_signAndSendTransaction"),_e=/*#__PURE__*/X("_signTransaction"),Pe=/*#__PURE__*/X("_getOrCreateProvider"),Oe=/*#__PURE__*/X("_getOrCreateSession"),Se=/*#__PURE__*/X("_restoreSession"),Te=/*#__PURE__*/X("_addProviderEventListener"),Ae=/*#__PURE__*/X("_destroySession"),We=/*#__PURE__*/X("_makeRpcRequest"),Ce=/*#__PURE__*/X("_onDisplayUri"),Ee=/*#__PURE__*/X("_onSessionDelete");class Me{get version(){return H(this,ie)[ie]}get name(){return H(this,ne)[ne]}get icon(){return H(this,ae)[ae]}get chains(){return P$7.slice()}get features(){return {"standard:connect":{version:"1.0.0",connect:H(this,ye)[ye]},"standard:disconnect":{version:"1.0.0",disconnect:H(this,we)[we]},"standard:events":{version:"1.0.0",on:H(this,pe)[pe]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:H(this,je)[je]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:H(this,_e)[_e]},"solana:signMessage":{version:"1.0.0",signMessage:H(this,be)[be]}}}get accounts(){return H(this,oe)[oe].slice()}get isWalletConnectSolana(){return true}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){H(this,ce)[ce]=e,H(this,le)[le]=t,await H(this,Pe)[Pe](),await H(this,Se)[Se]();}setWalletEntry(e,t){H(this,de)[de]=e,H(this,he)[he]=t;}constructor(){Object.defineProperty(this,fe,{value:ke}),Object.defineProperty(this,ge,{value:Ue}),Object.defineProperty(this,se,{writable:true,value:void 0}),Object.defineProperty(this,ie,{writable:true,value:void 0}),Object.defineProperty(this,ne,{writable:true,value:void 0}),Object.defineProperty(this,ae,{writable:true,value:void 0}),Object.defineProperty(this,re,{writable:true,value:void 0}),Object.defineProperty(this,oe,{writable:true,value:void 0}),Object.defineProperty(this,le,{writable:true,value:void 0}),Object.defineProperty(this,ce,{writable:true,value:void 0}),Object.defineProperty(this,de,{writable:true,value:void 0}),Object.defineProperty(this,he,{writable:true,value:void 0}),Object.defineProperty(this,ue,{writable:true,value:void 0}),Object.defineProperty(this,pe,{writable:true,value:void 0}),Object.defineProperty(this,ve,{writable:true,value:void 0}),Object.defineProperty(this,me,{writable:true,value:void 0}),Object.defineProperty(this,ye,{writable:true,value:void 0}),Object.defineProperty(this,we,{writable:true,value:void 0}),Object.defineProperty(this,be,{writable:true,value:void 0}),Object.defineProperty(this,je,{writable:true,value:void 0}),Object.defineProperty(this,_e,{writable:true,value:void 0}),Object.defineProperty(this,Pe,{writable:true,value:void 0}),Object.defineProperty(this,Oe,{writable:true,value:void 0}),Object.defineProperty(this,Se,{writable:true,value:void 0}),Object.defineProperty(this,Te,{writable:true,value:void 0}),Object.defineProperty(this,Ae,{writable:true,value:void 0}),Object.defineProperty(this,We,{writable:true,value:void 0}),Object.defineProperty(this,Ce,{writable:true,value:void 0}),Object.defineProperty(this,Ee,{writable:true,value:void 0}),H(this,se)[se]={},H(this,ie)[ie]="1.0.0",H(this,ne)[ne]="WalletConnect",H(this,ae)[ae]=_$4,H(this,re)[re]=null,H(this,oe)[oe]=[],H(this,le)[le]="",H(this,ce)[ce]="",H(this,ue)[ue]=new Map,H(this,pe)[pe]=(e,t)=>(H(this,se)[se][e]?.push(t)||(H(this,se)[se][e]=[t]),()=>H(this,ge)[ge](e,t)),H(this,ve)[ve]=e=>{H(this,ne)[ne]=H(this,re)[re]?.session?.peer?.metadata?.name||H(this,de)[de]?.name||"WalletConnect",H(this,ae)[ae]=H(this,re)[re]?.session?.peer?.metadata?.icons?.[0]||H(this,de)[de]?.image_url?.sm||H(this,ae)[ae],H(this,oe)[oe]=e.map((e=>new G({address:e,publicKey:base58$1.decode(e),label:H(this,ne)[ne],icon:H(this,ae)[ae]}))),H(this,fe)[fe]("change",{accounts:this.accounts});},H(this,me)[me]=()=>{H(this,oe)[oe]=[],H(this,fe)[fe]("change",{accounts:this.accounts});},H(this,ye)[ye]=async()=>(this.accounts.length||await H(this,Oe)[Oe](),{accounts:this.accounts}),H(this,we)[we]=async()=>{await H(this,Ae)[Ae](),H(this,fe)[fe]("change",{accounts:this.accounts});},H(this,be)[be]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=base58$1.encode(i);try{let n=await H(this,We)[We]("solana_signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)});}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)});}throw n}}return t},H(this,je)[je]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=base64$2.encode(n);try{let n=await H(this,We)[We]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)});}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)});}}}return t},H(this,_e)[_e]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=base64$2.encode(n);try{let n=await H(this,We)[We]("solana_signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)});}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)});}}}return t},H(this,Pe)[Pe]=async()=>{if(H(this,re)[re])return H(this,re)[re];if(!H(this,ce)[ce])throw Error("WalletConnect Cloud Project ID is required");return H(this,re)[re]=await ns.init({projectId:H(this,ce)[ce],metadata:{name:H(this,le)[le],description:H(this,le)[le],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:false}),H(this,Te)[Te]("display_uri",H(this,Ce)[Ce]),H(this,Te)[Te]("session_delete",H(this,Ee)[Ee]),H(this,Te)[Te]("session_ping",(()=>{})),H(this,Te)[Te]("session_event",(()=>{})),H(this,Te)[Te]("session_update",(()=>{})),H(this,re)[re]},H(this,Oe)[Oe]=async()=>{if(!H(this,re)[re])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(H(this,re)[re].session)return H(this,re)[re].session;let e=await H(this,re)[re].connect({optionalNamespaces:{solana:{chains:[ee,te],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return H(this,ve)[ve](xe(e)),e},H(this,Se)[Se]=async()=>{let e=H(this,re)[re]?.session;if(e){if(!e.namespaces?.solana)return await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(H(this,re)[re].session=void 0);H(this,ve)[ve](xe(e));}},H(this,Te)[Te]=(e,t)=>{let s=H(this,ue)[ue].get(e);s&&(H(this,re)[re]?.off(e,s),H(this,ue)[ue].delete(e)),H(this,re)[re]?.on(e,t),H(this,ue)[ue].set(e,t);},H(this,Ae)[Ae]=async()=>{try{if(H(this,re)[re]?.session&&await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),H(this,re)[re]?.client){let e=H(this,re)[re].client.proposal.getAll();await Promise.allSettled(e.map((e=>H(this,re)[re]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=H(this,re)[re].client.pairing.getAll();await Promise.allSettled(t.map((e=>H(this,re)[re]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))));}H(this,me)[me]();}catch(e){console.error("WalletConnectSolana: Error destroying session",e);}},H(this,We)[We]=async(e,t,s)=>{try{return await H(this,re)[re].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},H(this,Ce)[Ce]=e=>{if(libExports.isMobile&&H(this,de)[de]){let{redirect:s}=U$5(e,H(this,de)[de]);null==H(this,he)[he]||H(this,he)[he].call(this,{native:s,universal:s});}else null==H(this,he)[he]||H(this,he)[he].call(this,{native:e,universal:void 0});},H(this,Ee)[Ee]=()=>{H(this,me)[me]();};}}function ke(e,...t){H(this,se)[se][e]?.forEach((e=>e.apply(null,t)));}function Ue(e,t){H(this,se)[se][e]=H(this,se)[se][e]?.filter((e=>t!==e));}function xe(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function Fe(e){switch(e){case "solana:mainnet":return ee;case "solana:devnet":return te;default:return e}}
|
|
33249
33293
|
|
|
33294
|
+
var cjs = {};
|
|
33295
|
+
|
|
33296
|
+
var hasRequiredCjs;
|
|
33297
|
+
|
|
33298
|
+
function requireCjs () {
|
|
33299
|
+
if (hasRequiredCjs) return cjs;
|
|
33300
|
+
hasRequiredCjs = 1;
|
|
33301
|
+
// base-x encoding / decoding
|
|
33302
|
+
// Copyright (c) 2018 base-x contributors
|
|
33303
|
+
// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)
|
|
33304
|
+
// Distributed under the MIT software license, see the accompanying
|
|
33305
|
+
// file LICENSE or http://www.opensource.org/licenses/mit-license.php.
|
|
33306
|
+
Object.defineProperty(cjs, '__esModule', { value: true });
|
|
33307
|
+
function base (ALPHABET) {
|
|
33308
|
+
if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }
|
|
33309
|
+
const BASE_MAP = new Uint8Array(256);
|
|
33310
|
+
for (let j = 0; j < BASE_MAP.length; j++) {
|
|
33311
|
+
BASE_MAP[j] = 255;
|
|
33312
|
+
}
|
|
33313
|
+
for (let i = 0; i < ALPHABET.length; i++) {
|
|
33314
|
+
const x = ALPHABET.charAt(i);
|
|
33315
|
+
const xc = x.charCodeAt(0);
|
|
33316
|
+
if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }
|
|
33317
|
+
BASE_MAP[xc] = i;
|
|
33318
|
+
}
|
|
33319
|
+
const BASE = ALPHABET.length;
|
|
33320
|
+
const LEADER = ALPHABET.charAt(0);
|
|
33321
|
+
const FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up
|
|
33322
|
+
const iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up
|
|
33323
|
+
function encode (source) {
|
|
33324
|
+
// eslint-disable-next-line no-empty
|
|
33325
|
+
if (source instanceof Uint8Array) ; else if (ArrayBuffer.isView(source)) {
|
|
33326
|
+
source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);
|
|
33327
|
+
} else if (Array.isArray(source)) {
|
|
33328
|
+
source = Uint8Array.from(source);
|
|
33329
|
+
}
|
|
33330
|
+
if (!(source instanceof Uint8Array)) { throw new TypeError('Expected Uint8Array') }
|
|
33331
|
+
if (source.length === 0) { return '' }
|
|
33332
|
+
// Skip & count leading zeroes.
|
|
33333
|
+
let zeroes = 0;
|
|
33334
|
+
let length = 0;
|
|
33335
|
+
let pbegin = 0;
|
|
33336
|
+
const pend = source.length;
|
|
33337
|
+
while (pbegin !== pend && source[pbegin] === 0) {
|
|
33338
|
+
pbegin++;
|
|
33339
|
+
zeroes++;
|
|
33340
|
+
}
|
|
33341
|
+
// Allocate enough space in big-endian base58 representation.
|
|
33342
|
+
const size = ((pend - pbegin) * iFACTOR + 1) >>> 0;
|
|
33343
|
+
const b58 = new Uint8Array(size);
|
|
33344
|
+
// Process the bytes.
|
|
33345
|
+
while (pbegin !== pend) {
|
|
33346
|
+
let carry = source[pbegin];
|
|
33347
|
+
// Apply "b58 = b58 * 256 + ch".
|
|
33348
|
+
let i = 0;
|
|
33349
|
+
for (let it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {
|
|
33350
|
+
carry += (256 * b58[it1]) >>> 0;
|
|
33351
|
+
b58[it1] = (carry % BASE) >>> 0;
|
|
33352
|
+
carry = (carry / BASE) >>> 0;
|
|
33353
|
+
}
|
|
33354
|
+
if (carry !== 0) { throw new Error('Non-zero carry') }
|
|
33355
|
+
length = i;
|
|
33356
|
+
pbegin++;
|
|
33357
|
+
}
|
|
33358
|
+
// Skip leading zeroes in base58 result.
|
|
33359
|
+
let it2 = size - length;
|
|
33360
|
+
while (it2 !== size && b58[it2] === 0) {
|
|
33361
|
+
it2++;
|
|
33362
|
+
}
|
|
33363
|
+
// Translate the result into a string.
|
|
33364
|
+
let str = LEADER.repeat(zeroes);
|
|
33365
|
+
for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]); }
|
|
33366
|
+
return str
|
|
33367
|
+
}
|
|
33368
|
+
function decodeUnsafe (source) {
|
|
33369
|
+
if (typeof source !== 'string') { throw new TypeError('Expected String') }
|
|
33370
|
+
if (source.length === 0) { return new Uint8Array() }
|
|
33371
|
+
let psz = 0;
|
|
33372
|
+
// Skip and count leading '1's.
|
|
33373
|
+
let zeroes = 0;
|
|
33374
|
+
let length = 0;
|
|
33375
|
+
while (source[psz] === LEADER) {
|
|
33376
|
+
zeroes++;
|
|
33377
|
+
psz++;
|
|
33378
|
+
}
|
|
33379
|
+
// Allocate enough space in big-endian base256 representation.
|
|
33380
|
+
const size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.
|
|
33381
|
+
const b256 = new Uint8Array(size);
|
|
33382
|
+
// Process the characters.
|
|
33383
|
+
while (psz < source.length) {
|
|
33384
|
+
// Find code of next character
|
|
33385
|
+
const charCode = source.charCodeAt(psz);
|
|
33386
|
+
// Base map can not be indexed using char code
|
|
33387
|
+
if (charCode > 255) { return }
|
|
33388
|
+
// Decode character
|
|
33389
|
+
let carry = BASE_MAP[charCode];
|
|
33390
|
+
// Invalid character
|
|
33391
|
+
if (carry === 255) { return }
|
|
33392
|
+
let i = 0;
|
|
33393
|
+
for (let it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {
|
|
33394
|
+
carry += (BASE * b256[it3]) >>> 0;
|
|
33395
|
+
b256[it3] = (carry % 256) >>> 0;
|
|
33396
|
+
carry = (carry / 256) >>> 0;
|
|
33397
|
+
}
|
|
33398
|
+
if (carry !== 0) { throw new Error('Non-zero carry') }
|
|
33399
|
+
length = i;
|
|
33400
|
+
psz++;
|
|
33401
|
+
}
|
|
33402
|
+
// Skip leading zeroes in b256.
|
|
33403
|
+
let it4 = size - length;
|
|
33404
|
+
while (it4 !== size && b256[it4] === 0) {
|
|
33405
|
+
it4++;
|
|
33406
|
+
}
|
|
33407
|
+
const vch = new Uint8Array(zeroes + (size - it4));
|
|
33408
|
+
let j = zeroes;
|
|
33409
|
+
while (it4 !== size) {
|
|
33410
|
+
vch[j++] = b256[it4++];
|
|
33411
|
+
}
|
|
33412
|
+
return vch
|
|
33413
|
+
}
|
|
33414
|
+
function decode (string) {
|
|
33415
|
+
const buffer = decodeUnsafe(string);
|
|
33416
|
+
if (buffer) { return buffer }
|
|
33417
|
+
throw new Error('Non-base' + BASE + ' character')
|
|
33418
|
+
}
|
|
33419
|
+
return {
|
|
33420
|
+
encode,
|
|
33421
|
+
decodeUnsafe,
|
|
33422
|
+
decode
|
|
33423
|
+
}
|
|
33424
|
+
}
|
|
33425
|
+
cjs.default = base;
|
|
33426
|
+
return cjs;
|
|
33427
|
+
}
|
|
33428
|
+
|
|
33429
|
+
var bs58$1;
|
|
33430
|
+
var hasRequiredBs58;
|
|
33431
|
+
|
|
33432
|
+
function requireBs58 () {
|
|
33433
|
+
if (hasRequiredBs58) return bs58$1;
|
|
33434
|
+
hasRequiredBs58 = 1;
|
|
33435
|
+
var basex = requireCjs();
|
|
33436
|
+
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
33437
|
+
|
|
33438
|
+
bs58$1 = basex(ALPHABET);
|
|
33439
|
+
return bs58$1;
|
|
33440
|
+
}
|
|
33441
|
+
|
|
33442
|
+
var bs58Exports = requireBs58();
|
|
33443
|
+
var bs58 = /*@__PURE__*/getDefaultExportFromCjs$1(bs58Exports);
|
|
33444
|
+
|
|
33445
|
+
var index = /*#__PURE__*/_mergeNamespaces({
|
|
33446
|
+
__proto__: null,
|
|
33447
|
+
default: bs58
|
|
33448
|
+
}, [bs58Exports]);
|
|
33449
|
+
|
|
33250
33450
|
const SURFNET_RPC_URL$1 = "https://surfpool.fly.dev";
|
|
33251
33451
|
let React;
|
|
33252
33452
|
let ReactDOM;
|
|
@@ -34961,26 +35161,27 @@ function isMobileWalletAvailable() {
|
|
|
34961
35161
|
const isWalletInAppBrowser = /SolanaWallet/i.test(ua) || /SeedVault/i.test(ua);
|
|
34962
35162
|
return isAndroid || isWalletInAppBrowser;
|
|
34963
35163
|
}
|
|
34964
|
-
|
|
34965
|
-
|
|
34966
|
-
let
|
|
34967
|
-
|
|
34968
|
-
|
|
35164
|
+
const ED25519_SIGNATURE_LENGTH = 64;
|
|
35165
|
+
// Dynamically imported MWA protocol module
|
|
35166
|
+
let mwaProtocolModule = null;
|
|
35167
|
+
let mwaProtocolLoadPromise = null;
|
|
35168
|
+
async function loadMwaProtocol() {
|
|
35169
|
+
if (mwaProtocolModule)
|
|
34969
35170
|
return;
|
|
34970
35171
|
if (typeof window === 'undefined')
|
|
34971
35172
|
return;
|
|
34972
|
-
if (
|
|
34973
|
-
return
|
|
34974
|
-
|
|
35173
|
+
if (mwaProtocolLoadPromise)
|
|
35174
|
+
return mwaProtocolLoadPromise;
|
|
35175
|
+
mwaProtocolLoadPromise = (async () => {
|
|
34975
35176
|
try {
|
|
34976
|
-
|
|
35177
|
+
mwaProtocolModule = await import('@solana-mobile/mobile-wallet-adapter-protocol-web3js');
|
|
34977
35178
|
}
|
|
34978
35179
|
catch (e) {
|
|
34979
|
-
console.warn('[SolanaMobileWallet] @solana-mobile/wallet-adapter-
|
|
34980
|
-
throw new Error('Missing @solana-mobile/wallet-adapter-
|
|
35180
|
+
console.warn('[SolanaMobileWallet] @solana-mobile/mobile-wallet-adapter-protocol-web3js not installed. Install it to enable Seeker wallet support.');
|
|
35181
|
+
throw new Error('Missing @solana-mobile/mobile-wallet-adapter-protocol-web3js dependency');
|
|
34981
35182
|
}
|
|
34982
35183
|
})();
|
|
34983
|
-
return
|
|
35184
|
+
return mwaProtocolLoadPromise;
|
|
34984
35185
|
}
|
|
34985
35186
|
/**
|
|
34986
35187
|
* Registers Mobile Wallet Adapter as a wallet-standard wallet so it appears
|
|
@@ -35026,26 +35227,30 @@ async function registerMobileWalletAdapter(config) {
|
|
|
35026
35227
|
catch (e) {
|
|
35027
35228
|
// @solana-mobile/wallet-standard-mobile is an optional dependency
|
|
35028
35229
|
// Silently skip if not installed — the provider still works via
|
|
35029
|
-
// @solana-mobile/wallet-adapter-
|
|
35230
|
+
// @solana-mobile/mobile-wallet-adapter-protocol-web3js directly
|
|
35030
35231
|
console.debug('[SolanaMobileWallet] @solana-mobile/wallet-standard-mobile not available, skipping wallet-standard registration');
|
|
35031
35232
|
}
|
|
35032
35233
|
}
|
|
35033
35234
|
/**
|
|
35034
35235
|
* SolanaMobileWalletProvider implements the AuthProvider interface using the
|
|
35035
|
-
* Solana Mobile Wallet Adapter (MWA) protocol.
|
|
35236
|
+
* Solana Mobile Wallet Adapter (MWA) protocol's low-level `transact` API.
|
|
35036
35237
|
*
|
|
35037
35238
|
* This enables TaroBase dApps to work with any MWA-compliant wallet on Solana
|
|
35038
35239
|
* mobile devices (Seeker, Saga) — including the native Seed Vault Wallet,
|
|
35039
35240
|
* Phantom, Solflare, and any other wallet that implements the MWA protocol.
|
|
35040
35241
|
*
|
|
35041
|
-
*
|
|
35042
|
-
*
|
|
35043
|
-
*
|
|
35242
|
+
* By using `transact()` directly (instead of the wallet-adapter wrapper),
|
|
35243
|
+
* login combines authorize + signMessage into a single wallet session —
|
|
35244
|
+
* meaning one popup/approval instead of two.
|
|
35044
35245
|
*/
|
|
35045
35246
|
class SolanaMobileWalletProvider {
|
|
35046
35247
|
constructor(networkUrl = null, config = {}) {
|
|
35047
|
-
|
|
35248
|
+
// MWA authorization state
|
|
35249
|
+
this.authToken = null;
|
|
35250
|
+
this.walletUriBase = null;
|
|
35251
|
+
this.base64Address = null;
|
|
35048
35252
|
this.authorizedPublicKey = null;
|
|
35253
|
+
this.publicKeyObj = null;
|
|
35049
35254
|
this.networkUrl = networkUrl;
|
|
35050
35255
|
this.config = config;
|
|
35051
35256
|
if (typeof window === 'undefined') {
|
|
@@ -35054,6 +35259,11 @@ class SolanaMobileWalletProvider {
|
|
|
35054
35259
|
if (SolanaMobileWalletProvider.instance) {
|
|
35055
35260
|
return SolanaMobileWalletProvider.instance;
|
|
35056
35261
|
}
|
|
35262
|
+
this.appIdentity = config.appIdentity || {
|
|
35263
|
+
name: 'TaroBase App',
|
|
35264
|
+
uri: typeof window !== 'undefined' ? window.location.origin : undefined,
|
|
35265
|
+
};
|
|
35266
|
+
this.chain = `solana:${config.cluster || 'mainnet-beta'}`;
|
|
35057
35267
|
SolanaMobileWalletProvider.instance = this;
|
|
35058
35268
|
}
|
|
35059
35269
|
static getInstance(networkUrl, config) {
|
|
@@ -35062,83 +35272,137 @@ class SolanaMobileWalletProvider {
|
|
|
35062
35272
|
}
|
|
35063
35273
|
return SolanaMobileWalletProvider.instance;
|
|
35064
35274
|
}
|
|
35065
|
-
|
|
35066
|
-
|
|
35067
|
-
if (
|
|
35068
|
-
return this.
|
|
35069
|
-
|
|
35070
|
-
|
|
35071
|
-
|
|
35072
|
-
|
|
35073
|
-
|
|
35074
|
-
|
|
35075
|
-
|
|
35076
|
-
|
|
35077
|
-
|
|
35078
|
-
|
|
35079
|
-
authorizationResultCache: createDefaultAuthorizationResultCache(),
|
|
35080
|
-
cluster,
|
|
35275
|
+
/** Config for transact() — routes to the same wallet if we've already authorized */
|
|
35276
|
+
getAssociationConfig() {
|
|
35277
|
+
if (this.walletUriBase) {
|
|
35278
|
+
return { baseUri: this.walletUriBase };
|
|
35279
|
+
}
|
|
35280
|
+
return undefined;
|
|
35281
|
+
}
|
|
35282
|
+
/** Reauthorize within a transact callback using a stored auth_token */
|
|
35283
|
+
async reauthorizeWallet(wallet) {
|
|
35284
|
+
if (!this.authToken) {
|
|
35285
|
+
// No existing auth — do a fresh authorize
|
|
35286
|
+
const authResult = await wallet.authorize({
|
|
35287
|
+
identity: this.appIdentity,
|
|
35288
|
+
chain: this.chain,
|
|
35081
35289
|
});
|
|
35290
|
+
this.storeAuthResult(authResult);
|
|
35291
|
+
return authResult;
|
|
35292
|
+
}
|
|
35293
|
+
try {
|
|
35294
|
+
const authResult = await wallet.reauthorize({
|
|
35295
|
+
auth_token: this.authToken,
|
|
35296
|
+
identity: this.appIdentity,
|
|
35297
|
+
});
|
|
35298
|
+
this.storeAuthResult(authResult);
|
|
35299
|
+
return authResult;
|
|
35300
|
+
}
|
|
35301
|
+
catch (e) {
|
|
35302
|
+
// Reauth failed (token expired, wallet reset, etc.) — try fresh authorize
|
|
35303
|
+
console.warn('[SolanaMobileWallet] Reauthorization failed, attempting fresh authorize:', e === null || e === void 0 ? void 0 : e.message);
|
|
35304
|
+
const authResult = await wallet.authorize({
|
|
35305
|
+
identity: this.appIdentity,
|
|
35306
|
+
chain: this.chain,
|
|
35307
|
+
});
|
|
35308
|
+
this.storeAuthResult(authResult);
|
|
35309
|
+
return authResult;
|
|
35310
|
+
}
|
|
35311
|
+
}
|
|
35312
|
+
/** Persist auth result from an authorize/reauthorize call */
|
|
35313
|
+
storeAuthResult(authResult) {
|
|
35314
|
+
var _a;
|
|
35315
|
+
this.authToken = authResult.auth_token;
|
|
35316
|
+
this.walletUriBase = authResult.wallet_uri_base;
|
|
35317
|
+
if (((_a = authResult.accounts) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
35318
|
+
const account = authResult.accounts[0];
|
|
35319
|
+
this.base64Address = account.address;
|
|
35320
|
+
// Decode base64 address → PublicKey → base58
|
|
35321
|
+
const addressBytes = Uint8Array.from(atob(account.address), c => c.charCodeAt(0));
|
|
35322
|
+
this.publicKeyObj = new PublicKey(addressBytes);
|
|
35323
|
+
this.authorizedPublicKey = this.publicKeyObj.toBase58();
|
|
35082
35324
|
}
|
|
35083
|
-
return this.mwaAdapter;
|
|
35084
35325
|
}
|
|
35085
35326
|
async login() {
|
|
35086
|
-
var _a, _b, _c, _d, _e
|
|
35327
|
+
var _a, _b, _c, _d, _e;
|
|
35087
35328
|
setAuthLoading(true);
|
|
35088
35329
|
try {
|
|
35089
|
-
|
|
35090
|
-
|
|
35091
|
-
//
|
|
35092
|
-
|
|
35093
|
-
|
|
35094
|
-
|
|
35095
|
-
|
|
35096
|
-
|
|
35097
|
-
|
|
35098
|
-
|
|
35099
|
-
const start = Date.now();
|
|
35100
|
-
while (Date.now() - start < maxWaitMs) {
|
|
35101
|
-
publicKey = ((_b = (_a = adapter.publicKey) === null || _a === void 0 ? void 0 : _a.toBase58) === null || _b === void 0 ? void 0 : _b.call(_a)) || ((_d = (_c = adapter.publicKey) === null || _c === void 0 ? void 0 : _c.toString) === null || _d === void 0 ? void 0 : _d.call(_c));
|
|
35102
|
-
if (publicKey)
|
|
35103
|
-
break;
|
|
35104
|
-
await new Promise(r => setTimeout(r, pollIntervalMs));
|
|
35105
|
-
}
|
|
35106
|
-
if (!publicKey) {
|
|
35107
|
-
throw new Error('No public key returned from wallet');
|
|
35330
|
+
await loadMwaProtocol();
|
|
35331
|
+
const { transact } = mwaProtocolModule;
|
|
35332
|
+
// Quick check: if we already have auth state and a valid session, skip
|
|
35333
|
+
if (this.authorizedPublicKey) {
|
|
35334
|
+
const existingSession = await WebSessionManager.getSession();
|
|
35335
|
+
if (existingSession && existingSession.address === this.authorizedPublicKey) {
|
|
35336
|
+
const user = { provider: this, address: this.authorizedPublicKey };
|
|
35337
|
+
setCurrentUser(user);
|
|
35338
|
+
return user;
|
|
35339
|
+
}
|
|
35108
35340
|
}
|
|
35109
|
-
|
|
35110
|
-
|
|
35341
|
+
// Pre-fetch nonce from server while wallet is not yet connected
|
|
35342
|
+
const nonce = await genAuthNonce();
|
|
35343
|
+
// Single transact() call: authorize + signMessages — one wallet popup
|
|
35344
|
+
const result = await transact(async (wallet) => {
|
|
35345
|
+
// Step 1: Authorize — user approves the dApp
|
|
35346
|
+
const authResult = await wallet.authorize({
|
|
35347
|
+
identity: this.appIdentity,
|
|
35348
|
+
chain: this.chain,
|
|
35349
|
+
});
|
|
35350
|
+
const base64Addr = authResult.accounts[0].address;
|
|
35351
|
+
const addressBytes = Uint8Array.from(atob(base64Addr), c => c.charCodeAt(0));
|
|
35352
|
+
const pubkey = new PublicKey(addressBytes);
|
|
35353
|
+
const base58Addr = pubkey.toBase58();
|
|
35354
|
+
// Step 2: Sign the auth message — still in the same wallet session
|
|
35355
|
+
const messageText = await genSolanaMessage(base58Addr, nonce);
|
|
35356
|
+
const messageBytes = new TextEncoder().encode(messageText);
|
|
35357
|
+
const signedMessages = await wallet.signMessages({
|
|
35358
|
+
addresses: [base64Addr],
|
|
35359
|
+
payloads: [messageBytes],
|
|
35360
|
+
});
|
|
35361
|
+
// The signed payload is [original message bytes][64-byte ed25519 signature]
|
|
35362
|
+
const signedPayload = signedMessages[0];
|
|
35363
|
+
const signatureBytes = signedPayload.slice(-ED25519_SIGNATURE_LENGTH);
|
|
35364
|
+
return {
|
|
35365
|
+
base58Address: base58Addr,
|
|
35366
|
+
base64Address: base64Addr,
|
|
35367
|
+
publicKey: pubkey,
|
|
35368
|
+
signature: bufferExports.Buffer.from(signatureBytes).toString('base64'),
|
|
35369
|
+
messageText,
|
|
35370
|
+
authToken: authResult.auth_token,
|
|
35371
|
+
walletUriBase: authResult.wallet_uri_base,
|
|
35372
|
+
};
|
|
35373
|
+
}, this.getAssociationConfig());
|
|
35374
|
+
// Store MWA auth state for reauthorization in subsequent transact() calls
|
|
35375
|
+
this.authToken = result.authToken;
|
|
35376
|
+
this.walletUriBase = result.walletUriBase;
|
|
35377
|
+
this.base64Address = result.base64Address;
|
|
35378
|
+
this.authorizedPublicKey = result.base58Address;
|
|
35379
|
+
this.publicKeyObj = result.publicKey;
|
|
35380
|
+
// Check if we already have a valid session for this address
|
|
35111
35381
|
const existingSession = await WebSessionManager.getSession();
|
|
35112
|
-
if (existingSession && existingSession.address ===
|
|
35113
|
-
const user = { provider: this, address:
|
|
35382
|
+
if (existingSession && existingSession.address === result.base58Address) {
|
|
35383
|
+
const user = { provider: this, address: result.base58Address };
|
|
35114
35384
|
setCurrentUser(user);
|
|
35115
35385
|
return user;
|
|
35116
35386
|
}
|
|
35117
|
-
// Create new session
|
|
35118
|
-
const
|
|
35119
|
-
|
|
35120
|
-
// MWA signMessage expects Uint8Array
|
|
35121
|
-
const messageBytes = new TextEncoder().encode(messageText);
|
|
35122
|
-
const signatureBytes = await adapter.signMessage(messageBytes);
|
|
35123
|
-
const signature = bufferExports.Buffer.from(signatureBytes).toString('base64');
|
|
35124
|
-
const createSessionResult = await createSessionWithSignature(publicKey, messageText, signature);
|
|
35125
|
-
await WebSessionManager.storeSession(publicKey, createSessionResult.accessToken, createSessionResult.idToken, createSessionResult.refreshToken);
|
|
35387
|
+
// Create new session on the server
|
|
35388
|
+
const createSessionResult = await createSessionWithSignature(result.base58Address, result.messageText, result.signature);
|
|
35389
|
+
await WebSessionManager.storeSession(result.base58Address, createSessionResult.accessToken, createSessionResult.idToken, createSessionResult.refreshToken);
|
|
35126
35390
|
// Mark auth method
|
|
35127
35391
|
try {
|
|
35128
35392
|
localStorage.setItem('tarobase_last_auth_method', 'mobile-wallet-adapter');
|
|
35129
35393
|
}
|
|
35130
|
-
catch (
|
|
35131
|
-
const user = { provider: this, address:
|
|
35394
|
+
catch (_f) { }
|
|
35395
|
+
const user = { provider: this, address: result.base58Address };
|
|
35132
35396
|
setCurrentUser(user);
|
|
35133
35397
|
return user;
|
|
35134
35398
|
}
|
|
35135
35399
|
catch (error) {
|
|
35136
35400
|
const isUserRejection = (error === null || error === void 0 ? void 0 : error.code) === 4001 ||
|
|
35137
|
-
((
|
|
35138
|
-
((
|
|
35139
|
-
((
|
|
35140
|
-
((
|
|
35141
|
-
((
|
|
35401
|
+
((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('user rejected')) ||
|
|
35402
|
+
((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes('user denied')) ||
|
|
35403
|
+
((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.toLowerCase().includes('user cancelled')) ||
|
|
35404
|
+
((_d = error === null || error === void 0 ? void 0 : error.message) === null || _d === void 0 ? void 0 : _d.toLowerCase().includes('user canceled')) ||
|
|
35405
|
+
((_e = error === null || error === void 0 ? void 0 : error.message) === null || _e === void 0 ? void 0 : _e.toLowerCase().includes('user declined'));
|
|
35142
35406
|
if (!isUserRejection) {
|
|
35143
35407
|
console.error('[SolanaMobileWallet] Login failed:', error);
|
|
35144
35408
|
}
|
|
@@ -35152,37 +35416,58 @@ class SolanaMobileWalletProvider {
|
|
|
35152
35416
|
const session = await WebSessionManager.getSession();
|
|
35153
35417
|
if (session) {
|
|
35154
35418
|
this.authorizedPublicKey = session.address;
|
|
35419
|
+
this.publicKeyObj = new PublicKey(session.address);
|
|
35155
35420
|
return { provider: this, address: session.address };
|
|
35156
35421
|
}
|
|
35157
35422
|
return null;
|
|
35158
35423
|
}
|
|
35159
35424
|
async logout() {
|
|
35160
|
-
|
|
35161
|
-
|
|
35162
|
-
|
|
35163
|
-
await
|
|
35425
|
+
// Deauthorize with the wallet if we have an auth_token
|
|
35426
|
+
if (this.authToken) {
|
|
35427
|
+
try {
|
|
35428
|
+
await loadMwaProtocol();
|
|
35429
|
+
const { transact } = mwaProtocolModule;
|
|
35430
|
+
const authToken = this.authToken;
|
|
35431
|
+
await transact(async (wallet) => {
|
|
35432
|
+
await wallet.deauthorize({ auth_token: authToken });
|
|
35433
|
+
}, this.getAssociationConfig());
|
|
35434
|
+
}
|
|
35435
|
+
catch (error) {
|
|
35436
|
+
console.error('[SolanaMobileWallet] Deauthorize error:', error);
|
|
35164
35437
|
}
|
|
35165
35438
|
}
|
|
35166
|
-
|
|
35167
|
-
|
|
35168
|
-
|
|
35439
|
+
this.authToken = null;
|
|
35440
|
+
this.walletUriBase = null;
|
|
35441
|
+
this.base64Address = null;
|
|
35169
35442
|
this.authorizedPublicKey = null;
|
|
35443
|
+
this.publicKeyObj = null;
|
|
35170
35444
|
WebSessionManager.clearSession();
|
|
35171
35445
|
setCurrentUser(null);
|
|
35172
35446
|
}
|
|
35173
35447
|
async signMessage(message) {
|
|
35174
35448
|
var _a, _b;
|
|
35175
|
-
|
|
35176
|
-
|
|
35177
|
-
await adapter.connect();
|
|
35449
|
+
if (!this.authorizedPublicKey || !this.base64Address) {
|
|
35450
|
+
throw new Error('Not connected. Call login() first.');
|
|
35178
35451
|
}
|
|
35452
|
+
await loadMwaProtocol();
|
|
35453
|
+
const { transact } = mwaProtocolModule;
|
|
35454
|
+
const base64Addr = this.base64Address;
|
|
35179
35455
|
try {
|
|
35180
|
-
const
|
|
35181
|
-
|
|
35456
|
+
const signedMessages = await transact(async (wallet) => {
|
|
35457
|
+
await this.reauthorizeWallet(wallet);
|
|
35458
|
+
const messageBytes = new TextEncoder().encode(message);
|
|
35459
|
+
return wallet.signMessages({
|
|
35460
|
+
addresses: [base64Addr],
|
|
35461
|
+
payloads: [messageBytes],
|
|
35462
|
+
});
|
|
35463
|
+
}, this.getAssociationConfig());
|
|
35464
|
+
const signedPayload = signedMessages[0];
|
|
35465
|
+
const signatureBytes = signedPayload.slice(-ED25519_SIGNATURE_LENGTH);
|
|
35182
35466
|
return bufferExports.Buffer.from(signatureBytes).toString('base64');
|
|
35183
35467
|
}
|
|
35184
35468
|
catch (error) {
|
|
35185
|
-
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized'))
|
|
35469
|
+
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized')) ||
|
|
35470
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35186
35471
|
await this.logout();
|
|
35187
35472
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35188
35473
|
}
|
|
@@ -35191,11 +35476,12 @@ class SolanaMobileWalletProvider {
|
|
|
35191
35476
|
}
|
|
35192
35477
|
async signTransaction(transaction) {
|
|
35193
35478
|
var _a, _b;
|
|
35194
|
-
|
|
35195
|
-
|
|
35196
|
-
await adapter.connect();
|
|
35479
|
+
if (!this.publicKeyObj) {
|
|
35480
|
+
throw new Error('Not connected. Call login() first.');
|
|
35197
35481
|
}
|
|
35198
|
-
|
|
35482
|
+
await loadMwaProtocol();
|
|
35483
|
+
const { transact } = mwaProtocolModule;
|
|
35484
|
+
// Ensure blockhash and fee payer are set before signing
|
|
35199
35485
|
const isLegacyTransaction = 'recentBlockhash' in transaction && !('message' in transaction && 'staticAccountKeys' in transaction.message);
|
|
35200
35486
|
if (isLegacyTransaction) {
|
|
35201
35487
|
const legacyTx = transaction;
|
|
@@ -35206,8 +35492,8 @@ class SolanaMobileWalletProvider {
|
|
|
35206
35492
|
legacyTx.recentBlockhash = blockhash;
|
|
35207
35493
|
legacyTx.lastValidBlockHeight = lastValidBlockHeight;
|
|
35208
35494
|
}
|
|
35209
|
-
if (!legacyTx.feePayer &&
|
|
35210
|
-
legacyTx.feePayer =
|
|
35495
|
+
if (!legacyTx.feePayer && this.publicKeyObj) {
|
|
35496
|
+
legacyTx.feePayer = this.publicKeyObj;
|
|
35211
35497
|
}
|
|
35212
35498
|
}
|
|
35213
35499
|
else {
|
|
@@ -35220,11 +35506,15 @@ class SolanaMobileWalletProvider {
|
|
|
35220
35506
|
}
|
|
35221
35507
|
}
|
|
35222
35508
|
try {
|
|
35223
|
-
const
|
|
35224
|
-
|
|
35509
|
+
const signedTransactions = await transact(async (wallet) => {
|
|
35510
|
+
await this.reauthorizeWallet(wallet);
|
|
35511
|
+
return wallet.signTransactions({ transactions: [transaction] });
|
|
35512
|
+
}, this.getAssociationConfig());
|
|
35513
|
+
return signedTransactions[0];
|
|
35225
35514
|
}
|
|
35226
35515
|
catch (error) {
|
|
35227
|
-
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized'))
|
|
35516
|
+
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized')) ||
|
|
35517
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35228
35518
|
await this.logout();
|
|
35229
35519
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35230
35520
|
}
|
|
@@ -35233,10 +35523,11 @@ class SolanaMobileWalletProvider {
|
|
|
35233
35523
|
}
|
|
35234
35524
|
async signAndSubmitTransaction(transaction, feePayer) {
|
|
35235
35525
|
var _a, _b, _c, _d, _e, _f;
|
|
35236
|
-
|
|
35237
|
-
|
|
35238
|
-
await adapter.connect();
|
|
35526
|
+
if (!this.publicKeyObj) {
|
|
35527
|
+
throw new Error('Not connected. Call login() first.');
|
|
35239
35528
|
}
|
|
35529
|
+
await loadMwaProtocol();
|
|
35530
|
+
const { transact } = mwaProtocolModule;
|
|
35240
35531
|
const rpcUrl = this.getRpcUrl();
|
|
35241
35532
|
const connection = new Connection(rpcUrl, 'confirmed');
|
|
35242
35533
|
const isSurfnet = rpcUrl === SURFNET_RPC_URL;
|
|
@@ -35251,8 +35542,8 @@ class SolanaMobileWalletProvider {
|
|
|
35251
35542
|
if (feePayer) {
|
|
35252
35543
|
legacyTx.feePayer = feePayer;
|
|
35253
35544
|
}
|
|
35254
|
-
else if (
|
|
35255
|
-
legacyTx.feePayer =
|
|
35545
|
+
else if (this.publicKeyObj) {
|
|
35546
|
+
legacyTx.feePayer = this.publicKeyObj;
|
|
35256
35547
|
}
|
|
35257
35548
|
}
|
|
35258
35549
|
}
|
|
@@ -35260,9 +35551,13 @@ class SolanaMobileWalletProvider {
|
|
|
35260
35551
|
const versionedTx = transaction;
|
|
35261
35552
|
versionedTx.message.recentBlockhash = blockhash;
|
|
35262
35553
|
}
|
|
35263
|
-
// On surfnet, sign then submit manually
|
|
35264
35554
|
if (isSurfnet) {
|
|
35265
|
-
|
|
35555
|
+
// Surfnet: sign-only, then submit to our specific RPC
|
|
35556
|
+
const signedTransactions = await transact(async (wallet) => {
|
|
35557
|
+
await this.reauthorizeWallet(wallet);
|
|
35558
|
+
return wallet.signTransactions({ transactions: [transaction] });
|
|
35559
|
+
}, this.getAssociationConfig());
|
|
35560
|
+
const signedTx = signedTransactions[0];
|
|
35266
35561
|
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35267
35562
|
preflightCommitment: 'confirmed'
|
|
35268
35563
|
});
|
|
@@ -35276,25 +35571,21 @@ class SolanaMobileWalletProvider {
|
|
|
35276
35571
|
}
|
|
35277
35572
|
return signature;
|
|
35278
35573
|
}
|
|
35279
|
-
//
|
|
35280
|
-
|
|
35281
|
-
|
|
35282
|
-
|
|
35283
|
-
|
|
35574
|
+
// Non-surfnet: use signAndSendTransactions for wallet-optimized submission
|
|
35575
|
+
const signatures = await transact(async (wallet) => {
|
|
35576
|
+
await this.reauthorizeWallet(wallet);
|
|
35577
|
+
return wallet.signAndSendTransactions({
|
|
35578
|
+
transactions: [transaction],
|
|
35579
|
+
commitment: 'confirmed',
|
|
35284
35580
|
});
|
|
35285
|
-
|
|
35286
|
-
|
|
35287
|
-
}
|
|
35288
|
-
// Fallback: sign then submit
|
|
35289
|
-
const signedTx = await adapter.signTransaction(transaction);
|
|
35290
|
-
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35291
|
-
preflightCommitment: 'confirmed'
|
|
35292
|
-
});
|
|
35581
|
+
}, this.getAssociationConfig());
|
|
35582
|
+
const signature = signatures[0];
|
|
35293
35583
|
await confirmAndCheckTransaction(connection, signature);
|
|
35294
35584
|
return signature;
|
|
35295
35585
|
}
|
|
35296
35586
|
catch (error) {
|
|
35297
|
-
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized'))
|
|
35587
|
+
if (((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes('not connected')) || ((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.includes('not authorized')) ||
|
|
35588
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35298
35589
|
await this.logout();
|
|
35299
35590
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35300
35591
|
}
|
|
@@ -35314,18 +35605,16 @@ class SolanaMobileWalletProvider {
|
|
|
35314
35605
|
if (!solTransactionData) {
|
|
35315
35606
|
throw new Error('Solana transaction data is required for mobile wallet');
|
|
35316
35607
|
}
|
|
35317
|
-
|
|
35318
|
-
if (!adapter.connected) {
|
|
35608
|
+
if (!this.publicKeyObj || !this.authorizedPublicKey) {
|
|
35319
35609
|
await this.login();
|
|
35320
35610
|
}
|
|
35611
|
+
await loadMwaProtocol();
|
|
35612
|
+
const { transact } = mwaProtocolModule;
|
|
35321
35613
|
const rpcUrl = this.getRpcUrl(solTransactionData.network);
|
|
35322
35614
|
const connection = new Connection(rpcUrl, 'confirmed');
|
|
35323
35615
|
const isSurfnet = rpcUrl === SURFNET_RPC_URL;
|
|
35324
35616
|
try {
|
|
35325
|
-
const publicKey =
|
|
35326
|
-
if (!publicKey) {
|
|
35327
|
-
throw new Error('No wallet connected');
|
|
35328
|
-
}
|
|
35617
|
+
const publicKey = this.publicKeyObj;
|
|
35329
35618
|
const remainingAccounts = convertRemainingAccounts(solTransactionData.txArgs[0].remainingAccounts);
|
|
35330
35619
|
let app_id = solTransactionData.appId;
|
|
35331
35620
|
if (typeof window !== 'undefined' && window.CUSTOM_TAROBASE_APP_ID_HEADER) {
|
|
@@ -35334,17 +35623,13 @@ class SolanaMobileWalletProvider {
|
|
|
35334
35623
|
if (!app_id) {
|
|
35335
35624
|
throw new Error('App ID is required');
|
|
35336
35625
|
}
|
|
35337
|
-
// Create wallet adapter
|
|
35338
|
-
const
|
|
35626
|
+
// Create a mock wallet adapter for Anchor (only publicKey is needed for building TX)
|
|
35627
|
+
const mockWalletAdapter = {
|
|
35339
35628
|
publicKey,
|
|
35340
|
-
signTransaction: async (tx) =>
|
|
35341
|
-
|
|
35342
|
-
},
|
|
35343
|
-
signAllTransactions: async (txs) => {
|
|
35344
|
-
return await adapter.signAllTransactions(txs);
|
|
35345
|
-
}
|
|
35629
|
+
signTransaction: async (tx) => tx,
|
|
35630
|
+
signAllTransactions: async (txs) => txs,
|
|
35346
35631
|
};
|
|
35347
|
-
const anchorProvider = new anchor.AnchorProvider(connection,
|
|
35632
|
+
const anchorProvider = new anchor.AnchorProvider(connection, mockWalletAdapter, anchor.AnchorProvider.defaultOptions());
|
|
35348
35633
|
const finalDeduped = [];
|
|
35349
35634
|
for (const acc of remainingAccounts) {
|
|
35350
35635
|
const existing = finalDeduped.find((d) => d.pubkey.equals(acc.pubkey));
|
|
@@ -35363,7 +35648,10 @@ class SolanaMobileWalletProvider {
|
|
|
35363
35648
|
txData: solTransactionData.txArgs[0].txData
|
|
35364
35649
|
}, finalDeduped, solTransactionData.lutKey, solTransactionData.preInstructions, false);
|
|
35365
35650
|
if ((options === null || options === void 0 ? void 0 : options.shouldSubmitTx) === false) {
|
|
35366
|
-
const signedTx = await
|
|
35651
|
+
const [signedTx] = await transact(async (wallet) => {
|
|
35652
|
+
await this.reauthorizeWallet(wallet);
|
|
35653
|
+
return wallet.signTransactions({ transactions: [tx] });
|
|
35654
|
+
}, this.getAssociationConfig());
|
|
35367
35655
|
return {
|
|
35368
35656
|
signedTransaction: signedTx,
|
|
35369
35657
|
blockNumber: 0,
|
|
@@ -35371,9 +35659,12 @@ class SolanaMobileWalletProvider {
|
|
|
35371
35659
|
data: ''
|
|
35372
35660
|
};
|
|
35373
35661
|
}
|
|
35374
|
-
// On surfnet, sign + submit manually
|
|
35375
35662
|
if (isSurfnet) {
|
|
35376
|
-
|
|
35663
|
+
// Surfnet: sign then submit manually to our RPC
|
|
35664
|
+
const [signedTx] = await transact(async (wallet) => {
|
|
35665
|
+
await this.reauthorizeWallet(wallet);
|
|
35666
|
+
return wallet.signTransactions({ transactions: [tx] });
|
|
35667
|
+
}, this.getAssociationConfig());
|
|
35377
35668
|
const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed');
|
|
35378
35669
|
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35379
35670
|
preflightCommitment: 'confirmed'
|
|
@@ -35397,19 +35688,15 @@ class SolanaMobileWalletProvider {
|
|
|
35397
35688
|
data: txInfo === null || txInfo === void 0 ? void 0 : txInfo.meta,
|
|
35398
35689
|
};
|
|
35399
35690
|
}
|
|
35400
|
-
//
|
|
35401
|
-
|
|
35402
|
-
|
|
35403
|
-
|
|
35404
|
-
|
|
35691
|
+
// Non-surfnet: use signAndSendTransactions
|
|
35692
|
+
const signatures = await transact(async (wallet) => {
|
|
35693
|
+
await this.reauthorizeWallet(wallet);
|
|
35694
|
+
return wallet.signAndSendTransactions({
|
|
35695
|
+
transactions: [tx],
|
|
35696
|
+
commitment: 'confirmed',
|
|
35405
35697
|
});
|
|
35406
|
-
}
|
|
35407
|
-
|
|
35408
|
-
const signedTx = await walletAdapter.signTransaction(tx);
|
|
35409
|
-
signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35410
|
-
preflightCommitment: 'confirmed'
|
|
35411
|
-
});
|
|
35412
|
-
}
|
|
35698
|
+
}, this.getAssociationConfig());
|
|
35699
|
+
const signature = signatures[0];
|
|
35413
35700
|
const txInfo = await confirmAndCheckTransaction(connection, signature);
|
|
35414
35701
|
return {
|
|
35415
35702
|
transactionSignature: signature,
|
|
@@ -35419,7 +35706,8 @@ class SolanaMobileWalletProvider {
|
|
|
35419
35706
|
};
|
|
35420
35707
|
}
|
|
35421
35708
|
catch (error) {
|
|
35422
|
-
if (((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.includes('not connected')) || ((_d = error === null || error === void 0 ? void 0 : error.message) === null || _d === void 0 ? void 0 : _d.includes('not authorized'))
|
|
35709
|
+
if (((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.includes('not connected')) || ((_d = error === null || error === void 0 ? void 0 : error.message) === null || _d === void 0 ? void 0 : _d.includes('not authorized')) ||
|
|
35710
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35423
35711
|
await this.logout();
|
|
35424
35712
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35425
35713
|
}
|
|
@@ -35435,7 +35723,12 @@ class SolanaMobileWalletProvider {
|
|
|
35435
35723
|
}
|
|
35436
35724
|
}
|
|
35437
35725
|
async getNativeMethods() {
|
|
35438
|
-
return
|
|
35726
|
+
return {
|
|
35727
|
+
authToken: this.authToken,
|
|
35728
|
+
walletUriBase: this.walletUriBase,
|
|
35729
|
+
publicKey: this.publicKeyObj,
|
|
35730
|
+
base64Address: this.base64Address,
|
|
35731
|
+
};
|
|
35439
35732
|
}
|
|
35440
35733
|
/* ----------------------------------------------------------- *
|
|
35441
35734
|
* Private Helpers
|
|
@@ -35593,11 +35886,13 @@ async function getAuthProvider(config) {
|
|
|
35593
35886
|
break;
|
|
35594
35887
|
case "phantom":
|
|
35595
35888
|
currentAuthProvider = new PhantomWalletProvider(rpcUrl, config.phantomConfig);
|
|
35889
|
+
// MWA hot-swap is always available (custom modal shows MWA button on Android)
|
|
35890
|
+
currentAuthProvider.onSwitchToMWA =
|
|
35891
|
+
() => hotSwapToMWAProvider(config);
|
|
35892
|
+
// Privy hot-swap only when enablePrivyFallback is on
|
|
35596
35893
|
if ((_d = config.phantomConfig) === null || _d === void 0 ? void 0 : _d.enablePrivyFallback) {
|
|
35597
35894
|
currentAuthProvider.onSwitchToPrivy =
|
|
35598
35895
|
() => hotSwapToPrivyProvider(config);
|
|
35599
|
-
currentAuthProvider.onSwitchToMWA =
|
|
35600
|
-
() => hotSwapToMWAProvider(config);
|
|
35601
35896
|
}
|
|
35602
35897
|
break;
|
|
35603
35898
|
case "mobile-wallet-adapter":
|
|
@@ -35818,5 +36113,5 @@ async function getIdToken() {
|
|
|
35818
36113
|
return getIdToken$1(false);
|
|
35819
36114
|
}
|
|
35820
36115
|
|
|
35821
|
-
export { useAuth as A, getIdToken as B, PrivyWalletProvider as C, DEFAULT_TEST_ADDRESS as D,
|
|
35822
|
-
//# sourceMappingURL=index-
|
|
36116
|
+
export { useAuth as A, getIdToken as B, PrivyWalletProvider as C, DEFAULT_TEST_ADDRESS as D, isMobileWalletAvailable as E, registerMobileWalletAdapter as F, ServerSessionManager as G, buildSetDocumentsTransaction as H, clearCache as I, closeAllSubscriptions as J, convertRemainingAccounts as K, createSessionWithPrivy as L, MockAuthProvider as M, createSessionWithSignature as N, OffchainAuthProvider as O, PhantomWalletProvider as P, genAuthNonce as Q, genSolanaMessage as R, SolanaMobileWalletProvider as S, getCachedData as T, reconnectWithNewAuth as U, refreshSession as V, WebSessionManager as W, signSessionCreateMessage as X, getCurrentUser as a, bufferExports as b, onAuthLoadingChanged as c, getAuthLoading as d, logout as e, getConfig as f, getDefaultExportFromCjs$1 as g, getAuthProvider as h, init as i, get$2 as j, setMany as k, login as l, setFile as m, getFiles as n, onAuthStateChanged as o, runQueryMany as p, runExpression as q, runQuery as r, set$1 as s, runExpressionMany as t, signMessage as u, signTransaction as v, signAndSubmitTransaction as w, count as x, aggregate as y, subscribe as z };
|
|
36117
|
+
//# sourceMappingURL=index-Buv6IzVV.esm.js.map
|