@human.tech/waap-sdk 2.3.0 → 2.4.1
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/.agent/SKILL.md +28 -13
- package/CHANGELOG.md +152 -0
- package/README.md +16 -2
- package/dist/SolanaProvider-BdeBP_ro.js +1 -0
- package/dist/SolanaProvider-DP9J8JuJ.mjs +1 -0
- package/dist/UIMessageManager-4xqSTTBS.d.mts +11 -0
- package/dist/UIMessageManager-4xqSTTBS.d.ts +11 -0
- package/dist/UIMessageManager-CtnIZgIY.mjs +1 -0
- package/dist/UIMessageManager-D-OTya1E.js +1 -0
- package/dist/WaaPError-C2TOEGPx.d.mts +52 -0
- package/dist/WaaPError-C2TOEGPx.d.ts +52 -0
- package/dist/{WalletConnect-Dn40Omgo.js → WalletConnect-B21f4Vvh.js} +1 -1
- package/dist/{WalletConnect-UfxGn2M_.mjs → WalletConnect-DXiTxC-F.mjs} +1 -1
- package/dist/{WaaPError-CMOAWUlN.d.ts → WalletModalController-16mHsFv2.d.ts} +17 -55
- package/dist/{WaaPError-BjukImOz.d.mts → WalletModalController-DxiBiqDf.d.mts} +17 -55
- package/dist/bridge.d.mts +158 -0
- package/dist/bridge.d.ts +158 -0
- package/dist/bridge.js +1 -0
- package/dist/bridge.mjs +1 -0
- package/dist/evm-dDMLwSQe.mjs +2 -0
- package/dist/evm-rUSuf-iy.js +2 -0
- package/dist/evm.d.mts +3 -2
- package/dist/evm.d.ts +3 -2
- package/dist/evm.js +1 -1
- package/dist/evm.mjs +1 -1
- package/dist/{index-DOIss_GK.d.ts → index-BOExImk3.d.mts} +29 -192
- package/dist/{index-C0mLQs_a.d.mts → index-BkKBZpqc.d.ts} +29 -192
- package/dist/index.d.mts +33 -8
- package/dist/index.d.ts +33 -8
- package/dist/index.js +3 -3
- package/dist/index.mjs +3 -3
- package/dist/init-BkrqKNet.js +1 -0
- package/dist/init-C-52fEJS.d.ts +84 -0
- package/dist/init-C3zCj5Lc.d.mts +84 -0
- package/dist/init-CkYgm7Zu.mjs +1 -0
- package/dist/react.d.mts +1 -1
- package/dist/react.d.ts +1 -1
- package/dist/react.js +1 -1
- package/dist/react.mjs +1 -1
- package/dist/register-B2G1larb.mjs +1 -0
- package/dist/{register-9bEe9ATz.d.mts → register-BKCJXsHB.d.mts} +9 -6
- package/dist/register-BL_2Xqcc.js +1 -0
- package/dist/{register-XzDVa7r8.d.mts → register-C1hFwh4A.d.ts} +4 -3
- package/dist/register-CLpzYN7U.mjs +1 -0
- package/dist/{register-DgN7qh23.js → register-Diu5wxsG.js} +1 -1
- package/dist/{register-PWKDsSRv.d.ts → register-GiWQpcBY.d.ts} +9 -6
- package/dist/{register-Mb1D_xW4.d.ts → register-mq9fTaSt.d.mts} +4 -3
- package/dist/solana.d.mts +6 -4
- package/dist/solana.d.ts +6 -4
- package/dist/solana.js +1 -1
- package/dist/solana.mjs +1 -1
- package/dist/stellar.d.mts +6 -0
- package/dist/stellar.d.ts +6 -0
- package/dist/stellar.js +1 -0
- package/dist/stellar.mjs +1 -0
- package/dist/sui.d.mts +5 -4
- package/dist/sui.d.ts +5 -4
- package/dist/sui.js +1 -1
- package/dist/sui.mjs +1 -1
- package/dist/types-Bai14yLc.d.mts +95 -0
- package/dist/types-Bj5dDE-C.d.ts +198 -0
- package/dist/types-C7JDjWnt.d.mts +198 -0
- package/dist/{types-BmCqyQtu.d.mts → types-Cc6tc4ut.d.mts} +18 -1
- package/dist/{types-BmCqyQtu.d.ts → types-Cc6tc4ut.d.ts} +18 -1
- package/dist/types-DqdVfkaW.d.ts +95 -0
- package/dist/ui-CnG74RaM.js +1 -0
- package/dist/ui-lV9LVoom.mjs +1 -0
- package/dist/{useWaapAuth-vJAk2n_I.d.mts → useWaapAuth-Be1YJk-7.d.mts} +2 -2
- package/dist/useWaapAuth-C9Cwu4XG.js +1 -0
- package/dist/{useWaapAuth-DgYO5KxO.d.ts → useWaapAuth-DSFDwJtt.d.ts} +2 -2
- package/dist/useWaapAuth-Vh8gUs6Y.mjs +1 -0
- package/dist/walletconnect.js +1 -1
- package/dist/walletconnect.mjs +1 -1
- package/docs/solana-wallet-adapter.md +157 -0
- package/package.json +32 -4
- package/dist/esm-BUfmyWbN.mjs +0 -1
- package/dist/esm-DFwVZkjo.js +0 -1
- package/dist/evm-9r6LecIW.mjs +0 -2
- package/dist/evm-D_LHHo3z.js +0 -2
- package/dist/initializerContext-DIrqEE6B.d.ts +0 -20
- package/dist/initializerContext-_YjbVTiL.d.mts +0 -20
- package/dist/register-CEeLG7qz.mjs +0 -1
- package/dist/register-CodxV1XG.js +0 -1
- package/dist/register-I8d7v41B.mjs +0 -1
- package/dist/ui-BjcwM6px.js +0 -1
- package/dist/ui-CrnBoTQL.mjs +0 -1
- package/dist/useWaapAuth-BPvve-_3.js +0 -1
- package/dist/useWaapAuth-BcmVGb-D.mjs +0 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import { A as
|
|
2
|
-
import { _ as WAAP_EVENTS, a as useWaapTransaction, c as AsyncEventType, d as AsyncSignPendingEvent, f as AsyncTxConfirmedEvent, g as SilkOptions, h as AsyncTxResponse, i as UseWaapTransactionReturn, l as AsyncSignCompleteEvent, m as AsyncTxPendingEvent, n as TxState, o as Async2faRequiredEvent, p as AsyncTxFailedEvent, r as UseWaapTransactionOptions, s as AsyncEvent, t as useWaapAuth, u as AsyncSignFailedEvent } from "./useWaapAuth-
|
|
3
|
-
import { a as
|
|
4
|
-
import {
|
|
1
|
+
import { A as SocialProvider, C as LinkedAddressesResult, E as RequestPermissionTokenResult, I as WaaPSessionProtection, M as JSON_RPC_METHOD, N as SILK_METHOD, S as LinkAddressNonceResult, T as RequestPermissionTokenParams, _ as resolveWalletOrigin, a as PermissionTokenClearResult, b as CredentialType, c as RequestArguments, d as WaaPAccountMode, f as WaaPAccountStatus, g as WaaPWalletTargetOptions, h as WaaPEnvironment, i as NativeAuthHandoff, j as StylesConfig, l as SilkEthereumProviderInterface, m as WaaPSessionExtension, n as InitSilkOptions, o as PermissionTokenQuery, p as WaaPLoginOptions, r as LoginResponse, s as PermissionTokenStatus, t as EthereumProviderInterface, u as SilkProvider, v as validateWalletOrigin, w as ProjectConfig, x as CustomConfig, y as AuthenticationMethod } from "./types-Cc6tc4ut.mjs";
|
|
2
|
+
import { _ as WAAP_EVENTS, a as useWaapTransaction, c as AsyncEventType, d as AsyncSignPendingEvent, f as AsyncTxConfirmedEvent, g as SilkOptions, h as AsyncTxResponse, i as UseWaapTransactionReturn, l as AsyncSignCompleteEvent, m as AsyncTxPendingEvent, n as TxState, o as Async2faRequiredEvent, p as AsyncTxFailedEvent, r as UseWaapTransactionOptions, s as AsyncEvent, t as useWaapAuth, u as AsyncSignFailedEvent } from "./useWaapAuth-Be1YJk-7.mjs";
|
|
3
|
+
import { a as subscribeWaaPIframeLifecycle, i as getWaaPIframeDiagnostics, n as WaaPIframeLifecycleEvent, o as PostSilkRequestArgs, r as WaaPIframeLifecyclePhase, s as WalletMessageManager, t as WaaPIframeDiagnostics } from "./WalletModalController-DxiBiqDf.mjs";
|
|
4
|
+
import { _ as SolanaStandardSignTransactionOutput, a as SolanaConnectOutput, b as WaaPSolanaWalletFeatures, c as SolanaSignMessageInput, d as SolanaSignTransactionOutput, f as SolanaStandardSignAndSendTransactionInput, g as SolanaStandardSignTransactionInput, h as SolanaStandardSignMessageOutput, i as SolanaConnectInput, l as SolanaSignMessageOutput, m as SolanaStandardSignMessageInput, n as SolanaAccount, o as SolanaSignAndSendTransactionInput, p as SolanaStandardSignAndSendTransactionOutput, r as SolanaChain, s as SolanaSignAndSendTransactionOutput, t as InitWaaPSolanaOptions, u as SolanaSignTransactionInput, y as WaaPSolanaProviderInterface } from "./types-C7JDjWnt.mjs";
|
|
5
|
+
import { a as CancelWaaPPreload, c as preloadWaaPOnIdle, i as normalizeWaaPError, n as WaaPErrorCode, o as WaaPIdlePreloadOptions, r as WaaPOperationMetadata, s as WaaPPreloadTarget, t as WaaPError } from "./WaaPError-C2TOEGPx.mjs";
|
|
6
|
+
import { A as SuiSignPersonalMessageInput, C as SuiChain, F as SuiSignTransactionOutput, I as SuiTransactionInput, O as SuiSignAndExecuteTransactionInput, P as SuiSignTransactionInput, R as WaaPSuiWalletFeatures, S as SuiAccount, T as SuiConnectOutput, _ as initWaaPSolana, a as WaaPChain, b as initWaaPTap, c as WaaPSquidChain, d as WaaPSquidStatus, f as WaaPSquidStatusState, g as initWaaPMulti, h as initWaaP, i as InitWaaPTapOptions, j as SuiSignPersonalMessageOutput, k as SuiSignAndExecuteTransactionOutput, l as WaaPSquidLifecycle, m as WaaPTapSession, n as InitWaaPOptions, o as WaaPMultiChain, p as WaaPTap, r as InitWaaPSquidOptions, s as WaaPSquid, t as InitWaaPMultiOptions, u as WaaPSquidSession, v as initWaaPSquid, w as SuiConnectInput, x as InitWaaPSuiOptions, y as initWaaPSui, z as WaaPSuiWalletInterface } from "./index-BOExImk3.mjs";
|
|
7
|
+
import { a as StellarSignBlobOptions, i as StellarNetwork, n as Sep43Error, o as StellarSignTransactionOptions, r as Sep43Result, s as WaaPStellarProviderInterface, t as InitWaaPStellarOptions } from "./types-Bai14yLc.mjs";
|
|
5
8
|
import { t as SilkWalletConnect } from "./WalletConnect-BTT6LtUu.mjs";
|
|
6
|
-
import { n as
|
|
7
|
-
import { n as WaaPSuiWallet, t as registerWaaPSuiWallet } from "./register-
|
|
8
|
-
import { n as WaaPSolanaProvider, t as registerWaaPSolanaWallet } from "./register-
|
|
9
|
+
import { n as UI_EVENT_NAMES, t as UIMessageManager } from "./UIMessageManager-4xqSTTBS.mjs";
|
|
10
|
+
import { n as WaaPSuiWallet, t as registerWaaPSuiWallet } from "./register-mq9fTaSt.mjs";
|
|
11
|
+
import { n as WaaPSolanaProvider, t as registerWaaPSolanaWallet } from "./register-BKCJXsHB.mjs";
|
|
12
|
+
import { n as WaaPStellarProvider, t as initWaaPStellar } from "./init-C3zCj5Lc.mjs";
|
|
9
13
|
import { EventEmitter } from "events";
|
|
10
14
|
//#region ../silk-interface-core/dist/esm/types/squidLifecycle.d.ts
|
|
11
15
|
/**
|
|
@@ -98,6 +102,17 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
98
102
|
readonly isWaaP = true;
|
|
99
103
|
connected: boolean;
|
|
100
104
|
walletMessageManager: WalletMessageManager;
|
|
105
|
+
/**
|
|
106
|
+
* Whether this provider may publish itself as `window.waap` / `window.silk`.
|
|
107
|
+
*
|
|
108
|
+
* The initializer honours this when it exposes the globals itself, but the
|
|
109
|
+
* provider also reaches for them on session restore -- so a host that asked
|
|
110
|
+
* for no globals got them anyway on the next launch with a live session.
|
|
111
|
+
* Held here so both routes answer to the same decision.
|
|
112
|
+
*/
|
|
113
|
+
private exposeOnWindow;
|
|
114
|
+
/** @internal Set by the initializer; not part of the published surface. */
|
|
115
|
+
setExposeOnWindow(expose: boolean): void;
|
|
101
116
|
uiMessageManager: UIMessageManager;
|
|
102
117
|
config: CustomConfig;
|
|
103
118
|
private currentAccount;
|
|
@@ -184,6 +199,14 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
184
199
|
request(args: RequestArguments): Promise<unknown>;
|
|
185
200
|
login(customProvider?: EthereumProviderInterface): Promise<LoginResponse>;
|
|
186
201
|
login(options: WaaPLoginOptions): Promise<LoginResponse>;
|
|
202
|
+
/**
|
|
203
|
+
* `login`, but able to report that the wallet handed the ceremony back.
|
|
204
|
+
*
|
|
205
|
+
* Separate from `login` so the browser contract keeps returning a login
|
|
206
|
+
* method: only a WebView host can receive `{ isComplete: false, authUrl }`,
|
|
207
|
+
* and only it knows how to open a browser.
|
|
208
|
+
*/
|
|
209
|
+
loginWithNativeHandoff(customProviderOrOptions?: EthereumProviderInterface | WaaPLoginOptions): Promise<LoginResponse | NativeAuthHandoff>;
|
|
187
210
|
logout(): Promise<unknown>;
|
|
188
211
|
/** Release listeners owned by this EVM facade. */
|
|
189
212
|
destroy(): void;
|
|
@@ -214,6 +237,8 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
214
237
|
* @returns Promise<unknown> if auto-connect succeeds, null if it should fall through to normal flow
|
|
215
238
|
*/
|
|
216
239
|
private attemptAutoConnect;
|
|
240
|
+
/** Earliest retry for a passive probe without a marker; reset on login/logout. */
|
|
241
|
+
private waapRestoreRetryAt;
|
|
217
242
|
/**
|
|
218
243
|
* Coalesce concurrent silent session restores. This avoids repeating the
|
|
219
244
|
* status plus auto-connect round trips for a burst of signing requests.
|
|
@@ -317,4 +342,4 @@ interface AnchorIdlInstruction {
|
|
|
317
342
|
*/
|
|
318
343
|
declare function permissionTokenSolanaAnchorInstruction(programId: string, instruction: AnchorIdlInstruction): string;
|
|
319
344
|
//#endregion
|
|
320
|
-
export { type AnchorIdlInstruction, type Async2faRequiredEvent, type AsyncEvent, type AsyncEventType, type AsyncSignCompleteEvent, type AsyncSignFailedEvent, type AsyncSignPendingEvent, type AsyncTxConfirmedEvent, type AsyncTxFailedEvent, type AsyncTxPendingEvent, type AsyncTxResponse, type AuthenticationMethod, type CancelWaaPPreload, type CredentialType, EthereumProvider, EthereumProviderExtension, type InitSilkOptions, type InitWaaPMultiOptions, type InitWaaPOptions, type InitWaaPSolanaOptions, type InitWaaPSquidOptions, type InitWaaPSuiOptions, type InitWaaPTapOptions, type LinkAddressNonceResult, type LinkedAddressesResult, type PermissionTokenClearResult, type PermissionTokenQuery, type PermissionTokenStatus, type PostSilkRequestArgs, type PostSilkRequestArgs as PostWaaPRequestArgs, type ProjectConfig, type RequestPermissionTokenParams, type RequestPermissionTokenResult, SILK_METHOD, SILK_METHOD as WAAP_METHOD, type SilkEthereumProviderInterface, type SilkEthereumProviderInterface as WaaPEthereumProviderInterface, type SilkOptions, type SilkProvider, type SilkProvider as WaaPProvider, SilkWalletConnect, SilkWalletConnect as WaaPWalletConnect, type SocialProvider, type SolanaAccount, type SolanaChain, type SolanaConnectInput, type SolanaConnectOutput, type SolanaSignAndSendTransactionInput, type SolanaSignAndSendTransactionOutput, type SolanaSignMessageInput, type SolanaSignMessageOutput, type SolanaSignTransactionInput, type SolanaSignTransactionOutput, type SolanaStandardSignAndSendTransactionInput, type SolanaStandardSignAndSendTransactionOutput, type SolanaStandardSignMessageInput, type SolanaStandardSignMessageOutput, type SolanaStandardSignTransactionInput, type SolanaStandardSignTransactionOutput, type SquidFailedEvent, type SquidLifecycleEventType, type SquidPendingEvent, type SquidReadyEvent, type StylesConfig, type SuiAccount, type SuiChain, type SuiConnectInput, type SuiConnectOutput, type SuiSignAndExecuteTransactionInput, type SuiSignAndExecuteTransactionOutput, type SuiSignPersonalMessageInput, type SuiSignPersonalMessageOutput, type SuiSignTransactionInput, type SuiSignTransactionOutput, type SuiTransactionInput, type TxState, UIMessageManager, UI_EVENT_NAMES, type UseWaapTransactionOptions, type UseWaapTransactionReturn, WAAP_EVENTS, WaapWalletElement as WaaP, type WaaPAccountMode, type WaaPAccountStatus, type WaaPChain, type WaaPEnvironment, WaaPError, type WaaPErrorCode, type WaaPIdlePreloadOptions, type WaaPIframeDiagnostics, type WaaPIframeLifecycleEvent, type WaaPIframeLifecyclePhase, type WaaPLoginOptions, type WaaPOperationMetadata, type WaaPPreloadTarget, type WaaPSessionProtection, WaaPSolanaProvider, type WaaPSolanaProviderInterface, type WaaPSolanaWalletFeatures, type WaaPSquid, type WaaPSquidChain, type WaaPSquidLifecycle, type WaaPSquidSession, type WaaPSquidStatus, type WaaPSquidStatusState, WaaPSuiWallet, type WaaPSuiWalletFeatures, type WaaPSuiWalletInterface, type WaaPTap, type WaaPTapSession, type WaaPWalletTargetOptions, WalletMessageManager, getWaaPIframeDiagnostics, handleWalletRequestAndResponse, initWaaP, initWaaPMulti, initWaaPSolana, initWaaPSquid, initWaaPSui, initWaaPTap, normalizeWaaPError, permissionTokenEvmContract, permissionTokenEvmFunction, permissionTokenRecipient, permissionTokenSolanaAnchorInstruction, permissionTokenSolanaDiscriminator, permissionTokenSolanaInstruction, permissionTokenSolanaProgram, permissionTokenSuiFunction, permissionTokenSuiPackage, preloadWaaPOnIdle, registerWaaPSolanaWallet, registerWaaPSuiWallet, resolveWalletOrigin, rpcMethodRequiresUI, subscribeWaaPIframeLifecycle, useWaapAuth, useWaapTransaction, validateWalletOrigin };
|
|
345
|
+
export { type AnchorIdlInstruction, type Async2faRequiredEvent, type AsyncEvent, type AsyncEventType, type AsyncSignCompleteEvent, type AsyncSignFailedEvent, type AsyncSignPendingEvent, type AsyncTxConfirmedEvent, type AsyncTxFailedEvent, type AsyncTxPendingEvent, type AsyncTxResponse, type AuthenticationMethod, type CancelWaaPPreload, type CredentialType, EthereumProvider, EthereumProviderExtension, type InitSilkOptions, type InitWaaPMultiOptions, type InitWaaPOptions, type InitWaaPSolanaOptions, type InitWaaPSquidOptions, type InitWaaPStellarOptions, type InitWaaPSuiOptions, type InitWaaPTapOptions, type LinkAddressNonceResult, type LinkedAddressesResult, type PermissionTokenClearResult, type PermissionTokenQuery, type PermissionTokenStatus, type PostSilkRequestArgs, type PostSilkRequestArgs as PostWaaPRequestArgs, type ProjectConfig, type RequestPermissionTokenParams, type RequestPermissionTokenResult, SILK_METHOD, SILK_METHOD as WAAP_METHOD, type Sep43Error, type Sep43Result, type SilkEthereumProviderInterface, type SilkEthereumProviderInterface as WaaPEthereumProviderInterface, type SilkOptions, type SilkProvider, type SilkProvider as WaaPProvider, SilkWalletConnect, SilkWalletConnect as WaaPWalletConnect, type SocialProvider, type SolanaAccount, type SolanaChain, type SolanaConnectInput, type SolanaConnectOutput, type SolanaSignAndSendTransactionInput, type SolanaSignAndSendTransactionOutput, type SolanaSignMessageInput, type SolanaSignMessageOutput, type SolanaSignTransactionInput, type SolanaSignTransactionOutput, type SolanaStandardSignAndSendTransactionInput, type SolanaStandardSignAndSendTransactionOutput, type SolanaStandardSignMessageInput, type SolanaStandardSignMessageOutput, type SolanaStandardSignTransactionInput, type SolanaStandardSignTransactionOutput, type SquidFailedEvent, type SquidLifecycleEventType, type SquidPendingEvent, type SquidReadyEvent, type StellarNetwork, type StellarSignBlobOptions, type StellarSignTransactionOptions, type StylesConfig, type SuiAccount, type SuiChain, type SuiConnectInput, type SuiConnectOutput, type SuiSignAndExecuteTransactionInput, type SuiSignAndExecuteTransactionOutput, type SuiSignPersonalMessageInput, type SuiSignPersonalMessageOutput, type SuiSignTransactionInput, type SuiSignTransactionOutput, type SuiTransactionInput, type TxState, UIMessageManager, UI_EVENT_NAMES, type UseWaapTransactionOptions, type UseWaapTransactionReturn, WAAP_EVENTS, WaapWalletElement as WaaP, type WaaPAccountMode, type WaaPAccountStatus, type WaaPChain, type WaaPEnvironment, WaaPError, type WaaPErrorCode, type WaaPIdlePreloadOptions, type WaaPIframeDiagnostics, type WaaPIframeLifecycleEvent, type WaaPIframeLifecyclePhase, type WaaPLoginOptions, type WaaPMultiChain, type WaaPOperationMetadata, type WaaPPreloadTarget, type WaaPSessionProtection, WaaPSolanaProvider, type WaaPSolanaProviderInterface, type WaaPSolanaWalletFeatures, type WaaPSquid, type WaaPSquidChain, type WaaPSquidLifecycle, type WaaPSquidSession, type WaaPSquidStatus, type WaaPSquidStatusState, WaaPStellarProvider, type WaaPStellarProviderInterface, WaaPSuiWallet, type WaaPSuiWalletFeatures, type WaaPSuiWalletInterface, type WaaPTap, type WaaPTapSession, type WaaPWalletTargetOptions, WalletMessageManager, getWaaPIframeDiagnostics, handleWalletRequestAndResponse, initWaaP, initWaaPMulti, initWaaPSolana, initWaaPSquid, initWaaPStellar, initWaaPSui, initWaaPTap, normalizeWaaPError, permissionTokenEvmContract, permissionTokenEvmFunction, permissionTokenRecipient, permissionTokenSolanaAnchorInstruction, permissionTokenSolanaDiscriminator, permissionTokenSolanaInstruction, permissionTokenSolanaProgram, permissionTokenSuiFunction, permissionTokenSuiPackage, preloadWaaPOnIdle, registerWaaPSolanaWallet, registerWaaPSuiWallet, resolveWalletOrigin, rpcMethodRequiresUI, subscribeWaaPIframeLifecycle, useWaapAuth, useWaapTransaction, validateWalletOrigin };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import { A as
|
|
2
|
-
import { _ as WAAP_EVENTS, a as useWaapTransaction, c as AsyncEventType, d as AsyncSignPendingEvent, f as AsyncTxConfirmedEvent, g as SilkOptions, h as AsyncTxResponse, i as UseWaapTransactionReturn, l as AsyncSignCompleteEvent, m as AsyncTxPendingEvent, n as TxState, o as Async2faRequiredEvent, p as AsyncTxFailedEvent, r as UseWaapTransactionOptions, s as AsyncEvent, t as useWaapAuth, u as AsyncSignFailedEvent } from "./useWaapAuth-
|
|
3
|
-
import { a as
|
|
4
|
-
import {
|
|
1
|
+
import { A as SocialProvider, C as LinkedAddressesResult, E as RequestPermissionTokenResult, I as WaaPSessionProtection, M as JSON_RPC_METHOD, N as SILK_METHOD, S as LinkAddressNonceResult, T as RequestPermissionTokenParams, _ as resolveWalletOrigin, a as PermissionTokenClearResult, b as CredentialType, c as RequestArguments, d as WaaPAccountMode, f as WaaPAccountStatus, g as WaaPWalletTargetOptions, h as WaaPEnvironment, i as NativeAuthHandoff, j as StylesConfig, l as SilkEthereumProviderInterface, m as WaaPSessionExtension, n as InitSilkOptions, o as PermissionTokenQuery, p as WaaPLoginOptions, r as LoginResponse, s as PermissionTokenStatus, t as EthereumProviderInterface, u as SilkProvider, v as validateWalletOrigin, w as ProjectConfig, x as CustomConfig, y as AuthenticationMethod } from "./types-Cc6tc4ut.js";
|
|
2
|
+
import { _ as WAAP_EVENTS, a as useWaapTransaction, c as AsyncEventType, d as AsyncSignPendingEvent, f as AsyncTxConfirmedEvent, g as SilkOptions, h as AsyncTxResponse, i as UseWaapTransactionReturn, l as AsyncSignCompleteEvent, m as AsyncTxPendingEvent, n as TxState, o as Async2faRequiredEvent, p as AsyncTxFailedEvent, r as UseWaapTransactionOptions, s as AsyncEvent, t as useWaapAuth, u as AsyncSignFailedEvent } from "./useWaapAuth-DSFDwJtt.js";
|
|
3
|
+
import { a as subscribeWaaPIframeLifecycle, i as getWaaPIframeDiagnostics, n as WaaPIframeLifecycleEvent, o as PostSilkRequestArgs, r as WaaPIframeLifecyclePhase, s as WalletMessageManager, t as WaaPIframeDiagnostics } from "./WalletModalController-16mHsFv2.js";
|
|
4
|
+
import { _ as SolanaStandardSignTransactionOutput, a as SolanaConnectOutput, b as WaaPSolanaWalletFeatures, c as SolanaSignMessageInput, d as SolanaSignTransactionOutput, f as SolanaStandardSignAndSendTransactionInput, g as SolanaStandardSignTransactionInput, h as SolanaStandardSignMessageOutput, i as SolanaConnectInput, l as SolanaSignMessageOutput, m as SolanaStandardSignMessageInput, n as SolanaAccount, o as SolanaSignAndSendTransactionInput, p as SolanaStandardSignAndSendTransactionOutput, r as SolanaChain, s as SolanaSignAndSendTransactionOutput, t as InitWaaPSolanaOptions, u as SolanaSignTransactionInput, y as WaaPSolanaProviderInterface } from "./types-Bj5dDE-C.js";
|
|
5
|
+
import { a as CancelWaaPPreload, c as preloadWaaPOnIdle, i as normalizeWaaPError, n as WaaPErrorCode, o as WaaPIdlePreloadOptions, r as WaaPOperationMetadata, s as WaaPPreloadTarget, t as WaaPError } from "./WaaPError-C2TOEGPx.js";
|
|
6
|
+
import { A as SuiSignPersonalMessageInput, C as SuiChain, F as SuiSignTransactionOutput, I as SuiTransactionInput, O as SuiSignAndExecuteTransactionInput, P as SuiSignTransactionInput, R as WaaPSuiWalletFeatures, S as SuiAccount, T as SuiConnectOutput, _ as initWaaPSolana, a as WaaPChain, b as initWaaPTap, c as WaaPSquidChain, d as WaaPSquidStatus, f as WaaPSquidStatusState, g as initWaaPMulti, h as initWaaP, i as InitWaaPTapOptions, j as SuiSignPersonalMessageOutput, k as SuiSignAndExecuteTransactionOutput, l as WaaPSquidLifecycle, m as WaaPTapSession, n as InitWaaPOptions, o as WaaPMultiChain, p as WaaPTap, r as InitWaaPSquidOptions, s as WaaPSquid, t as InitWaaPMultiOptions, u as WaaPSquidSession, v as initWaaPSquid, w as SuiConnectInput, x as InitWaaPSuiOptions, y as initWaaPSui, z as WaaPSuiWalletInterface } from "./index-BkKBZpqc.js";
|
|
7
|
+
import { a as StellarSignBlobOptions, i as StellarNetwork, n as Sep43Error, o as StellarSignTransactionOptions, r as Sep43Result, s as WaaPStellarProviderInterface, t as InitWaaPStellarOptions } from "./types-DqdVfkaW.js";
|
|
5
8
|
import { t as SilkWalletConnect } from "./WalletConnect-BTT6LtUu.js";
|
|
6
|
-
import { n as
|
|
7
|
-
import { n as WaaPSuiWallet, t as registerWaaPSuiWallet } from "./register-
|
|
8
|
-
import { n as WaaPSolanaProvider, t as registerWaaPSolanaWallet } from "./register-
|
|
9
|
+
import { n as UI_EVENT_NAMES, t as UIMessageManager } from "./UIMessageManager-4xqSTTBS.js";
|
|
10
|
+
import { n as WaaPSuiWallet, t as registerWaaPSuiWallet } from "./register-C1hFwh4A.js";
|
|
11
|
+
import { n as WaaPSolanaProvider, t as registerWaaPSolanaWallet } from "./register-GiWQpcBY.js";
|
|
12
|
+
import { n as WaaPStellarProvider, t as initWaaPStellar } from "./init-C-52fEJS.js";
|
|
9
13
|
import { EventEmitter } from "events";
|
|
10
14
|
//#region ../silk-interface-core/dist/esm/types/squidLifecycle.d.ts
|
|
11
15
|
/**
|
|
@@ -98,6 +102,17 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
98
102
|
readonly isWaaP = true;
|
|
99
103
|
connected: boolean;
|
|
100
104
|
walletMessageManager: WalletMessageManager;
|
|
105
|
+
/**
|
|
106
|
+
* Whether this provider may publish itself as `window.waap` / `window.silk`.
|
|
107
|
+
*
|
|
108
|
+
* The initializer honours this when it exposes the globals itself, but the
|
|
109
|
+
* provider also reaches for them on session restore -- so a host that asked
|
|
110
|
+
* for no globals got them anyway on the next launch with a live session.
|
|
111
|
+
* Held here so both routes answer to the same decision.
|
|
112
|
+
*/
|
|
113
|
+
private exposeOnWindow;
|
|
114
|
+
/** @internal Set by the initializer; not part of the published surface. */
|
|
115
|
+
setExposeOnWindow(expose: boolean): void;
|
|
101
116
|
uiMessageManager: UIMessageManager;
|
|
102
117
|
config: CustomConfig;
|
|
103
118
|
private currentAccount;
|
|
@@ -184,6 +199,14 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
184
199
|
request(args: RequestArguments): Promise<unknown>;
|
|
185
200
|
login(customProvider?: EthereumProviderInterface): Promise<LoginResponse>;
|
|
186
201
|
login(options: WaaPLoginOptions): Promise<LoginResponse>;
|
|
202
|
+
/**
|
|
203
|
+
* `login`, but able to report that the wallet handed the ceremony back.
|
|
204
|
+
*
|
|
205
|
+
* Separate from `login` so the browser contract keeps returning a login
|
|
206
|
+
* method: only a WebView host can receive `{ isComplete: false, authUrl }`,
|
|
207
|
+
* and only it knows how to open a browser.
|
|
208
|
+
*/
|
|
209
|
+
loginWithNativeHandoff(customProviderOrOptions?: EthereumProviderInterface | WaaPLoginOptions): Promise<LoginResponse | NativeAuthHandoff>;
|
|
187
210
|
logout(): Promise<unknown>;
|
|
188
211
|
/** Release listeners owned by this EVM facade. */
|
|
189
212
|
destroy(): void;
|
|
@@ -214,6 +237,8 @@ declare class EthereumProvider extends EventEmitter implements SilkEthereumProvi
|
|
|
214
237
|
* @returns Promise<unknown> if auto-connect succeeds, null if it should fall through to normal flow
|
|
215
238
|
*/
|
|
216
239
|
private attemptAutoConnect;
|
|
240
|
+
/** Earliest retry for a passive probe without a marker; reset on login/logout. */
|
|
241
|
+
private waapRestoreRetryAt;
|
|
217
242
|
/**
|
|
218
243
|
* Coalesce concurrent silent session restores. This avoids repeating the
|
|
219
244
|
* status plus auto-connect round trips for a burst of signing requests.
|
|
@@ -317,4 +342,4 @@ interface AnchorIdlInstruction {
|
|
|
317
342
|
*/
|
|
318
343
|
declare function permissionTokenSolanaAnchorInstruction(programId: string, instruction: AnchorIdlInstruction): string;
|
|
319
344
|
//#endregion
|
|
320
|
-
export { type AnchorIdlInstruction, type Async2faRequiredEvent, type AsyncEvent, type AsyncEventType, type AsyncSignCompleteEvent, type AsyncSignFailedEvent, type AsyncSignPendingEvent, type AsyncTxConfirmedEvent, type AsyncTxFailedEvent, type AsyncTxPendingEvent, type AsyncTxResponse, type AuthenticationMethod, type CancelWaaPPreload, type CredentialType, EthereumProvider, EthereumProviderExtension, type InitSilkOptions, type InitWaaPMultiOptions, type InitWaaPOptions, type InitWaaPSolanaOptions, type InitWaaPSquidOptions, type InitWaaPSuiOptions, type InitWaaPTapOptions, type LinkAddressNonceResult, type LinkedAddressesResult, type PermissionTokenClearResult, type PermissionTokenQuery, type PermissionTokenStatus, type PostSilkRequestArgs, type PostSilkRequestArgs as PostWaaPRequestArgs, type ProjectConfig, type RequestPermissionTokenParams, type RequestPermissionTokenResult, SILK_METHOD, SILK_METHOD as WAAP_METHOD, type SilkEthereumProviderInterface, type SilkEthereumProviderInterface as WaaPEthereumProviderInterface, type SilkOptions, type SilkProvider, type SilkProvider as WaaPProvider, SilkWalletConnect, SilkWalletConnect as WaaPWalletConnect, type SocialProvider, type SolanaAccount, type SolanaChain, type SolanaConnectInput, type SolanaConnectOutput, type SolanaSignAndSendTransactionInput, type SolanaSignAndSendTransactionOutput, type SolanaSignMessageInput, type SolanaSignMessageOutput, type SolanaSignTransactionInput, type SolanaSignTransactionOutput, type SolanaStandardSignAndSendTransactionInput, type SolanaStandardSignAndSendTransactionOutput, type SolanaStandardSignMessageInput, type SolanaStandardSignMessageOutput, type SolanaStandardSignTransactionInput, type SolanaStandardSignTransactionOutput, type SquidFailedEvent, type SquidLifecycleEventType, type SquidPendingEvent, type SquidReadyEvent, type StylesConfig, type SuiAccount, type SuiChain, type SuiConnectInput, type SuiConnectOutput, type SuiSignAndExecuteTransactionInput, type SuiSignAndExecuteTransactionOutput, type SuiSignPersonalMessageInput, type SuiSignPersonalMessageOutput, type SuiSignTransactionInput, type SuiSignTransactionOutput, type SuiTransactionInput, type TxState, UIMessageManager, UI_EVENT_NAMES, type UseWaapTransactionOptions, type UseWaapTransactionReturn, WAAP_EVENTS, WaapWalletElement as WaaP, type WaaPAccountMode, type WaaPAccountStatus, type WaaPChain, type WaaPEnvironment, WaaPError, type WaaPErrorCode, type WaaPIdlePreloadOptions, type WaaPIframeDiagnostics, type WaaPIframeLifecycleEvent, type WaaPIframeLifecyclePhase, type WaaPLoginOptions, type WaaPOperationMetadata, type WaaPPreloadTarget, type WaaPSessionProtection, WaaPSolanaProvider, type WaaPSolanaProviderInterface, type WaaPSolanaWalletFeatures, type WaaPSquid, type WaaPSquidChain, type WaaPSquidLifecycle, type WaaPSquidSession, type WaaPSquidStatus, type WaaPSquidStatusState, WaaPSuiWallet, type WaaPSuiWalletFeatures, type WaaPSuiWalletInterface, type WaaPTap, type WaaPTapSession, type WaaPWalletTargetOptions, WalletMessageManager, getWaaPIframeDiagnostics, handleWalletRequestAndResponse, initWaaP, initWaaPMulti, initWaaPSolana, initWaaPSquid, initWaaPSui, initWaaPTap, normalizeWaaPError, permissionTokenEvmContract, permissionTokenEvmFunction, permissionTokenRecipient, permissionTokenSolanaAnchorInstruction, permissionTokenSolanaDiscriminator, permissionTokenSolanaInstruction, permissionTokenSolanaProgram, permissionTokenSuiFunction, permissionTokenSuiPackage, preloadWaaPOnIdle, registerWaaPSolanaWallet, registerWaaPSuiWallet, resolveWalletOrigin, rpcMethodRequiresUI, subscribeWaaPIframeLifecycle, useWaapAuth, useWaapTransaction, validateWalletOrigin };
|
|
345
|
+
export { type AnchorIdlInstruction, type Async2faRequiredEvent, type AsyncEvent, type AsyncEventType, type AsyncSignCompleteEvent, type AsyncSignFailedEvent, type AsyncSignPendingEvent, type AsyncTxConfirmedEvent, type AsyncTxFailedEvent, type AsyncTxPendingEvent, type AsyncTxResponse, type AuthenticationMethod, type CancelWaaPPreload, type CredentialType, EthereumProvider, EthereumProviderExtension, type InitSilkOptions, type InitWaaPMultiOptions, type InitWaaPOptions, type InitWaaPSolanaOptions, type InitWaaPSquidOptions, type InitWaaPStellarOptions, type InitWaaPSuiOptions, type InitWaaPTapOptions, type LinkAddressNonceResult, type LinkedAddressesResult, type PermissionTokenClearResult, type PermissionTokenQuery, type PermissionTokenStatus, type PostSilkRequestArgs, type PostSilkRequestArgs as PostWaaPRequestArgs, type ProjectConfig, type RequestPermissionTokenParams, type RequestPermissionTokenResult, SILK_METHOD, SILK_METHOD as WAAP_METHOD, type Sep43Error, type Sep43Result, type SilkEthereumProviderInterface, type SilkEthereumProviderInterface as WaaPEthereumProviderInterface, type SilkOptions, type SilkProvider, type SilkProvider as WaaPProvider, SilkWalletConnect, SilkWalletConnect as WaaPWalletConnect, type SocialProvider, type SolanaAccount, type SolanaChain, type SolanaConnectInput, type SolanaConnectOutput, type SolanaSignAndSendTransactionInput, type SolanaSignAndSendTransactionOutput, type SolanaSignMessageInput, type SolanaSignMessageOutput, type SolanaSignTransactionInput, type SolanaSignTransactionOutput, type SolanaStandardSignAndSendTransactionInput, type SolanaStandardSignAndSendTransactionOutput, type SolanaStandardSignMessageInput, type SolanaStandardSignMessageOutput, type SolanaStandardSignTransactionInput, type SolanaStandardSignTransactionOutput, type SquidFailedEvent, type SquidLifecycleEventType, type SquidPendingEvent, type SquidReadyEvent, type StellarNetwork, type StellarSignBlobOptions, type StellarSignTransactionOptions, type StylesConfig, type SuiAccount, type SuiChain, type SuiConnectInput, type SuiConnectOutput, type SuiSignAndExecuteTransactionInput, type SuiSignAndExecuteTransactionOutput, type SuiSignPersonalMessageInput, type SuiSignPersonalMessageOutput, type SuiSignTransactionInput, type SuiSignTransactionOutput, type SuiTransactionInput, type TxState, UIMessageManager, UI_EVENT_NAMES, type UseWaapTransactionOptions, type UseWaapTransactionReturn, WAAP_EVENTS, WaapWalletElement as WaaP, type WaaPAccountMode, type WaaPAccountStatus, type WaaPChain, type WaaPEnvironment, WaaPError, type WaaPErrorCode, type WaaPIdlePreloadOptions, type WaaPIframeDiagnostics, type WaaPIframeLifecycleEvent, type WaaPIframeLifecyclePhase, type WaaPLoginOptions, type WaaPMultiChain, type WaaPOperationMetadata, type WaaPPreloadTarget, type WaaPSessionProtection, WaaPSolanaProvider, type WaaPSolanaProviderInterface, type WaaPSolanaWalletFeatures, type WaaPSquid, type WaaPSquidChain, type WaaPSquidLifecycle, type WaaPSquidSession, type WaaPSquidStatus, type WaaPSquidStatusState, WaaPStellarProvider, type WaaPStellarProviderInterface, WaaPSuiWallet, type WaaPSuiWalletFeatures, type WaaPSuiWalletInterface, type WaaPTap, type WaaPTapSession, type WaaPWalletTargetOptions, WalletMessageManager, getWaaPIframeDiagnostics, handleWalletRequestAndResponse, initWaaP, initWaaPMulti, initWaaPSolana, initWaaPSquid, initWaaPStellar, initWaaPSui, initWaaPTap, normalizeWaaPError, permissionTokenEvmContract, permissionTokenEvmFunction, permissionTokenRecipient, permissionTokenSolanaAnchorInstruction, permissionTokenSolanaDiscriminator, permissionTokenSolanaInstruction, permissionTokenSolanaProgram, permissionTokenSuiFunction, permissionTokenSuiPackage, preloadWaaPOnIdle, registerWaaPSolanaWallet, registerWaaPSuiWallet, resolveWalletOrigin, rpcMethodRequiresUI, subscribeWaaPIframeLifecycle, useWaapAuth, useWaapTransaction, validateWalletOrigin };
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./UIMessageManager-D-OTya1E.js"),t=require("./asyncSigning-B0KrmKk7.js"),n=require("./ui-CnG74RaM.js"),r=require("./SolanaProvider-BdeBP_ro.js"),i=require("./init-BkrqKNet.js"),a=require("./evm-rUSuf-iy.js"),o=require("./WalletConnect-B21f4Vvh.js"),s=require("./register-Diu5wxsG.js"),c=require("./register-BL_2Xqcc.js"),l=require("./useWaapAuth-C9Cwu4XG.js");let u=require("events");var d=class extends u.EventEmitter{constructor(e){super(),this.isSilk=!0,this.connected=!1,this.config={...a.i,...e||{}}}sendToExtension(e){return new Promise((t,n)=>{window.postMessage({type:`FROM_PAGE`,request:e},`*`),window.addEventListener(`message`,e=>{e.data.type===`FROM_EXTENSION`&&(e.data.error?n(e.data.error):t(e.data.result))})})}async request(t){if(!Object.keys(e.C).includes(t.method))return Promise.reject({error:`Not implemented (${t.method})`});let n=await this.sendToExtension(t);return(t.method===e.C.wallet_switchEthereumChain||t.method===e.C.wallet_addEthereumChain)&&n===null&&this.emit(`chainChanged`,t.params?.[0]?.chainId),n}async enable(){return this.request({method:`eth_requestAccounts`})}isConnected(){return this.connected}async login(){return this.sendToExtension({method:e.w.login})}async requestSBT(t){return this.sendToExtension({method:e.w.silk_requestSbt,params:[t]})}async toggleDarkMode(){this.config.styles.darkMode=!this.config.styles.darkMode,await this.sendToExtension({method:e.w.set_custom_config,params:[this.config]})}async safe(){return this.sendToExtension({method:e.w.safe})}};
|
|
2
2
|
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
3
|
-
function
|
|
4
|
-
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=P}walk(e){return L(this,e)}};function L(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?L(e.cause,t):t?null:e}var R=class extends I{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset "${e}" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},z=class extends I{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}};function B(e,{dir:t,size:n=32}={}){return typeof e==`string`?Se(e,{dir:t,size:n}):Ce(e,{dir:t,size:n})}function Se(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new z({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Ce(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new z({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var we=class extends I{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},Te=class extends I{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}};function V(e,{size:t}){if(N(e)>t)throw new Te({givenSize:N(e),maxSize:t})}const Ee=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function De(e,t={}){return typeof e==`number`||typeof e==`bigint`?U(e,t):typeof e==`string`?Ae(e,t):typeof e==`boolean`?Oe(e,t):H(e,t)}function Oe(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(V(n,{size:t.size}),B(n,{size:t.size})):n}function H(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Ee[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(V(r,{size:t.size}),B(r,{dir:`right`,size:t.size})):r}function U(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new we({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?B(s,{size:r}):s}const ke=new TextEncoder;function Ae(e,t={}){return H(ke.encode(e),t)}const je=new TextEncoder;function W(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ne(e,t):typeof e==`boolean`?Me(e,t):M(e)?q(e,t):J(e,t)}function Me(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(V(n,{size:t.size}),B(n,{size:t.size})):n}const G={zero:48,nine:57,A:65,F:70,a:97,f:102};function K(e){if(e>=G.zero&&e<=G.nine)return e-G.zero;if(e>=G.A&&e<=G.F)return e-(G.A-10);if(e>=G.a&&e<=G.f)return e-(G.a-10)}function q(e,t={}){let n=e;t.size&&(V(n,{size:t.size}),n=B(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=K(r.charCodeAt(t++)),i=K(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new I(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=n*16+i}return a}function Ne(e,t){return q(U(e,t))}function J(e,t={}){let n=je.encode(e);return typeof t.size==`number`?(V(n,{size:t.size}),B(n,{dir:`right`,size:t.size})):n}const Pe=BigInt(0),Y=BigInt(1),Fe=BigInt(2),Ie=BigInt(7),Le=BigInt(256),Re=BigInt(113),X=[],ze=[],Be=[];for(let e=0,t=Y,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],X.push(2*(5*r+n)),ze.push((e+1)*(e+2)/2%64);let i=Pe;for(let e=0;e<7;e++)t=(t<<Y^(t>>Ie)*Re)%Le,t&Fe&&(i^=Y<<(Y<<BigInt(e))-Y);Be.push(i)}const Ve=pe(Be,!0),He=Ve[0],Ue=Ve[1],We=(e,t,n)=>n>32?ge(e,t,n):me(e,t,n),Ge=(e,t,n)=>n>32?_e(e,t,n):he(e,t,n);function Ke(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=We(a,o,1)^n[r],c=Ge(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=ze[n],a=We(t,i,r),o=Ge(t,i,r),s=X[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=He[r],e[1]^=Ue[r]}h(n)}var qe=class e extends x{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,d(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ee(this.state)}clone(){return this._cloneInto()}keccak(){v(this.state32),Ke(this.state32,this.rounds),v(this.state32),this.posOut=0,this.pos=0}update(e){p(this),e=b(e),f(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){p(this,!1),f(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return d(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(m(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,h(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}};const Je=((e,t,n)=>S(()=>new qe(t,e,n)))(1,136,256/8);function Ye(e,t){let n=t||`hex`,r=Je(M(e,{strict:!1})?W(e):e);return n===`bytes`?r:De(r)}const Xe=e=>Ye(W(e));function Ze(e){return Xe(e)}function Qe(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new I(`Unable to normalize signature.`);return i}const $e=e=>Qe(typeof e==`string`?e:xe(e));function et(e){return Ze($e(e))}var tt=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}};const Z=new tt(8192);function nt(e,t){if(Z.has(`${e}.${t}`))return Z.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Ye(J(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return Z.set(`${e}.${t}`,a),a}const rt=/^0x[a-fA-F0-9]{40}$/,Q=new tt(8192);function it(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Q.has(r))return Q.get(r);let i=rt.test(e)?e.toLowerCase()===e||!n||nt(e)===e:!1;return Q.set(r,i),i}function at(e,t,n,{strict:r}={}){return M(e,{strict:!1})?lt(e,t,n,{strict:r}):ct(e,t,n,{strict:r})}function ot(e,t){if(typeof t==`number`&&t>0&&t>N(e)-1)throw new R({offset:t,position:`start`,size:N(e)})}function st(e,t,n){if(typeof t==`number`&&typeof n==`number`&&N(e)!==n-t)throw new R({offset:n,position:`end`,size:N(e)})}function ct(e,t,n,{strict:r}={}){ot(e,t);let i=e.slice(t,n);return r&&st(i,t,n),i}function lt(e,t,n,{strict:r}={}){ot(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&st(i,t,n),i}const ut=e=>at(et(e),0,4),dt=/^0x[0-9a-fA-F]{1,64}$/,ft=/^[A-Za-z_][A-Za-z0-9_]*$/;function pt(e){return`0x${e.slice(2).toLowerCase().padStart(64,`0`)}`}function mt(e){return e.indexOf(`:`)}function ht(e){try{let t=C.decode(e);return t.length===32?C.encode(t):null}catch{return null}}function gt(e,t){if(t.length===0||new TextEncoder().encode(t).length>512||t.trim()!==t)return null;let n=mt(t),r=n===-1?t:t.slice(0,n),i=n===-1?null:t.slice(n+1);if(i===``)return null;if(e.startsWith(`evm:`)){if(!it(r))return null;let e=r.toLowerCase();if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};if(!/^0x[0-9a-fA-F]{8}$/.test(i))return null;let t=i.toLowerCase();return{kind:`application`,target:e,action:{kind:`evm-selector`,selector:t},canonical:`${e}:${t}`}}if(e.startsWith(`sui:`)){if(!dt.test(r))return null;let e=pt(r);if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};let t=i.split(`::`);return t.length!==2||!ft.test(t[0])||t[1]!==`*`&&!ft.test(t[1])?null:{kind:`application`,target:e,action:{kind:`sui-function`,module:t[0],function:t[1]},canonical:`${e}:${t[0]}::${t[1]}`}}let a=ht(r);if(!a)return null;if(i===null)return{kind:`recipient`,address:a,canonical:a};if(i===`*`)return{kind:`application`,target:a,action:{kind:`all`},canonical:`${a}:*`};let o=i.match(/^disc:(0x[0-9a-fA-F]{2,64})$/)?.[1];if(o&&o.length%2==0){let e=o.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-discriminator`,discriminator:e},canonical:`${a}:disc:${e}`}}let s=i.match(/^data-sha256:(0x[0-9a-fA-F]{64})$/)?.[1];if(s){let e=s.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-data-hash`,hash:e},canonical:`${a}:data-sha256:${e}`}}return null}function $(e,t){let n=gt(e,t);if(!n)throw Error(`Invalid permission-token scope: ${t}`);return n.canonical}function _t(e){return`0x${oe(e)}`}function vt(e,t){let n=gt(e,t);if(!n||n.kind!==`recipient`)throw Error(`Invalid ${e} permission-token recipient: ${t}`);return n.canonical}function yt(e){return $(`evm:1`,`${e}:*`)}function bt(e,t){return $(`evm:1`,`${e}:${/^0x[0-9a-fA-F]{8}$/.test(t)?t:ut(t)}`)}function xt(e){return $(`sui:mainnet`,`${e}:*`)}function St(e,t,n=`*`){return $(`sui:mainnet`,`${e}:${t}::${n}`)}function Ct(e){return $(`solana:mainnet`,`${e}:*`)}function wt(e,t){return $(`solana:mainnet`,`${e}:disc:${typeof t==`string`?t:_t(t)}`)}function Tt(e,t){return $(`solana:mainnet`,`${e}:data-sha256:${_t(O(t))}`)}function Et(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1_$2`).replace(/[-\s]+/g,`_`).toLowerCase()}function Dt(e,t){return wt(e,t.discriminator?Uint8Array.from(t.discriminator):O(y(`global:${Et(t.name)}`)).slice(0,8))}exports.EthereumProvider=n.r,exports.EthereumProviderExtension=l,Object.defineProperty(exports,"SILK_METHOD",{enumerable:!0,get:function(){return e.r}}),Object.defineProperty(exports,"WAAP_METHOD",{enumerable:!0,get:function(){return e.r}}),exports.SilkWalletConnect=i.t,exports.WaaPWalletConnect=i.t,exports.UIMessageManager=n.a,exports.UI_EVENT_NAMES=n.o,exports.WAAP_EVENTS=t.t,Object.defineProperty(exports,"WaaP",{enumerable:!0,get:function(){return n.C}}),exports.WaaPError=n.w,exports.WaaPSolanaProvider=r.s,exports.WaaPSuiWallet=r.c,exports.WalletMessageManager=n.h,exports.getWaaPIframeDiagnostics=n.d,exports.handleWalletRequestAndResponse=n.c,exports.initWaaP=r.t,exports.initWaaPMulti=r.n,exports.initWaaPSolana=r.r,exports.initWaaPSquid=r.i,exports.initWaaPSui=r.a,exports.initWaaPTap=r.o,exports.normalizeWaaPError=n.T,exports.permissionTokenEvmContract=yt,exports.permissionTokenEvmFunction=bt,exports.permissionTokenRecipient=vt,exports.permissionTokenSolanaAnchorInstruction=Dt,exports.permissionTokenSolanaDiscriminator=wt,exports.permissionTokenSolanaInstruction=Tt,exports.permissionTokenSolanaProgram=Ct,exports.permissionTokenSuiFunction=St,exports.permissionTokenSuiPackage=xt,exports.preloadWaaPOnIdle=n.s,exports.registerWaaPSolanaWallet=o.t,exports.registerWaaPSuiWallet=a.t,exports.resolveWalletOrigin=n.x,exports.rpcMethodRequiresUI=n.l,exports.subscribeWaaPIframeLifecycle=n.m,exports.useWaapAuth=s.t,exports.useWaapTransaction=s.n,exports.validateWalletOrigin=n.S;
|
|
3
|
+
function f(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function p(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function m(e,...t){if(!f(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function h(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function ee(e,t){m(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function te(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function g(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function _(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function v(e,t){return e<<32-t|e>>>t}const ne=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function re(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function ie(e){for(let t=0;t<e.length;t++)e[t]=re(e[t]);return e}const ae=ne?e=>e:ie,oe=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,se=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function ce(e){if(m(e),oe)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=se[e[n]];return t}function y(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function b(e){return typeof e==`string`&&(e=y(e)),m(e),e}var x=class{};function S(e){let t=t=>e().update(b(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function le(e){if(e.length>=255)throw TypeError(`Alphabet too long`);let t=new Uint8Array(256);for(let e=0;e<t.length;e++)t[e]=255;for(let n=0;n<e.length;n++){let r=e.charAt(n),i=r.charCodeAt(0);if(t[i]!==255)throw TypeError(r+` is ambiguous`);t[i]=n}let n=e.length,r=e.charAt(0),i=Math.log(n)/Math.log(256),a=Math.log(256)/Math.log(n);function o(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;let i=0,o=0,s=0,c=t.length;for(;s!==c&&t[s]===0;)s++,i++;let l=(c-s)*a+1>>>0,u=new Uint8Array(l);for(;s!==c;){let e=t[s],r=0;for(let t=l-1;(e!==0||r<o)&&t!==-1;t--,r++)e+=256*u[t]>>>0,u[t]=e%n>>>0,e=e/n>>>0;if(e!==0)throw Error(`Non-zero carry`);o=r,s++}let d=l-o;for(;d!==l&&u[d]===0;)d++;let f=r.repeat(i);for(;d<l;++d)f+=e.charAt(u[d]);return f}function s(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;let a=0,o=0,s=0;for(;e[a]===r;)o++,a++;let c=(e.length-a)*i+1>>>0,l=new Uint8Array(c);for(;a<e.length;){let r=e.charCodeAt(a);if(r>255)return;let i=t[r];if(i===255)return;let o=0;for(let e=c-1;(i!==0||o<s)&&e!==-1;e--,o++)i+=n*l[e]>>>0,l[e]=i%256>>>0,i=i/256>>>0;if(i!==0)throw Error(`Non-zero carry`);s=o,a++}let u=c-s;for(;u!==c&&l[u]===0;)u++;let d=new Uint8Array(o+(c-u)),f=o;for(;u!==c;)d[f++]=l[u++];return d}function c(e){let t=s(e);if(t)return t;throw Error(`Non-base`+n+` character`)}return{encode:o,decodeUnsafe:s,decode:c}}var C=le(`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`);function ue(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function de(e,t,n){return e&t^~e&n}function fe(e,t,n){return e&t^e&n^t&n}var pe=class extends x{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=_(this.buffer)}update(e){h(this),e=b(e),m(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=_(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){h(this),ee(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,g(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;ue(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=_(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}};const w=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),T=BigInt(2**32-1),E=BigInt(32);function me(e,t=!1){return t?{h:Number(e&T),l:Number(e>>E&T)}:{h:Number(e>>E&T)|0,l:Number(e&T)|0}}function he(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=me(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}const ge=(e,t,n)=>e<<n|t>>>32-n,_e=(e,t,n)=>t<<n|e>>>32-n,ve=(e,t,n)=>t<<n-32|e>>>64-n,ye=(e,t,n)=>e<<n-32|t>>>64-n,be=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]),D=new Uint32Array(64);var xe=class extends pe{constructor(e=32){super(64,e,8,!1),this.A=w[0]|0,this.B=w[1]|0,this.C=w[2]|0,this.D=w[3]|0,this.E=w[4]|0,this.F=w[5]|0,this.G=w[6]|0,this.H=w[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)D[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=D[e-15],n=D[e-2],r=v(t,7)^v(t,18)^t>>>3,i=v(n,17)^v(n,19)^n>>>10;D[e]=i+D[e-7]+r+D[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=v(o,6)^v(o,11)^v(o,25),u=l+t+de(o,s,c)+be[e]+D[e]|0,d=(v(n,2)^v(n,13)^v(n,22))+fe(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){g(D)}destroy(){this.set(0,0,0,0,0,0,0,0),g(this.buffer)}};const Se=S(()=>new xe);function Ce(e,t){return e.exec(t)?.groups}const we=/^tuple(?<array>(\[(\d*)\])*)$/;function O(e){let t=e.type;if(we.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=O(i),r<n-1&&(t+=`, `)}let r=Ce(we,e.type);return t+=`)${r?.array||``}`,O({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function k(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=O(i),r!==n-1&&(t+=`, `)}return t}function Te(e){return e.type===`function`?`function ${e.name}(${k(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${k(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${k(e.inputs)})`:e.type===`error`?`error ${e.name}(${k(e.inputs)})`:e.type===`constructor`?`constructor(${k(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}function A(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}function j(e){return A(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const Ee=`2.55.2`;let M={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ee}`};var N=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=M.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...M.version?[`Version: ${M.version}`]:[]].join(`
|
|
4
|
+
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Ee}walk(e){return P(this,e)}};function P(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?P(e.cause,t):t?null:e}var F=class extends N{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset "${e}" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},I=class extends N{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}};function L(e,{dir:t,size:n=32}={}){return typeof e==`string`?De(e,{dir:t,size:n}):Oe(e,{dir:t,size:n})}function De(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new I({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Oe(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new I({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var ke=class extends N{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},Ae=class extends N{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}};function R(e,{size:t}){if(j(e)>t)throw new Ae({givenSize:j(e),maxSize:t})}const je=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function Me(e,t={}){return typeof e==`number`||typeof e==`bigint`?B(e,t):typeof e==`string`?Fe(e,t):typeof e==`boolean`?Ne(e,t):z(e,t)}function Ne(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(R(n,{size:t.size}),L(n,{size:t.size})):n}function z(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=je[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(R(r,{size:t.size}),L(r,{dir:`right`,size:t.size})):r}function B(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ke({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?L(s,{size:r}):s}const Pe=new TextEncoder;function Fe(e,t={}){return z(Pe.encode(e),t)}const Ie=new TextEncoder;function V(e,t={}){return typeof e==`number`||typeof e==`bigint`?Re(e,t):typeof e==`boolean`?Le(e,t):A(e)?W(e,t):G(e,t)}function Le(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(R(n,{size:t.size}),L(n,{size:t.size})):n}const H={zero:48,nine:57,A:65,F:70,a:97,f:102};function U(e){if(e>=H.zero&&e<=H.nine)return e-H.zero;if(e>=H.A&&e<=H.F)return e-(H.A-10);if(e>=H.a&&e<=H.f)return e-(H.a-10)}function W(e,t={}){let n=e;t.size&&(R(n,{size:t.size}),n=L(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=U(r.charCodeAt(t++)),i=U(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new N(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=n*16+i}return a}function Re(e,t){return W(B(e,t))}function G(e,t={}){let n=Ie.encode(e);return typeof t.size==`number`?(R(n,{size:t.size}),L(n,{dir:`right`,size:t.size})):n}const ze=BigInt(0),K=BigInt(1),Be=BigInt(2),Ve=BigInt(7),He=BigInt(256),Ue=BigInt(113),q=[],We=[],J=[];for(let e=0,t=K,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],q.push(2*(5*r+n)),We.push((e+1)*(e+2)/2%64);let i=ze;for(let e=0;e<7;e++)t=(t<<K^(t>>Ve)*Ue)%He,t&Be&&(i^=K<<(K<<BigInt(e))-K);J.push(i)}const Y=he(J,!0),Ge=Y[0],Ke=Y[1],qe=(e,t,n)=>n>32?ve(e,t,n):ge(e,t,n),Je=(e,t,n)=>n>32?ye(e,t,n):_e(e,t,n);function Ye(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=qe(a,o,1)^n[r],c=Je(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=We[n],a=qe(t,i,r),o=Je(t,i,r),s=q[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=Ge[r],e[1]^=Ke[r]}g(n)}var Xe=class e extends x{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,p(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=te(this.state)}clone(){return this._cloneInto()}keccak(){ae(this.state32),Ye(this.state32,this.rounds),ae(this.state32),this.posOut=0,this.pos=0}update(e){h(this),e=b(e),m(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){h(this,!1),m(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return p(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(ee(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,g(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}};const Ze=((e,t,n)=>S(()=>new Xe(t,e,n)))(1,136,256/8);function Qe(e,t){let n=t||`hex`,r=Ze(A(e,{strict:!1})?V(e):e);return n===`bytes`?r:Me(r)}const $e=e=>Qe(V(e));function et(e){return $e(e)}function tt(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new N(`Unable to normalize signature.`);return i}const nt=e=>tt(typeof e==`string`?e:Te(e));function rt(e){return et(nt(e))}var X=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}};const Z=new X(8192);function it(e,t){if(Z.has(`${e}.${t}`))return Z.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Qe(G(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return Z.set(`${e}.${t}`,a),a}const at=/^0x[a-fA-F0-9]{40}$/,Q=new X(8192);function ot(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Q.has(r))return Q.get(r);let i=at.test(e)?e.toLowerCase()===e||!n||it(e)===e:!1;return Q.set(r,i),i}function st(e,t,n,{strict:r}={}){return A(e,{strict:!1})?dt(e,t,n,{strict:r}):ut(e,t,n,{strict:r})}function ct(e,t){if(typeof t==`number`&&t>0&&t>j(e)-1)throw new F({offset:t,position:`start`,size:j(e)})}function lt(e,t,n){if(typeof t==`number`&&typeof n==`number`&&j(e)!==n-t)throw new F({offset:n,position:`end`,size:j(e)})}function ut(e,t,n,{strict:r}={}){ct(e,t);let i=e.slice(t,n);return r&<(i,t,n),i}function dt(e,t,n,{strict:r}={}){ct(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&<(i,t,n),i}const ft=e=>st(rt(e),0,4),pt=/^0x[0-9a-fA-F]{1,64}$/,mt=/^[A-Za-z_][A-Za-z0-9_]*$/;function ht(e){return`0x${e.slice(2).toLowerCase().padStart(64,`0`)}`}function gt(e){return e.indexOf(`:`)}function _t(e){try{let t=C.decode(e);return t.length===32?C.encode(t):null}catch{return null}}function vt(e,t){if(t.length===0||new TextEncoder().encode(t).length>512||t.trim()!==t)return null;let n=gt(t),r=n===-1?t:t.slice(0,n),i=n===-1?null:t.slice(n+1);if(i===``)return null;if(e.startsWith(`evm:`)){if(!ot(r))return null;let e=r.toLowerCase();if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};if(!/^0x[0-9a-fA-F]{8}$/.test(i))return null;let t=i.toLowerCase();return{kind:`application`,target:e,action:{kind:`evm-selector`,selector:t},canonical:`${e}:${t}`}}if(e.startsWith(`sui:`)){if(!pt.test(r))return null;let e=ht(r);if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};let t=i.split(`::`);return t.length!==2||!mt.test(t[0])||t[1]!==`*`&&!mt.test(t[1])?null:{kind:`application`,target:e,action:{kind:`sui-function`,module:t[0],function:t[1]},canonical:`${e}:${t[0]}::${t[1]}`}}let a=_t(r);if(!a)return null;if(i===null)return{kind:`recipient`,address:a,canonical:a};if(i===`*`)return{kind:`application`,target:a,action:{kind:`all`},canonical:`${a}:*`};let o=i.match(/^disc:(0x[0-9a-fA-F]{2,64})$/)?.[1];if(o&&o.length%2==0){let e=o.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-discriminator`,discriminator:e},canonical:`${a}:disc:${e}`}}let s=i.match(/^data-sha256:(0x[0-9a-fA-F]{64})$/)?.[1];if(s){let e=s.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-data-hash`,hash:e},canonical:`${a}:data-sha256:${e}`}}return null}function $(e,t){let n=vt(e,t);if(!n)throw Error(`Invalid permission-token scope: ${t}`);return n.canonical}function yt(e){return`0x${ce(e)}`}function bt(e,t){let n=vt(e,t);if(!n||n.kind!==`recipient`)throw Error(`Invalid ${e} permission-token recipient: ${t}`);return n.canonical}function xt(e){return $(`evm:1`,`${e}:*`)}function St(e,t){return $(`evm:1`,`${e}:${/^0x[0-9a-fA-F]{8}$/.test(t)?t:ft(t)}`)}function Ct(e){return $(`sui:mainnet`,`${e}:*`)}function wt(e,t,n=`*`){return $(`sui:mainnet`,`${e}:${t}::${n}`)}function Tt(e){return $(`solana:mainnet`,`${e}:*`)}function Et(e,t){return $(`solana:mainnet`,`${e}:disc:${typeof t==`string`?t:yt(t)}`)}function Dt(e,t){return $(`solana:mainnet`,`${e}:data-sha256:${yt(Se(t))}`)}function Ot(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1_$2`).replace(/[-\s]+/g,`_`).toLowerCase()}function kt(e,t){return Et(e,t.discriminator?Uint8Array.from(t.discriminator):Se(y(`global:${Ot(t.name)}`)).slice(0,8))}exports.EthereumProvider=a.r,exports.EthereumProviderExtension=d,Object.defineProperty(exports,"SILK_METHOD",{enumerable:!0,get:function(){return e.w}}),Object.defineProperty(exports,"WAAP_METHOD",{enumerable:!0,get:function(){return e.w}}),exports.SilkWalletConnect=o.t,exports.WaaPWalletConnect=o.t,exports.UIMessageManager=e.t,exports.UI_EVENT_NAMES=e.n,exports.WAAP_EVENTS=t.t,Object.defineProperty(exports,"WaaP",{enumerable:!0,get:function(){return e.b}}),exports.WaaPError=e.x,exports.WaaPSolanaProvider=r.t,exports.WaaPStellarProvider=i.n,exports.WaaPSuiWallet=n.c,exports.WalletMessageManager=e.d,exports.getWaaPIframeDiagnostics=e.s,exports.handleWalletRequestAndResponse=e.i,exports.initWaaP=n.t,exports.initWaaPMulti=n.n,exports.initWaaPSolana=n.r,exports.initWaaPSquid=n.i,exports.initWaaPStellar=i.t,exports.initWaaPSui=n.a,exports.initWaaPTap=n.o,exports.normalizeWaaPError=e.S,exports.permissionTokenEvmContract=xt,exports.permissionTokenEvmFunction=St,exports.permissionTokenRecipient=bt,exports.permissionTokenSolanaAnchorInstruction=kt,exports.permissionTokenSolanaDiscriminator=Et,exports.permissionTokenSolanaInstruction=Dt,exports.permissionTokenSolanaProgram=Tt,exports.permissionTokenSuiFunction=wt,exports.permissionTokenSuiPackage=Ct,exports.preloadWaaPOnIdle=e.r,exports.registerWaaPSolanaWallet=c.t,exports.registerWaaPSuiWallet=s.t,exports.resolveWalletOrigin=e.v,exports.rpcMethodRequiresUI=e.a,exports.subscribeWaaPIframeLifecycle=e.u,exports.useWaapAuth=l.t,exports.useWaapTransaction=l.n,exports.validateWalletOrigin=e.y;
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{C as e,S as t,a as n,b as r,d as i,i as a,n as o,r as s,s as c,t as l,u,v as d,w as f,x as ee,y as te}from"./UIMessageManager-CtnIZgIY.mjs";import{t as ne}from"./asyncSigning-CzqBbYDP.mjs";import{a as re,c as ie,i as ae,n as oe,o as se,r as ce,t as le}from"./ui-lV9LVoom.mjs";import{t as ue}from"./SolanaProvider-DP9J8JuJ.mjs";import{n as de,t as fe}from"./init-CkYgm7Zu.mjs";import{i as pe,r as me}from"./evm-dDMLwSQe.mjs";import{t as he}from"./WalletConnect-DXiTxC-F.mjs";import{t as ge}from"./register-CLpzYN7U.mjs";import{t as _e}from"./register-B2G1larb.mjs";import{n as ve,t as ye}from"./useWaapAuth-Vh8gUs6Y.mjs";import{EventEmitter as be}from"events";var xe=class extends be{constructor(e){super(),this.isSilk=!0,this.connected=!1,this.config={...pe,...e||{}}}sendToExtension(e){return new Promise((t,n)=>{window.postMessage({type:`FROM_PAGE`,request:e},`*`),window.addEventListener(`message`,e=>{e.data.type===`FROM_EXTENSION`&&(e.data.error?n(e.data.error):t(e.data.result))})})}async request(t){if(!Object.keys(e).includes(t.method))return Promise.reject({error:`Not implemented (${t.method})`});let n=await this.sendToExtension(t);return(t.method===e.wallet_switchEthereumChain||t.method===e.wallet_addEthereumChain)&&n===null&&this.emit(`chainChanged`,t.params?.[0]?.chainId),n}async enable(){return this.request({method:`eth_requestAccounts`})}isConnected(){return this.connected}async login(){return this.sendToExtension({method:f.login})}async requestSBT(e){return this.sendToExtension({method:f.silk_requestSbt,params:[e]})}async toggleDarkMode(){this.config.styles.darkMode=!this.config.styles.darkMode,await this.sendToExtension({method:f.set_custom_config,params:[this.config]})}async safe(){return this.sendToExtension({method:f.safe})}};
|
|
2
2
|
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
3
|
-
function
|
|
4
|
-
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=F}walk(e){return R(this,e)}};function R(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?R(e.cause,t):t?null:e}var z=class extends L{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset "${e}" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},B=class extends L{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}};function V(e,{dir:t,size:n=32}={}){return typeof e==`string`?We(e,{dir:t,size:n}):Ge(e,{dir:t,size:n})}function We(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new B({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Ge(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new B({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var Ke=class extends L{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},qe=class extends L{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}};function H(e,{size:t}){if(P(e)>t)throw new qe({givenSize:P(e),maxSize:t})}const Je=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function Ye(e,t={}){return typeof e==`number`||typeof e==`bigint`?W(e,t):typeof e==`string`?Qe(e,t):typeof e==`boolean`?Xe(e,t):U(e,t)}function Xe(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(H(n,{size:t.size}),V(n,{size:t.size})):n}function U(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Je[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(H(r,{size:t.size}),V(r,{dir:`right`,size:t.size})):r}function W(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new Ke({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?V(s,{size:r}):s}const Ze=new TextEncoder;function Qe(e,t={}){return U(Ze.encode(e),t)}const $e=new TextEncoder;function G(e,t={}){return typeof e==`number`||typeof e==`bigint`?tt(e,t):typeof e==`boolean`?et(e,t):N(e)?J(e,t):nt(e,t)}function et(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(H(n,{size:t.size}),V(n,{size:t.size})):n}const K={zero:48,nine:57,A:65,F:70,a:97,f:102};function q(e){if(e>=K.zero&&e<=K.nine)return e-K.zero;if(e>=K.A&&e<=K.F)return e-(K.A-10);if(e>=K.a&&e<=K.f)return e-(K.a-10)}function J(e,t={}){let n=e;t.size&&(H(n,{size:t.size}),n=V(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=q(r.charCodeAt(t++)),i=q(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new L(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=n*16+i}return a}function tt(e,t){return J(W(e,t))}function nt(e,t={}){let n=$e.encode(e);return typeof t.size==`number`?(H(n,{size:t.size}),V(n,{dir:`right`,size:t.size})):n}const rt=BigInt(0),Y=BigInt(1),it=BigInt(2),at=BigInt(7),ot=BigInt(256),st=BigInt(113),ct=[],lt=[],ut=[];for(let e=0,t=Y,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ct.push(2*(5*r+n)),lt.push((e+1)*(e+2)/2%64);let i=rt;for(let e=0;e<7;e++)t=(t<<Y^(t>>at)*st)%ot,t&it&&(i^=Y<<(Y<<BigInt(e))-Y);ut.push(i)}const dt=Fe(ut,!0),ft=dt[0],pt=dt[1],mt=(e,t,n)=>n>32?Re(e,t,n):Ie(e,t,n),ht=(e,t,n)=>n>32?ze(e,t,n):Le(e,t,n);function gt(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=mt(a,o,1)^n[r],c=ht(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=lt[n],a=mt(t,i,r),o=ht(t,i,r),s=ct[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=ft[r],e[1]^=pt[r]}g(n)}var _t=class e extends S{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,p(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Se(this.state)}clone(){return this._cloneInto()}keccak(){y(this.state32),gt(this.state32,this.rounds),y(this.state32),this.posOut=0,this.pos=0}update(e){h(this),e=x(e),m(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){h(this,!1),m(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return p(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(xe(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,g(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}};const vt=((e,t,n)=>C(()=>new _t(t,e,n)))(1,136,256/8);function yt(e,t){let n=t||`hex`,r=vt(N(e,{strict:!1})?G(e):e);return n===`bytes`?r:Ye(r)}const bt=e=>yt(G(e));function xt(e){return bt(e)}function St(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new L(`Unable to normalize signature.`);return i}const Ct=e=>St(typeof e==`string`?e:Ue(e));function wt(e){return xt(Ct(e))}var Tt=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}};const X=new Tt(8192);function Et(e,t){if(X.has(`${e}.${t}`))return X.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=yt(nt(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return X.set(`${e}.${t}`,a),a}const Dt=/^0x[a-fA-F0-9]{40}$/,Z=new Tt(8192);function Ot(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Z.has(r))return Z.get(r);let i=Dt.test(e)?e.toLowerCase()===e||!n||Et(e)===e:!1;return Z.set(r,i),i}function kt(e,t,n,{strict:r}={}){return N(e,{strict:!1})?Nt(e,t,n,{strict:r}):Mt(e,t,n,{strict:r})}function At(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new z({offset:t,position:`start`,size:P(e)})}function jt(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new z({offset:n,position:`end`,size:P(e)})}function Mt(e,t,n,{strict:r}={}){At(e,t);let i=e.slice(t,n);return r&&jt(i,t,n),i}function Nt(e,t,n,{strict:r}={}){At(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&jt(i,t,n),i}const Pt=e=>kt(wt(e),0,4),Ft=/^0x[0-9a-fA-F]{1,64}$/,It=/^[A-Za-z_][A-Za-z0-9_]*$/;function Lt(e){return`0x${e.slice(2).toLowerCase().padStart(64,`0`)}`}function Rt(e){return e.indexOf(`:`)}function zt(e){try{let t=w.decode(e);return t.length===32?w.encode(t):null}catch{return null}}function Bt(e,t){if(t.length===0||new TextEncoder().encode(t).length>512||t.trim()!==t)return null;let n=Rt(t),r=n===-1?t:t.slice(0,n),i=n===-1?null:t.slice(n+1);if(i===``)return null;if(e.startsWith(`evm:`)){if(!Ot(r))return null;let e=r.toLowerCase();if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};if(!/^0x[0-9a-fA-F]{8}$/.test(i))return null;let t=i.toLowerCase();return{kind:`application`,target:e,action:{kind:`evm-selector`,selector:t},canonical:`${e}:${t}`}}if(e.startsWith(`sui:`)){if(!Ft.test(r))return null;let e=Lt(r);if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};let t=i.split(`::`);return t.length!==2||!It.test(t[0])||t[1]!==`*`&&!It.test(t[1])?null:{kind:`application`,target:e,action:{kind:`sui-function`,module:t[0],function:t[1]},canonical:`${e}:${t[0]}::${t[1]}`}}let a=zt(r);if(!a)return null;if(i===null)return{kind:`recipient`,address:a,canonical:a};if(i===`*`)return{kind:`application`,target:a,action:{kind:`all`},canonical:`${a}:*`};let o=i.match(/^disc:(0x[0-9a-fA-F]{2,64})$/)?.[1];if(o&&o.length%2==0){let e=o.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-discriminator`,discriminator:e},canonical:`${a}:disc:${e}`}}let s=i.match(/^data-sha256:(0x[0-9a-fA-F]{64})$/)?.[1];if(s){let e=s.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-data-hash`,hash:e},canonical:`${a}:data-sha256:${e}`}}return null}function Q(e,t){let n=Bt(e,t);if(!n)throw Error(`Invalid permission-token scope: ${t}`);return n.canonical}function Vt(e){return`0x${Oe(e)}`}function Ht(e,t){let n=Bt(e,t);if(!n||n.kind!==`recipient`)throw Error(`Invalid ${e} permission-token recipient: ${t}`);return n.canonical}function Ut(e){return Q(`evm:1`,`${e}:*`)}function Wt(e,t){return Q(`evm:1`,`${e}:${/^0x[0-9a-fA-F]{8}$/.test(t)?t:Pt(t)}`)}function Gt(e){return Q(`sui:mainnet`,`${e}:*`)}function Kt(e,t,n=`*`){return Q(`sui:mainnet`,`${e}:${t}::${n}`)}function qt(e){return Q(`solana:mainnet`,`${e}:*`)}function $(e,t){return Q(`solana:mainnet`,`${e}:disc:${typeof t==`string`?t:Vt(t)}`)}function Jt(e,t){return Q(`solana:mainnet`,`${e}:data-sha256:${Vt(k(t))}`)}function Yt(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1_$2`).replace(/[-\s]+/g,`_`).toLowerCase()}function Xt(e,t){return $(e,t.discriminator?Uint8Array.from(t.discriminator):k(b(`global:${Yt(t.name)}`)).slice(0,8))}export{te as EthereumProvider,ye as EthereumProviderExtension,e as SILK_METHOD,e as WAAP_METHOD,pe as SilkWalletConnect,pe as WaaPWalletConnect,o as UIMessageManager,ee as UI_EVENT_NAMES,n as WAAP_EVENTS,r as WaaP,re as WaaPError,de as WaaPSolanaProvider,oe as WaaPSuiWallet,l as WalletMessageManager,c as getWaaPIframeDiagnostics,s as handleWalletRequestAndResponse,fe as initWaaP,ce as initWaaPMulti,ue as initWaaPSolana,se as initWaaPSquid,ae as initWaaPSui,le as initWaaPTap,a as normalizeWaaPError,Ut as permissionTokenEvmContract,Wt as permissionTokenEvmFunction,Ht as permissionTokenRecipient,Xt as permissionTokenSolanaAnchorInstruction,$ as permissionTokenSolanaDiscriminator,Jt as permissionTokenSolanaInstruction,qt as permissionTokenSolanaProgram,Kt as permissionTokenSuiFunction,Gt as permissionTokenSuiPackage,ne as preloadWaaPOnIdle,he as registerWaaPSolanaWallet,me as registerWaaPSuiWallet,ie as resolveWalletOrigin,d as rpcMethodRequiresUI,f as subscribeWaaPIframeLifecycle,_e as useWaapAuth,ge as useWaapTransaction,i as validateWalletOrigin};
|
|
3
|
+
function Se(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function p(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function m(e,...t){if(!Se(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function h(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function g(e,t){m(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Ce(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function _(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function v(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function y(e,t){return e<<32-t|e>>>t}const we=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Te(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Ee(e){for(let t=0;t<e.length;t++)e[t]=Te(e[t]);return e}const b=we?e=>e:Ee,De=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,Oe=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function ke(e){if(m(e),De)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=Oe[e[n]];return t}function Ae(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function x(e){return typeof e==`string`&&(e=Ae(e)),m(e),e}var je=class{};function Me(e){let t=t=>e().update(x(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Ne(e){if(e.length>=255)throw TypeError(`Alphabet too long`);let t=new Uint8Array(256);for(let e=0;e<t.length;e++)t[e]=255;for(let n=0;n<e.length;n++){let r=e.charAt(n),i=r.charCodeAt(0);if(t[i]!==255)throw TypeError(r+` is ambiguous`);t[i]=n}let n=e.length,r=e.charAt(0),i=Math.log(n)/Math.log(256),a=Math.log(256)/Math.log(n);function o(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;let i=0,o=0,s=0,c=t.length;for(;s!==c&&t[s]===0;)s++,i++;let l=(c-s)*a+1>>>0,u=new Uint8Array(l);for(;s!==c;){let e=t[s],r=0;for(let t=l-1;(e!==0||r<o)&&t!==-1;t--,r++)e+=256*u[t]>>>0,u[t]=e%n>>>0,e=e/n>>>0;if(e!==0)throw Error(`Non-zero carry`);o=r,s++}let d=l-o;for(;d!==l&&u[d]===0;)d++;let f=r.repeat(i);for(;d<l;++d)f+=e.charAt(u[d]);return f}function s(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;let a=0,o=0,s=0;for(;e[a]===r;)o++,a++;let c=(e.length-a)*i+1>>>0,l=new Uint8Array(c);for(;a<e.length;){let r=e.charCodeAt(a);if(r>255)return;let i=t[r];if(i===255)return;let o=0;for(let e=c-1;(i!==0||o<s)&&e!==-1;e--,o++)i+=n*l[e]>>>0,l[e]=i%256>>>0,i=i/256>>>0;if(i!==0)throw Error(`Non-zero carry`);s=o,a++}let u=c-s;for(;u!==c&&l[u]===0;)u++;let d=new Uint8Array(o+(c-u)),f=o;for(;u!==c;)d[f++]=l[u++];return d}function c(e){let t=s(e);if(t)return t;throw Error(`Non-base`+n+` character`)}return{encode:o,decodeUnsafe:s,decode:c}}var S=Ne(`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`);function Pe(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Fe(e,t,n){return e&t^~e&n}function Ie(e,t,n){return e&t^e&n^t&n}var Le=class extends je{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=v(this.buffer)}update(e){h(this),e=x(e),m(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=v(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){h(this),g(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,_(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;Pe(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=v(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}};const C=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),w=BigInt(2**32-1),T=BigInt(32);function Re(e,t=!1){return t?{h:Number(e&w),l:Number(e>>T&w)}:{h:Number(e>>T&w)|0,l:Number(e&w)|0}}function ze(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=Re(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}const Be=(e,t,n)=>e<<n|t>>>32-n,Ve=(e,t,n)=>t<<n|e>>>32-n,He=(e,t,n)=>t<<n-32|e>>>64-n,Ue=(e,t,n)=>e<<n-32|t>>>64-n,We=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]),E=new Uint32Array(64);var Ge=class extends Le{constructor(e=32){super(64,e,8,!1),this.A=C[0]|0,this.B=C[1]|0,this.C=C[2]|0,this.D=C[3]|0,this.E=C[4]|0,this.F=C[5]|0,this.G=C[6]|0,this.H=C[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)E[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=E[e-15],n=E[e-2],r=y(t,7)^y(t,18)^t>>>3,i=y(n,17)^y(n,19)^n>>>10;E[e]=i+E[e-7]+r+E[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=y(o,6)^y(o,11)^y(o,25),u=l+t+Fe(o,s,c)+We[e]+E[e]|0,d=(y(n,2)^y(n,13)^y(n,22))+Ie(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){_(E)}destroy(){this.set(0,0,0,0,0,0,0,0),_(this.buffer)}};const D=Me(()=>new Ge);function Ke(e,t){return e.exec(t)?.groups}const qe=/^tuple(?<array>(\[(\d*)\])*)$/;function O(e){let t=e.type;if(qe.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=O(i),r<n-1&&(t+=`, `)}let r=Ke(qe,e.type);return t+=`)${r?.array||``}`,O({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function k(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=O(i),r!==n-1&&(t+=`, `)}return t}function Je(e){return e.type===`function`?`function ${e.name}(${k(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${k(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${k(e.inputs)})`:e.type===`error`?`error ${e.name}(${k(e.inputs)})`:e.type===`constructor`?`constructor(${k(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}function A(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}function j(e){return A(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const M=`2.55.2`;let N={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${M}`};var P=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=N.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...N.version?[`Version: ${N.version}`]:[]].join(`
|
|
4
|
+
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=M}walk(e){return F(this,e)}};function F(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?F(e.cause,t):t?null:e}var I=class extends P{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset "${e}" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},L=class extends P{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}};function R(e,{dir:t,size:n=32}={}){return typeof e==`string`?Ye(e,{dir:t,size:n}):Xe(e,{dir:t,size:n})}function Ye(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new L({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Xe(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new L({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var Ze=class extends P{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},Qe=class extends P{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}};function z(e,{size:t}){if(j(e)>t)throw new Qe({givenSize:j(e),maxSize:t})}const $e=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function et(e,t={}){return typeof e==`number`||typeof e==`bigint`?V(e,t):typeof e==`string`?rt(e,t):typeof e==`boolean`?tt(e,t):B(e,t)}function tt(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(z(n,{size:t.size}),R(n,{size:t.size})):n}function B(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=$e[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(z(r,{size:t.size}),R(r,{dir:`right`,size:t.size})):r}function V(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new Ze({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?R(s,{size:r}):s}const nt=new TextEncoder;function rt(e,t={}){return B(nt.encode(e),t)}const it=new TextEncoder;function H(e,t={}){return typeof e==`number`||typeof e==`bigint`?ot(e,t):typeof e==`boolean`?at(e,t):A(e)?G(e,t):K(e,t)}function at(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(z(n,{size:t.size}),R(n,{size:t.size})):n}const U={zero:48,nine:57,A:65,F:70,a:97,f:102};function W(e){if(e>=U.zero&&e<=U.nine)return e-U.zero;if(e>=U.A&&e<=U.F)return e-(U.A-10);if(e>=U.a&&e<=U.f)return e-(U.a-10)}function G(e,t={}){let n=e;t.size&&(z(n,{size:t.size}),n=R(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=W(r.charCodeAt(t++)),i=W(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new P(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=n*16+i}return a}function ot(e,t){return G(V(e,t))}function K(e,t={}){let n=it.encode(e);return typeof t.size==`number`?(z(n,{size:t.size}),R(n,{dir:`right`,size:t.size})):n}const st=BigInt(0),q=BigInt(1),ct=BigInt(2),lt=BigInt(7),ut=BigInt(256),dt=BigInt(113),ft=[],J=[],Y=[];for(let e=0,t=q,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ft.push(2*(5*r+n)),J.push((e+1)*(e+2)/2%64);let i=st;for(let e=0;e<7;e++)t=(t<<q^(t>>lt)*dt)%ut,t&ct&&(i^=q<<(q<<BigInt(e))-q);Y.push(i)}const pt=ze(Y,!0),mt=pt[0],ht=pt[1],gt=(e,t,n)=>n>32?He(e,t,n):Be(e,t,n),_t=(e,t,n)=>n>32?Ue(e,t,n):Ve(e,t,n);function vt(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=gt(a,o,1)^n[r],c=_t(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=J[n],a=gt(t,i,r),o=_t(t,i,r),s=ft[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=mt[r],e[1]^=ht[r]}_(n)}var yt=class e extends je{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,p(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Ce(this.state)}clone(){return this._cloneInto()}keccak(){b(this.state32),vt(this.state32,this.rounds),b(this.state32),this.posOut=0,this.pos=0}update(e){h(this),e=x(e),m(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){h(this,!1),m(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return p(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(g(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,_(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}};const bt=((e,t,n)=>Me(()=>new yt(t,e,n)))(1,136,256/8);function xt(e,t){let n=t||`hex`,r=bt(A(e,{strict:!1})?H(e):e);return n===`bytes`?r:et(r)}const St=e=>xt(H(e));function Ct(e){return St(e)}function wt(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new P(`Unable to normalize signature.`);return i}const Tt=e=>wt(typeof e==`string`?e:Je(e));function Et(e){return Ct(Tt(e))}var Dt=class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}};const X=new Dt(8192);function Ot(e,t){if(X.has(`${e}.${t}`))return X.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=xt(K(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return X.set(`${e}.${t}`,a),a}const kt=/^0x[a-fA-F0-9]{40}$/,Z=new Dt(8192);function At(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Z.has(r))return Z.get(r);let i=kt.test(e)?e.toLowerCase()===e||!n||Ot(e)===e:!1;return Z.set(r,i),i}function jt(e,t,n,{strict:r}={}){return A(e,{strict:!1})?Pt(e,t,n,{strict:r}):Nt(e,t,n,{strict:r})}function Mt(e,t){if(typeof t==`number`&&t>0&&t>j(e)-1)throw new I({offset:t,position:`start`,size:j(e)})}function Q(e,t,n){if(typeof t==`number`&&typeof n==`number`&&j(e)!==n-t)throw new I({offset:n,position:`end`,size:j(e)})}function Nt(e,t,n,{strict:r}={}){Mt(e,t);let i=e.slice(t,n);return r&&Q(i,t,n),i}function Pt(e,t,n,{strict:r}={}){Mt(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&Q(i,t,n),i}const Ft=e=>jt(Et(e),0,4),It=/^0x[0-9a-fA-F]{1,64}$/,Lt=/^[A-Za-z_][A-Za-z0-9_]*$/;function Rt(e){return`0x${e.slice(2).toLowerCase().padStart(64,`0`)}`}function zt(e){return e.indexOf(`:`)}function Bt(e){try{let t=S.decode(e);return t.length===32?S.encode(t):null}catch{return null}}function Vt(e,t){if(t.length===0||new TextEncoder().encode(t).length>512||t.trim()!==t)return null;let n=zt(t),r=n===-1?t:t.slice(0,n),i=n===-1?null:t.slice(n+1);if(i===``)return null;if(e.startsWith(`evm:`)){if(!At(r))return null;let e=r.toLowerCase();if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};if(!/^0x[0-9a-fA-F]{8}$/.test(i))return null;let t=i.toLowerCase();return{kind:`application`,target:e,action:{kind:`evm-selector`,selector:t},canonical:`${e}:${t}`}}if(e.startsWith(`sui:`)){if(!It.test(r))return null;let e=Rt(r);if(i===null)return{kind:`recipient`,address:e,canonical:e};if(i===`*`)return{kind:`application`,target:e,action:{kind:`all`},canonical:`${e}:*`};let t=i.split(`::`);return t.length!==2||!Lt.test(t[0])||t[1]!==`*`&&!Lt.test(t[1])?null:{kind:`application`,target:e,action:{kind:`sui-function`,module:t[0],function:t[1]},canonical:`${e}:${t[0]}::${t[1]}`}}let a=Bt(r);if(!a)return null;if(i===null)return{kind:`recipient`,address:a,canonical:a};if(i===`*`)return{kind:`application`,target:a,action:{kind:`all`},canonical:`${a}:*`};let o=i.match(/^disc:(0x[0-9a-fA-F]{2,64})$/)?.[1];if(o&&o.length%2==0){let e=o.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-discriminator`,discriminator:e},canonical:`${a}:disc:${e}`}}let s=i.match(/^data-sha256:(0x[0-9a-fA-F]{64})$/)?.[1];if(s){let e=s.toLowerCase();return{kind:`application`,target:a,action:{kind:`solana-data-hash`,hash:e},canonical:`${a}:data-sha256:${e}`}}return null}function $(e,t){let n=Vt(e,t);if(!n)throw Error(`Invalid permission-token scope: ${t}`);return n.canonical}function Ht(e){return`0x${ke(e)}`}function Ut(e,t){let n=Vt(e,t);if(!n||n.kind!==`recipient`)throw Error(`Invalid ${e} permission-token recipient: ${t}`);return n.canonical}function Wt(e){return $(`evm:1`,`${e}:*`)}function Gt(e,t){return $(`evm:1`,`${e}:${/^0x[0-9a-fA-F]{8}$/.test(t)?t:Ft(t)}`)}function Kt(e){return $(`sui:mainnet`,`${e}:*`)}function qt(e,t,n=`*`){return $(`sui:mainnet`,`${e}:${t}::${n}`)}function Jt(e){return $(`solana:mainnet`,`${e}:*`)}function Yt(e,t){return $(`solana:mainnet`,`${e}:disc:${typeof t==`string`?t:Ht(t)}`)}function Xt(e,t){return $(`solana:mainnet`,`${e}:data-sha256:${Ht(D(t))}`)}function Zt(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1_$2`).replace(/[-\s]+/g,`_`).toLowerCase()}function Qt(e,t){return Yt(e,t.discriminator?Uint8Array.from(t.discriminator):D(Ae(`global:${Zt(t.name)}`)).slice(0,8))}export{me as EthereumProvider,xe as EthereumProviderExtension,f as SILK_METHOD,f as WAAP_METHOD,he as SilkWalletConnect,he as WaaPWalletConnect,l as UIMessageManager,o as UI_EVENT_NAMES,ne as WAAP_EVENTS,r as WaaP,ee as WaaPError,ue as WaaPSolanaProvider,de as WaaPStellarProvider,ie as WaaPSuiWallet,i as WalletMessageManager,c as getWaaPIframeDiagnostics,a as handleWalletRequestAndResponse,le as initWaaP,oe as initWaaPMulti,ce as initWaaPSolana,ae as initWaaPSquid,fe as initWaaPStellar,re as initWaaPSui,se as initWaaPTap,t as normalizeWaaPError,Wt as permissionTokenEvmContract,Gt as permissionTokenEvmFunction,Ut as permissionTokenRecipient,Qt as permissionTokenSolanaAnchorInstruction,Yt as permissionTokenSolanaDiscriminator,Xt as permissionTokenSolanaInstruction,Jt as permissionTokenSolanaProgram,qt as permissionTokenSuiFunction,Kt as permissionTokenSuiPackage,s as preloadWaaPOnIdle,_e as registerWaaPSolanaWallet,ge as registerWaaPSuiWallet,d as resolveWalletOrigin,n as rpcMethodRequiresUI,u as subscribeWaaPIframeLifecycle,ye as useWaapAuth,ve as useWaapTransaction,te as validateWalletOrigin};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./UIMessageManager-D-OTya1E.js");let t=require("events");const n={PUBLIC:`Public Global Stellar Network ; September 2015`,TESTNET:`Test SDF Network ; September 2015`},r=(e,t,n)=>({error:{code:e,message:t,...n?{ext:n}:{}}});function i(e){let t=e instanceof Error?e.message:String(e),n=t.toLowerCase();return n.includes(`reject`)||n.includes(`cancel`)||n.includes(`denied`)||n.includes(`closed`)?r(-4,`The user rejected this request.`,[t]):n.includes(`horizon`)||n.includes(`network`)?r(-2,`An error occurred with the Stellar network. Please try again.`,[t]):r(-1,`The wallet encountered an internal error. Please try again or contact support if the problem persists.`,[t])}var a=class{constructor(n,r={},i,a=r){this.name=`WaaP`,this.version=`1.0.0`,this.address=null,this.accountMode=`tap`,this.loginMethod=null,this.internalEventEmitter=new t.EventEmitter,this.initializerPromise=null,this.initializedIframeWindow=null,this.network=r.network??`PUBLIC`,this.walletMessageManager=new e.d(n,e.v(r)),this.ensureIframe=i,this.iframeMounted=!i,this.initializerOptions=a,this.uiMessageManager=new e.t,this.walletMessageManager.addListener({handleResponse:e=>{this.internalEventEmitter.emit(e.id,e)},handleRequest:t=>{t.method===e.w.show_modal?this.uiMessageManager.emit(`show_modal`):t.method===e.w.hide_modal&&this.uiMessageManager.emit(`hide_modal`)},onAccountChanged:async()=>{this.address=null}})}destroy(){this.walletMessageManager.dispose(),this.internalEventEmitter.removeAllListeners(),this.uiMessageManager.removeAllListeners(),this.address=null}get ui(){return this.uiMessageManager}ensureIframeMounted(){if(this.iframeMounted||!this.ensureIframe)return;let e=this.ensureIframe();if(!e)throw Error(`Failed to create WaaP iframe`);this.iframeMounted=!0,this.walletMessageManager.setIframeWindow(e)}async preload(){if(!this.ensureIframe)return;this.ensureIframeMounted();let t=this.walletMessageManager.getIframeWindow();if(!t)throw Error(`WaaP iframe is not mounted`);if(this.initializedIframeWindow===t&&this.initializerPromise)return this.initializerPromise;this.initializedIframeWindow=t,this.initializerPromise=e.m(t,()=>this.selectAccountMode(this.accountMode,this.initializerOptions));try{await this.initializerPromise}catch(e){throw this.initializerPromise=null,this.initializedIframeWindow=null,e}}async ensureInitialized(){await this.preload()}setAccountMode(e){this.accountMode=e,this.initializerPromise=null,this.initializedIframeWindow=null}async selectAccountMode(t,n={}){await this.walletMessageManager.pingIframe(),await this.postRequestAndWait({method:e.w.set_signing_mode,params:[e.f(t,n)],interactionRequired:!1})}setLoginMethod(e){this.loginMethod=e,e===null&&(this.address=null)}getLoginMethod(){return this.loginMethod}async login(){await this.ensureInitialized();let t=(await this.postRequestAndWait({method:e.w.login,params:[],interactionRequired:!0})).data;return t!==`waap`&&t!==`human`&&t!==`injected`&&t!==`walletconnect`?(this.loginMethod=null,null):(this.loginMethod=t,t)}async logout(){await this.ensureInitialized(),await this.postRequestAndWait({method:e.w.logout,params:[],interactionRequired:!1}),this.loginMethod=null,this.address=null}async disconnect(){await this.ensureInitialized(),await this.postRequestAndWait({method:e.w.stellar_disconnect,params:[],interactionRequired:!1}),this.address=null}async getAccountStatus(){await this.ensureInitialized();let t=await this.postRequestAndWait({method:e.w.waap_getAccountStatus,params:[],interactionRequired:!1});if(t.error)throw Error(t.error.message||`Failed to read WaaP status`);return t.data}async getNetwork(){return{network:this.network,networkPassphrase:n[this.network]}}async getAddress(){try{if(this.address)return{address:this.address};await this.ensureInitialized();let t=(await this.postRequestAndWait({method:e.w.stellar_connect,params:[{}],interactionRequired:!this.loginMethod})).data?.address;return t?(this.address=t,{address:t}):r(-1,`The wallet has no Stellar address for this account.`)}catch(e){return i(e)}}async signTransaction(t,n){try{if(typeof t!=`string`||t.length===0)return r(-3,`Request is invalid. Please check the details.`,[`Missing transaction XDR`]);let i=this.networkMismatch(n?.networkPassphrase);if(i)return i;if(n?.submitUrl)return r(-3,`This wallet submits through its own Stellar network connection and cannot submit to a supplied URL.`,[`submitUrl is not supported`]);let a=await this.requireAddress(n?.address);if(`error`in a)return a;let o=(await this.postRequestAndWait({method:n?.submit?e.w.stellar_signAndSendTransaction:e.w.stellar_signTransaction,params:[{xdr:t,account:a.address,network:this.network}],interactionRequired:!0})).data;return o?.signedTxXdr?{signedTxXdr:o.signedTxXdr,signerAddress:a.address}:r(-1,`The wallet did not return a signed transaction.`)}catch(e){return i(e)}}async signMessage(t,n){try{if(typeof t!=`string`||t.length===0)return r(-3,`Request is invalid. Please check the details.`,[`Missing message`]);let i=this.networkMismatch(n?.networkPassphrase);if(i)return i;let a=await this.requireAddress(n?.address);if(`error`in a)return a;let o=(await this.postRequestAndWait({method:e.w.stellar_signMessage,params:[{message:t,account:a.address,network:this.network}],interactionRequired:!0})).data;return o?.signedMessage?{signedMessage:o.signedMessage,signerAddress:a.address}:r(-1,`The wallet did not return a signature.`)}catch(e){return i(e)}}async signAuthEntry(){return r(-1,`This wallet does not support Soroban authorization entries yet.`)}networkMismatch(e){if(!(!e||e===n[this.network]))return r(-3,`This wallet is connected to Stellar ${this.network}. Reconnect it to the network this transaction was built for.`,[`expected ${n[this.network]}`])}async requireAddress(e){let t=await this.getAddress();if(t.error)return{error:t.error};let n=t.address;return e&&e!==n?r(-3,`This wallet is not signing for the requested address.`,[`requested ${e}`]):{address:n}}async postRequestAndWait(t){let n;try{t.interactionRequired&&e.l({layout:t.method===e.w.login?`auth`:`signing`}),n=await this.walletMessageManager.postSilkRequest({method:t.method,params:t.params,interactionRequired:t.interactionRequired});let r=await e.o({eventEmitter:this.internalEventEmitter,id:n,method:t.method,interactionRequired:t.interactionRequired,signal:t.signal,timeoutMs:t.timeoutMs,onCancel:()=>{this.walletMessageManager.cancelSilkRequest(n,t.method),t.interactionRequired&&e.c()}});if(r.error)throw Error(r.error.message);return r}catch(r){throw t.interactionRequired&&n===void 0&&e.c(),e.S(r,{chain:`stellar`,method:String(t.method),requestId:n})}}};function o(t={}){let n=()=>(e.g(t),e.h(`tap`).contentWindow),r=t.deferIframe===!1,i=t.deferIframe===void 0,o=r?n():null;if(r&&!o)throw Error(`Failed to create WaaP iframe`);let s=new a(o,t,n,{...t,chains:[`stellar`]});r&&s.preload().catch(()=>void 0);let c=s.destroy.bind(s);if(s.destroy=()=>{c(),e._()},i){let t=e.r(s),n=s.destroy.bind(s);s.destroy=()=>{t(),n()}}return s.ui.on(`show_modal`,()=>{e.l()}),s.ui.on(`hide_modal`,()=>{e.c()}),s}Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return o}});
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { d as WaaPAccountMode, f as WaaPAccountStatus, r as LoginResponse } from "./types-Cc6tc4ut.js";
|
|
2
|
+
import { a as StellarSignBlobOptions, c as WaaPInitializerOptions, i as StellarNetwork, o as StellarSignTransactionOptions, r as Sep43Result, s as WaaPStellarProviderInterface, t as InitWaaPStellarOptions } from "./types-DqdVfkaW.js";
|
|
3
|
+
import { t as UIMessageManager } from "./UIMessageManager-4xqSTTBS.js";
|
|
4
|
+
//#region src/lib/stellar/StellarProvider.d.ts
|
|
5
|
+
declare class WaaPStellarProvider implements WaaPStellarProviderInterface {
|
|
6
|
+
readonly name = "WaaP";
|
|
7
|
+
readonly version = "1.0.0";
|
|
8
|
+
private readonly network;
|
|
9
|
+
private address;
|
|
10
|
+
private accountMode;
|
|
11
|
+
private loginMethod;
|
|
12
|
+
private walletMessageManager;
|
|
13
|
+
private uiMessageManager;
|
|
14
|
+
private internalEventEmitter;
|
|
15
|
+
private ensureIframe?;
|
|
16
|
+
private iframeMounted;
|
|
17
|
+
private initializerOptions;
|
|
18
|
+
private initializerPromise;
|
|
19
|
+
private initializedIframeWindow;
|
|
20
|
+
constructor(iframeWindow: Window | null, options?: InitWaaPStellarOptions, ensureIframe?: () => Window | null, initializerOptions?: WaaPInitializerOptions);
|
|
21
|
+
destroy(): void;
|
|
22
|
+
get ui(): UIMessageManager;
|
|
23
|
+
private ensureIframeMounted;
|
|
24
|
+
preload(): Promise<void>;
|
|
25
|
+
private ensureInitialized;
|
|
26
|
+
setAccountMode(mode: WaaPAccountMode): void;
|
|
27
|
+
selectAccountMode(mode: WaaPAccountMode, options?: WaaPInitializerOptions): Promise<void>;
|
|
28
|
+
setLoginMethod(loginMethod: LoginResponse): void;
|
|
29
|
+
getLoginMethod(): LoginResponse;
|
|
30
|
+
login(): Promise<LoginResponse>;
|
|
31
|
+
logout(): Promise<void>;
|
|
32
|
+
disconnect(): Promise<void>;
|
|
33
|
+
getAccountStatus(): Promise<WaaPAccountStatus>;
|
|
34
|
+
/**
|
|
35
|
+
* `getNetwork` is answered locally.
|
|
36
|
+
*
|
|
37
|
+
* The facade is initialized for one network and signs for that one; a round
|
|
38
|
+
* trip could only ever disagree with it, and a dapp that believed the round
|
|
39
|
+
* trip would build a transaction the wallet then refuses.
|
|
40
|
+
*/
|
|
41
|
+
getNetwork(): Promise<Sep43Result<{
|
|
42
|
+
network: StellarNetwork;
|
|
43
|
+
networkPassphrase: string;
|
|
44
|
+
}>>;
|
|
45
|
+
getAddress(): Promise<Sep43Result<{
|
|
46
|
+
address: string;
|
|
47
|
+
}>>;
|
|
48
|
+
signTransaction(xdr: string, opts?: StellarSignTransactionOptions): Promise<Sep43Result<{
|
|
49
|
+
signedTxXdr: string;
|
|
50
|
+
signerAddress: string;
|
|
51
|
+
}>>;
|
|
52
|
+
signMessage(message: string, opts?: StellarSignBlobOptions): Promise<Sep43Result<{
|
|
53
|
+
signedMessage: string;
|
|
54
|
+
signerAddress: string;
|
|
55
|
+
}>>;
|
|
56
|
+
/**
|
|
57
|
+
* Not supported, and refused rather than approximated.
|
|
58
|
+
*
|
|
59
|
+
* A Soroban authorization entry is a different preimage with different
|
|
60
|
+
* consequences, and the wallet has nothing that can decode or display one.
|
|
61
|
+
* Signing a blob it cannot show the user is exactly the blind signing the
|
|
62
|
+
* rest of this integration is built to avoid. SEP-43 defines no
|
|
63
|
+
* "unsupported" code, so this is -1 with a message that says why.
|
|
64
|
+
*/
|
|
65
|
+
signAuthEntry(): Promise<Sep43Result<{
|
|
66
|
+
signedAuthEntry: string;
|
|
67
|
+
signerAddress: string;
|
|
68
|
+
}>>;
|
|
69
|
+
/** A dapp may assert which network it built for; it may never select one. */
|
|
70
|
+
private networkMismatch;
|
|
71
|
+
private requireAddress;
|
|
72
|
+
private postRequestAndWait;
|
|
73
|
+
}
|
|
74
|
+
//#endregion
|
|
75
|
+
//#region src/lib/stellar/init.d.ts
|
|
76
|
+
/**
|
|
77
|
+
* Initialize a standalone SEP-43 Stellar wallet.
|
|
78
|
+
*
|
|
79
|
+
* Always TAP: Stellar signs with the `t2` ed25519 key, and Squid's shared
|
|
80
|
+
* dWallet has no funded Stellar account to send from.
|
|
81
|
+
*/
|
|
82
|
+
declare function initWaaPStellar(options?: InitWaaPStellarOptions): WaaPStellarProviderInterface;
|
|
83
|
+
//#endregion
|
|
84
|
+
export { WaaPStellarProvider as n, initWaaPStellar as t };
|