@solana/connector 0.1.6 → 0.1.8

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.
Files changed (50) hide show
  1. package/README.md +122 -44
  2. package/dist/{chunk-VMSZJPR5.mjs → chunk-6F6M6L7R.mjs} +152 -173
  3. package/dist/chunk-6F6M6L7R.mjs.map +1 -0
  4. package/dist/{chunk-NQXK7PGX.js → chunk-AOIXHVRH.js} +82 -235
  5. package/dist/chunk-AOIXHVRH.js.map +1 -0
  6. package/dist/chunk-DSUCH44G.js +678 -0
  7. package/dist/chunk-DSUCH44G.js.map +1 -0
  8. package/dist/{chunk-JUZVCBAI.js → chunk-FTXIXM43.js} +240 -271
  9. package/dist/chunk-FTXIXM43.js.map +1 -0
  10. package/dist/{chunk-QKVL45F6.mjs → chunk-G575OAT4.mjs} +73 -218
  11. package/dist/chunk-G575OAT4.mjs.map +1 -0
  12. package/dist/chunk-J7DHGLW6.mjs +638 -0
  13. package/dist/chunk-J7DHGLW6.mjs.map +1 -0
  14. package/dist/{chunk-ULUYX23Q.js → chunk-K3BNIGPX.js} +1023 -404
  15. package/dist/chunk-K3BNIGPX.js.map +1 -0
  16. package/dist/{chunk-3STZXVXD.mjs → chunk-TTOKQAPX.mjs} +998 -388
  17. package/dist/chunk-TTOKQAPX.mjs.map +1 -0
  18. package/dist/compat.d.mts +1 -1
  19. package/dist/compat.d.ts +1 -1
  20. package/dist/compat.js +40 -39
  21. package/dist/compat.js.map +1 -1
  22. package/dist/compat.mjs +39 -38
  23. package/dist/compat.mjs.map +1 -1
  24. package/dist/headless.d.mts +540 -152
  25. package/dist/headless.d.ts +540 -152
  26. package/dist/headless.js +226 -190
  27. package/dist/headless.mjs +3 -3
  28. package/dist/index.d.mts +8 -6
  29. package/dist/index.d.ts +8 -6
  30. package/dist/index.js +286 -218
  31. package/dist/index.mjs +4 -4
  32. package/dist/react.d.mts +283 -16
  33. package/dist/react.d.ts +283 -16
  34. package/dist/react.js +60 -28
  35. package/dist/react.mjs +2 -2
  36. package/dist/{wallet-standard-shim--YcrQNRt.d.ts → standard-shim-CT49DM5l.d.mts} +72 -252
  37. package/dist/{wallet-standard-shim-Dx7H8Ctf.d.mts → standard-shim-D9guL5fz.d.ts} +72 -252
  38. package/dist/{transaction-signer-D9d8nxwb.d.mts → transaction-signer-T-KVQFi8.d.mts} +2 -2
  39. package/dist/{transaction-signer-D9d8nxwb.d.ts → transaction-signer-T-KVQFi8.d.ts} +2 -2
  40. package/package.json +3 -3
  41. package/dist/chunk-3STZXVXD.mjs.map +0 -1
  42. package/dist/chunk-I64FD2EH.js +0 -312
  43. package/dist/chunk-I64FD2EH.js.map +0 -1
  44. package/dist/chunk-JUZVCBAI.js.map +0 -1
  45. package/dist/chunk-NQXK7PGX.js.map +0 -1
  46. package/dist/chunk-QKVL45F6.mjs.map +0 -1
  47. package/dist/chunk-QL3IT3TS.mjs +0 -299
  48. package/dist/chunk-QL3IT3TS.mjs.map +0 -1
  49. package/dist/chunk-ULUYX23Q.js.map +0 -1
  50. package/dist/chunk-VMSZJPR5.mjs.map +0 -1
