@naculus/connect-appkit-vue 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { StencilVueComponent } from '@stencil/vue-output-target/runtime';
2
2
  import { JSX } from '@naculus/connect-appkit-wc';
3
3
  import { ComputedRef, MaybeRefOrGetter, MaybeRef, ShallowRef, shallowRef, ref } from 'vue';
4
- import { NotificationSettingsStorage, WalletChain, SimulationCallClient, SimulationTransaction, SiwxResultLike, PolicySignatureVerifier, PolicyExecutionPreview, PolicyExecutionAdapter, DelegationTypedData, DelegationPolicyPreview, PolicyExecutionSubmission, SmartAccountType, RouteQuote, RouteQuoteInput, GetRouteQuotes, CostComparison, CompareCostsInput, CompareCosts, ExecutableQuote, ExecuteRouteOptions, ExecuteRouteResult, ExecuteRouteError, ExecuteRoute, DestinationValidation, PaymentFetch, PaymentRecord, ChainInfo, ChainCapabilities, AtomicSupport, SolanaRoles, SolanaRolesAbsence, SolanaIdentity, SolanaSigner, SolanaPayer, SolanaRolesSource } from '@naculus/connect-appkit-core';
4
+ import { NotificationSettingsStorage, WalletChain, SimulationCallClient, SimulationTransaction, SiwxResultLike, PolicySignatureVerifier, PolicyExecutionPreview, PolicyExecutionAdapter, DelegationTypedData, DelegationPolicyPreview, PolicyExecutionSubmission, SmartAccountType, RouteQuote, RouteQuoteInput, GetRouteQuotes, CostComparison, CompareCostsInput, CompareCosts, ExecutableQuote, ExecuteRouteOptions, ExecuteRouteResult, ExecuteRouteError, ExecuteRoute, DestinationValidation, PaymentFetch, PaymentRecord, SolanaSessionKeyFlowDeps, ChainInfo, ChainCapabilities, AtomicSupport, SolanaRoles, SolanaRolesAbsence, SolanaIdentity, SolanaSigner, SolanaPayer, SolanaRolesSource } from '@naculus/connect-appkit-core';
5
5
  export { AtomicSupport, ChainCapabilities, SolanaIdentity, SolanaPayer, SolanaRoles, SolanaRolesAbsence, SolanaRolesSource, SolanaSigner, SolanaWalletFeatures } from '@naculus/connect-appkit-core';
6
- import { InAppChannel, NotificationItem, NotificationSettings, SimulationResult, ERC20_MIN_ABI, TokenConfig, ActiveSessionBundle, ChainSession, SessionManager, WalletError, SolanaConfirmationStatus, BatchCall, AtomicityRequirement, ExecutionPlan, CallsStatus, ExecutionStrategy, SessionKeyManagerConfig, SessionKeyManager, SessionKeyInfo, SessionKeyScope, SessionKeyTransaction, Address, SmartAccountManager, SmartAccountInfo, SmartAccountConfig, Hex, Call, SendUserOpOptions, UserOperationResponse, UserOperationReceipt, ScopeCheckResult, TokenListSource, TokenListManager, TokenListEntry, TokenSearchResult, UniversalConnector, UniversalWalletSession, SentDelegation, AddressResult, NameResolverConfig, NameResult, PassphraseGate } from '@naculus/connect-core';
6
+ import { InAppChannel, NotificationItem, NotificationSettings, SimulationResult, ERC20_MIN_ABI, TokenConfig, ActiveSessionBundle, ChainSession, SessionManager, WalletError, SolanaConfirmationStatus, BatchCall, AtomicityRequirement, ExecutionPlan, CallsStatus, ExecutionStrategy, SessionKeyManagerConfig, SessionKeyManager, SessionKeyInfo, SessionKeyScope, SessionKeyTransaction, Address, SmartAccountManager, SmartAccountInfo, SmartAccountConfig, Hex, Call, SendUserOpOptions, UserOperationResponse, UserOperationReceipt, ScopeCheckResult, TokenListSource, TokenListManager, TokenListEntry, TokenSearchResult, UniversalConnector, UniversalWalletSession, SentDelegation, SolanaSessionKeyInfo, SolanaSessionKeyScope, AddressResult, NameResolverConfig, NameResult, PassphraseGate } from '@naculus/connect-core';
7
7
 
8
8
  declare const AppkitAccordion: StencilVueComponent<JSX.AppkitAccordion>;
9
9
  declare const AppkitAccountButton: StencilVueComponent<JSX.AppkitAccountButton>;
