@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
|
@@ -23,6 +23,21 @@ function _interopNamespaceDefault(e) {
|
|
|
23
23
|
return Object.freeze(n);
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
+
function _mergeNamespaces(n, m) {
|
|
27
|
+
m.forEach(function (e) {
|
|
28
|
+
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
29
|
+
if (k !== 'default' && !(k in n)) {
|
|
30
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
31
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: function () { return e[k]; }
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
return Object.freeze(n);
|
|
39
|
+
}
|
|
40
|
+
|
|
26
41
|
var anchor__namespace = /*#__PURE__*/_interopNamespaceDefault(anchor);
|
|
27
42
|
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React$2);
|
|
28
43
|
|
|
@@ -9199,21 +9214,21 @@ function requireSrc () {
|
|
|
9199
9214
|
return src$1;
|
|
9200
9215
|
}
|
|
9201
9216
|
|
|
9202
|
-
var bs58$1;
|
|
9203
|
-
var hasRequiredBs58;
|
|
9217
|
+
var bs58$1$1;
|
|
9218
|
+
var hasRequiredBs58$1;
|
|
9204
9219
|
|
|
9205
|
-
function requireBs58 () {
|
|
9206
|
-
if (hasRequiredBs58) return bs58$1;
|
|
9207
|
-
hasRequiredBs58 = 1;
|
|
9220
|
+
function requireBs58$1 () {
|
|
9221
|
+
if (hasRequiredBs58$1) return bs58$1$1;
|
|
9222
|
+
hasRequiredBs58$1 = 1;
|
|
9208
9223
|
var basex = requireSrc();
|
|
9209
9224
|
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
9210
9225
|
|
|
9211
|
-
bs58$1 = basex(ALPHABET);
|
|
9212
|
-
return bs58$1;
|
|
9226
|
+
bs58$1$1 = basex(ALPHABET);
|
|
9227
|
+
return bs58$1$1;
|
|
9213
9228
|
}
|
|
9214
9229
|
|
|
9215
|
-
var bs58Exports = requireBs58();
|
|
9216
|
-
var bs58$2 = /*@__PURE__*/getDefaultExportFromCjs(bs58Exports);
|
|
9230
|
+
var bs58Exports$1 = requireBs58$1();
|
|
9231
|
+
var bs58$2 = /*@__PURE__*/getDefaultExportFromCjs(bs58Exports$1);
|
|
9217
9232
|
|
|
9218
9233
|
// ─────────────────────────────────────────────────────────────
|
|
9219
9234
|
// Local implementation of getSimulationComputeUnits
|
|
@@ -13566,7 +13581,7 @@ async function loadDependencies() {
|
|
|
13566
13581
|
const [reactModule, reactDomModule, phantomModule] = await Promise.all([
|
|
13567
13582
|
import('react'),
|
|
13568
13583
|
import('react-dom/client'),
|
|
13569
|
-
Promise.resolve().then(function () { return require('./index-
|
|
13584
|
+
Promise.resolve().then(function () { return require('./index-De5j2Ofs.js'); })
|
|
13570
13585
|
]);
|
|
13571
13586
|
// Extract default export from ESM module namespace
|
|
13572
13587
|
// Dynamic import() returns { default: Module, ...exports }, not the module directly
|
|
@@ -13681,14 +13696,10 @@ class PhantomWalletProvider {
|
|
|
13681
13696
|
// Keep Phantom UI above host overlays while avoiding global click-capture.
|
|
13682
13697
|
this.containerElement.style.position = 'fixed';
|
|
13683
13698
|
this.containerElement.style.zIndex = '2147483647';
|
|
13684
|
-
|
|
13685
|
-
|
|
13686
|
-
|
|
13687
|
-
|
|
13688
|
-
this.containerElement.style.pointerEvents = 'none';
|
|
13689
|
-
}
|
|
13690
|
-
// When Privy fallback is off, the container just hosts PhantomProvider
|
|
13691
|
-
// without covering the viewport or blocking pointer events
|
|
13699
|
+
// Full-viewport overlay for custom modal; pointer-events: none lets
|
|
13700
|
+
// clicks pass through to page except where the modal sets 'auto'
|
|
13701
|
+
this.containerElement.style.inset = '0';
|
|
13702
|
+
this.containerElement.style.pointerEvents = 'none';
|
|
13692
13703
|
document.body.appendChild(this.containerElement);
|
|
13693
13704
|
const that = this;
|
|
13694
13705
|
const { PhantomProvider: ReactPhantomProvider, usePhantom, useConnect, useDisconnect, useModal, useSolana, useDiscoveredWallets, AddressType, darkTheme, lightTheme } = phantomReactSdk;
|
|
@@ -13814,7 +13825,7 @@ class PhantomWalletProvider {
|
|
|
13814
13825
|
}, [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]);
|
|
13815
13826
|
// Suppress SDK modal if it opens during custom modal login flow
|
|
13816
13827
|
React$1.useEffect(() => {
|
|
13817
|
-
if (modal.isOpened && that.loginInProgress
|
|
13828
|
+
if (modal.isOpened && that.loginInProgress) {
|
|
13818
13829
|
modal.close();
|
|
13819
13830
|
}
|
|
13820
13831
|
}, [modal.isOpened]);
|
|
@@ -13991,8 +14002,8 @@ class PhantomWalletProvider {
|
|
|
13991
14002
|
that.loginInProgress = false;
|
|
13992
14003
|
}
|
|
13993
14004
|
};
|
|
13994
|
-
// --- Custom modal
|
|
13995
|
-
if (!showWalletModal
|
|
14005
|
+
// --- Custom wallet modal ---
|
|
14006
|
+
if (!showWalletModal) {
|
|
13996
14007
|
return null;
|
|
13997
14008
|
}
|
|
13998
14009
|
const theme = that.config.theme === 'light' ? lightTheme : darkTheme;
|
|
@@ -14022,6 +14033,47 @@ class PhantomWalletProvider {
|
|
|
14022
14033
|
transition: 'background-color 0.2s',
|
|
14023
14034
|
});
|
|
14024
14035
|
const walletButtons = [];
|
|
14036
|
+
// Google OAuth button — shown when 'google' is in resolved providers
|
|
14037
|
+
if (sdkProviders.includes('google')) {
|
|
14038
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14039
|
+
key: 'google-oauth',
|
|
14040
|
+
style: buttonStyle('google-oauth'),
|
|
14041
|
+
onClick: () => handleWalletClick({ provider: 'google' }),
|
|
14042
|
+
onMouseEnter: () => setHoveredBtn('google-oauth'),
|
|
14043
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14044
|
+
}, React$1.createElement('svg', {
|
|
14045
|
+
width: '20', height: '20', viewBox: '0 0 24 24',
|
|
14046
|
+
style: { flexShrink: '0' },
|
|
14047
|
+
}, React$1.createElement('path', {
|
|
14048
|
+
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',
|
|
14049
|
+
fill: '#4285F4',
|
|
14050
|
+
}), React$1.createElement('path', {
|
|
14051
|
+
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',
|
|
14052
|
+
fill: '#34A853',
|
|
14053
|
+
}), React$1.createElement('path', {
|
|
14054
|
+
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',
|
|
14055
|
+
fill: '#FBBC05',
|
|
14056
|
+
}), React$1.createElement('path', {
|
|
14057
|
+
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',
|
|
14058
|
+
fill: '#EA4335',
|
|
14059
|
+
})), 'Continue with Google'));
|
|
14060
|
+
}
|
|
14061
|
+
// Apple OAuth button — shown when 'apple' is in resolved providers
|
|
14062
|
+
if (sdkProviders.includes('apple')) {
|
|
14063
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14064
|
+
key: 'apple-oauth',
|
|
14065
|
+
style: buttonStyle('apple-oauth'),
|
|
14066
|
+
onClick: () => handleWalletClick({ provider: 'apple' }),
|
|
14067
|
+
onMouseEnter: () => setHoveredBtn('apple-oauth'),
|
|
14068
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14069
|
+
}, React$1.createElement('svg', {
|
|
14070
|
+
width: '20', height: '20', viewBox: '0 0 24 24',
|
|
14071
|
+
fill: textColor,
|
|
14072
|
+
style: { flexShrink: '0' },
|
|
14073
|
+
}, React$1.createElement('path', {
|
|
14074
|
+
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',
|
|
14075
|
+
})), 'Continue with Apple'));
|
|
14076
|
+
}
|
|
14025
14077
|
// Fallback icon for Phantom — uses the official SVG path from @phantom/wallet-sdk-ui
|
|
14026
14078
|
// (SDK intentionally leaves wallet.icon empty for Phantom, expecting its own UI to render it)
|
|
14027
14079
|
const PHANTOM_ICON = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHJ4PSI2IiBmaWxsPSIjQUI5RkYyIi8+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNCw0KSI+PHBhdGggZD0iTTIuMzY2NTUgMTguMzI3MUM0LjkxODcxIDE4LjMyNzEgNi44MzY3IDE2LjEwNzYgNy45ODEzMSAxNC4zNTM3QzcuODQyMSAxNC43NDE3IDcuNzY0NzYgMTUuMTI5OCA3Ljc2NDc2IDE1LjUwMjNDNy43NjQ3NiAxNi41MjY3IDguMzUyNTMgMTcuMjU2MiA5LjUxMjYgMTcuMjU2MkMxMS4xMDU4IDE3LjI1NjIgMTIuODA3MiAxNS44NTkzIDEzLjY4ODkgMTQuMzUzN0MxMy42MjcgMTQuNTcxIDEzLjU5NjEgMTQuNzcyOCAxMy41OTYxIDE0Ljk1OUMxMy41OTYxIDE1LjY3MyAxMy45OTgyIDE2LjEyMzEgMTQuODE4IDE2LjEyMzFDMTcuNDAxMSAxNi4xMjMxIDE5Ljk5OTcgMTEuNTQ0NCAxOS45OTk3IDcuNTM5ODdDMTkuOTk5NyA0LjQyMDExIDE4LjQyMiAxLjY3Mjg1IDE0LjQ2MjIgMS42NzI4NUM3LjUwMTgxIDEuNjcyODUgMCAxMC4xNzg1IDAgMTUuNjczQzAgMTcuODMwNSAxLjE2MDA3IDE4LjMyNzEgMi4zNjY1NSAxOC4zMjcxWk0xMi4wNjQ4IDcuMTk4NDFDMTIuMDY0OCA2LjQyMjM1IDEyLjQ5NzkgNS44NzkxIDEzLjEzMiA1Ljg3OTFDMTMuNzUwNyA1Ljg3OTEgMTQuMTgzOCA2LjQyMjM1IDE0LjE4MzggNy4xOTg0MUMxNC4xODM4IDcuOTc0NDcgMTMuNzUwNyA4LjUzMzIzIDEzLjEzMiA4LjUzMzIzQzEyLjQ5NzkgOC41MzMyMyAxMi4wNjQ4IDcuOTc0NDcgMTIuMDY0OCA3LjE5ODQxWk0xNS4zNzQ4IDcuMTk4NDFDMTUuMzc0OCA2LjQyMjM1IDE1LjgwNzkgNS44NzkxIDE2LjQ0MjEgNS44NzkxQzE3LjA2MDggNS44NzkxIDE3LjQ5MzkgNi40MjIzNSAxNy40OTM5IDcuMTk4NDFDMTcuNDkzOSA3Ljk3NDQ3IDE3LjA2MDggOC41MzMyMyAxNi40NDIxIDguNTMzMjNDMTUuODA3OSA4LjUzMzIzIDE1LjM3NDggNy45NzQ0NyAxNS4zNzQ4IDcuMTk4NDFaIiBmaWxsPSJ3aGl0ZSIvPjwvZz48L3N2Zz4=';
|
|
@@ -14089,25 +14141,27 @@ class PhantomWalletProvider {
|
|
|
14089
14141
|
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14090
14142
|
})), 'Connect Mobile Wallet'));
|
|
14091
14143
|
}
|
|
14092
|
-
// Email button
|
|
14093
|
-
|
|
14094
|
-
|
|
14095
|
-
|
|
14096
|
-
|
|
14097
|
-
|
|
14098
|
-
|
|
14099
|
-
|
|
14100
|
-
|
|
14101
|
-
|
|
14102
|
-
|
|
14103
|
-
|
|
14104
|
-
|
|
14105
|
-
|
|
14106
|
-
|
|
14107
|
-
|
|
14108
|
-
|
|
14109
|
-
|
|
14110
|
-
|
|
14144
|
+
// Email button — only when Privy fallback is enabled
|
|
14145
|
+
if (that.config.enablePrivyFallback) {
|
|
14146
|
+
walletButtons.push(React$1.createElement('button', {
|
|
14147
|
+
key: 'email-login',
|
|
14148
|
+
style: buttonStyle('email-login'),
|
|
14149
|
+
onClick: handleEmailClick,
|
|
14150
|
+
onMouseEnter: () => setHoveredBtn('email-login'),
|
|
14151
|
+
onMouseLeave: () => setHoveredBtn(null),
|
|
14152
|
+
},
|
|
14153
|
+
// Email icon
|
|
14154
|
+
React$1.createElement('svg', {
|
|
14155
|
+
width: '20', height: '20', viewBox: '0 0 24 24', fill: 'none',
|
|
14156
|
+
style: { flexShrink: '0' },
|
|
14157
|
+
}, React$1.createElement('path', {
|
|
14158
|
+
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',
|
|
14159
|
+
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14160
|
+
}), React$1.createElement('path', {
|
|
14161
|
+
d: 'M22 6l-10 7L2 6',
|
|
14162
|
+
stroke: textColor, strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', fill: 'none',
|
|
14163
|
+
})), 'Log in with email'));
|
|
14164
|
+
}
|
|
14111
14165
|
// Render custom modal
|
|
14112
14166
|
return React$1.createElement('div', {
|
|
14113
14167
|
// Overlay
|
|
@@ -14330,13 +14384,8 @@ class PhantomWalletProvider {
|
|
|
14330
14384
|
return new Promise((resolve, reject) => {
|
|
14331
14385
|
this.pendingLogin = { resolve, reject };
|
|
14332
14386
|
this.loginInProgress = true;
|
|
14333
|
-
//
|
|
14334
|
-
|
|
14335
|
-
this.phantomMethods.showCustomModal();
|
|
14336
|
-
}
|
|
14337
|
-
else {
|
|
14338
|
-
this.phantomMethods.openModal();
|
|
14339
|
-
}
|
|
14387
|
+
// Always use our custom wallet modal
|
|
14388
|
+
this.phantomMethods.showCustomModal();
|
|
14340
14389
|
// Safety timeout
|
|
14341
14390
|
setTimeout(() => {
|
|
14342
14391
|
if (this.pendingLogin) {
|
|
@@ -16762,356 +16811,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
|
|
|
16762
16811
|
|
|
16763
16812
|
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}};
|
|
16764
16813
|
|
|
16765
|
-
var eventemitter3 = {exports: {}};
|
|
16766
|
-
|
|
16767
|
-
var hasRequiredEventemitter3;
|
|
16768
|
-
|
|
16769
|
-
function requireEventemitter3 () {
|
|
16770
|
-
if (hasRequiredEventemitter3) return eventemitter3.exports;
|
|
16771
|
-
hasRequiredEventemitter3 = 1;
|
|
16772
|
-
(function (module) {
|
|
16773
|
-
|
|
16774
|
-
var has = Object.prototype.hasOwnProperty
|
|
16775
|
-
, prefix = '~';
|
|
16776
|
-
|
|
16777
|
-
/**
|
|
16778
|
-
* Constructor to create a storage for our `EE` objects.
|
|
16779
|
-
* An `Events` instance is a plain object whose properties are event names.
|
|
16780
|
-
*
|
|
16781
|
-
* @constructor
|
|
16782
|
-
* @private
|
|
16783
|
-
*/
|
|
16784
|
-
function Events() {}
|
|
16785
|
-
|
|
16786
|
-
//
|
|
16787
|
-
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
16788
|
-
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
16789
|
-
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
16790
|
-
// character to make sure that the built-in object properties are not
|
|
16791
|
-
// overridden or used as an attack vector.
|
|
16792
|
-
//
|
|
16793
|
-
if (Object.create) {
|
|
16794
|
-
Events.prototype = Object.create(null);
|
|
16795
|
-
|
|
16796
|
-
//
|
|
16797
|
-
// This hack is needed because the `__proto__` property is still inherited in
|
|
16798
|
-
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
16799
|
-
//
|
|
16800
|
-
if (!new Events().__proto__) prefix = false;
|
|
16801
|
-
}
|
|
16802
|
-
|
|
16803
|
-
/**
|
|
16804
|
-
* Representation of a single event listener.
|
|
16805
|
-
*
|
|
16806
|
-
* @param {Function} fn The listener function.
|
|
16807
|
-
* @param {*} context The context to invoke the listener with.
|
|
16808
|
-
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
16809
|
-
* @constructor
|
|
16810
|
-
* @private
|
|
16811
|
-
*/
|
|
16812
|
-
function EE(fn, context, once) {
|
|
16813
|
-
this.fn = fn;
|
|
16814
|
-
this.context = context;
|
|
16815
|
-
this.once = once || false;
|
|
16816
|
-
}
|
|
16817
|
-
|
|
16818
|
-
/**
|
|
16819
|
-
* Add a listener for a given event.
|
|
16820
|
-
*
|
|
16821
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
16822
|
-
* @param {(String|Symbol)} event The event name.
|
|
16823
|
-
* @param {Function} fn The listener function.
|
|
16824
|
-
* @param {*} context The context to invoke the listener with.
|
|
16825
|
-
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
16826
|
-
* @returns {EventEmitter}
|
|
16827
|
-
* @private
|
|
16828
|
-
*/
|
|
16829
|
-
function addListener(emitter, event, fn, context, once) {
|
|
16830
|
-
if (typeof fn !== 'function') {
|
|
16831
|
-
throw new TypeError('The listener must be a function');
|
|
16832
|
-
}
|
|
16833
|
-
|
|
16834
|
-
var listener = new EE(fn, context || emitter, once)
|
|
16835
|
-
, evt = prefix ? prefix + event : event;
|
|
16836
|
-
|
|
16837
|
-
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
16838
|
-
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
16839
|
-
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
16840
|
-
|
|
16841
|
-
return emitter;
|
|
16842
|
-
}
|
|
16843
|
-
|
|
16844
|
-
/**
|
|
16845
|
-
* Clear event by name.
|
|
16846
|
-
*
|
|
16847
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
16848
|
-
* @param {(String|Symbol)} evt The Event name.
|
|
16849
|
-
* @private
|
|
16850
|
-
*/
|
|
16851
|
-
function clearEvent(emitter, evt) {
|
|
16852
|
-
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
16853
|
-
else delete emitter._events[evt];
|
|
16854
|
-
}
|
|
16855
|
-
|
|
16856
|
-
/**
|
|
16857
|
-
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
16858
|
-
* `EventEmitter` interface.
|
|
16859
|
-
*
|
|
16860
|
-
* @constructor
|
|
16861
|
-
* @public
|
|
16862
|
-
*/
|
|
16863
|
-
function EventEmitter() {
|
|
16864
|
-
this._events = new Events();
|
|
16865
|
-
this._eventsCount = 0;
|
|
16866
|
-
}
|
|
16867
|
-
|
|
16868
|
-
/**
|
|
16869
|
-
* Return an array listing the events for which the emitter has registered
|
|
16870
|
-
* listeners.
|
|
16871
|
-
*
|
|
16872
|
-
* @returns {Array}
|
|
16873
|
-
* @public
|
|
16874
|
-
*/
|
|
16875
|
-
EventEmitter.prototype.eventNames = function eventNames() {
|
|
16876
|
-
var names = []
|
|
16877
|
-
, events
|
|
16878
|
-
, name;
|
|
16879
|
-
|
|
16880
|
-
if (this._eventsCount === 0) return names;
|
|
16881
|
-
|
|
16882
|
-
for (name in (events = this._events)) {
|
|
16883
|
-
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
16884
|
-
}
|
|
16885
|
-
|
|
16886
|
-
if (Object.getOwnPropertySymbols) {
|
|
16887
|
-
return names.concat(Object.getOwnPropertySymbols(events));
|
|
16888
|
-
}
|
|
16889
|
-
|
|
16890
|
-
return names;
|
|
16891
|
-
};
|
|
16892
|
-
|
|
16893
|
-
/**
|
|
16894
|
-
* Return the listeners registered for a given event.
|
|
16895
|
-
*
|
|
16896
|
-
* @param {(String|Symbol)} event The event name.
|
|
16897
|
-
* @returns {Array} The registered listeners.
|
|
16898
|
-
* @public
|
|
16899
|
-
*/
|
|
16900
|
-
EventEmitter.prototype.listeners = function listeners(event) {
|
|
16901
|
-
var evt = prefix ? prefix + event : event
|
|
16902
|
-
, handlers = this._events[evt];
|
|
16903
|
-
|
|
16904
|
-
if (!handlers) return [];
|
|
16905
|
-
if (handlers.fn) return [handlers.fn];
|
|
16906
|
-
|
|
16907
|
-
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
16908
|
-
ee[i] = handlers[i].fn;
|
|
16909
|
-
}
|
|
16910
|
-
|
|
16911
|
-
return ee;
|
|
16912
|
-
};
|
|
16913
|
-
|
|
16914
|
-
/**
|
|
16915
|
-
* Return the number of listeners listening to a given event.
|
|
16916
|
-
*
|
|
16917
|
-
* @param {(String|Symbol)} event The event name.
|
|
16918
|
-
* @returns {Number} The number of listeners.
|
|
16919
|
-
* @public
|
|
16920
|
-
*/
|
|
16921
|
-
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
16922
|
-
var evt = prefix ? prefix + event : event
|
|
16923
|
-
, listeners = this._events[evt];
|
|
16924
|
-
|
|
16925
|
-
if (!listeners) return 0;
|
|
16926
|
-
if (listeners.fn) return 1;
|
|
16927
|
-
return listeners.length;
|
|
16928
|
-
};
|
|
16929
|
-
|
|
16930
|
-
/**
|
|
16931
|
-
* Calls each of the listeners registered for a given event.
|
|
16932
|
-
*
|
|
16933
|
-
* @param {(String|Symbol)} event The event name.
|
|
16934
|
-
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
16935
|
-
* @public
|
|
16936
|
-
*/
|
|
16937
|
-
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
16938
|
-
var evt = prefix ? prefix + event : event;
|
|
16939
|
-
|
|
16940
|
-
if (!this._events[evt]) return false;
|
|
16941
|
-
|
|
16942
|
-
var listeners = this._events[evt]
|
|
16943
|
-
, len = arguments.length
|
|
16944
|
-
, args
|
|
16945
|
-
, i;
|
|
16946
|
-
|
|
16947
|
-
if (listeners.fn) {
|
|
16948
|
-
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
16949
|
-
|
|
16950
|
-
switch (len) {
|
|
16951
|
-
case 1: return listeners.fn.call(listeners.context), true;
|
|
16952
|
-
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
16953
|
-
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
16954
|
-
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
16955
|
-
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
16956
|
-
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
16957
|
-
}
|
|
16958
|
-
|
|
16959
|
-
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
16960
|
-
args[i - 1] = arguments[i];
|
|
16961
|
-
}
|
|
16962
|
-
|
|
16963
|
-
listeners.fn.apply(listeners.context, args);
|
|
16964
|
-
} else {
|
|
16965
|
-
var length = listeners.length
|
|
16966
|
-
, j;
|
|
16967
|
-
|
|
16968
|
-
for (i = 0; i < length; i++) {
|
|
16969
|
-
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
16970
|
-
|
|
16971
|
-
switch (len) {
|
|
16972
|
-
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
16973
|
-
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
16974
|
-
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
16975
|
-
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
16976
|
-
default:
|
|
16977
|
-
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
16978
|
-
args[j - 1] = arguments[j];
|
|
16979
|
-
}
|
|
16980
|
-
|
|
16981
|
-
listeners[i].fn.apply(listeners[i].context, args);
|
|
16982
|
-
}
|
|
16983
|
-
}
|
|
16984
|
-
}
|
|
16985
|
-
|
|
16986
|
-
return true;
|
|
16987
|
-
};
|
|
16988
|
-
|
|
16989
|
-
/**
|
|
16990
|
-
* Add a listener for a given event.
|
|
16991
|
-
*
|
|
16992
|
-
* @param {(String|Symbol)} event The event name.
|
|
16993
|
-
* @param {Function} fn The listener function.
|
|
16994
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
16995
|
-
* @returns {EventEmitter} `this`.
|
|
16996
|
-
* @public
|
|
16997
|
-
*/
|
|
16998
|
-
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
16999
|
-
return addListener(this, event, fn, context, false);
|
|
17000
|
-
};
|
|
17001
|
-
|
|
17002
|
-
/**
|
|
17003
|
-
* Add a one-time listener for a given event.
|
|
17004
|
-
*
|
|
17005
|
-
* @param {(String|Symbol)} event The event name.
|
|
17006
|
-
* @param {Function} fn The listener function.
|
|
17007
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
17008
|
-
* @returns {EventEmitter} `this`.
|
|
17009
|
-
* @public
|
|
17010
|
-
*/
|
|
17011
|
-
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
17012
|
-
return addListener(this, event, fn, context, true);
|
|
17013
|
-
};
|
|
17014
|
-
|
|
17015
|
-
/**
|
|
17016
|
-
* Remove the listeners of a given event.
|
|
17017
|
-
*
|
|
17018
|
-
* @param {(String|Symbol)} event The event name.
|
|
17019
|
-
* @param {Function} fn Only remove the listeners that match this function.
|
|
17020
|
-
* @param {*} context Only remove the listeners that have this context.
|
|
17021
|
-
* @param {Boolean} once Only remove one-time listeners.
|
|
17022
|
-
* @returns {EventEmitter} `this`.
|
|
17023
|
-
* @public
|
|
17024
|
-
*/
|
|
17025
|
-
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
17026
|
-
var evt = prefix ? prefix + event : event;
|
|
17027
|
-
|
|
17028
|
-
if (!this._events[evt]) return this;
|
|
17029
|
-
if (!fn) {
|
|
17030
|
-
clearEvent(this, evt);
|
|
17031
|
-
return this;
|
|
17032
|
-
}
|
|
17033
|
-
|
|
17034
|
-
var listeners = this._events[evt];
|
|
17035
|
-
|
|
17036
|
-
if (listeners.fn) {
|
|
17037
|
-
if (
|
|
17038
|
-
listeners.fn === fn &&
|
|
17039
|
-
(!once || listeners.once) &&
|
|
17040
|
-
(!context || listeners.context === context)
|
|
17041
|
-
) {
|
|
17042
|
-
clearEvent(this, evt);
|
|
17043
|
-
}
|
|
17044
|
-
} else {
|
|
17045
|
-
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
17046
|
-
if (
|
|
17047
|
-
listeners[i].fn !== fn ||
|
|
17048
|
-
(once && !listeners[i].once) ||
|
|
17049
|
-
(context && listeners[i].context !== context)
|
|
17050
|
-
) {
|
|
17051
|
-
events.push(listeners[i]);
|
|
17052
|
-
}
|
|
17053
|
-
}
|
|
17054
|
-
|
|
17055
|
-
//
|
|
17056
|
-
// Reset the array, or remove it completely if we have no more listeners.
|
|
17057
|
-
//
|
|
17058
|
-
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
17059
|
-
else clearEvent(this, evt);
|
|
17060
|
-
}
|
|
17061
|
-
|
|
17062
|
-
return this;
|
|
17063
|
-
};
|
|
17064
|
-
|
|
17065
|
-
/**
|
|
17066
|
-
* Remove all listeners, or those of the specified event.
|
|
17067
|
-
*
|
|
17068
|
-
* @param {(String|Symbol)} [event] The event name.
|
|
17069
|
-
* @returns {EventEmitter} `this`.
|
|
17070
|
-
* @public
|
|
17071
|
-
*/
|
|
17072
|
-
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
17073
|
-
var evt;
|
|
17074
|
-
|
|
17075
|
-
if (event) {
|
|
17076
|
-
evt = prefix ? prefix + event : event;
|
|
17077
|
-
if (this._events[evt]) clearEvent(this, evt);
|
|
17078
|
-
} else {
|
|
17079
|
-
this._events = new Events();
|
|
17080
|
-
this._eventsCount = 0;
|
|
17081
|
-
}
|
|
17082
|
-
|
|
17083
|
-
return this;
|
|
17084
|
-
};
|
|
17085
|
-
|
|
17086
|
-
//
|
|
17087
|
-
// Alias methods names because people roll like that.
|
|
17088
|
-
//
|
|
17089
|
-
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
17090
|
-
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
17091
|
-
|
|
17092
|
-
//
|
|
17093
|
-
// Expose the prefix.
|
|
17094
|
-
//
|
|
17095
|
-
EventEmitter.prefixed = prefix;
|
|
17096
|
-
|
|
17097
|
-
//
|
|
17098
|
-
// Allow `EventEmitter` to be imported as module namespace.
|
|
17099
|
-
//
|
|
17100
|
-
EventEmitter.EventEmitter = EventEmitter;
|
|
17101
|
-
|
|
17102
|
-
//
|
|
17103
|
-
// Expose the module.
|
|
17104
|
-
//
|
|
17105
|
-
{
|
|
17106
|
-
module.exports = EventEmitter;
|
|
17107
|
-
}
|
|
17108
|
-
} (eventemitter3));
|
|
17109
|
-
return eventemitter3.exports;
|
|
17110
|
-
}
|
|
17111
|
-
|
|
17112
|
-
var eventemitter3Exports = requireEventemitter3();
|
|
17113
|
-
var EventEmitter3 = /*@__PURE__*/getDefaultExportFromCjs$1(eventemitter3Exports);
|
|
17114
|
-
|
|
17115
16814
|
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;}};
|
|
17116
16815
|
|
|
17117
16816
|
// This file is autogenerated. It's used to publish ESM to npm.
|
|
@@ -21327,6 +21026,356 @@ function createSolanaRpcSubscriptionsFromTransport(transport) {
|
|
|
21327
21026
|
});
|
|
21328
21027
|
}
|
|
21329
21028
|
|
|
21029
|
+
var eventemitter3 = {exports: {}};
|
|
21030
|
+
|
|
21031
|
+
var hasRequiredEventemitter3;
|
|
21032
|
+
|
|
21033
|
+
function requireEventemitter3 () {
|
|
21034
|
+
if (hasRequiredEventemitter3) return eventemitter3.exports;
|
|
21035
|
+
hasRequiredEventemitter3 = 1;
|
|
21036
|
+
(function (module) {
|
|
21037
|
+
|
|
21038
|
+
var has = Object.prototype.hasOwnProperty
|
|
21039
|
+
, prefix = '~';
|
|
21040
|
+
|
|
21041
|
+
/**
|
|
21042
|
+
* Constructor to create a storage for our `EE` objects.
|
|
21043
|
+
* An `Events` instance is a plain object whose properties are event names.
|
|
21044
|
+
*
|
|
21045
|
+
* @constructor
|
|
21046
|
+
* @private
|
|
21047
|
+
*/
|
|
21048
|
+
function Events() {}
|
|
21049
|
+
|
|
21050
|
+
//
|
|
21051
|
+
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
21052
|
+
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
21053
|
+
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
21054
|
+
// character to make sure that the built-in object properties are not
|
|
21055
|
+
// overridden or used as an attack vector.
|
|
21056
|
+
//
|
|
21057
|
+
if (Object.create) {
|
|
21058
|
+
Events.prototype = Object.create(null);
|
|
21059
|
+
|
|
21060
|
+
//
|
|
21061
|
+
// This hack is needed because the `__proto__` property is still inherited in
|
|
21062
|
+
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
21063
|
+
//
|
|
21064
|
+
if (!new Events().__proto__) prefix = false;
|
|
21065
|
+
}
|
|
21066
|
+
|
|
21067
|
+
/**
|
|
21068
|
+
* Representation of a single event listener.
|
|
21069
|
+
*
|
|
21070
|
+
* @param {Function} fn The listener function.
|
|
21071
|
+
* @param {*} context The context to invoke the listener with.
|
|
21072
|
+
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
21073
|
+
* @constructor
|
|
21074
|
+
* @private
|
|
21075
|
+
*/
|
|
21076
|
+
function EE(fn, context, once) {
|
|
21077
|
+
this.fn = fn;
|
|
21078
|
+
this.context = context;
|
|
21079
|
+
this.once = once || false;
|
|
21080
|
+
}
|
|
21081
|
+
|
|
21082
|
+
/**
|
|
21083
|
+
* Add a listener for a given event.
|
|
21084
|
+
*
|
|
21085
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
21086
|
+
* @param {(String|Symbol)} event The event name.
|
|
21087
|
+
* @param {Function} fn The listener function.
|
|
21088
|
+
* @param {*} context The context to invoke the listener with.
|
|
21089
|
+
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
21090
|
+
* @returns {EventEmitter}
|
|
21091
|
+
* @private
|
|
21092
|
+
*/
|
|
21093
|
+
function addListener(emitter, event, fn, context, once) {
|
|
21094
|
+
if (typeof fn !== 'function') {
|
|
21095
|
+
throw new TypeError('The listener must be a function');
|
|
21096
|
+
}
|
|
21097
|
+
|
|
21098
|
+
var listener = new EE(fn, context || emitter, once)
|
|
21099
|
+
, evt = prefix ? prefix + event : event;
|
|
21100
|
+
|
|
21101
|
+
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
21102
|
+
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
21103
|
+
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
21104
|
+
|
|
21105
|
+
return emitter;
|
|
21106
|
+
}
|
|
21107
|
+
|
|
21108
|
+
/**
|
|
21109
|
+
* Clear event by name.
|
|
21110
|
+
*
|
|
21111
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
21112
|
+
* @param {(String|Symbol)} evt The Event name.
|
|
21113
|
+
* @private
|
|
21114
|
+
*/
|
|
21115
|
+
function clearEvent(emitter, evt) {
|
|
21116
|
+
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
21117
|
+
else delete emitter._events[evt];
|
|
21118
|
+
}
|
|
21119
|
+
|
|
21120
|
+
/**
|
|
21121
|
+
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
21122
|
+
* `EventEmitter` interface.
|
|
21123
|
+
*
|
|
21124
|
+
* @constructor
|
|
21125
|
+
* @public
|
|
21126
|
+
*/
|
|
21127
|
+
function EventEmitter() {
|
|
21128
|
+
this._events = new Events();
|
|
21129
|
+
this._eventsCount = 0;
|
|
21130
|
+
}
|
|
21131
|
+
|
|
21132
|
+
/**
|
|
21133
|
+
* Return an array listing the events for which the emitter has registered
|
|
21134
|
+
* listeners.
|
|
21135
|
+
*
|
|
21136
|
+
* @returns {Array}
|
|
21137
|
+
* @public
|
|
21138
|
+
*/
|
|
21139
|
+
EventEmitter.prototype.eventNames = function eventNames() {
|
|
21140
|
+
var names = []
|
|
21141
|
+
, events
|
|
21142
|
+
, name;
|
|
21143
|
+
|
|
21144
|
+
if (this._eventsCount === 0) return names;
|
|
21145
|
+
|
|
21146
|
+
for (name in (events = this._events)) {
|
|
21147
|
+
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
21148
|
+
}
|
|
21149
|
+
|
|
21150
|
+
if (Object.getOwnPropertySymbols) {
|
|
21151
|
+
return names.concat(Object.getOwnPropertySymbols(events));
|
|
21152
|
+
}
|
|
21153
|
+
|
|
21154
|
+
return names;
|
|
21155
|
+
};
|
|
21156
|
+
|
|
21157
|
+
/**
|
|
21158
|
+
* Return the listeners registered for a given event.
|
|
21159
|
+
*
|
|
21160
|
+
* @param {(String|Symbol)} event The event name.
|
|
21161
|
+
* @returns {Array} The registered listeners.
|
|
21162
|
+
* @public
|
|
21163
|
+
*/
|
|
21164
|
+
EventEmitter.prototype.listeners = function listeners(event) {
|
|
21165
|
+
var evt = prefix ? prefix + event : event
|
|
21166
|
+
, handlers = this._events[evt];
|
|
21167
|
+
|
|
21168
|
+
if (!handlers) return [];
|
|
21169
|
+
if (handlers.fn) return [handlers.fn];
|
|
21170
|
+
|
|
21171
|
+
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
21172
|
+
ee[i] = handlers[i].fn;
|
|
21173
|
+
}
|
|
21174
|
+
|
|
21175
|
+
return ee;
|
|
21176
|
+
};
|
|
21177
|
+
|
|
21178
|
+
/**
|
|
21179
|
+
* Return the number of listeners listening to a given event.
|
|
21180
|
+
*
|
|
21181
|
+
* @param {(String|Symbol)} event The event name.
|
|
21182
|
+
* @returns {Number} The number of listeners.
|
|
21183
|
+
* @public
|
|
21184
|
+
*/
|
|
21185
|
+
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
21186
|
+
var evt = prefix ? prefix + event : event
|
|
21187
|
+
, listeners = this._events[evt];
|
|
21188
|
+
|
|
21189
|
+
if (!listeners) return 0;
|
|
21190
|
+
if (listeners.fn) return 1;
|
|
21191
|
+
return listeners.length;
|
|
21192
|
+
};
|
|
21193
|
+
|
|
21194
|
+
/**
|
|
21195
|
+
* Calls each of the listeners registered for a given event.
|
|
21196
|
+
*
|
|
21197
|
+
* @param {(String|Symbol)} event The event name.
|
|
21198
|
+
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
21199
|
+
* @public
|
|
21200
|
+
*/
|
|
21201
|
+
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
21202
|
+
var evt = prefix ? prefix + event : event;
|
|
21203
|
+
|
|
21204
|
+
if (!this._events[evt]) return false;
|
|
21205
|
+
|
|
21206
|
+
var listeners = this._events[evt]
|
|
21207
|
+
, len = arguments.length
|
|
21208
|
+
, args
|
|
21209
|
+
, i;
|
|
21210
|
+
|
|
21211
|
+
if (listeners.fn) {
|
|
21212
|
+
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
21213
|
+
|
|
21214
|
+
switch (len) {
|
|
21215
|
+
case 1: return listeners.fn.call(listeners.context), true;
|
|
21216
|
+
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
21217
|
+
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
21218
|
+
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
21219
|
+
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
21220
|
+
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
21221
|
+
}
|
|
21222
|
+
|
|
21223
|
+
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
21224
|
+
args[i - 1] = arguments[i];
|
|
21225
|
+
}
|
|
21226
|
+
|
|
21227
|
+
listeners.fn.apply(listeners.context, args);
|
|
21228
|
+
} else {
|
|
21229
|
+
var length = listeners.length
|
|
21230
|
+
, j;
|
|
21231
|
+
|
|
21232
|
+
for (i = 0; i < length; i++) {
|
|
21233
|
+
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
21234
|
+
|
|
21235
|
+
switch (len) {
|
|
21236
|
+
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
21237
|
+
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
21238
|
+
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
21239
|
+
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
21240
|
+
default:
|
|
21241
|
+
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
21242
|
+
args[j - 1] = arguments[j];
|
|
21243
|
+
}
|
|
21244
|
+
|
|
21245
|
+
listeners[i].fn.apply(listeners[i].context, args);
|
|
21246
|
+
}
|
|
21247
|
+
}
|
|
21248
|
+
}
|
|
21249
|
+
|
|
21250
|
+
return true;
|
|
21251
|
+
};
|
|
21252
|
+
|
|
21253
|
+
/**
|
|
21254
|
+
* Add a listener for a given event.
|
|
21255
|
+
*
|
|
21256
|
+
* @param {(String|Symbol)} event The event name.
|
|
21257
|
+
* @param {Function} fn The listener function.
|
|
21258
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
21259
|
+
* @returns {EventEmitter} `this`.
|
|
21260
|
+
* @public
|
|
21261
|
+
*/
|
|
21262
|
+
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
21263
|
+
return addListener(this, event, fn, context, false);
|
|
21264
|
+
};
|
|
21265
|
+
|
|
21266
|
+
/**
|
|
21267
|
+
* Add a one-time listener for a given event.
|
|
21268
|
+
*
|
|
21269
|
+
* @param {(String|Symbol)} event The event name.
|
|
21270
|
+
* @param {Function} fn The listener function.
|
|
21271
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
21272
|
+
* @returns {EventEmitter} `this`.
|
|
21273
|
+
* @public
|
|
21274
|
+
*/
|
|
21275
|
+
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
21276
|
+
return addListener(this, event, fn, context, true);
|
|
21277
|
+
};
|
|
21278
|
+
|
|
21279
|
+
/**
|
|
21280
|
+
* Remove the listeners of a given event.
|
|
21281
|
+
*
|
|
21282
|
+
* @param {(String|Symbol)} event The event name.
|
|
21283
|
+
* @param {Function} fn Only remove the listeners that match this function.
|
|
21284
|
+
* @param {*} context Only remove the listeners that have this context.
|
|
21285
|
+
* @param {Boolean} once Only remove one-time listeners.
|
|
21286
|
+
* @returns {EventEmitter} `this`.
|
|
21287
|
+
* @public
|
|
21288
|
+
*/
|
|
21289
|
+
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
21290
|
+
var evt = prefix ? prefix + event : event;
|
|
21291
|
+
|
|
21292
|
+
if (!this._events[evt]) return this;
|
|
21293
|
+
if (!fn) {
|
|
21294
|
+
clearEvent(this, evt);
|
|
21295
|
+
return this;
|
|
21296
|
+
}
|
|
21297
|
+
|
|
21298
|
+
var listeners = this._events[evt];
|
|
21299
|
+
|
|
21300
|
+
if (listeners.fn) {
|
|
21301
|
+
if (
|
|
21302
|
+
listeners.fn === fn &&
|
|
21303
|
+
(!once || listeners.once) &&
|
|
21304
|
+
(!context || listeners.context === context)
|
|
21305
|
+
) {
|
|
21306
|
+
clearEvent(this, evt);
|
|
21307
|
+
}
|
|
21308
|
+
} else {
|
|
21309
|
+
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
21310
|
+
if (
|
|
21311
|
+
listeners[i].fn !== fn ||
|
|
21312
|
+
(once && !listeners[i].once) ||
|
|
21313
|
+
(context && listeners[i].context !== context)
|
|
21314
|
+
) {
|
|
21315
|
+
events.push(listeners[i]);
|
|
21316
|
+
}
|
|
21317
|
+
}
|
|
21318
|
+
|
|
21319
|
+
//
|
|
21320
|
+
// Reset the array, or remove it completely if we have no more listeners.
|
|
21321
|
+
//
|
|
21322
|
+
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
21323
|
+
else clearEvent(this, evt);
|
|
21324
|
+
}
|
|
21325
|
+
|
|
21326
|
+
return this;
|
|
21327
|
+
};
|
|
21328
|
+
|
|
21329
|
+
/**
|
|
21330
|
+
* Remove all listeners, or those of the specified event.
|
|
21331
|
+
*
|
|
21332
|
+
* @param {(String|Symbol)} [event] The event name.
|
|
21333
|
+
* @returns {EventEmitter} `this`.
|
|
21334
|
+
* @public
|
|
21335
|
+
*/
|
|
21336
|
+
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
21337
|
+
var evt;
|
|
21338
|
+
|
|
21339
|
+
if (event) {
|
|
21340
|
+
evt = prefix ? prefix + event : event;
|
|
21341
|
+
if (this._events[evt]) clearEvent(this, evt);
|
|
21342
|
+
} else {
|
|
21343
|
+
this._events = new Events();
|
|
21344
|
+
this._eventsCount = 0;
|
|
21345
|
+
}
|
|
21346
|
+
|
|
21347
|
+
return this;
|
|
21348
|
+
};
|
|
21349
|
+
|
|
21350
|
+
//
|
|
21351
|
+
// Alias methods names because people roll like that.
|
|
21352
|
+
//
|
|
21353
|
+
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
21354
|
+
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
21355
|
+
|
|
21356
|
+
//
|
|
21357
|
+
// Expose the prefix.
|
|
21358
|
+
//
|
|
21359
|
+
EventEmitter.prefixed = prefix;
|
|
21360
|
+
|
|
21361
|
+
//
|
|
21362
|
+
// Allow `EventEmitter` to be imported as module namespace.
|
|
21363
|
+
//
|
|
21364
|
+
EventEmitter.EventEmitter = EventEmitter;
|
|
21365
|
+
|
|
21366
|
+
//
|
|
21367
|
+
// Expose the module.
|
|
21368
|
+
//
|
|
21369
|
+
{
|
|
21370
|
+
module.exports = EventEmitter;
|
|
21371
|
+
}
|
|
21372
|
+
} (eventemitter3));
|
|
21373
|
+
return eventemitter3.exports;
|
|
21374
|
+
}
|
|
21375
|
+
|
|
21376
|
+
var eventemitter3Exports = requireEventemitter3();
|
|
21377
|
+
var EventEmitter = /*@__PURE__*/getDefaultExportFromCjs$1(eventemitter3Exports);
|
|
21378
|
+
|
|
21330
21379
|
/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
21331
21380
|
function isBytes$1(a) {
|
|
21332
21381
|
return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');
|
|
@@ -21663,9 +21712,9 @@ const genBase58 = /* @__NO_SIDE_EFFECTS__ */ (abc) => chain(radix(58), alphabet$
|
|
|
21663
21712
|
*/
|
|
21664
21713
|
const base58$1 = genBase58('123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
|
|
21665
21714
|
|
|
21666
|
-
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
|
|
21715
|
+
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"});
|
|
21667
21716
|
|
|
21668
|
-
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$
|
|
21717
|
+
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});
|
|
21669
21718
|
|
|
21670
21719
|
var __classPrivateFieldGet$1 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
21671
21720
|
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
@@ -22287,7 +22336,7 @@ function requireEvents () {
|
|
|
22287
22336
|
var eventsExports = requireEvents();
|
|
22288
22337
|
var xe$3 = /*@__PURE__*/getDefaultExportFromCjs$1(eventsExports);
|
|
22289
22338
|
|
|
22290
|
-
var cjs$
|
|
22339
|
+
var cjs$4 = {};
|
|
22291
22340
|
|
|
22292
22341
|
/******************************************************************************
|
|
22293
22342
|
Copyright (c) Microsoft Corporation.
|
|
@@ -22936,11 +22985,11 @@ function requireTypes () {
|
|
|
22936
22985
|
return types;
|
|
22937
22986
|
}
|
|
22938
22987
|
|
|
22939
|
-
var hasRequiredCjs$
|
|
22988
|
+
var hasRequiredCjs$4;
|
|
22940
22989
|
|
|
22941
|
-
function requireCjs$
|
|
22942
|
-
if (hasRequiredCjs$
|
|
22943
|
-
hasRequiredCjs$
|
|
22990
|
+
function requireCjs$4 () {
|
|
22991
|
+
if (hasRequiredCjs$4) return cjs$4;
|
|
22992
|
+
hasRequiredCjs$4 = 1;
|
|
22944
22993
|
(function (exports$1) {
|
|
22945
22994
|
Object.defineProperty(exports$1, "__esModule", { value: true });
|
|
22946
22995
|
const tslib_1 = require$$0;
|
|
@@ -22949,11 +22998,11 @@ function requireCjs$3 () {
|
|
|
22949
22998
|
tslib_1.__exportStar(requireTypes(), exports$1);
|
|
22950
22999
|
tslib_1.__exportStar(requireConstants(), exports$1);
|
|
22951
23000
|
|
|
22952
|
-
} (cjs$
|
|
22953
|
-
return cjs$
|
|
23001
|
+
} (cjs$4));
|
|
23002
|
+
return cjs$4;
|
|
22954
23003
|
}
|
|
22955
23004
|
|
|
22956
|
-
var cjsExports$3 = requireCjs$
|
|
23005
|
+
var cjsExports$3 = requireCjs$4();
|
|
22957
23006
|
|
|
22958
23007
|
class IEvents {
|
|
22959
23008
|
}
|
|
@@ -24458,15 +24507,15 @@ function createVersionParts(count) {
|
|
|
24458
24507
|
return output;
|
|
24459
24508
|
}
|
|
24460
24509
|
|
|
24461
|
-
var cjs$
|
|
24510
|
+
var cjs$3 = {};
|
|
24462
24511
|
|
|
24463
|
-
var hasRequiredCjs$
|
|
24512
|
+
var hasRequiredCjs$3;
|
|
24464
24513
|
|
|
24465
|
-
function requireCjs$
|
|
24466
|
-
if (hasRequiredCjs$
|
|
24467
|
-
hasRequiredCjs$
|
|
24468
|
-
Object.defineProperty(cjs$
|
|
24469
|
-
cjs$
|
|
24514
|
+
function requireCjs$3 () {
|
|
24515
|
+
if (hasRequiredCjs$3) return cjs$3;
|
|
24516
|
+
hasRequiredCjs$3 = 1;
|
|
24517
|
+
Object.defineProperty(cjs$3, "__esModule", { value: true });
|
|
24518
|
+
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;
|
|
24470
24519
|
function getFromWindow(name) {
|
|
24471
24520
|
let res = undefined;
|
|
24472
24521
|
if (typeof window !== "undefined" && typeof window[name] !== "undefined") {
|
|
@@ -24474,7 +24523,7 @@ function requireCjs$2 () {
|
|
|
24474
24523
|
}
|
|
24475
24524
|
return res;
|
|
24476
24525
|
}
|
|
24477
|
-
cjs$
|
|
24526
|
+
cjs$3.getFromWindow = getFromWindow;
|
|
24478
24527
|
function getFromWindowOrThrow(name) {
|
|
24479
24528
|
const res = getFromWindow(name);
|
|
24480
24529
|
if (!res) {
|
|
@@ -24482,63 +24531,63 @@ function requireCjs$2 () {
|
|
|
24482
24531
|
}
|
|
24483
24532
|
return res;
|
|
24484
24533
|
}
|
|
24485
|
-
cjs$
|
|
24534
|
+
cjs$3.getFromWindowOrThrow = getFromWindowOrThrow;
|
|
24486
24535
|
function getDocumentOrThrow() {
|
|
24487
24536
|
return getFromWindowOrThrow("document");
|
|
24488
24537
|
}
|
|
24489
|
-
cjs$
|
|
24538
|
+
cjs$3.getDocumentOrThrow = getDocumentOrThrow;
|
|
24490
24539
|
function getDocument() {
|
|
24491
24540
|
return getFromWindow("document");
|
|
24492
24541
|
}
|
|
24493
|
-
cjs$
|
|
24542
|
+
cjs$3.getDocument = getDocument;
|
|
24494
24543
|
function getNavigatorOrThrow() {
|
|
24495
24544
|
return getFromWindowOrThrow("navigator");
|
|
24496
24545
|
}
|
|
24497
|
-
cjs$
|
|
24546
|
+
cjs$3.getNavigatorOrThrow = getNavigatorOrThrow;
|
|
24498
24547
|
function getNavigator() {
|
|
24499
24548
|
return getFromWindow("navigator");
|
|
24500
24549
|
}
|
|
24501
|
-
cjs$
|
|
24550
|
+
cjs$3.getNavigator = getNavigator;
|
|
24502
24551
|
function getLocationOrThrow() {
|
|
24503
24552
|
return getFromWindowOrThrow("location");
|
|
24504
24553
|
}
|
|
24505
|
-
cjs$
|
|
24554
|
+
cjs$3.getLocationOrThrow = getLocationOrThrow;
|
|
24506
24555
|
function getLocation() {
|
|
24507
24556
|
return getFromWindow("location");
|
|
24508
24557
|
}
|
|
24509
|
-
cjs$
|
|
24558
|
+
cjs$3.getLocation = getLocation;
|
|
24510
24559
|
function getCryptoOrThrow() {
|
|
24511
24560
|
return getFromWindowOrThrow("crypto");
|
|
24512
24561
|
}
|
|
24513
|
-
cjs$
|
|
24562
|
+
cjs$3.getCryptoOrThrow = getCryptoOrThrow;
|
|
24514
24563
|
function getCrypto() {
|
|
24515
24564
|
return getFromWindow("crypto");
|
|
24516
24565
|
}
|
|
24517
|
-
cjs$
|
|
24566
|
+
cjs$3.getCrypto = getCrypto;
|
|
24518
24567
|
function getLocalStorageOrThrow() {
|
|
24519
24568
|
return getFromWindowOrThrow("localStorage");
|
|
24520
24569
|
}
|
|
24521
|
-
cjs$
|
|
24570
|
+
cjs$3.getLocalStorageOrThrow = getLocalStorageOrThrow;
|
|
24522
24571
|
function getLocalStorage() {
|
|
24523
24572
|
return getFromWindow("localStorage");
|
|
24524
24573
|
}
|
|
24525
|
-
cjs$
|
|
24574
|
+
cjs$3.getLocalStorage = getLocalStorage;
|
|
24526
24575
|
|
|
24527
|
-
return cjs$
|
|
24576
|
+
return cjs$3;
|
|
24528
24577
|
}
|
|
24529
24578
|
|
|
24530
|
-
var cjsExports$2 = requireCjs$
|
|
24579
|
+
var cjsExports$2 = requireCjs$3();
|
|
24531
24580
|
|
|
24532
|
-
var cjs$
|
|
24581
|
+
var cjs$2 = {};
|
|
24533
24582
|
|
|
24534
|
-
var hasRequiredCjs$
|
|
24583
|
+
var hasRequiredCjs$2;
|
|
24535
24584
|
|
|
24536
|
-
function requireCjs$
|
|
24537
|
-
if (hasRequiredCjs$
|
|
24538
|
-
hasRequiredCjs$
|
|
24539
|
-
Object.defineProperty(cjs$
|
|
24540
|
-
cjs$
|
|
24541
|
-
const window_getters_1 = requireCjs$
|
|
24585
|
+
function requireCjs$2 () {
|
|
24586
|
+
if (hasRequiredCjs$2) return cjs$2;
|
|
24587
|
+
hasRequiredCjs$2 = 1;
|
|
24588
|
+
Object.defineProperty(cjs$2, "__esModule", { value: true });
|
|
24589
|
+
cjs$2.getWindowMetadata = void 0;
|
|
24590
|
+
const window_getters_1 = requireCjs$3();
|
|
24542
24591
|
function getWindowMetadata() {
|
|
24543
24592
|
let doc;
|
|
24544
24593
|
let loc;
|
|
@@ -24631,12 +24680,12 @@ function requireCjs$1 () {
|
|
|
24631
24680
|
};
|
|
24632
24681
|
return meta;
|
|
24633
24682
|
}
|
|
24634
|
-
cjs$
|
|
24683
|
+
cjs$2.getWindowMetadata = getWindowMetadata;
|
|
24635
24684
|
|
|
24636
|
-
return cjs$
|
|
24685
|
+
return cjs$2;
|
|
24637
24686
|
}
|
|
24638
24687
|
|
|
24639
|
-
var cjsExports$1 = requireCjs$
|
|
24688
|
+
var cjsExports$1 = requireCjs$2();
|
|
24640
24689
|
|
|
24641
24690
|
/** @internal */
|
|
24642
24691
|
const version = '0.1.1';
|
|
@@ -28632,12 +28681,7 @@ function base$1 (ALPHABET) {
|
|
|
28632
28681
|
}
|
|
28633
28682
|
|
|
28634
28683
|
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
28635
|
-
var
|
|
28636
|
-
|
|
28637
|
-
var index = /*#__PURE__*/Object.freeze({
|
|
28638
|
-
__proto__: null,
|
|
28639
|
-
default: bs58
|
|
28640
|
-
});
|
|
28684
|
+
var ue$2 = base$1(ALPHABET);
|
|
28641
28685
|
|
|
28642
28686
|
function utf8Count(str) {
|
|
28643
28687
|
const strLength = str.length;
|
|
@@ -32341,7 +32385,7 @@ var c$2 = /*@__PURE__*/getDefaultExportFromCjs$1(browserExports);
|
|
|
32341
32385
|
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)}
|
|
32342
32386
|
|
|
32343
32387
|
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:
|
|
32344
|
-
${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
|
|
32388
|
+
${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=>`
|
|
32345
32389
|
- ${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(`
|
|
32346
32390
|
`)};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.
|
|
32347
32391
|
Required: ${a.toString()}
|
|
@@ -32349,7 +32393,7 @@ ${t.length}`,n=new TextEncoder().encode(e+t);return "0x"+Buffer.from(ic(n)).toSt
|
|
|
32349
32393
|
Required: ${i.toString()}
|
|
32350
32394
|
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}
|
|
32351
32395
|
Required: ${l}
|
|
32352
|
-
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=
|
|
32396
|
+
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}
|
|
32353
32397
|
|
|
32354
32398
|
const PARSE_ERROR = "PARSE_ERROR";
|
|
32355
32399
|
const INVALID_REQUEST = "INVALID_REQUEST";
|
|
@@ -32390,7 +32434,7 @@ function parseConnectionError(e, url, type) {
|
|
|
32390
32434
|
: e;
|
|
32391
32435
|
}
|
|
32392
32436
|
|
|
32393
|
-
var cjs = {};
|
|
32437
|
+
var cjs$1 = {};
|
|
32394
32438
|
|
|
32395
32439
|
var crypto$1 = {};
|
|
32396
32440
|
|
|
@@ -32447,22 +32491,22 @@ function requireEnv () {
|
|
|
32447
32491
|
return env;
|
|
32448
32492
|
}
|
|
32449
32493
|
|
|
32450
|
-
var hasRequiredCjs;
|
|
32494
|
+
var hasRequiredCjs$1;
|
|
32451
32495
|
|
|
32452
|
-
function requireCjs () {
|
|
32453
|
-
if (hasRequiredCjs) return cjs;
|
|
32454
|
-
hasRequiredCjs = 1;
|
|
32496
|
+
function requireCjs$1 () {
|
|
32497
|
+
if (hasRequiredCjs$1) return cjs$1;
|
|
32498
|
+
hasRequiredCjs$1 = 1;
|
|
32455
32499
|
(function (exports$1) {
|
|
32456
32500
|
Object.defineProperty(exports$1, "__esModule", { value: true });
|
|
32457
32501
|
const tslib_1 = require$$0;
|
|
32458
32502
|
tslib_1.__exportStar(requireCrypto(), exports$1);
|
|
32459
32503
|
tslib_1.__exportStar(requireEnv(), exports$1);
|
|
32460
32504
|
|
|
32461
|
-
} (cjs));
|
|
32462
|
-
return cjs;
|
|
32505
|
+
} (cjs$1));
|
|
32506
|
+
return cjs$1;
|
|
32463
32507
|
}
|
|
32464
32508
|
|
|
32465
|
-
var cjsExports = requireCjs();
|
|
32509
|
+
var cjsExports = requireCjs$1();
|
|
32466
32510
|
|
|
32467
32511
|
function payloadId(entropy = 3) {
|
|
32468
32512
|
const date = Date.now() * Math.pow(10, entropy);
|
|
@@ -33267,6 +33311,162 @@ function _(t){return t==null||typeof t!="object"&&typeof t!="function"}function
|
|
|
33267
33311
|
|
|
33268
33312
|
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}}
|
|
33269
33313
|
|
|
33314
|
+
var cjs = {};
|
|
33315
|
+
|
|
33316
|
+
var hasRequiredCjs;
|
|
33317
|
+
|
|
33318
|
+
function requireCjs () {
|
|
33319
|
+
if (hasRequiredCjs) return cjs;
|
|
33320
|
+
hasRequiredCjs = 1;
|
|
33321
|
+
// base-x encoding / decoding
|
|
33322
|
+
// Copyright (c) 2018 base-x contributors
|
|
33323
|
+
// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)
|
|
33324
|
+
// Distributed under the MIT software license, see the accompanying
|
|
33325
|
+
// file LICENSE or http://www.opensource.org/licenses/mit-license.php.
|
|
33326
|
+
Object.defineProperty(cjs, '__esModule', { value: true });
|
|
33327
|
+
function base (ALPHABET) {
|
|
33328
|
+
if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }
|
|
33329
|
+
const BASE_MAP = new Uint8Array(256);
|
|
33330
|
+
for (let j = 0; j < BASE_MAP.length; j++) {
|
|
33331
|
+
BASE_MAP[j] = 255;
|
|
33332
|
+
}
|
|
33333
|
+
for (let i = 0; i < ALPHABET.length; i++) {
|
|
33334
|
+
const x = ALPHABET.charAt(i);
|
|
33335
|
+
const xc = x.charCodeAt(0);
|
|
33336
|
+
if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }
|
|
33337
|
+
BASE_MAP[xc] = i;
|
|
33338
|
+
}
|
|
33339
|
+
const BASE = ALPHABET.length;
|
|
33340
|
+
const LEADER = ALPHABET.charAt(0);
|
|
33341
|
+
const FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up
|
|
33342
|
+
const iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up
|
|
33343
|
+
function encode (source) {
|
|
33344
|
+
// eslint-disable-next-line no-empty
|
|
33345
|
+
if (source instanceof Uint8Array) ; else if (ArrayBuffer.isView(source)) {
|
|
33346
|
+
source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);
|
|
33347
|
+
} else if (Array.isArray(source)) {
|
|
33348
|
+
source = Uint8Array.from(source);
|
|
33349
|
+
}
|
|
33350
|
+
if (!(source instanceof Uint8Array)) { throw new TypeError('Expected Uint8Array') }
|
|
33351
|
+
if (source.length === 0) { return '' }
|
|
33352
|
+
// Skip & count leading zeroes.
|
|
33353
|
+
let zeroes = 0;
|
|
33354
|
+
let length = 0;
|
|
33355
|
+
let pbegin = 0;
|
|
33356
|
+
const pend = source.length;
|
|
33357
|
+
while (pbegin !== pend && source[pbegin] === 0) {
|
|
33358
|
+
pbegin++;
|
|
33359
|
+
zeroes++;
|
|
33360
|
+
}
|
|
33361
|
+
// Allocate enough space in big-endian base58 representation.
|
|
33362
|
+
const size = ((pend - pbegin) * iFACTOR + 1) >>> 0;
|
|
33363
|
+
const b58 = new Uint8Array(size);
|
|
33364
|
+
// Process the bytes.
|
|
33365
|
+
while (pbegin !== pend) {
|
|
33366
|
+
let carry = source[pbegin];
|
|
33367
|
+
// Apply "b58 = b58 * 256 + ch".
|
|
33368
|
+
let i = 0;
|
|
33369
|
+
for (let it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {
|
|
33370
|
+
carry += (256 * b58[it1]) >>> 0;
|
|
33371
|
+
b58[it1] = (carry % BASE) >>> 0;
|
|
33372
|
+
carry = (carry / BASE) >>> 0;
|
|
33373
|
+
}
|
|
33374
|
+
if (carry !== 0) { throw new Error('Non-zero carry') }
|
|
33375
|
+
length = i;
|
|
33376
|
+
pbegin++;
|
|
33377
|
+
}
|
|
33378
|
+
// Skip leading zeroes in base58 result.
|
|
33379
|
+
let it2 = size - length;
|
|
33380
|
+
while (it2 !== size && b58[it2] === 0) {
|
|
33381
|
+
it2++;
|
|
33382
|
+
}
|
|
33383
|
+
// Translate the result into a string.
|
|
33384
|
+
let str = LEADER.repeat(zeroes);
|
|
33385
|
+
for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]); }
|
|
33386
|
+
return str
|
|
33387
|
+
}
|
|
33388
|
+
function decodeUnsafe (source) {
|
|
33389
|
+
if (typeof source !== 'string') { throw new TypeError('Expected String') }
|
|
33390
|
+
if (source.length === 0) { return new Uint8Array() }
|
|
33391
|
+
let psz = 0;
|
|
33392
|
+
// Skip and count leading '1's.
|
|
33393
|
+
let zeroes = 0;
|
|
33394
|
+
let length = 0;
|
|
33395
|
+
while (source[psz] === LEADER) {
|
|
33396
|
+
zeroes++;
|
|
33397
|
+
psz++;
|
|
33398
|
+
}
|
|
33399
|
+
// Allocate enough space in big-endian base256 representation.
|
|
33400
|
+
const size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.
|
|
33401
|
+
const b256 = new Uint8Array(size);
|
|
33402
|
+
// Process the characters.
|
|
33403
|
+
while (psz < source.length) {
|
|
33404
|
+
// Find code of next character
|
|
33405
|
+
const charCode = source.charCodeAt(psz);
|
|
33406
|
+
// Base map can not be indexed using char code
|
|
33407
|
+
if (charCode > 255) { return }
|
|
33408
|
+
// Decode character
|
|
33409
|
+
let carry = BASE_MAP[charCode];
|
|
33410
|
+
// Invalid character
|
|
33411
|
+
if (carry === 255) { return }
|
|
33412
|
+
let i = 0;
|
|
33413
|
+
for (let it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {
|
|
33414
|
+
carry += (BASE * b256[it3]) >>> 0;
|
|
33415
|
+
b256[it3] = (carry % 256) >>> 0;
|
|
33416
|
+
carry = (carry / 256) >>> 0;
|
|
33417
|
+
}
|
|
33418
|
+
if (carry !== 0) { throw new Error('Non-zero carry') }
|
|
33419
|
+
length = i;
|
|
33420
|
+
psz++;
|
|
33421
|
+
}
|
|
33422
|
+
// Skip leading zeroes in b256.
|
|
33423
|
+
let it4 = size - length;
|
|
33424
|
+
while (it4 !== size && b256[it4] === 0) {
|
|
33425
|
+
it4++;
|
|
33426
|
+
}
|
|
33427
|
+
const vch = new Uint8Array(zeroes + (size - it4));
|
|
33428
|
+
let j = zeroes;
|
|
33429
|
+
while (it4 !== size) {
|
|
33430
|
+
vch[j++] = b256[it4++];
|
|
33431
|
+
}
|
|
33432
|
+
return vch
|
|
33433
|
+
}
|
|
33434
|
+
function decode (string) {
|
|
33435
|
+
const buffer = decodeUnsafe(string);
|
|
33436
|
+
if (buffer) { return buffer }
|
|
33437
|
+
throw new Error('Non-base' + BASE + ' character')
|
|
33438
|
+
}
|
|
33439
|
+
return {
|
|
33440
|
+
encode,
|
|
33441
|
+
decodeUnsafe,
|
|
33442
|
+
decode
|
|
33443
|
+
}
|
|
33444
|
+
}
|
|
33445
|
+
cjs.default = base;
|
|
33446
|
+
return cjs;
|
|
33447
|
+
}
|
|
33448
|
+
|
|
33449
|
+
var bs58$1;
|
|
33450
|
+
var hasRequiredBs58;
|
|
33451
|
+
|
|
33452
|
+
function requireBs58 () {
|
|
33453
|
+
if (hasRequiredBs58) return bs58$1;
|
|
33454
|
+
hasRequiredBs58 = 1;
|
|
33455
|
+
var basex = requireCjs();
|
|
33456
|
+
var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
33457
|
+
|
|
33458
|
+
bs58$1 = basex(ALPHABET);
|
|
33459
|
+
return bs58$1;
|
|
33460
|
+
}
|
|
33461
|
+
|
|
33462
|
+
var bs58Exports = requireBs58();
|
|
33463
|
+
var bs58 = /*@__PURE__*/getDefaultExportFromCjs$1(bs58Exports);
|
|
33464
|
+
|
|
33465
|
+
var index = /*#__PURE__*/_mergeNamespaces({
|
|
33466
|
+
__proto__: null,
|
|
33467
|
+
default: bs58
|
|
33468
|
+
}, [bs58Exports]);
|
|
33469
|
+
|
|
33270
33470
|
const SURFNET_RPC_URL$1 = "https://surfpool.fly.dev";
|
|
33271
33471
|
let React;
|
|
33272
33472
|
let ReactDOM;
|
|
@@ -34981,26 +35181,27 @@ function isMobileWalletAvailable() {
|
|
|
34981
35181
|
const isWalletInAppBrowser = /SolanaWallet/i.test(ua) || /SeedVault/i.test(ua);
|
|
34982
35182
|
return isAndroid || isWalletInAppBrowser;
|
|
34983
35183
|
}
|
|
34984
|
-
|
|
34985
|
-
|
|
34986
|
-
let
|
|
34987
|
-
|
|
34988
|
-
|
|
35184
|
+
const ED25519_SIGNATURE_LENGTH = 64;
|
|
35185
|
+
// Dynamically imported MWA protocol module
|
|
35186
|
+
let mwaProtocolModule = null;
|
|
35187
|
+
let mwaProtocolLoadPromise = null;
|
|
35188
|
+
async function loadMwaProtocol() {
|
|
35189
|
+
if (mwaProtocolModule)
|
|
34989
35190
|
return;
|
|
34990
35191
|
if (typeof window === 'undefined')
|
|
34991
35192
|
return;
|
|
34992
|
-
if (
|
|
34993
|
-
return
|
|
34994
|
-
|
|
35193
|
+
if (mwaProtocolLoadPromise)
|
|
35194
|
+
return mwaProtocolLoadPromise;
|
|
35195
|
+
mwaProtocolLoadPromise = (async () => {
|
|
34995
35196
|
try {
|
|
34996
|
-
|
|
35197
|
+
mwaProtocolModule = await import('@solana-mobile/mobile-wallet-adapter-protocol-web3js');
|
|
34997
35198
|
}
|
|
34998
35199
|
catch (e) {
|
|
34999
|
-
console.warn('[SolanaMobileWallet] @solana-mobile/wallet-adapter-
|
|
35000
|
-
throw new Error('Missing @solana-mobile/wallet-adapter-
|
|
35200
|
+
console.warn('[SolanaMobileWallet] @solana-mobile/mobile-wallet-adapter-protocol-web3js not installed. Install it to enable Seeker wallet support.');
|
|
35201
|
+
throw new Error('Missing @solana-mobile/mobile-wallet-adapter-protocol-web3js dependency');
|
|
35001
35202
|
}
|
|
35002
35203
|
})();
|
|
35003
|
-
return
|
|
35204
|
+
return mwaProtocolLoadPromise;
|
|
35004
35205
|
}
|
|
35005
35206
|
/**
|
|
35006
35207
|
* Registers Mobile Wallet Adapter as a wallet-standard wallet so it appears
|
|
@@ -35046,26 +35247,30 @@ async function registerMobileWalletAdapter(config) {
|
|
|
35046
35247
|
catch (e) {
|
|
35047
35248
|
// @solana-mobile/wallet-standard-mobile is an optional dependency
|
|
35048
35249
|
// Silently skip if not installed — the provider still works via
|
|
35049
|
-
// @solana-mobile/wallet-adapter-
|
|
35250
|
+
// @solana-mobile/mobile-wallet-adapter-protocol-web3js directly
|
|
35050
35251
|
console.debug('[SolanaMobileWallet] @solana-mobile/wallet-standard-mobile not available, skipping wallet-standard registration');
|
|
35051
35252
|
}
|
|
35052
35253
|
}
|
|
35053
35254
|
/**
|
|
35054
35255
|
* SolanaMobileWalletProvider implements the AuthProvider interface using the
|
|
35055
|
-
* Solana Mobile Wallet Adapter (MWA) protocol.
|
|
35256
|
+
* Solana Mobile Wallet Adapter (MWA) protocol's low-level `transact` API.
|
|
35056
35257
|
*
|
|
35057
35258
|
* This enables TaroBase dApps to work with any MWA-compliant wallet on Solana
|
|
35058
35259
|
* mobile devices (Seeker, Saga) — including the native Seed Vault Wallet,
|
|
35059
35260
|
* Phantom, Solflare, and any other wallet that implements the MWA protocol.
|
|
35060
35261
|
*
|
|
35061
|
-
*
|
|
35062
|
-
*
|
|
35063
|
-
*
|
|
35262
|
+
* By using `transact()` directly (instead of the wallet-adapter wrapper),
|
|
35263
|
+
* login combines authorize + signMessage into a single wallet session —
|
|
35264
|
+
* meaning one popup/approval instead of two.
|
|
35064
35265
|
*/
|
|
35065
35266
|
class SolanaMobileWalletProvider {
|
|
35066
35267
|
constructor(networkUrl = null, config = {}) {
|
|
35067
|
-
|
|
35268
|
+
// MWA authorization state
|
|
35269
|
+
this.authToken = null;
|
|
35270
|
+
this.walletUriBase = null;
|
|
35271
|
+
this.base64Address = null;
|
|
35068
35272
|
this.authorizedPublicKey = null;
|
|
35273
|
+
this.publicKeyObj = null;
|
|
35069
35274
|
this.networkUrl = networkUrl;
|
|
35070
35275
|
this.config = config;
|
|
35071
35276
|
if (typeof window === 'undefined') {
|
|
@@ -35074,6 +35279,11 @@ class SolanaMobileWalletProvider {
|
|
|
35074
35279
|
if (SolanaMobileWalletProvider.instance) {
|
|
35075
35280
|
return SolanaMobileWalletProvider.instance;
|
|
35076
35281
|
}
|
|
35282
|
+
this.appIdentity = config.appIdentity || {
|
|
35283
|
+
name: 'TaroBase App',
|
|
35284
|
+
uri: typeof window !== 'undefined' ? window.location.origin : undefined,
|
|
35285
|
+
};
|
|
35286
|
+
this.chain = `solana:${config.cluster || 'mainnet-beta'}`;
|
|
35077
35287
|
SolanaMobileWalletProvider.instance = this;
|
|
35078
35288
|
}
|
|
35079
35289
|
static getInstance(networkUrl, config) {
|
|
@@ -35082,83 +35292,137 @@ class SolanaMobileWalletProvider {
|
|
|
35082
35292
|
}
|
|
35083
35293
|
return SolanaMobileWalletProvider.instance;
|
|
35084
35294
|
}
|
|
35085
|
-
|
|
35086
|
-
|
|
35087
|
-
if (
|
|
35088
|
-
return this.
|
|
35089
|
-
|
|
35090
|
-
|
|
35091
|
-
|
|
35092
|
-
|
|
35093
|
-
|
|
35094
|
-
|
|
35095
|
-
|
|
35096
|
-
|
|
35097
|
-
|
|
35098
|
-
|
|
35099
|
-
authorizationResultCache: createDefaultAuthorizationResultCache(),
|
|
35100
|
-
cluster,
|
|
35295
|
+
/** Config for transact() — routes to the same wallet if we've already authorized */
|
|
35296
|
+
getAssociationConfig() {
|
|
35297
|
+
if (this.walletUriBase) {
|
|
35298
|
+
return { baseUri: this.walletUriBase };
|
|
35299
|
+
}
|
|
35300
|
+
return undefined;
|
|
35301
|
+
}
|
|
35302
|
+
/** Reauthorize within a transact callback using a stored auth_token */
|
|
35303
|
+
async reauthorizeWallet(wallet) {
|
|
35304
|
+
if (!this.authToken) {
|
|
35305
|
+
// No existing auth — do a fresh authorize
|
|
35306
|
+
const authResult = await wallet.authorize({
|
|
35307
|
+
identity: this.appIdentity,
|
|
35308
|
+
chain: this.chain,
|
|
35101
35309
|
});
|
|
35310
|
+
this.storeAuthResult(authResult);
|
|
35311
|
+
return authResult;
|
|
35312
|
+
}
|
|
35313
|
+
try {
|
|
35314
|
+
const authResult = await wallet.reauthorize({
|
|
35315
|
+
auth_token: this.authToken,
|
|
35316
|
+
identity: this.appIdentity,
|
|
35317
|
+
});
|
|
35318
|
+
this.storeAuthResult(authResult);
|
|
35319
|
+
return authResult;
|
|
35320
|
+
}
|
|
35321
|
+
catch (e) {
|
|
35322
|
+
// Reauth failed (token expired, wallet reset, etc.) — try fresh authorize
|
|
35323
|
+
console.warn('[SolanaMobileWallet] Reauthorization failed, attempting fresh authorize:', e === null || e === void 0 ? void 0 : e.message);
|
|
35324
|
+
const authResult = await wallet.authorize({
|
|
35325
|
+
identity: this.appIdentity,
|
|
35326
|
+
chain: this.chain,
|
|
35327
|
+
});
|
|
35328
|
+
this.storeAuthResult(authResult);
|
|
35329
|
+
return authResult;
|
|
35330
|
+
}
|
|
35331
|
+
}
|
|
35332
|
+
/** Persist auth result from an authorize/reauthorize call */
|
|
35333
|
+
storeAuthResult(authResult) {
|
|
35334
|
+
var _a;
|
|
35335
|
+
this.authToken = authResult.auth_token;
|
|
35336
|
+
this.walletUriBase = authResult.wallet_uri_base;
|
|
35337
|
+
if (((_a = authResult.accounts) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
35338
|
+
const account = authResult.accounts[0];
|
|
35339
|
+
this.base64Address = account.address;
|
|
35340
|
+
// Decode base64 address → PublicKey → base58
|
|
35341
|
+
const addressBytes = Uint8Array.from(atob(account.address), c => c.charCodeAt(0));
|
|
35342
|
+
this.publicKeyObj = new web3_js.PublicKey(addressBytes);
|
|
35343
|
+
this.authorizedPublicKey = this.publicKeyObj.toBase58();
|
|
35102
35344
|
}
|
|
35103
|
-
return this.mwaAdapter;
|
|
35104
35345
|
}
|
|
35105
35346
|
async login() {
|
|
35106
|
-
var _a, _b, _c, _d, _e
|
|
35347
|
+
var _a, _b, _c, _d, _e;
|
|
35107
35348
|
setAuthLoading(true);
|
|
35108
35349
|
try {
|
|
35109
|
-
|
|
35110
|
-
|
|
35111
|
-
//
|
|
35112
|
-
|
|
35113
|
-
|
|
35114
|
-
|
|
35115
|
-
|
|
35116
|
-
|
|
35117
|
-
|
|
35118
|
-
|
|
35119
|
-
const start = Date.now();
|
|
35120
|
-
while (Date.now() - start < maxWaitMs) {
|
|
35121
|
-
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));
|
|
35122
|
-
if (publicKey)
|
|
35123
|
-
break;
|
|
35124
|
-
await new Promise(r => setTimeout(r, pollIntervalMs));
|
|
35125
|
-
}
|
|
35126
|
-
if (!publicKey) {
|
|
35127
|
-
throw new Error('No public key returned from wallet');
|
|
35350
|
+
await loadMwaProtocol();
|
|
35351
|
+
const { transact } = mwaProtocolModule;
|
|
35352
|
+
// Quick check: if we already have auth state and a valid session, skip
|
|
35353
|
+
if (this.authorizedPublicKey) {
|
|
35354
|
+
const existingSession = await WebSessionManager.getSession();
|
|
35355
|
+
if (existingSession && existingSession.address === this.authorizedPublicKey) {
|
|
35356
|
+
const user = { provider: this, address: this.authorizedPublicKey };
|
|
35357
|
+
setCurrentUser(user);
|
|
35358
|
+
return user;
|
|
35359
|
+
}
|
|
35128
35360
|
}
|
|
35129
|
-
|
|
35130
|
-
|
|
35361
|
+
// Pre-fetch nonce from server while wallet is not yet connected
|
|
35362
|
+
const nonce = await genAuthNonce();
|
|
35363
|
+
// Single transact() call: authorize + signMessages — one wallet popup
|
|
35364
|
+
const result = await transact(async (wallet) => {
|
|
35365
|
+
// Step 1: Authorize — user approves the dApp
|
|
35366
|
+
const authResult = await wallet.authorize({
|
|
35367
|
+
identity: this.appIdentity,
|
|
35368
|
+
chain: this.chain,
|
|
35369
|
+
});
|
|
35370
|
+
const base64Addr = authResult.accounts[0].address;
|
|
35371
|
+
const addressBytes = Uint8Array.from(atob(base64Addr), c => c.charCodeAt(0));
|
|
35372
|
+
const pubkey = new web3_js.PublicKey(addressBytes);
|
|
35373
|
+
const base58Addr = pubkey.toBase58();
|
|
35374
|
+
// Step 2: Sign the auth message — still in the same wallet session
|
|
35375
|
+
const messageText = await genSolanaMessage(base58Addr, nonce);
|
|
35376
|
+
const messageBytes = new TextEncoder().encode(messageText);
|
|
35377
|
+
const signedMessages = await wallet.signMessages({
|
|
35378
|
+
addresses: [base64Addr],
|
|
35379
|
+
payloads: [messageBytes],
|
|
35380
|
+
});
|
|
35381
|
+
// The signed payload is [original message bytes][64-byte ed25519 signature]
|
|
35382
|
+
const signedPayload = signedMessages[0];
|
|
35383
|
+
const signatureBytes = signedPayload.slice(-ED25519_SIGNATURE_LENGTH);
|
|
35384
|
+
return {
|
|
35385
|
+
base58Address: base58Addr,
|
|
35386
|
+
base64Address: base64Addr,
|
|
35387
|
+
publicKey: pubkey,
|
|
35388
|
+
signature: bufferExports.Buffer.from(signatureBytes).toString('base64'),
|
|
35389
|
+
messageText,
|
|
35390
|
+
authToken: authResult.auth_token,
|
|
35391
|
+
walletUriBase: authResult.wallet_uri_base,
|
|
35392
|
+
};
|
|
35393
|
+
}, this.getAssociationConfig());
|
|
35394
|
+
// Store MWA auth state for reauthorization in subsequent transact() calls
|
|
35395
|
+
this.authToken = result.authToken;
|
|
35396
|
+
this.walletUriBase = result.walletUriBase;
|
|
35397
|
+
this.base64Address = result.base64Address;
|
|
35398
|
+
this.authorizedPublicKey = result.base58Address;
|
|
35399
|
+
this.publicKeyObj = result.publicKey;
|
|
35400
|
+
// Check if we already have a valid session for this address
|
|
35131
35401
|
const existingSession = await WebSessionManager.getSession();
|
|
35132
|
-
if (existingSession && existingSession.address ===
|
|
35133
|
-
const user = { provider: this, address:
|
|
35402
|
+
if (existingSession && existingSession.address === result.base58Address) {
|
|
35403
|
+
const user = { provider: this, address: result.base58Address };
|
|
35134
35404
|
setCurrentUser(user);
|
|
35135
35405
|
return user;
|
|
35136
35406
|
}
|
|
35137
|
-
// Create new session
|
|
35138
|
-
const
|
|
35139
|
-
|
|
35140
|
-
// MWA signMessage expects Uint8Array
|
|
35141
|
-
const messageBytes = new TextEncoder().encode(messageText);
|
|
35142
|
-
const signatureBytes = await adapter.signMessage(messageBytes);
|
|
35143
|
-
const signature = bufferExports.Buffer.from(signatureBytes).toString('base64');
|
|
35144
|
-
const createSessionResult = await createSessionWithSignature(publicKey, messageText, signature);
|
|
35145
|
-
await WebSessionManager.storeSession(publicKey, createSessionResult.accessToken, createSessionResult.idToken, createSessionResult.refreshToken);
|
|
35407
|
+
// Create new session on the server
|
|
35408
|
+
const createSessionResult = await createSessionWithSignature(result.base58Address, result.messageText, result.signature);
|
|
35409
|
+
await WebSessionManager.storeSession(result.base58Address, createSessionResult.accessToken, createSessionResult.idToken, createSessionResult.refreshToken);
|
|
35146
35410
|
// Mark auth method
|
|
35147
35411
|
try {
|
|
35148
35412
|
localStorage.setItem('tarobase_last_auth_method', 'mobile-wallet-adapter');
|
|
35149
35413
|
}
|
|
35150
|
-
catch (
|
|
35151
|
-
const user = { provider: this, address:
|
|
35414
|
+
catch (_f) { }
|
|
35415
|
+
const user = { provider: this, address: result.base58Address };
|
|
35152
35416
|
setCurrentUser(user);
|
|
35153
35417
|
return user;
|
|
35154
35418
|
}
|
|
35155
35419
|
catch (error) {
|
|
35156
35420
|
const isUserRejection = (error === null || error === void 0 ? void 0 : error.code) === 4001 ||
|
|
35157
|
-
((
|
|
35158
|
-
((
|
|
35159
|
-
((
|
|
35160
|
-
((
|
|
35161
|
-
((
|
|
35421
|
+
((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('user rejected')) ||
|
|
35422
|
+
((_b = error === null || error === void 0 ? void 0 : error.message) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes('user denied')) ||
|
|
35423
|
+
((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.toLowerCase().includes('user cancelled')) ||
|
|
35424
|
+
((_d = error === null || error === void 0 ? void 0 : error.message) === null || _d === void 0 ? void 0 : _d.toLowerCase().includes('user canceled')) ||
|
|
35425
|
+
((_e = error === null || error === void 0 ? void 0 : error.message) === null || _e === void 0 ? void 0 : _e.toLowerCase().includes('user declined'));
|
|
35162
35426
|
if (!isUserRejection) {
|
|
35163
35427
|
console.error('[SolanaMobileWallet] Login failed:', error);
|
|
35164
35428
|
}
|
|
@@ -35172,37 +35436,58 @@ class SolanaMobileWalletProvider {
|
|
|
35172
35436
|
const session = await WebSessionManager.getSession();
|
|
35173
35437
|
if (session) {
|
|
35174
35438
|
this.authorizedPublicKey = session.address;
|
|
35439
|
+
this.publicKeyObj = new web3_js.PublicKey(session.address);
|
|
35175
35440
|
return { provider: this, address: session.address };
|
|
35176
35441
|
}
|
|
35177
35442
|
return null;
|
|
35178
35443
|
}
|
|
35179
35444
|
async logout() {
|
|
35180
|
-
|
|
35181
|
-
|
|
35182
|
-
|
|
35183
|
-
await
|
|
35445
|
+
// Deauthorize with the wallet if we have an auth_token
|
|
35446
|
+
if (this.authToken) {
|
|
35447
|
+
try {
|
|
35448
|
+
await loadMwaProtocol();
|
|
35449
|
+
const { transact } = mwaProtocolModule;
|
|
35450
|
+
const authToken = this.authToken;
|
|
35451
|
+
await transact(async (wallet) => {
|
|
35452
|
+
await wallet.deauthorize({ auth_token: authToken });
|
|
35453
|
+
}, this.getAssociationConfig());
|
|
35454
|
+
}
|
|
35455
|
+
catch (error) {
|
|
35456
|
+
console.error('[SolanaMobileWallet] Deauthorize error:', error);
|
|
35184
35457
|
}
|
|
35185
35458
|
}
|
|
35186
|
-
|
|
35187
|
-
|
|
35188
|
-
|
|
35459
|
+
this.authToken = null;
|
|
35460
|
+
this.walletUriBase = null;
|
|
35461
|
+
this.base64Address = null;
|
|
35189
35462
|
this.authorizedPublicKey = null;
|
|
35463
|
+
this.publicKeyObj = null;
|
|
35190
35464
|
WebSessionManager.clearSession();
|
|
35191
35465
|
setCurrentUser(null);
|
|
35192
35466
|
}
|
|
35193
35467
|
async signMessage(message) {
|
|
35194
35468
|
var _a, _b;
|
|
35195
|
-
|
|
35196
|
-
|
|
35197
|
-
await adapter.connect();
|
|
35469
|
+
if (!this.authorizedPublicKey || !this.base64Address) {
|
|
35470
|
+
throw new Error('Not connected. Call login() first.');
|
|
35198
35471
|
}
|
|
35472
|
+
await loadMwaProtocol();
|
|
35473
|
+
const { transact } = mwaProtocolModule;
|
|
35474
|
+
const base64Addr = this.base64Address;
|
|
35199
35475
|
try {
|
|
35200
|
-
const
|
|
35201
|
-
|
|
35476
|
+
const signedMessages = await transact(async (wallet) => {
|
|
35477
|
+
await this.reauthorizeWallet(wallet);
|
|
35478
|
+
const messageBytes = new TextEncoder().encode(message);
|
|
35479
|
+
return wallet.signMessages({
|
|
35480
|
+
addresses: [base64Addr],
|
|
35481
|
+
payloads: [messageBytes],
|
|
35482
|
+
});
|
|
35483
|
+
}, this.getAssociationConfig());
|
|
35484
|
+
const signedPayload = signedMessages[0];
|
|
35485
|
+
const signatureBytes = signedPayload.slice(-ED25519_SIGNATURE_LENGTH);
|
|
35202
35486
|
return bufferExports.Buffer.from(signatureBytes).toString('base64');
|
|
35203
35487
|
}
|
|
35204
35488
|
catch (error) {
|
|
35205
|
-
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'))
|
|
35489
|
+
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')) ||
|
|
35490
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35206
35491
|
await this.logout();
|
|
35207
35492
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35208
35493
|
}
|
|
@@ -35211,11 +35496,12 @@ class SolanaMobileWalletProvider {
|
|
|
35211
35496
|
}
|
|
35212
35497
|
async signTransaction(transaction) {
|
|
35213
35498
|
var _a, _b;
|
|
35214
|
-
|
|
35215
|
-
|
|
35216
|
-
await adapter.connect();
|
|
35499
|
+
if (!this.publicKeyObj) {
|
|
35500
|
+
throw new Error('Not connected. Call login() first.');
|
|
35217
35501
|
}
|
|
35218
|
-
|
|
35502
|
+
await loadMwaProtocol();
|
|
35503
|
+
const { transact } = mwaProtocolModule;
|
|
35504
|
+
// Ensure blockhash and fee payer are set before signing
|
|
35219
35505
|
const isLegacyTransaction = 'recentBlockhash' in transaction && !('message' in transaction && 'staticAccountKeys' in transaction.message);
|
|
35220
35506
|
if (isLegacyTransaction) {
|
|
35221
35507
|
const legacyTx = transaction;
|
|
@@ -35226,8 +35512,8 @@ class SolanaMobileWalletProvider {
|
|
|
35226
35512
|
legacyTx.recentBlockhash = blockhash;
|
|
35227
35513
|
legacyTx.lastValidBlockHeight = lastValidBlockHeight;
|
|
35228
35514
|
}
|
|
35229
|
-
if (!legacyTx.feePayer &&
|
|
35230
|
-
legacyTx.feePayer =
|
|
35515
|
+
if (!legacyTx.feePayer && this.publicKeyObj) {
|
|
35516
|
+
legacyTx.feePayer = this.publicKeyObj;
|
|
35231
35517
|
}
|
|
35232
35518
|
}
|
|
35233
35519
|
else {
|
|
@@ -35240,11 +35526,15 @@ class SolanaMobileWalletProvider {
|
|
|
35240
35526
|
}
|
|
35241
35527
|
}
|
|
35242
35528
|
try {
|
|
35243
|
-
const
|
|
35244
|
-
|
|
35529
|
+
const signedTransactions = await transact(async (wallet) => {
|
|
35530
|
+
await this.reauthorizeWallet(wallet);
|
|
35531
|
+
return wallet.signTransactions({ transactions: [transaction] });
|
|
35532
|
+
}, this.getAssociationConfig());
|
|
35533
|
+
return signedTransactions[0];
|
|
35245
35534
|
}
|
|
35246
35535
|
catch (error) {
|
|
35247
|
-
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'))
|
|
35536
|
+
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')) ||
|
|
35537
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35248
35538
|
await this.logout();
|
|
35249
35539
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35250
35540
|
}
|
|
@@ -35253,10 +35543,11 @@ class SolanaMobileWalletProvider {
|
|
|
35253
35543
|
}
|
|
35254
35544
|
async signAndSubmitTransaction(transaction, feePayer) {
|
|
35255
35545
|
var _a, _b, _c, _d, _e, _f;
|
|
35256
|
-
|
|
35257
|
-
|
|
35258
|
-
await adapter.connect();
|
|
35546
|
+
if (!this.publicKeyObj) {
|
|
35547
|
+
throw new Error('Not connected. Call login() first.');
|
|
35259
35548
|
}
|
|
35549
|
+
await loadMwaProtocol();
|
|
35550
|
+
const { transact } = mwaProtocolModule;
|
|
35260
35551
|
const rpcUrl = this.getRpcUrl();
|
|
35261
35552
|
const connection = new web3_js.Connection(rpcUrl, 'confirmed');
|
|
35262
35553
|
const isSurfnet = rpcUrl === SURFNET_RPC_URL;
|
|
@@ -35271,8 +35562,8 @@ class SolanaMobileWalletProvider {
|
|
|
35271
35562
|
if (feePayer) {
|
|
35272
35563
|
legacyTx.feePayer = feePayer;
|
|
35273
35564
|
}
|
|
35274
|
-
else if (
|
|
35275
|
-
legacyTx.feePayer =
|
|
35565
|
+
else if (this.publicKeyObj) {
|
|
35566
|
+
legacyTx.feePayer = this.publicKeyObj;
|
|
35276
35567
|
}
|
|
35277
35568
|
}
|
|
35278
35569
|
}
|
|
@@ -35280,9 +35571,13 @@ class SolanaMobileWalletProvider {
|
|
|
35280
35571
|
const versionedTx = transaction;
|
|
35281
35572
|
versionedTx.message.recentBlockhash = blockhash;
|
|
35282
35573
|
}
|
|
35283
|
-
// On surfnet, sign then submit manually
|
|
35284
35574
|
if (isSurfnet) {
|
|
35285
|
-
|
|
35575
|
+
// Surfnet: sign-only, then submit to our specific RPC
|
|
35576
|
+
const signedTransactions = await transact(async (wallet) => {
|
|
35577
|
+
await this.reauthorizeWallet(wallet);
|
|
35578
|
+
return wallet.signTransactions({ transactions: [transaction] });
|
|
35579
|
+
}, this.getAssociationConfig());
|
|
35580
|
+
const signedTx = signedTransactions[0];
|
|
35286
35581
|
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35287
35582
|
preflightCommitment: 'confirmed'
|
|
35288
35583
|
});
|
|
@@ -35296,25 +35591,21 @@ class SolanaMobileWalletProvider {
|
|
|
35296
35591
|
}
|
|
35297
35592
|
return signature;
|
|
35298
35593
|
}
|
|
35299
|
-
//
|
|
35300
|
-
|
|
35301
|
-
|
|
35302
|
-
|
|
35303
|
-
|
|
35594
|
+
// Non-surfnet: use signAndSendTransactions for wallet-optimized submission
|
|
35595
|
+
const signatures = await transact(async (wallet) => {
|
|
35596
|
+
await this.reauthorizeWallet(wallet);
|
|
35597
|
+
return wallet.signAndSendTransactions({
|
|
35598
|
+
transactions: [transaction],
|
|
35599
|
+
commitment: 'confirmed',
|
|
35304
35600
|
});
|
|
35305
|
-
|
|
35306
|
-
|
|
35307
|
-
}
|
|
35308
|
-
// Fallback: sign then submit
|
|
35309
|
-
const signedTx = await adapter.signTransaction(transaction);
|
|
35310
|
-
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35311
|
-
preflightCommitment: 'confirmed'
|
|
35312
|
-
});
|
|
35601
|
+
}, this.getAssociationConfig());
|
|
35602
|
+
const signature = signatures[0];
|
|
35313
35603
|
await confirmAndCheckTransaction(connection, signature);
|
|
35314
35604
|
return signature;
|
|
35315
35605
|
}
|
|
35316
35606
|
catch (error) {
|
|
35317
|
-
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'))
|
|
35607
|
+
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')) ||
|
|
35608
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35318
35609
|
await this.logout();
|
|
35319
35610
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35320
35611
|
}
|
|
@@ -35334,18 +35625,16 @@ class SolanaMobileWalletProvider {
|
|
|
35334
35625
|
if (!solTransactionData) {
|
|
35335
35626
|
throw new Error('Solana transaction data is required for mobile wallet');
|
|
35336
35627
|
}
|
|
35337
|
-
|
|
35338
|
-
if (!adapter.connected) {
|
|
35628
|
+
if (!this.publicKeyObj || !this.authorizedPublicKey) {
|
|
35339
35629
|
await this.login();
|
|
35340
35630
|
}
|
|
35631
|
+
await loadMwaProtocol();
|
|
35632
|
+
const { transact } = mwaProtocolModule;
|
|
35341
35633
|
const rpcUrl = this.getRpcUrl(solTransactionData.network);
|
|
35342
35634
|
const connection = new web3_js.Connection(rpcUrl, 'confirmed');
|
|
35343
35635
|
const isSurfnet = rpcUrl === SURFNET_RPC_URL;
|
|
35344
35636
|
try {
|
|
35345
|
-
const publicKey =
|
|
35346
|
-
if (!publicKey) {
|
|
35347
|
-
throw new Error('No wallet connected');
|
|
35348
|
-
}
|
|
35637
|
+
const publicKey = this.publicKeyObj;
|
|
35349
35638
|
const remainingAccounts = convertRemainingAccounts(solTransactionData.txArgs[0].remainingAccounts);
|
|
35350
35639
|
let app_id = solTransactionData.appId;
|
|
35351
35640
|
if (typeof window !== 'undefined' && window.CUSTOM_TAROBASE_APP_ID_HEADER) {
|
|
@@ -35354,17 +35643,13 @@ class SolanaMobileWalletProvider {
|
|
|
35354
35643
|
if (!app_id) {
|
|
35355
35644
|
throw new Error('App ID is required');
|
|
35356
35645
|
}
|
|
35357
|
-
// Create wallet adapter
|
|
35358
|
-
const
|
|
35646
|
+
// Create a mock wallet adapter for Anchor (only publicKey is needed for building TX)
|
|
35647
|
+
const mockWalletAdapter = {
|
|
35359
35648
|
publicKey,
|
|
35360
|
-
signTransaction: async (tx) =>
|
|
35361
|
-
|
|
35362
|
-
},
|
|
35363
|
-
signAllTransactions: async (txs) => {
|
|
35364
|
-
return await adapter.signAllTransactions(txs);
|
|
35365
|
-
}
|
|
35649
|
+
signTransaction: async (tx) => tx,
|
|
35650
|
+
signAllTransactions: async (txs) => txs,
|
|
35366
35651
|
};
|
|
35367
|
-
const anchorProvider = new anchor__namespace.AnchorProvider(connection,
|
|
35652
|
+
const anchorProvider = new anchor__namespace.AnchorProvider(connection, mockWalletAdapter, anchor__namespace.AnchorProvider.defaultOptions());
|
|
35368
35653
|
const finalDeduped = [];
|
|
35369
35654
|
for (const acc of remainingAccounts) {
|
|
35370
35655
|
const existing = finalDeduped.find((d) => d.pubkey.equals(acc.pubkey));
|
|
@@ -35383,7 +35668,10 @@ class SolanaMobileWalletProvider {
|
|
|
35383
35668
|
txData: solTransactionData.txArgs[0].txData
|
|
35384
35669
|
}, finalDeduped, solTransactionData.lutKey, solTransactionData.preInstructions, false);
|
|
35385
35670
|
if ((options === null || options === void 0 ? void 0 : options.shouldSubmitTx) === false) {
|
|
35386
|
-
const signedTx = await
|
|
35671
|
+
const [signedTx] = await transact(async (wallet) => {
|
|
35672
|
+
await this.reauthorizeWallet(wallet);
|
|
35673
|
+
return wallet.signTransactions({ transactions: [tx] });
|
|
35674
|
+
}, this.getAssociationConfig());
|
|
35387
35675
|
return {
|
|
35388
35676
|
signedTransaction: signedTx,
|
|
35389
35677
|
blockNumber: 0,
|
|
@@ -35391,9 +35679,12 @@ class SolanaMobileWalletProvider {
|
|
|
35391
35679
|
data: ''
|
|
35392
35680
|
};
|
|
35393
35681
|
}
|
|
35394
|
-
// On surfnet, sign + submit manually
|
|
35395
35682
|
if (isSurfnet) {
|
|
35396
|
-
|
|
35683
|
+
// Surfnet: sign then submit manually to our RPC
|
|
35684
|
+
const [signedTx] = await transact(async (wallet) => {
|
|
35685
|
+
await this.reauthorizeWallet(wallet);
|
|
35686
|
+
return wallet.signTransactions({ transactions: [tx] });
|
|
35687
|
+
}, this.getAssociationConfig());
|
|
35397
35688
|
const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed');
|
|
35398
35689
|
const signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35399
35690
|
preflightCommitment: 'confirmed'
|
|
@@ -35417,19 +35708,15 @@ class SolanaMobileWalletProvider {
|
|
|
35417
35708
|
data: txInfo === null || txInfo === void 0 ? void 0 : txInfo.meta,
|
|
35418
35709
|
};
|
|
35419
35710
|
}
|
|
35420
|
-
//
|
|
35421
|
-
|
|
35422
|
-
|
|
35423
|
-
|
|
35424
|
-
|
|
35711
|
+
// Non-surfnet: use signAndSendTransactions
|
|
35712
|
+
const signatures = await transact(async (wallet) => {
|
|
35713
|
+
await this.reauthorizeWallet(wallet);
|
|
35714
|
+
return wallet.signAndSendTransactions({
|
|
35715
|
+
transactions: [tx],
|
|
35716
|
+
commitment: 'confirmed',
|
|
35425
35717
|
});
|
|
35426
|
-
}
|
|
35427
|
-
|
|
35428
|
-
const signedTx = await walletAdapter.signTransaction(tx);
|
|
35429
|
-
signature = await connection.sendRawTransaction(signedTx.serialize(), {
|
|
35430
|
-
preflightCommitment: 'confirmed'
|
|
35431
|
-
});
|
|
35432
|
-
}
|
|
35718
|
+
}, this.getAssociationConfig());
|
|
35719
|
+
const signature = signatures[0];
|
|
35433
35720
|
const txInfo = await confirmAndCheckTransaction(connection, signature);
|
|
35434
35721
|
return {
|
|
35435
35722
|
transactionSignature: signature,
|
|
@@ -35439,7 +35726,8 @@ class SolanaMobileWalletProvider {
|
|
|
35439
35726
|
};
|
|
35440
35727
|
}
|
|
35441
35728
|
catch (error) {
|
|
35442
|
-
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'))
|
|
35729
|
+
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')) ||
|
|
35730
|
+
(error === null || error === void 0 ? void 0 : error.code) === 'ERROR_AUTHORIZATION_FAILED') {
|
|
35443
35731
|
await this.logout();
|
|
35444
35732
|
throw new Error('Wallet connection lost. Please reconnect.');
|
|
35445
35733
|
}
|
|
@@ -35455,7 +35743,12 @@ class SolanaMobileWalletProvider {
|
|
|
35455
35743
|
}
|
|
35456
35744
|
}
|
|
35457
35745
|
async getNativeMethods() {
|
|
35458
|
-
return
|
|
35746
|
+
return {
|
|
35747
|
+
authToken: this.authToken,
|
|
35748
|
+
walletUriBase: this.walletUriBase,
|
|
35749
|
+
publicKey: this.publicKeyObj,
|
|
35750
|
+
base64Address: this.base64Address,
|
|
35751
|
+
};
|
|
35459
35752
|
}
|
|
35460
35753
|
/* ----------------------------------------------------------- *
|
|
35461
35754
|
* Private Helpers
|
|
@@ -35613,11 +35906,13 @@ async function getAuthProvider(config) {
|
|
|
35613
35906
|
break;
|
|
35614
35907
|
case "phantom":
|
|
35615
35908
|
currentAuthProvider = new PhantomWalletProvider(rpcUrl, config.phantomConfig);
|
|
35909
|
+
// MWA hot-swap is always available (custom modal shows MWA button on Android)
|
|
35910
|
+
currentAuthProvider.onSwitchToMWA =
|
|
35911
|
+
() => hotSwapToMWAProvider(config);
|
|
35912
|
+
// Privy hot-swap only when enablePrivyFallback is on
|
|
35616
35913
|
if ((_d = config.phantomConfig) === null || _d === void 0 ? void 0 : _d.enablePrivyFallback) {
|
|
35617
35914
|
currentAuthProvider.onSwitchToPrivy =
|
|
35618
35915
|
() => hotSwapToPrivyProvider(config);
|
|
35619
|
-
currentAuthProvider.onSwitchToMWA =
|
|
35620
|
-
() => hotSwapToMWAProvider(config);
|
|
35621
35916
|
}
|
|
35622
35917
|
break;
|
|
35623
35918
|
case "mobile-wallet-adapter":
|
|
@@ -35839,7 +36134,6 @@ async function getIdToken() {
|
|
|
35839
36134
|
}
|
|
35840
36135
|
|
|
35841
36136
|
exports.DEFAULT_TEST_ADDRESS = DEFAULT_TEST_ADDRESS;
|
|
35842
|
-
exports.EventEmitter3 = EventEmitter3;
|
|
35843
36137
|
exports.MockAuthProvider = MockAuthProvider;
|
|
35844
36138
|
exports.OffchainAuthProvider = OffchainAuthProvider;
|
|
35845
36139
|
exports.PhantomWalletProvider = PhantomWalletProvider;
|
|
@@ -35848,7 +36142,6 @@ exports.ServerSessionManager = ServerSessionManager;
|
|
|
35848
36142
|
exports.SolanaMobileWalletProvider = SolanaMobileWalletProvider;
|
|
35849
36143
|
exports.WebSessionManager = WebSessionManager;
|
|
35850
36144
|
exports.aggregate = aggregate;
|
|
35851
|
-
exports.bs58 = bs58;
|
|
35852
36145
|
exports.bufferExports = bufferExports;
|
|
35853
36146
|
exports.buildSetDocumentsTransaction = buildSetDocumentsTransaction;
|
|
35854
36147
|
exports.clearCache = clearCache;
|
|
@@ -35865,6 +36158,7 @@ exports.getAuthProvider = getAuthProvider;
|
|
|
35865
36158
|
exports.getCachedData = getCachedData;
|
|
35866
36159
|
exports.getConfig = getConfig;
|
|
35867
36160
|
exports.getCurrentUser = getCurrentUser;
|
|
36161
|
+
exports.getDefaultExportFromCjs = getDefaultExportFromCjs$1;
|
|
35868
36162
|
exports.getFiles = getFiles;
|
|
35869
36163
|
exports.getIdToken = getIdToken;
|
|
35870
36164
|
exports.init = init;
|
|
@@ -35889,4 +36183,4 @@ exports.signSessionCreateMessage = signSessionCreateMessage;
|
|
|
35889
36183
|
exports.signTransaction = signTransaction;
|
|
35890
36184
|
exports.subscribe = subscribe;
|
|
35891
36185
|
exports.useAuth = useAuth;
|
|
35892
|
-
//# sourceMappingURL=index-
|
|
36186
|
+
//# sourceMappingURL=index-Rzm01Zbu.js.map
|