@@ -1,10 +1,11 @@
1
- import { c as TransactionActivity, d as TransactionActivityStatus } from './transaction-signer-D9d8nxwb.mjs';
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React, { ReactNode, Component, ErrorInfo } from 'react';
3
+ import { w as TransactionActivity, x as TransactionActivityStatus } from './transaction-signer-T-KVQFi8.js';
2
4
  import { SolanaClusterId, SolanaCluster } from '@wallet-ui/core';
3
- import { Wallet, WalletAccount } from '@wallet-standard/base';
5
+ import { Wallet, WalletAccount, IdentifierArray } from '@wallet-standard/base';
4
6
  import { Address } from '@solana/addresses';
5
- import React, { ReactNode, Component, ErrorInfo } from 'react';
6
- import * as react_jsx_runtime from 'react/jsx-runtime';
7
7
  import { Signature } from '@solana/keys';
8
+ import { AuthorizationCache, ChainSelector, SolanaMobileWalletAdapterWallet } from '@solana-mobile/wallet-standard-mobile';
8
9
  import { DevnetUrl, MainnetUrl, TestnetUrl, Rpc, SolanaRpcApi, RpcSubscriptions, SolanaRpcSubscriptionsApi } from '@solana/kit';
9
10
 
10
11
  /**
@@ -201,6 +202,11 @@ interface ConnectorConfig {
201
202
  * @example '/cdn-cgi/image/width=64,quality=75/' // Cloudflare Image Resizing
202
203
  */
203
204
  imageProxy?: string;
205
+ /**
206
+ * Optional mapping from program IDs to human-readable program names.
207
+ * Used to enrich transaction history (e.g. showing `Jupiter` instead of a raw program address).
208
+ */
209
+ programLabels?: Record<string, string>;
204
210
  /**
205
211
  * CoinGecko API configuration for token price fetching.
206
212
  * Configure API key for higher rate limits and retry behavior for 429 responses.
@@ -424,6 +430,11 @@ interface DefaultConfigOptions {
424
430
  * @example '/cdn-cgi/image/width=64,quality=75/' // Cloudflare Image Resizing
425
431
  */
426
432
  imageProxy?: string;
433
+ /**
434
+ * Optional mapping from program IDs to human-readable program names.
435
+ * Used to enrich transaction history (e.g. showing `Jupiter` instead of a raw program address).
436
+ */
437
+ programLabels?: Record<string, string>;
427
438
  /**
428
439
  * CoinGecko API configuration for token price fetching.
429
440
  * Configure API key for higher rate limits and retry behavior for 429 responses.
@@ -458,6 +469,11 @@ interface ExtendedConnectorConfig extends ConnectorConfig {
458
469
  * This prevents direct image fetching which can leak user IPs to untrusted hosts.
459
470
  */
460
471
  imageProxy?: string;
472
+ /**
473
+ * Optional mapping from program IDs to human-readable program names.
474
+ * Used to enrich transaction history (e.g. showing `Jupiter` instead of a raw program address).
475
+ */
476
+ programLabels?: Record<string, string>;
461
477
  /**
462
478
  * CoinGecko API configuration for token price fetching.
463
479
  */