@@ -984,6 +984,30 @@ interface UsePaymentFetchReturn {
984
984
  */
985
985
  declare function usePaymentFetch(pay: MaybeRef<PaymentFetch>): UsePaymentFetchReturn;
986
986
 
987
+ interface UseSolanaSessionKeyReturn {
988
+ /** The connected owner's keys, newest first. */
989
+ keys: ShallowRef<SolanaSessionKeyInfo[]>;
990
+ /** Create a key; the owner's wallet approves it once. */
991
+ create: (scope: SolanaSessionKeyScope) => Promise<{
992
+ key: SolanaSessionKeyInfo;
993
+ signature: string;
994
+ }>;
995
+ /** Stop a key; the owner's wallet signs the on-chain Revoke. */
996
+ revoke: (id: string) => Promise<{
997
+ signature: string;
998
+ }>;
999
+ refresh: () => Promise<void>;
1000
+ isPending: ShallowRef<boolean>;
1001
+ error: ShallowRef<Error | null>;
1002
+ }
1003
+ /**
1004
+ * Solana session keys that pay x402 / MPP without a prompt (pass
1005
+ * `{ sessionKey: { manager, id }, rpc }` to the paying fetch). The app owns
1006
+ * the `SolanaSessionKeyManager` and the RPC; `owner` is the connected
1007
+ * wallet's Solana signer role.
1008
+ */
1009
+ declare function useSolanaSessionKey(deps: MaybeRef<SolanaSessionKeyFlowDeps | null>): UseSolanaSessionKeyReturn;
1010
+
987
1011
  interface NameLookupReturn<T> {
988
1012
  data: ShallowRef<T | null>;
989
1013
  isLoading: ComputedRef<boolean>;
@@ -1233,4 +1257,4 @@ declare function useSolanaRoles(connector: MaybeRefOrGetter<SolanaRolesSource |
1233
1257
  walletType?: string;
1234
1258
  } | null | undefined>): UseSolanaRolesReturn;
1235
1259
 
1236
- export { type AccountEntry, AppkitAccordion, AppkitAccountButton, AppkitAlertDialog, AppkitAvatar, AppkitBadge, AppkitButton, AppkitCard, AppkitCardContent, AppkitCardDescription, AppkitCardFooter, AppkitCardHeader, AppkitCardTitle, AppkitCheckbox, AppkitCollapsible, AppkitConnectButton, AppkitDialog, AppkitDropdownMenu, AppkitInput, AppkitPopover, AppkitProgress, AppkitScrollArea, AppkitSelect, AppkitSeparator, AppkitSkeleton, AppkitSwitch, AppkitTabs, AppkitToggleGroup, AppkitTooltip, type CapabilityClient, type DelegationCodeReader, type DelegationNonceReader, type DeployTransactionSender, type ERC20Reader, type ERC20Sender, type ERC20Transaction, type EmbeddedWalletAccountView, type EmbeddedWalletView, type EvmTransaction, type ExecuteCallsAction, type ExecutionPreview, type ExecutionRoute, type GetCallsStatusAction, type GetSolanaTransactionStatusAction, type NativeBalanceReader, type PaymasterService, type PreviewExecutionAction, type SendCallsAction, type SendCallsOptions, type SendCallsStatus, type SendSolanaTransactionAction, type SendTransactionAction, type SendTransactionStatus, type SessionKeyComposableOptions, type ShowCallsStatusAction, type SignMessageAction, type SignSolanaTransactionAction, type SiwxResult, type SiwxSessionLike, type SiwxSignInAction, type SiwxSignInOptions, type SolanaTransaction, type TokenBalanceReader, type TokenBalanceResult, type TokenInfo, type TxMonitorLike, type TxStatus, type TxStatusEntry, type UseAccountReturn, type UseAccountsReturn, type UseBalanceOptions, type UseBalanceReturn, type UseCapabilitiesReturn, type UseChainReturn, type UseCompareCostsReturn, type UseConnectReturn, type UseCreateSessionKeyReturn, type UseDelegateOptions, type UseDelegateReturn, type UseDelegationPolicyOptions, type UseDelegationPolicyReturn, type UseDelegationReturn, type UseDisconnectReturn, type UseERC20ApproveOptions, type UseERC20ApproveReturn, type UseERC20TransferOptions, type UseERC20TransferReturn, type UseERC20TransferSimulationOptions, type UseERC20TransferSimulationReturn, type UseEmbeddedWalletOptions, type UseEmbeddedWalletReturn, type UseExecuteCallsOptions, type UseExecuteCallsReturn, type UseExecuteRouteReturn, type UseLastTxReturn, type UseLookupAddressReturn, type UseNotificationOptions, type UseNotificationReturn, type UsePassphraseGateReturn, type UsePaymentFetchReturn, type UseResolveNameReturn, type UseRevokeSessionReturn, type UseRouteQuoteOptions, type UseRouteQuoteReturn, type UseSIWxLoginReturn, type UseSIWxSessionOptions, type UseSIWxSessionReturn, type UseSendCallsOptions, type UseSendCallsReturn, type UseSendTransactionReturn, type UseSendUserOperationOptions, type UseSendUserOperationReturn, type UseSendWithSessionReturn, type UseSessionKeysReturn, type UseSessionReturn, type UseSignInWithEthereumOptions, type UseSignInWithEthereumReturn, type UseSignInWithXReturn, type UseSignMessageReturn, type UseSimulateTransferOptions, type UseSimulateTransferReturn, type UseSiwxAuthSessionOptions, type UseSiwxAuthSessionReturn, type UseSmartAccountOptions, type UseSmartAccountReturn, type UseSolanaAccountReturn, type UseSolanaBalanceReturn as UseSolanaBalanceVueReturn, type UseSolanaRolesReturn, type UseSolanaTransactionOptions, type UseSolanaTransactionReturn, type UseSwitchChainReturn, type UseTokenBalanceOptions, type UseTokenBalanceReturn, type UseTokenListOptions, type UseTokenListReturn, type UseTokenSearchOptions, type UseTokenSearchReturn, type UseTransactionSimulationOptions, type UseTransactionSimulationReturn, type UseTxHistoryReturn, type UseTxMonitorReturn, type UseUserOpStatusOptions, type UseUserOpStatusReturn, type UseValidateDestinationReturn, type UserOpSigner, type UserOpStatus, useAccount, useAccounts, useBalance, useCapabilities, useChain, useCompareCosts, useConnect, useCreateSessionKey, useDelegate, useDelegation, useDelegationPolicy, useDisconnect, useERC20Approve, useERC20Transfer, useERC20TransferSimulation, useEmbeddedWallet, useExecuteCalls, useExecuteRoute, useLastTx, useLookupAddress, useNotification, usePassphraseGate, usePaymentFetch, useResolveName, useRevokeSession, useRouteQuote, useSIWxLogin, useSIWxSession, useSendCalls, useSendTransaction, useSendUserOperation, useSendWithSession, useSession, useSessionKeys, useSignInWithEthereum, useSignInWithX, useSignMessage, useSimulateTransfer, useSiwxAuthSession, useSmartAccount, useSolanaAccount, useSolanaBalance, useSolanaRoles, useSolanaTransaction, useSwitchChain, useTokenBalance, useTokenList, useTokenSearch, useTransactionSimulation, useTxHistory, useTxMonitor, useUserOpStatus, useValidateDestination };
1260
+ export { type AccountEntry, AppkitAccordion, AppkitAccountButton, AppkitAlertDialog, AppkitAvatar, AppkitBadge, AppkitButton, AppkitCard, AppkitCardContent, AppkitCardDescription, AppkitCardFooter, AppkitCardHeader, AppkitCardTitle, AppkitCheckbox, AppkitCollapsible, AppkitConnectButton, AppkitDialog, AppkitDropdownMenu, AppkitInput, AppkitPopover, AppkitProgress, AppkitScrollArea, AppkitSelect, AppkitSeparator, AppkitSkeleton, AppkitSwitch, AppkitTabs, AppkitToggleGroup, AppkitTooltip, type CapabilityClient, type DelegationCodeReader, type DelegationNonceReader, type DeployTransactionSender, type ERC20Reader, type ERC20Sender, type ERC20Transaction, type EmbeddedWalletAccountView, type EmbeddedWalletView, type EvmTransaction, type ExecuteCallsAction, type ExecutionPreview, type ExecutionRoute, type GetCallsStatusAction, type GetSolanaTransactionStatusAction, type NativeBalanceReader, type PaymasterService, type PreviewExecutionAction, type SendCallsAction, type SendCallsOptions, type SendCallsStatus, type SendSolanaTransactionAction, type SendTransactionAction, type SendTransactionStatus, type SessionKeyComposableOptions, type ShowCallsStatusAction, type SignMessageAction, type SignSolanaTransactionAction, type SiwxResult, type SiwxSessionLike, type SiwxSignInAction, type SiwxSignInOptions, type SolanaTransaction, type TokenBalanceReader, type TokenBalanceResult, type TokenInfo, type TxMonitorLike, type TxStatus, type TxStatusEntry, type UseAccountReturn, type UseAccountsReturn, type UseBalanceOptions, type UseBalanceReturn, type UseCapabilitiesReturn, type UseChainReturn, type UseCompareCostsReturn, type UseConnectReturn, type UseCreateSessionKeyReturn, type UseDelegateOptions, type UseDelegateReturn, type UseDelegationPolicyOptions, type UseDelegationPolicyReturn, type UseDelegationReturn, type UseDisconnectReturn, type UseERC20ApproveOptions, type UseERC20ApproveReturn, type UseERC20TransferOptions, type UseERC20TransferReturn, type UseERC20TransferSimulationOptions, type UseERC20TransferSimulationReturn, type UseEmbeddedWalletOptions, type UseEmbeddedWalletReturn, type UseExecuteCallsOptions, type UseExecuteCallsReturn, type UseExecuteRouteReturn, type UseLastTxReturn, type UseLookupAddressReturn, type UseNotificationOptions, type UseNotificationReturn, type UsePassphraseGateReturn, type UsePaymentFetchReturn, type UseResolveNameReturn, type UseRevokeSessionReturn, type UseRouteQuoteOptions, type UseRouteQuoteReturn, type UseSIWxLoginReturn, type UseSIWxSessionOptions, type UseSIWxSessionReturn, type UseSendCallsOptions, type UseSendCallsReturn, type UseSendTransactionReturn, type UseSendUserOperationOptions, type UseSendUserOperationReturn, type UseSendWithSessionReturn, type UseSessionKeysReturn, type UseSessionReturn, type UseSignInWithEthereumOptions, type UseSignInWithEthereumReturn, type UseSignInWithXReturn, type UseSignMessageReturn, type UseSimulateTransferOptions, type UseSimulateTransferReturn, type UseSiwxAuthSessionOptions, type UseSiwxAuthSessionReturn, type UseSmartAccountOptions, type UseSmartAccountReturn, type UseSolanaAccountReturn, type UseSolanaBalanceReturn as UseSolanaBalanceVueReturn, type UseSolanaRolesReturn, type UseSolanaSessionKeyReturn, type UseSolanaTransactionOptions, type UseSolanaTransactionReturn, type UseSwitchChainReturn, type UseTokenBalanceOptions, type UseTokenBalanceReturn, type UseTokenListOptions, type UseTokenListReturn, type UseTokenSearchOptions, type UseTokenSearchReturn, type UseTransactionSimulationOptions, type UseTransactionSimulationReturn, type UseTxHistoryReturn, type UseTxMonitorReturn, type UseUserOpStatusOptions, type UseUserOpStatusReturn, type UseValidateDestinationReturn, type UserOpSigner, type UserOpStatus, useAccount, useAccounts, useBalance, useCapabilities, useChain, useCompareCosts, useConnect, useCreateSessionKey, useDelegate, useDelegation, useDelegationPolicy, useDisconnect, useERC20Approve, useERC20Transfer, useERC20TransferSimulation, useEmbeddedWallet, useExecuteCalls, useExecuteRoute, useLastTx, useLookupAddress, useNotification, usePassphraseGate, usePaymentFetch, useResolveName, useRevokeSession, useRouteQuote, useSIWxLogin, useSIWxSession, useSendCalls, useSendTransaction, useSendUserOperation, useSendWithSession, useSession, useSessionKeys, useSignInWithEthereum, useSignInWithX, useSignMessage, useSimulateTransfer, useSiwxAuthSession, useSmartAccount, useSolanaAccount, useSolanaBalance, useSolanaRoles, useSolanaSessionKey, useSolanaTransaction, useSwitchChain, useTokenBalance, useTokenList, useTokenSearch, useTransactionSimulation, useTxHistory, useTxMonitor, useUserOpStatus, useValidateDestination };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { StencilVueComponent } from '@stencil/vue-output-target/runtime';
2
2
  import { JSX } from '@naculus/connect-appkit-wc';
3
3
  import { ComputedRef, MaybeRefOrGetter, MaybeRef, ShallowRef, shallowRef, ref } from 'vue';
4
- import { NotificationSettingsStorage, WalletChain, SimulationCallClient, SimulationTransaction, SiwxResultLike, PolicySignatureVerifier, PolicyExecutionPreview, PolicyExecutionAdapter, DelegationTypedData, DelegationPolicyPreview, PolicyExecutionSubmission, SmartAccountType, RouteQuote, RouteQuoteInput, GetRouteQuotes, CostComparison, CompareCostsInput, CompareCosts, ExecutableQuote, ExecuteRouteOptions, ExecuteRouteResult, ExecuteRouteError, ExecuteRoute, DestinationValidation, PaymentFetch, PaymentRecord, ChainInfo, ChainCapabilities, AtomicSupport, SolanaRoles, SolanaRolesAbsence, SolanaIdentity, SolanaSigner, SolanaPayer, SolanaRolesSource } from '@naculus/connect-appkit-core';
4
+ import { NotificationSettingsStorage, WalletChain, SimulationCallClient, SimulationTransaction, SiwxResultLike, PolicySignatureVerifier, PolicyExecutionPreview, PolicyExecutionAdapter, DelegationTypedData, DelegationPolicyPreview, PolicyExecutionSubmission, SmartAccountType, RouteQuote, RouteQuoteInput, GetRouteQuotes, CostComparison, CompareCostsInput, CompareCosts, ExecutableQuote, ExecuteRouteOptions, ExecuteRouteResult, ExecuteRouteError, ExecuteRoute, DestinationValidation, PaymentFetch, PaymentRecord, SolanaSessionKeyFlowDeps, ChainInfo, ChainCapabilities, AtomicSupport, SolanaRoles, SolanaRolesAbsence, SolanaIdentity, SolanaSigner, SolanaPayer, SolanaRolesSource } from '@naculus/connect-appkit-core';
5
5
  export { AtomicSupport, ChainCapabilities, SolanaIdentity, SolanaPayer, SolanaRoles, SolanaRolesAbsence, SolanaRolesSource, SolanaSigner, SolanaWalletFeatures } from '@naculus/connect-appkit-core';
6
- import { InAppChannel, NotificationItem, NotificationSettings, SimulationResult, ERC20_MIN_ABI, TokenConfig, ActiveSessionBundle, ChainSession, SessionManager, WalletError, SolanaConfirmationStatus, BatchCall, AtomicityRequirement, ExecutionPlan, CallsStatus, ExecutionStrategy, SessionKeyManagerConfig, SessionKeyManager, SessionKeyInfo, SessionKeyScope, SessionKeyTransaction, Address, SmartAccountManager, SmartAccountInfo, SmartAccountConfig, Hex, Call, SendUserOpOptions, UserOperationResponse, UserOperationReceipt, ScopeCheckResult, TokenListSource, TokenListManager, TokenListEntry, TokenSearchResult, UniversalConnector, UniversalWalletSession, SentDelegation, AddressResult, NameResolverConfig, NameResult, PassphraseGate } from '@naculus/connect-core';
6
+ import { InAppChannel, NotificationItem, NotificationSettings, SimulationResult, ERC20_MIN_ABI, TokenConfig, ActiveSessionBundle, ChainSession, SessionManager, WalletError, SolanaConfirmationStatus, BatchCall, AtomicityRequirement, ExecutionPlan, CallsStatus, ExecutionStrategy, SessionKeyManagerConfig, SessionKeyManager, SessionKeyInfo, SessionKeyScope, SessionKeyTransaction, Address, SmartAccountManager, SmartAccountInfo, SmartAccountConfig, Hex, Call, SendUserOpOptions, UserOperationResponse, UserOperationReceipt, ScopeCheckResult, TokenListSource, TokenListManager, TokenListEntry, TokenSearchResult, UniversalConnector, UniversalWalletSession, SentDelegation, SolanaSessionKeyInfo, SolanaSessionKeyScope, AddressResult, NameResolverConfig, NameResult, PassphraseGate } from '@naculus/connect-core';
7
7
 
8
8
  declare const AppkitAccordion: StencilVueComponent<JSX.AppkitAccordion>;
9
9
  declare const AppkitAccountButton: StencilVueComponent<JSX.AppkitAccountButton>;
@@ -984,6 +984,30 @@ interface UsePaymentFetchReturn {
984
984
  */
985
985
  declare function usePaymentFetch(pay: MaybeRef<PaymentFetch>): UsePaymentFetchReturn;
986
986
 
987
+ interface UseSolanaSessionKeyReturn {
988
+ /** The connected owner's keys, newest first. */
989
+ keys: ShallowRef<SolanaSessionKeyInfo[]>;
990
+ /** Create a key; the owner's wallet approves it once. */
991
+ create: (scope: SolanaSessionKeyScope) => Promise<{
992
+ key: SolanaSessionKeyInfo;
993
+ signature: string;
994
+ }>;
995
+ /** Stop a key; the owner's wallet signs the on-chain Revoke. */
996
+ revoke: (id: string) => Promise<{
997
+ signature: string;
998
+ }>;
999
+ refresh: () => Promise<void>;
1000
+ isPending: ShallowRef<boolean>;
1001
+ error: ShallowRef<Error | null>;
1002
+ }
1003
+ /**
1004
+ * Solana session keys that pay x402 / MPP without a prompt (pass
1005
+ * `{ sessionKey: { manager, id }, rpc }` to the paying fetch). The app owns
1006
+ * the `SolanaSessionKeyManager` and the RPC; `owner` is the connected
1007
+ * wallet's Solana signer role.
1008
+ */
1009
+ declare function useSolanaSessionKey(deps: MaybeRef<SolanaSessionKeyFlowDeps | null>): UseSolanaSessionKeyReturn;
1010
+
987
1011
  interface NameLookupReturn<T> {
988
1012
  data: ShallowRef<T | null>;
989
1013
  isLoading: ComputedRef<boolean>;
@@ -1233,4 +1257,4 @@ declare function useSolanaRoles(connector: MaybeRefOrGetter<SolanaRolesSource |
1233
1257
  walletType?: string;
1234
1258
  } | null | undefined>): UseSolanaRolesReturn;
1235
1259
 
1236
- export { type AccountEntry, AppkitAccordion, AppkitAccountButton, AppkitAlertDialog, AppkitAvatar, AppkitBadge, AppkitButton, AppkitCard, AppkitCardContent, AppkitCardDescription, AppkitCardFooter, AppkitCardHeader, AppkitCardTitle, AppkitCheckbox, AppkitCollapsible, AppkitConnectButton, AppkitDialog, AppkitDropdownMenu, AppkitInput, AppkitPopover, AppkitProgress, AppkitScrollArea, AppkitSelect, AppkitSeparator, AppkitSkeleton, AppkitSwitch, AppkitTabs, AppkitToggleGroup, AppkitTooltip, type CapabilityClient, type DelegationCodeReader, type DelegationNonceReader, type DeployTransactionSender, type ERC20Reader, type ERC20Sender, type ERC20Transaction, type EmbeddedWalletAccountView, type EmbeddedWalletView, type EvmTransaction, type ExecuteCallsAction, type ExecutionPreview, type ExecutionRoute, type GetCallsStatusAction, type GetSolanaTransactionStatusAction, type NativeBalanceReader, type PaymasterService, type PreviewExecutionAction, type SendCallsAction, type SendCallsOptions, type SendCallsStatus, type SendSolanaTransactionAction, type SendTransactionAction, type SendTransactionStatus, type SessionKeyComposableOptions, type ShowCallsStatusAction, type SignMessageAction, type SignSolanaTransactionAction, type SiwxResult, type SiwxSessionLike, type SiwxSignInAction, type SiwxSignInOptions, type SolanaTransaction, type TokenBalanceReader, type TokenBalanceResult, type TokenInfo, type TxMonitorLike, type TxStatus, type TxStatusEntry, type UseAccountReturn, type UseAccountsReturn, type UseBalanceOptions, type UseBalanceReturn, type UseCapabilitiesReturn, type UseChainReturn, type UseCompareCostsReturn, type UseConnectReturn, type UseCreateSessionKeyReturn, type UseDelegateOptions, type UseDelegateReturn, type UseDelegationPolicyOptions, type UseDelegationPolicyReturn, type UseDelegationReturn, type UseDisconnectReturn, type UseERC20ApproveOptions, type UseERC20ApproveReturn, type UseERC20TransferOptions, type UseERC20TransferReturn, type UseERC20TransferSimulationOptions, type UseERC20TransferSimulationReturn, type UseEmbeddedWalletOptions, type UseEmbeddedWalletReturn, type UseExecuteCallsOptions, type UseExecuteCallsReturn, type UseExecuteRouteReturn, type UseLastTxReturn, type UseLookupAddressReturn, type UseNotificationOptions, type UseNotificationReturn, type UsePassphraseGateReturn, type UsePaymentFetchReturn, type UseResolveNameReturn, type UseRevokeSessionReturn, type UseRouteQuoteOptions, type UseRouteQuoteReturn, type UseSIWxLoginReturn, type UseSIWxSessionOptions, type UseSIWxSessionReturn, type UseSendCallsOptions, type UseSendCallsReturn, type UseSendTransactionReturn, type UseSendUserOperationOptions, type UseSendUserOperationReturn, type UseSendWithSessionReturn, type UseSessionKeysReturn, type UseSessionReturn, type UseSignInWithEthereumOptions, type UseSignInWithEthereumReturn, type UseSignInWithXReturn, type UseSignMessageReturn, type UseSimulateTransferOptions, type UseSimulateTransferReturn, type UseSiwxAuthSessionOptions, type UseSiwxAuthSessionReturn, type UseSmartAccountOptions, type UseSmartAccountReturn, type UseSolanaAccountReturn, type UseSolanaBalanceReturn as UseSolanaBalanceVueReturn, type UseSolanaRolesReturn, type UseSolanaTransactionOptions, type UseSolanaTransactionReturn, type UseSwitchChainReturn, type UseTokenBalanceOptions, type UseTokenBalanceReturn, type UseTokenListOptions, type UseTokenListReturn, type UseTokenSearchOptions, type UseTokenSearchReturn, type UseTransactionSimulationOptions, type UseTransactionSimulationReturn, type UseTxHistoryReturn, type UseTxMonitorReturn, type UseUserOpStatusOptions, type UseUserOpStatusReturn, type UseValidateDestinationReturn, type UserOpSigner, type UserOpStatus, useAccount, useAccounts, useBalance, useCapabilities, useChain, useCompareCosts, useConnect, useCreateSessionKey, useDelegate, useDelegation, useDelegationPolicy, useDisconnect, useERC20Approve, useERC20Transfer, useERC20TransferSimulation, useEmbeddedWallet, useExecuteCalls, useExecuteRoute, useLastTx, useLookupAddress, useNotification, usePassphraseGate, usePaymentFetch, useResolveName, useRevokeSession, useRouteQuote, useSIWxLogin, useSIWxSession, useSendCalls, useSendTransaction, useSendUserOperation, useSendWithSession, useSession, useSessionKeys, useSignInWithEthereum, useSignInWithX, useSignMessage, useSimulateTransfer, useSiwxAuthSession, useSmartAccount, useSolanaAccount, useSolanaBalance, useSolanaRoles, useSolanaTransaction, useSwitchChain, useTokenBalance, useTokenList, useTokenSearch, useTransactionSimulation, useTxHistory, useTxMonitor, useUserOpStatus, useValidateDestination };
1260
+ export { type AccountEntry, AppkitAccordion, AppkitAccountButton, AppkitAlertDialog, AppkitAvatar, AppkitBadge, AppkitButton, AppkitCard, AppkitCardContent, AppkitCardDescription, AppkitCardFooter, AppkitCardHeader, AppkitCardTitle, AppkitCheckbox, AppkitCollapsible, AppkitConnectButton, AppkitDialog, AppkitDropdownMenu, AppkitInput, AppkitPopover, AppkitProgress, AppkitScrollArea, AppkitSelect, AppkitSeparator, AppkitSkeleton, AppkitSwitch, AppkitTabs, AppkitToggleGroup, AppkitTooltip, type CapabilityClient, type DelegationCodeReader, type DelegationNonceReader, type DeployTransactionSender, type ERC20Reader, type ERC20Sender, type ERC20Transaction, type EmbeddedWalletAccountView, type EmbeddedWalletView, type EvmTransaction, type ExecuteCallsAction, type ExecutionPreview, type ExecutionRoute, type GetCallsStatusAction, type GetSolanaTransactionStatusAction, type NativeBalanceReader, type PaymasterService, type PreviewExecutionAction, type SendCallsAction, type SendCallsOptions, type SendCallsStatus, type SendSolanaTransactionAction, type SendTransactionAction, type SendTransactionStatus, type SessionKeyComposableOptions, type ShowCallsStatusAction, type SignMessageAction, type SignSolanaTransactionAction, type SiwxResult, type SiwxSessionLike, type SiwxSignInAction, type SiwxSignInOptions, type SolanaTransaction, type TokenBalanceReader, type TokenBalanceResult, type TokenInfo, type TxMonitorLike, type TxStatus, type TxStatusEntry, type UseAccountReturn, type UseAccountsReturn, type UseBalanceOptions, type UseBalanceReturn, type UseCapabilitiesReturn, type UseChainReturn, type UseCompareCostsReturn, type UseConnectReturn, type UseCreateSessionKeyReturn, type UseDelegateOptions, type UseDelegateReturn, type UseDelegationPolicyOptions, type UseDelegationPolicyReturn, type UseDelegationReturn, type UseDisconnectReturn, type UseERC20ApproveOptions, type UseERC20ApproveReturn, type UseERC20TransferOptions, type UseERC20TransferReturn, type UseERC20TransferSimulationOptions, type UseERC20TransferSimulationReturn, type UseEmbeddedWalletOptions, type UseEmbeddedWalletReturn, type UseExecuteCallsOptions, type UseExecuteCallsReturn, type UseExecuteRouteReturn, type UseLastTxReturn, type UseLookupAddressReturn, type UseNotificationOptions, type UseNotificationReturn, type UsePassphraseGateReturn, type UsePaymentFetchReturn, type UseResolveNameReturn, type UseRevokeSessionReturn, type UseRouteQuoteOptions, type UseRouteQuoteReturn, type UseSIWxLoginReturn, type UseSIWxSessionOptions, type UseSIWxSessionReturn, type UseSendCallsOptions, type UseSendCallsReturn, type UseSendTransactionReturn, type UseSendUserOperationOptions, type UseSendUserOperationReturn, type UseSendWithSessionReturn, type UseSessionKeysReturn, type UseSessionReturn, type UseSignInWithEthereumOptions, type UseSignInWithEthereumReturn, type UseSignInWithXReturn, type UseSignMessageReturn, type UseSimulateTransferOptions, type UseSimulateTransferReturn, type UseSiwxAuthSessionOptions, type UseSiwxAuthSessionReturn, type UseSmartAccountOptions, type UseSmartAccountReturn, type UseSolanaAccountReturn, type UseSolanaBalanceReturn as UseSolanaBalanceVueReturn, type UseSolanaRolesReturn, type UseSolanaSessionKeyReturn, type UseSolanaTransactionOptions, type UseSolanaTransactionReturn, type UseSwitchChainReturn, type UseTokenBalanceOptions, type UseTokenBalanceReturn, type UseTokenListOptions, type UseTokenListReturn, type UseTokenSearchOptions, type UseTokenSearchReturn, type UseTransactionSimulationOptions, type UseTransactionSimulationReturn, type UseTxHistoryReturn, type UseTxMonitorReturn, type UseUserOpStatusOptions, type UseUserOpStatusReturn, type UseValidateDestinationReturn, type UserOpSigner, type UserOpStatus, useAccount, useAccounts, useBalance, useCapabilities, useChain, useCompareCosts, useConnect, useCreateSessionKey, useDelegate, useDelegation, useDelegationPolicy, useDisconnect, useERC20Approve, useERC20Transfer, useERC20TransferSimulation, useEmbeddedWallet, useExecuteCalls, useExecuteRoute, useLastTx, useLookupAddress, useNotification, usePassphraseGate, usePaymentFetch, useResolveName, useRevokeSession, useRouteQuote, useSIWxLogin, useSIWxSession, useSendCalls, useSendTransaction, useSendUserOperation, useSendWithSession, useSession, useSessionKeys, useSignInWithEthereum, useSignInWithX, useSignMessage, useSimulateTransfer, useSiwxAuthSession, useSmartAccount, useSolanaAccount, useSolanaBalance, useSolanaRoles, useSolanaSessionKey, useSolanaTransaction, useSwitchChain, useTokenBalance, useTokenList, useTokenSearch, useTransactionSimulation, useTxHistory, useTxMonitor, useUserOpStatus, useValidateDestination };
package/dist/index.js CHANGED
@@ -2598,13 +2598,65 @@ function usePaymentFetch(pay) {
2598
2598
  };
2599
2599
  }
2600
2600
 
2601
+ // src/useSolanaSessionKey.ts
2602
+ import {
2603
+ createSolanaSessionKeyFlow
2604
+ } from "@naculus/connect-appkit-core";
2605
+ import { onScopeDispose as onScopeDispose19, shallowRef as shallowRef27, unref as unref25, watch as watch16 } from "vue";
2606
+ function useSolanaSessionKey(deps) {
2607
+ const guard = useActionGuard();
2608
+ const keys = shallowRef27([]);
2609
+ let flow = null;
2610
+ let generation = 0;
2611
+ let disposed = false;
2612
+ onScopeDispose19(() => {
2613
+ disposed = true;
2614
+ });
2615
+ const refresh = async () => {
2616
+ const own = ++generation;
2617
+ const next = flow ? await flow.list() : [];
2618
+ if (!disposed && own === generation) keys.value = next;
2619
+ };
2620
+ watch16(
2621
+ () => unref25(deps),
2622
+ (next) => {
2623
+ flow = next ? createSolanaSessionKeyFlow(next) : null;
2624
+ guard.invalidate();
2625
+ void refresh().catch(() => {
2626
+ });
2627
+ },
2628
+ { immediate: true }
2629
+ );
2630
+ const unavailable = () => Promise.reject(new Error("No Solana session key manager is connected"));
2631
+ const act = (action, fallback) => {
2632
+ const current = flow;
2633
+ if (!current) return unavailable();
2634
+ return guard.run(async () => {
2635
+ try {
2636
+ return await action(current);
2637
+ } finally {
2638
+ await refresh().catch(() => {
2639
+ });
2640
+ }
2641
+ }, fallback);
2642
+ };
2643
+ return {
2644
+ keys,
2645
+ create: (scope) => act((f) => f.create(scope), "Could not create the key"),
2646
+ revoke: (id) => act((f) => f.revoke(id), "Could not revoke the key"),
2647
+ refresh,
2648
+ isPending: guard.busy,
2649
+ error: guard.error
2650
+ };
2651
+ }
2652
+
2601
2653
  // src/name-lookup.ts
2602
2654
  import { getResolver } from "@naculus/connect-appkit-core";
2603
- import { computed as computed21, shallowRef as shallowRef27, toValue as toValue30, watch as watch16 } from "vue";
2655
+ import { computed as computed21, shallowRef as shallowRef28, toValue as toValue30, watch as watch17 } from "vue";
2604
2656
  function useNameLookup(options) {
2605
2657
  const guard = useActionGuard();
2606
- const data = shallowRef27(null);
2607
- const loading = shallowRef27(false);
2658
+ const data = shallowRef28(null);
2659
+ const loading = shallowRef28(false);
2608
2660
  const run = () => {
2609
2661
  const input = toValue30(options.input).trim();
2610
2662
  const skip = toValue30(options.skip) ?? false;
@@ -2644,7 +2696,7 @@ function useNameLookup(options) {
2644
2696
  ).catch(() => {
2645
2697
  });
2646
2698
  };
2647
- watch16(
2699
+ watch17(
2648
2700
  () => [
2649
2701
  toValue30(options.input),
2650
2702
  toValue30(options.skip),
@@ -2732,13 +2784,13 @@ function useChain(chains, chainId) {
2732
2784
  }
2733
2785
 
2734
2786
  // src/usePassphraseGate.ts
2735
- import { onScopeDispose as onScopeDispose19, readonly, shallowRef as shallowRef28 } from "vue";
2787
+ import { onScopeDispose as onScopeDispose20, readonly, shallowRef as shallowRef29 } from "vue";
2736
2788
  function usePassphraseGate(gate) {
2737
- const request = shallowRef28(gate.getSnapshot());
2789
+ const request = shallowRef29(gate.getSnapshot());
2738
2790
  const unsubscribe = gate.subscribe(() => {
2739
2791
  request.value = gate.getSnapshot();
2740
2792
  });
2741
- onScopeDispose19(unsubscribe);
2793
+ onScopeDispose20(unsubscribe);
2742
2794
  return {
2743
2795
  request: readonly(request),
2744
2796
  submit: (passphrase) => gate.submit(passphrase),
@@ -2749,10 +2801,10 @@ function usePassphraseGate(gate) {
2749
2801
 
2750
2802
  // src/useSolanaBalance.ts
2751
2803
  import { getSolanaBalance } from "@naculus/connect-core";
2752
- import { ref, shallowRef as shallowRef29, toValue as toValue33, watchEffect } from "vue";
2804
+ import { ref, shallowRef as shallowRef30, toValue as toValue33, watchEffect } from "vue";
2753
2805
  function useSolanaBalance(address, rpcUrl) {
2754
2806
  const guard = useActionGuard();
2755
- const balance = shallowRef29(null);
2807
+ const balance = shallowRef30(null);
2756
2808
  const isFetching = ref(false);
2757
2809
  const refetch = async () => {
2758
2810
  const addr = toValue33(address);
@@ -2797,12 +2849,12 @@ function useSolanaBalance(address, rpcUrl) {
2797
2849
  }
2798
2850
 
2799
2851
  // src/useLastTx.ts
2800
- import { shallowRef as shallowRef30, toValue as toValue34, watch as watch17 } from "vue";
2852
+ import { shallowRef as shallowRef31, toValue as toValue34, watch as watch18 } from "vue";
2801
2853
  function useLastTx(monitor) {
2802
- const lastTx = shallowRef30(null);
2803
- const lastConfirmedTx = shallowRef30(null);
2804
- const lastFailedTx = shallowRef30(null);
2805
- watch17(
2854
+ const lastTx = shallowRef31(null);
2855
+ const lastConfirmedTx = shallowRef31(null);
2856
+ const lastFailedTx = shallowRef31(null);
2857
+ watch18(
2806
2858
  () => toValue34(monitor),
2807
2859
  (activeMonitor, _previous, onCleanup) => {
2808
2860
  if (!activeMonitor) return;
@@ -2841,11 +2893,11 @@ function useLastTx(monitor) {
2841
2893
  }
2842
2894
 
2843
2895
  // src/useTxHistory.ts
2844
- import { computed as computed24, shallowRef as shallowRef31, toValue as toValue35, watch as watch18 } from "vue";
2896
+ import { computed as computed24, shallowRef as shallowRef32, toValue as toValue35, watch as watch19 } from "vue";
2845
2897
  function useTxHistory(address, chainId, monitor) {
2846
2898
  const guard = useActionGuard();
2847
- const entries = shallowRef31([]);
2848
- const isLoading = shallowRef31(false);
2899
+ const entries = shallowRef32([]);
2900
+ const isLoading = shallowRef32(false);
2849
2901
  const refresh = async () => {
2850
2902
  const activeMonitor = toValue35(monitor);
2851
2903
  if (!activeMonitor) {
@@ -2875,7 +2927,7 @@ function useTxHistory(address, chainId, monitor) {
2875
2927
  ).catch(() => {
2876
2928
  });
2877
2929
  };
2878
- watch18(
2930
+ watch19(
2879
2931
  [() => toValue35(monitor), () => toValue35(address), () => toValue35(chainId)],
2880
2932
  ([activeMonitor], _previous, onCleanup) => {
2881
2933
  if (!activeMonitor) {
@@ -2905,12 +2957,12 @@ function useTxHistory(address, chainId, monitor) {
2905
2957
  }
2906
2958
 
2907
2959
  // src/useTxMonitor.ts
2908
- import { computed as computed25, shallowRef as shallowRef32, toValue as toValue36, watch as watch19 } from "vue";
2960
+ import { computed as computed25, shallowRef as shallowRef33, toValue as toValue36, watch as watch20 } from "vue";
2909
2961
  function useTxMonitor(hash, chainId, monitor) {
2910
- const entry = shallowRef32(null);
2911
- const isLoading = shallowRef32(false);
2912
- const isWatching = shallowRef32(false);
2913
- const error = shallowRef32(null);
2962
+ const entry = shallowRef33(null);
2963
+ const isLoading = shallowRef33(false);
2964
+ const isWatching = shallowRef33(false);
2965
+ const error = shallowRef33(null);
2914
2966
  let generation = 0;
2915
2967
  const refresh = async () => {
2916
2968
  const activeMonitor = toValue36(monitor);
@@ -2940,7 +2992,7 @@ function useTxMonitor(hash, chainId, monitor) {
2940
2992
  activeMonitor.stopWatching(activeHash, activeChainId ?? void 0);
2941
2993
  isWatching.value = false;
2942
2994
  };
2943
- watch19(
2995
+ watch20(
2944
2996
  [() => toValue36(monitor), () => toValue36(hash), () => toValue36(chainId)],
2945
2997
  ([activeMonitor, activeHash, activeChainId], _previous, onCleanup) => {
2946
2998
  const mine = ++generation;
@@ -2996,13 +3048,13 @@ import {
2996
3048
  normalizeCapabilities,
2997
3049
  selectChainCapabilities
2998
3050
  } from "@naculus/connect-appkit-core";
2999
- import { computed as computed26, shallowRef as shallowRef33, toValue as toValue37, watchEffect as watchEffect2 } from "vue";
3051
+ import { computed as computed26, shallowRef as shallowRef34, toValue as toValue37, watchEffect as watchEffect2 } from "vue";
3000
3052
  function useCapabilities(client, session, chainId) {
3001
3053
  const guard = useActionGuard();
3002
- const capabilities = shallowRef33(
3054
+ const capabilities = shallowRef34(
3003
3055
  null
3004
3056
  );
3005
- const isFetching = shallowRef33(false);
3057
+ const isFetching = shallowRef34(false);
3006
3058
  const refetch = async () => {
3007
3059
  const activeClient = toValue37(client);
3008
3060
  const activeSession = toValue37(session);
@@ -3145,6 +3197,7 @@ export {
3145
3197
  useSolanaAccount,
3146
3198
  useSolanaBalance,
3147
3199
  useSolanaRoles,
3200
+ useSolanaSessionKey,
3148
3201
  useSolanaTransaction,
3149
3202
  useSwitchChain,
3150
3203
  useTokenBalance,