@@ -483,6 +499,19 @@ declare function getDefaultMobileConfig(options: {
483
499
  cluster: "devnet" | "mainnet" | "testnet" | "mainnet-beta";
484
500
  };
485
501
 
502
+ /** Configuration for registerMwa - defined locally as the package doesn't export this type */
503
+ interface RegisterMwaConfig {
504
+ appIdentity: {
505
+ name: string;
506
+ uri?: string;
507
+ icon?: string;
508
+ };
509
+ authorizationCache: AuthorizationCache;
510
+ chains: IdentifierArray;
511
+ chainSelector: ChainSelector;
512
+ remoteHostAuthority?: string;
513
+ onWalletNotFound: (mobileWalletAdapter: SolanaMobileWalletAdapterWallet) => Promise<void>;
514
+ }
486
515
  declare global {
487
516
  interface Window {
488
517
  __connectorClient?: ConnectorClient;
@@ -500,10 +529,10 @@ interface MobileWalletAdapterConfig {
500
529
  icon?: string;
501
530
  };
502
531
  remoteHostAuthority?: string;
503
- chains?: readonly string[];
504
- authorizationCache?: unknown;
505
- chainSelector?: unknown;
506
- onWalletNotFound?: (wallet: unknown) => Promise<void>;
532
+ chains?: RegisterMwaConfig['chains'];
533
+ authorizationCache?: AuthorizationCache;
534
+ chainSelector?: ChainSelector;
535
+ onWalletNotFound?: (wallet: SolanaMobileWalletAdapterWallet) => Promise<void>;
507
536
  }
508
537
  declare function ConnectorProvider({ children, config, mobile, }: {
509
538
  children: ReactNode;
@@ -513,249 +542,6 @@ declare function ConnectorProvider({ children, config, mobile, }: {
513
542
  declare function useConnector(): ConnectorSnapshot;
514
543
  declare function useConnectorClient(): ConnectorClient | null;
515
544
 
516
- /**
517
- * @solana/connector - Network utilities
518
- *
519
- * Utilities for translating between different Solana network naming conventions.
520
- * Ensures compatibility with WalletUI (SolanaClusterId) and Gill types.
521
- *
522
- * Primary type: SolanaNetwork - normalized network names
523
- * External integration: Use WalletUI's SolanaClusterId for cluster operations
524
- */
525
-
526
- /**
527
- * Normalized Solana network names
528
- *
529
- * This is the canonical network type used throughout the connector.
530
- * Use `toClusterId()` to convert to WalletUI's SolanaClusterId format.
531
- * Aligned with Gill's SolanaClusterMoniker type.
532
- */
533
- type SolanaNetwork = 'mainnet' | 'devnet' | 'testnet' | 'localnet';
534
- /**
535
- * Public RPC endpoints for each Solana network
536
- *
537
- * ⚠️ WARNING: These are public, rate-limited endpoints provided by Solana Labs.
538
- * For production applications, use a dedicated RPC provider like:
539
- * - Triton (https://triton.one)
540
- * - Helius (https://helius.dev)
541
- * - QuickNode (https://quicknode.com)
542
- * - Alchemy (https://alchemy.com)
543
- *
544
- * Note: These values are now sourced from Gill's getPublicSolanaRpcUrl for consistency.
545
- * Kept here for reference and backward compatibility.
546
- */
547
- declare const PUBLIC_RPC_ENDPOINTS: Record<SolanaNetwork, string>;
548
- /**
549
- * Normalize network name to standard format
550
- * Accepts various naming conventions and returns the canonical SolanaNetwork format
551
- *
552
- * @example
553
- * normalizeNetwork('mainnet-beta') // Returns: 'mainnet'
554
- * normalizeNetwork('mainnet') // Returns: 'mainnet'
555
- * normalizeNetwork('MAINNET') // Returns: 'mainnet'
556
- */
557
- declare function normalizeNetwork(network: string): SolanaNetwork;
558
- /**
559
- * Convert network name to WalletUI cluster ID format
560
- *
561
- * WalletUI uses the 'solana:network' format for cluster identification.
562
- *
563
- * @example
564
- * toClusterId('mainnet') // Returns: 'solana:mainnet'
565
- * toClusterId('mainnet-beta') // Returns: 'solana:mainnet' (normalized)
566
- */
567
- declare function toClusterId(network: string): SolanaClusterId;
568
- /**
569
- * Get the public RPC URL for a network
570
- *
571
- * ⚠️ Returns public, rate-limited endpoints. For production, use a dedicated RPC provider.
572
- *
573
- * Now uses Gill's getPublicSolanaRpcUrl for consistency with the Gill ecosystem.
574
- * Falls back to localnet URL for unknown networks.
575
- *
576
- * @example
577
- * getDefaultRpcUrl('mainnet') // Returns: 'https://api.mainnet-beta.solana.com'
578
- * getDefaultRpcUrl('devnet') // Returns: 'https://api.devnet.solana.com'
579
- */
580
- declare function getDefaultRpcUrl(network: string): string;
581
- /**
582
- * Check if a network is mainnet
583
- *
584
- * @example
585
- * isMainnet('mainnet') // Returns: true
586
- * isMainnet('mainnet-beta') // Returns: true
587
- * isMainnet('devnet') // Returns: false
588
- */
589
- declare function isMainnet(network: string): boolean;
590
- /**
591
- * Check if a network is devnet
592
- *
593
- * @example
594
- * isDevnet('devnet') // Returns: true
595
- * isDevnet('mainnet') // Returns: false
596
- */
597
- declare function isDevnet(network: string): boolean;
598
- /**
599
- * Check if a network is testnet
600
- *
601
- * @example
602
- * isTestnet('testnet') // Returns: true
603
- * isTestnet('mainnet') // Returns: false
604
- */
605
- declare function isTestnet(network: string): boolean;
606
- /**
607
- * Check if a network is localnet
608
- *
609
- * @example
610
- * isLocalnet('localnet') // Returns: true
611
- * isLocalnet('mainnet') // Returns: false
612
- */
613
- declare function isLocalnet(network: string): boolean;
614
- /**
615
- * Get a user-friendly display name for a network
616
- *
617
- * @example
618
- * getNetworkDisplayName('mainnet-beta') // Returns: 'Mainnet'
619
- * getNetworkDisplayName('devnet') // Returns: 'Devnet'
620
- */
621
- declare function getNetworkDisplayName(network: string): string;
622
-
623
- /**
624
- * @solana/connector - Unified configuration
625
- *
626
- * Simplified configuration for apps using ConnectorKit
627
- * Eliminates config duplication and provides a single source of truth
628
- */
629
-
630
- /**
631
- * Options for creating a unified configuration
632
- * Maintains type safety while providing flexibility
633
- */
634
- interface UnifiedConfigOptions extends DefaultConfigOptions {
635
- /**
636
- * Custom RPC URL (optional - overrides default for network)
637
- * Note: For production apps, use environment variables to avoid exposing API keys
638
- * @see packages/connector/src/utils/cluster.ts for secure RPC URL patterns
639
- */
640
- rpcUrl?: string;
641
- }
642
- /**
643
- * Unified configuration output
644
- * Contains all configs needed for ConnectorKit and integrations
645
- *
646
- * Important: The `rpcUrl` property is intended for:
647
- * 1. Server-side rendering (SSR) setup
648
- * 2. Passing to external libraries that need RPC configuration
649
- * 3. Development/testing environments
650
- *
651
- * For production client-side code, use the connector client's `getRpcUrl()` method
652
- * which supports environment variable patterns and proxy configurations.
653
- */
654
- interface UnifiedConfig {
655
- /** ConnectorKit configuration */
656
- connectorConfig: ExtendedConnectorConfig;
657
- /** Mobile Wallet Adapter configuration (optional) */
658
- mobile?: MobileWalletAdapterConfig;
659
- /** Normalized network name ('mainnet', 'devnet', 'testnet', 'localnet') */
660
- network: SolanaNetwork;
661
- /**
662
- * RPC endpoint URL
663
- * For external library integration only - client code should use connector client
664
- * @deprecated in client components - use `useConnectorClient().getRpcUrl()` instead
665
- */
666
- rpcUrl: string;
667
- /** Application metadata */
668
- app: {
669
- name: string;
670
- url: string;
671
- };
672
- }
673
- /**
674
- * Create a unified configuration for ConnectorKit
675
- *
676
- * This helper eliminates configuration duplication by creating all necessary
677
- * configs from a single source of truth. It automatically handles network
678
- * name translation between different conventions.
679
- *
680
- * @example Basic usage
681
- * ```tsx
682
- * import { createConfig, AppProvider } from '@solana/connector';
683
- *
684
- * const config = createConfig({
685
- * appName: 'My App',
686
- * network: 'mainnet', // Works with 'mainnet' or 'mainnet-beta'
687
- * enableMobile: true
688
- * });
689
- *
690
- * <AppProvider config={config}>
691
- * {children}
692
- * </AppProvider>
693
- * ```
694
- *
695
- * @example Integration with external libraries
696
- * ```tsx
697
- * import { createConfig, AppProvider } from '@solana/connector';
698
- * import { ArmaProvider } from '@armadura/sdk';
699
- *
700
- * const config = createConfig({
701
- * appName: 'My App',
702
- * network: 'mainnet',
703
- * });
704
- *
705
- * <AppProvider config={config}>
706
- * <ArmaProvider
707
- * config={{
708
- * network: config.network,
709
- * rpcUrl: config.rpcUrl, // Safe - for external library initialization
710
- * providers: [...]
711
- * }}
712
- * useConnector="auto"
713
- * >
714
- * {children}
715
- * </ArmaProvider>
716
- * </AppProvider>
717
- * ```
718
- *
719
- * @example Production with environment variables
720
- * ```tsx
721
- * // Use environment variables to avoid exposing API keys
722
- * const config = createConfig({
723
- * appName: 'My App',
724
- * network: 'mainnet',
725
- * // RPC URL comes from process.env on server
726
- * // Client-side code should use connector client's getRpcUrl()
727
- * });
728
- * ```
729
- *
730
- * @example Custom clusters
731
- * ```tsx
732
- * const config = createConfig({
733
- * appName: 'My App',
734
- * network: 'mainnet',
735
- * customClusters: [
736
- * {
737
- * id: 'solana:custom',
738
- * label: 'Custom RPC',
739
- * url: process.env.CUSTOM_RPC_URL || 'https://...'
740
- * }
741
- * ]
742
- * });
743
- * ```
744
- */
745
- declare function createConfig(options: UnifiedConfigOptions): UnifiedConfig;
746
- /**
747
- * Type guard to check if a config is a unified config
748
- *
749
- * @example
750
- * ```ts
751
- * if (isUnifiedConfig(someConfig)) {
752
- * // TypeScript knows this is UnifiedConfig
753
- * console.log(someConfig.network, someConfig.rpcUrl);
754
- * }
755
- * ```
756
- */
757
- declare function isUnifiedConfig(config: unknown): config is UnifiedConfig;
758
-
759
545
  declare enum WalletErrorType {
760
546
  CONNECTION_FAILED = "CONNECTION_FAILED",
761
547
  TRANSACTION_FAILED = "TRANSACTION_FAILED",
@@ -1128,9 +914,43 @@ interface WalletsRegistry {
1128
914
  }
1129
915
  type WalletStandardWallet = Wallet;
1130
916
  type WalletStandardAccount = WalletAccount;
917
+ /**
918
+ * Promise that resolves when the wallet registry is initialized and ready.
919
+ *
920
+ * Use this when you need deterministic wallet detection (e.g., auto-reconnect,
921
+ * checking if a specific wallet is installed before showing UI).
922
+ *
923
+ * Resolves immediately if the registry is already available.
924
+ * Rejects only on fatal errors (e.g., module load failure in browser environment).
925
+ *
926
+ * @example
927
+ * ```ts
928
+ * import { ready, getWalletsRegistry } from '@solana/connector';
929
+ *
930
+ * // Wait for registry to be ready before detecting wallets
931
+ * await ready;
932
+ * const wallets = getWalletsRegistry().get();
933
+ * ```
934
+ */
935
+ declare const ready: Promise<void>;
1131
936
  /**
1132
937
  * Get the wallets registry - simplified approach
938
+ *
939
+ * ⚠️ RACE CONDITION WARNING:
940
+ * The dynamic import of '@wallet-standard/app' is asynchronous. If `window.navigator.wallets`
941
+ * is not pre-populated by a wallet extension, the registry may be undefined briefly during
942
+ * initial page load. Calls to `getWalletsRegistry().get()` during this window will return
943
+ * an empty array as graceful degradation.
944
+ *
945
+ * For deterministic wallet detection (e.g., auto-reconnect, pre-checking wallet availability),
946
+ * await the exported `ready` Promise before calling `get()`:
947
+ *
948
+ * @example
949
+ * ```ts
950
+ * await ready;
951
+ * const wallets = getWalletsRegistry().get(); // Guaranteed to have registry loaded
952
+ * ```
1133
953
  */
1134
954
  declare function getWalletsRegistry(): WalletsRegistry;
1135
955
 
1136
- export { copySignatureToClipboard as $, type AccountInfo as A, type StorageOptions as B, ConnectorProvider as C, type DefaultConfigOptions as D, type ExtendedConnectorConfig as E, type EnhancedStorageAccountOptions as F, type EnhancedStorageClusterOptions as G, type EnhancedStorageWalletOptions as H, WalletErrorType as I, type WalletError as J, getPublicSolanaRpcUrl as K, type Listener as L, type MobileWalletAdapterConfig as M, createSolanaClient as N, type SolanaClusterMoniker as O, type ModifiedClusterUrl as P, type SolanaClient as Q, type CreateSolanaClientArgs as R, type StorageAdapter as S, ClipboardErrorType as T, type UnifiedConfigOptions as U, type ClipboardResult as V, type WalletInfo as W, type CopyOptions as X, isClipboardAvailable as Y, copyToClipboard as Z, copyAddressToClipboard as _, useConnectorClient as a, getClusterRpcUrl as a0, getClusterExplorerUrl as a1, getTransactionUrl as a2, getAddressUrl as a3, getTokenUrl as a4, getBlockUrl as a5, isMainnetCluster as a6, isDevnetCluster as a7, isTestnetCluster as a8, isLocalCluster as a9, getClusterName as aa, getClusterType as ab, getClusterChainId as ac, getChainIdForWalletStandard as ad, type SolanaNetwork as ae, PUBLIC_RPC_ENDPOINTS as af, normalizeNetwork as ag, toClusterId as ah, getDefaultRpcUrl as ai, isMainnet as aj, isDevnet as ak, isTestnet as al, isLocalnet as am, getNetworkDisplayName as an, ConnectorErrorBoundary as b, type ConnectorSnapshot as c, type ConnectorConfig as d, type ConnectorState as e, type WalletStandardWallet as f, type WalletStandardAccount as g, type UnifiedConfig as h, type ClusterType as i, ConnectorClient as j, getWalletsRegistry as k, getDefaultConfig as l, getDefaultMobileConfig as m, createConfig as n, isUnifiedConfig as o, type WalletName as p, type AccountAddress as q, isWalletName as r, isAccountAddress as s, type ConnectorHealth as t, useConnector as u, type ConnectorDebugMetrics as v, withErrorBoundary as w, type ConnectorDebugState as x, type ConnectorEvent as y, type ConnectorEventListener as z };
956
+ export { getClusterExplorerUrl as $, type AccountInfo as A, type CoinGeckoConfig as B, ConnectorProvider as C, type DefaultConfigOptions as D, type ExtendedConnectorConfig as E, type ConnectorHealth as F, type ConnectorDebugMetrics as G, type ConnectorDebugState as H, type ConnectorEvent as I, type ConnectorEventListener as J, type StorageAdapter as K, type Listener as L, type MobileWalletAdapterConfig as M, type StorageOptions as N, type EnhancedStorageAccountOptions as O, type EnhancedStorageClusterOptions as P, type EnhancedStorageWalletOptions as Q, ClipboardErrorType as R, type SolanaClusterMoniker as S, type ClipboardResult as T, type CopyOptions as U, isClipboardAvailable as V, type WalletInfo as W, copyToClipboard as X, copyAddressToClipboard as Y, copySignatureToClipboard as Z, getClusterRpcUrl as _, useConnectorClient as a, getTransactionUrl as a0, getAddressUrl as a1, getTokenUrl as a2, getBlockUrl as a3, isMainnetCluster as a4, isDevnetCluster as a5, isTestnetCluster as a6, isLocalCluster as a7, getClusterName as a8, getClusterType as a9, getClusterChainId as aa, getChainIdForWalletStandard as ab, ConnectorErrorBoundary as b, type ConnectorSnapshot as c, type ConnectorConfig as d, type ConnectorState as e, type WalletStandardWallet as f, type WalletStandardAccount as g, type ClusterType as h, ConnectorClient as i, getDefaultConfig as j, getDefaultMobileConfig as k, getWalletsRegistry as l, WalletErrorType as m, type WalletError as n, getPublicSolanaRpcUrl as o, createSolanaClient as p, type ModifiedClusterUrl as q, ready as r, type SolanaClient as s, type CreateSolanaClientArgs as t, useConnector as u, type WalletName as v, withErrorBoundary as w, type AccountAddress as x, isWalletName as y, isAccountAddress as z };
@@ -13,7 +13,7 @@ import { Transaction, VersionedTransaction } from '@solana/web3.js';
13
13
  * Union type for all supported Solana transaction formats
14
14
  * Supports both legacy (@solana/web3.js) and modern (gill) transaction types
15
15
  */
16
- type SolanaTransaction = Transaction | VersionedTransaction | TransactionMessage | Uint8Array;
16
+ type SolanaTransaction = Transaction | VersionedTransaction | TransactionMessage | Uint8Array | ArrayBufferView;
17
17
  /**
18
18
  * Transaction status during its lifecycle
19
19
  */
@@ -198,4 +198,4 @@ declare class TransactionSignerError extends TransactionError {
198
198
  */
199
199
  declare function isTransactionSignerError(error: unknown): error is TransactionSignerError;
200
200
 
201
- export { ConnectorError as C, Errors as E, NetworkError as N, type SolanaTransaction as S, type TransactionSignerConfig as T, ValidationError as V, type SignedTransaction as a, type TransactionSignerCapabilities as b, type TransactionActivity as c, type TransactionActivityStatus as d, type TransactionMethod as e, type TransactionMetadata as f, createTransactionSigner as g, TransactionSignerError as h, isTransactionSignerError as i, type TransactionSigner as j, ConnectionError as k, ConfigurationError as l, TransactionError as m, isConnectorError as n, isConnectionError as o, isValidationError as p, isConfigurationError as q, isNetworkError as r, isTransactionError as s, toConnectorError as t, getUserFriendlyMessage as u, type ConnectionErrorCode as v, type ValidationErrorCode as w, type ConfigurationErrorCode as x, type NetworkErrorCode as y, type TransactionErrorCode as z };
201
+ export { ConnectorError as C, Errors as E, NetworkError as N, type SolanaTransaction as S, TransactionSignerError as T, ValidationError as V, type TransactionSigner as a, ConnectionError as b, createTransactionSigner as c, ConfigurationError as d, TransactionError as e, isConnectorError as f, isConnectionError as g, isValidationError as h, isTransactionSignerError as i, isConfigurationError as j, isNetworkError as k, isTransactionError as l, getUserFriendlyMessage as m, type ConnectionErrorCode as n, type ValidationErrorCode as o, type ConfigurationErrorCode as p, type NetworkErrorCode as q, type TransactionErrorCode as r, type TransactionSignerConfig as s, toConnectorError as t, type SignedTransaction as u, type TransactionSignerCapabilities as v, type TransactionActivity as w, type TransactionActivityStatus as x, type TransactionMethod as y, type TransactionMetadata as z };
@@ -13,7 +13,7 @@ import { Transaction, VersionedTransaction } from '@solana/web3.js';
13
13
  * Union type for all supported Solana transaction formats
14
14
  * Supports both legacy (@solana/web3.js) and modern (gill) transaction types
15
15
  */
16
- type SolanaTransaction = Transaction | VersionedTransaction | TransactionMessage | Uint8Array;
16
+ type SolanaTransaction = Transaction | VersionedTransaction | TransactionMessage | Uint8Array | ArrayBufferView;
17
17
  /**
18
18
  * Transaction status during its lifecycle
19
19
  */
@@ -198,4 +198,4 @@ declare class TransactionSignerError extends TransactionError {
198
198
  */
199
199
  declare function isTransactionSignerError(error: unknown): error is TransactionSignerError;
200
200
 
201
- export { ConnectorError as C, Errors as E, NetworkError as N, type SolanaTransaction as S, type TransactionSignerConfig as T, ValidationError as V, type SignedTransaction as a, type TransactionSignerCapabilities as b, type TransactionActivity as c, type TransactionActivityStatus as d, type TransactionMethod as e, type TransactionMetadata as f, createTransactionSigner as g, TransactionSignerError as h, isTransactionSignerError as i, type TransactionSigner as j, ConnectionError as k, ConfigurationError as l, TransactionError as m, isConnectorError as n, isConnectionError as o, isValidationError as p, isConfigurationError as q, isNetworkError as r, isTransactionError as s, toConnectorError as t, getUserFriendlyMessage as u, type ConnectionErrorCode as v, type ValidationErrorCode as w, type ConfigurationErrorCode as x, type NetworkErrorCode as y, type TransactionErrorCode as z };
201
+ export { ConnectorError as C, Errors as E, NetworkError as N, type SolanaTransaction as S, TransactionSignerError as T, ValidationError as V, type TransactionSigner as a, ConnectionError as b, createTransactionSigner as c, ConfigurationError as d, TransactionError as e, isConnectorError as f, isConnectionError as g, isValidationError as h, isTransactionSignerError as i, isConfigurationError as j, isNetworkError as k, isTransactionError as l, getUserFriendlyMessage as m, type ConnectionErrorCode as n, type ValidationErrorCode as o, type ConfigurationErrorCode as p, type NetworkErrorCode as q, type TransactionErrorCode as r, type TransactionSignerConfig as s, toConnectorError as t, type SignedTransaction as u, type TransactionSignerCapabilities as v, type TransactionActivity as w, type TransactionActivityStatus as x, type TransactionMethod as y, type TransactionMetadata as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solana/connector",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Headless wallet connector client and React provider built on Wallet Standard",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -62,7 +62,6 @@
62
62
  }
63
63
  },
64
64
  "dependencies": {
65
- "@nanostores/persistent": "^1.1.0",
66
65
  "@solana-mobile/wallet-standard-mobile": "^0.4.3",
67
66
  "@solana/webcrypto-ed25519-polyfill": "^4.0.0",
68
67
  "@solana/addresses": "^5.0.0",
@@ -75,7 +74,8 @@
75
74
  "@wallet-standard/app": "^1.1.0",
76
75
  "@wallet-standard/base": "^1.1.0",
77
76
  "@wallet-standard/features": "^1.1.0",
78
- "@wallet-ui/core": "^2.1.0"
77
+ "@wallet-ui/core": "^2.1.0",
78
+ "zod": "^4.0.0"
79
79
  },
80
80
  "devDependencies": {
81
81
  "@testing-library/jest-dom": "^6.9.1",