@vue-solana/core 3.0.1 → 4.0.0-rc.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.
Files changed (50) hide show
  1. package/README.md +39 -2
  2. package/dist/action.d.ts +10 -3
  3. package/dist/action.mjs +4 -4
  4. package/dist/address.d.ts +7 -2
  5. package/dist/address.mjs +8 -2
  6. package/dist/clusters.d.ts +1 -1
  7. package/dist/clusters.mjs +10 -1
  8. package/dist/errors.d.ts +1 -1
  9. package/dist/errors.mjs +4 -1
  10. package/dist/index.d.ts +4 -11
  11. package/dist/index.mjs +2 -8
  12. package/dist/ios-wallet.d.ts +1 -2
  13. package/dist/ios-wallet.mjs +675 -1
  14. package/dist/kit.d.ts +1 -1
  15. package/dist/kit.mjs +22 -9
  16. package/dist/mobile-wallet.d.ts +12 -2
  17. package/dist/mobile-wallet.mjs +4 -1
  18. package/dist/rpc.d.ts +1 -1
  19. package/dist/shared/{core.DaUlAmcN.mjs → core.A4I__4IR.mjs} +86 -6
  20. package/dist/shared/{core.C9vxHRXl.d.mts → core.BhF1J_tt.d.ts} +40 -2
  21. package/dist/timeout.d.ts +22 -1
  22. package/dist/timeout.mjs +53 -17
  23. package/dist/token-accounts.d.ts +1 -1
  24. package/dist/token-accounts.mjs +31 -2
  25. package/dist/transaction.d.ts +9 -1
  26. package/dist/transaction.mjs +52 -10
  27. package/dist/types.d.ts +1 -1
  28. package/dist/wallet-standard.d.ts +24 -4
  29. package/dist/wallet-standard.mjs +1 -1
  30. package/dist/wallet.d.ts +1 -1
  31. package/package.json +13 -5
  32. package/dist/action.d.mts +0 -28
  33. package/dist/address.d.mts +0 -16
  34. package/dist/buffer-polyfill.d.mts +0 -7
  35. package/dist/clusters.d.mts +0 -10
  36. package/dist/errors.d.mts +0 -17
  37. package/dist/index.d.mts +0 -21
  38. package/dist/ios-wallet.d.mts +0 -62
  39. package/dist/kit.d.mts +0 -3
  40. package/dist/mobile-wallet-support.d.mts +0 -3
  41. package/dist/mobile-wallet.d.mts +0 -20
  42. package/dist/rpc.d.mts +0 -7
  43. package/dist/shared/core.C9vxHRXl.d.ts +0 -193
  44. package/dist/shared/core.DJsPYgx_.mjs +0 -625
  45. package/dist/timeout.d.mts +0 -4
  46. package/dist/token-accounts.d.mts +0 -36
  47. package/dist/transaction.d.mts +0 -18
  48. package/dist/types.d.mts +0 -3
  49. package/dist/wallet-standard.d.mts +0 -22
  50. package/dist/wallet.d.mts +0 -25
package/README.md CHANGED
@@ -44,7 +44,7 @@ Full Vue Solana docs:
44
44
  | ------------- | ----------------------------------------------------------------- |
45
45
  | Runtime | ESM only (modern bundlers; Node needs ESM) |
46
46
  | TypeScript | TypeScript 5.x recommended |
47
- | Solana client | `@solana/kit@^8.4.0` (and `@solana/kit-plugin-rpc`) |
47
+ | Solana client | `@solana/kit@^8.5.0` (and `@solana/kit-plugin-rpc`) |
48
48
  | Clusters | `mainnet` (alias `mainnet-beta`), `devnet`, `testnet`, `localnet` |
49
49
 
50
50
  Since v3.0.0 this package is ESM only: there is no `require` export condition and no top-level `main`, so `require("@vue-solana/core")` fails with `No "exports" main defined`. Pin to `@vue-solana/core@^2` if you must stay on CommonJS.
@@ -92,6 +92,12 @@ import { installSolanaBufferPolyfill } from "@vue-solana/core/buffer-polyfill";
92
92
  installSolanaBufferPolyfill();
93
93
  ```
94
94
 
95
+ The `buffer-polyfill` subpath needs the `buffer` package, declared as an **optional peer dependency**. Apps that use serialization must install it explicitly:
96
+
97
+ ```sh
98
+ pnpm add buffer
99
+ ```
100
+
95
101
  ## Configuration
96
102
 
97
103
  ```ts
@@ -122,7 +128,7 @@ Supported clusters are `mainnet` (legacy alias `mainnet-beta`), `testnet`, `devn
122
128
 
123
129
  `payer` is a Kit `TransactionSigner`; `payerSecretKey` is its serializable base64 64-byte Ed25519 keypair form. Both are supported by direct core/Vue clients. A client-sent transaction requires a payer. Never put a raw secret or `payerSecretKey` in Nuxt public runtime config, and never ship a funded keypair to an end-user browser.
124
130
 
125
- `createSolanaClient()` composes the official `@solana/kit-plugin-rpc` stack by default: `solanaRpc()`, `rpcTransactionPlanner()`, and `rpcTransactionPlanSendingExecutor()`. The old custom fallback sender is removed. The official sender adds a fresh blockhash, resource-limit and preflight handling, signs, submits, and waits for `confirmed` commitment before the send resolves.
131
+ `createSolanaClient()` composes the official `@solana/kit-plugin-rpc` stack by default: `solanaRpc()` followed by `rpcAirdrop()` when no `commitment` is configured (a configured `commitment` builds the same stack explicitly so it reaches the RPC layer). `solanaRpc()` installs `rpcTransactionPlanner()`, `rpcTransactionPlanSigningExecutor()`, and `rpcTransactionPlanSendingExecutor()` itself, so the client exposes RPC reads and subscriptions plus `planTransaction(s)`, `signTransaction(s)`, and `sendTransaction(s)` with no extra plugin. The old custom fallback sender is not used. Its official sending executor adds a fresh blockhash, resource-limit and preflight handling, signs with the available client signers, submits the transaction, and waits for `confirmed` commitment before the send resolves. A client send requires a `payer` signer.
126
132
 
127
133
  Use `mainnet` for Solana mainnet. This is Solana's official mainnet cluster name. The legacy `mainnet-beta` spelling is still accepted and redirects to the same endpoint.
128
134
 
@@ -145,6 +151,7 @@ Direct subpaths:
145
151
  - `@vue-solana/core/ios-wallet`
146
152
  - `@vue-solana/core/kit`
147
153
  - `@vue-solana/core/mobile-wallet`
154
+ - `@vue-solana/core/mobile-wallet-support`
148
155
  - `@vue-solana/core/rpc`
149
156
  - `@vue-solana/core/token-accounts`
150
157
  - `@vue-solana/core/timeout`
@@ -173,6 +180,16 @@ Direct subpaths:
173
180
  | `createSolanaActionStore(fn)` | Wraps an async `(signal, ...args) => Promise` function into a `{ getState, subscribe, dispatch, reset, withSignal }` store; each dispatch aborts the prior in-flight call. |
174
181
 
175
182
  The client-sent API is the official Kit `ClientWithTransactionSending` capability installed by `createSolanaClient()`. It does not use a wallet popup; `sent` is reached after the RPC executor completes its send-and-confirm operation at `confirmed` commitment. Use a `payer`, and keep funded keys in a trusted server or relayer context.
183
+ | `registerSolanaMobileWallet(config?)` | Registers an Android Mobile Wallet Adapter wallet through `@solana-mobile/wallet-standard-mobile`. |
184
+ | `isSolanaMobileWalletSupported()` | Android-support gate used to decide whether to lazy-load the MWA module. |
185
+ | `getSolanaIosWallets(options?)` | Builds iOS browser wallet entries (Phantom, Solflare, Backpack) as universal links. |
186
+ | `handleSolanaIosWalletCallback()` | Completes a pending iOS wallet deep-link callback after redirect. |
187
+ | `adaptSolanaStandardWallet(wallet)` | Adapts a Solana Wallet Standard wallet into `SolanaWallet`. |
188
+ | `disconnectSolanaStandardWallet(walletInfo)` | Disconnects a discovered Wallet Standard wallet through its own `standard:disconnect` feature, without adapting it. |
189
+ | `getRegisteredSolanaWallets()` | Returns the Wallet Standard wallets currently registered in the app. |
190
+ | `withTimeout(promise, timeoutMs, options?)` | Races a promise against a timeout, with optional abort signal. |
191
+ | `withSolanaTimeout(promise, timeoutMs, options?)` | Solana-specific timeout wrapper with abort and error-code support. |
192
+ | `normalizeSolanaError(error)` | Normalizes an unknown error into a `SolanaError`. |
176
193
  | `isSolanaActionAborted(error)` | Detects abort errors from superseded action dispatches. |
177
194
 
178
195
  ## Wallet Interface
@@ -194,6 +211,8 @@ const wallet: SolanaWallet = {
194
211
 
195
212
  Browser extension wallets discovered through the Solana Wallet Standard are adapted into `SolanaWallet`. Android Mobile Wallet Adapter is registered through `@solana-mobile/wallet-standard-mobile` and then adapted through the same Wallet Standard adapter on supported Android Chrome clients. iOS browser wallet entries for Phantom, Solflare, and Backpack are adapted through wallet-specific universal links. Wallet capability metadata exposes whether each wallet supports message signing, transaction signing, and sign-and-send flows. You can also provide a custom object that implements `SolanaWallet` for tests or custom adapters.
196
213
 
214
+ The Wallet Standard adapter verifies the signature a wallet returns from `signMessage` / `signIn` against the account's public key before resolving, where Ed25519 (WebCrypto) is available. A signature over the wrong bytes or from a different account rejects with `INVALID_SIGNATURE`. This is a best-effort, client-side guard — it is skipped where Ed25519 is unavailable — so server-side verification remains mandatory for auth flows.
215
+
197
216
  Current wallet support:
198
217
 
199
218
  - Browser extension wallets through Wallet Standard packages.
@@ -214,6 +233,24 @@ For complete runnable Vue and Nuxt examples that use this package through the fr
214
233
  - <a href="https://vue-solana-docs.vercel.app/examples/vue-vite" target="_blank" rel="noopener noreferrer"><code>examples/vue-vite</code></a>
215
234
  - <a href="https://vue-solana-docs.vercel.app/examples/nuxt" target="_blank" rel="noopener noreferrer"><code>examples/nuxt</code></a>
216
235
 
236
+ ## Bundle size and lean imports
237
+
238
+ The root barrel (`@vue-solana/core`) intentionally re-exports the full `@solana/kit` mirror so apps do not need to install Kit directly. It is therefore roughly `117 KB` (minified) and is appropriate for most application code.
239
+
240
+ Size-sensitive entries can avoid pulling the whole mirror by importing the narrow subpaths instead of the root:
241
+
242
+ - `@vue-solana/core/address`
243
+ - `@vue-solana/core/errors`
244
+ - `@vue-solana/core/timeout`
245
+ - `@vue-solana/core/clusters`
246
+ - `@vue-solana/core/rpc`
247
+ - `@vue-solana/core/types`
248
+ - `@vue-solana/core/kit` (when you explicitly want the Kit surface)
249
+
250
+ Avoid importing `@vue-solana/core/ios-wallet` or `@vue-solana/core/mobile-wallet` from lean code paths: they own `tweetnacl` and the Mobile Wallet Adapter protocol graph respectively. The `@vue-solana/core/mobile-wallet-support` subpath ships only the Android-support gate used to decide whether to lazy-load the MWA module.
251
+
252
+ A repository-level guard (`scripts/check-lean-imports.mjs`, run via `pnpm size:packages`) verifies that these lean entries stay free of the heavy iOS/mobile-wallet edges. Add any new lean entrypoint there before publishing it. The same script walks every `packages/vue/dist/*.mjs` static import graph: the Vue root may reach the iOS wallet entry (known, tracked debt), but no Vue subpath may, and `mobile-wallet`, `qrcode`, `@solana-mobile/*`, and `buffer` must stay behind dynamic imports or their dedicated subpaths.
253
+
217
254
  ## AI Agent Skill
218
255
 
219
256
  If you use an AI coding agent, install the Vue Solana Agent Skill for package selection, setup patterns, wallet flow guidance, Solana-specific gotchas, and verification commands:
package/dist/action.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { ReactiveActionState, ReactiveActionStore } from '@solana/kit';
2
- export { isAbortError } from '@solana/kit';
3
2
 
4
3
  /**
5
4
  * Framework-agnostic action state machine for Solana async work.
@@ -21,8 +20,16 @@ declare function createSolanaActionStore<TArgs extends readonly unknown[], TResu
21
20
  * Snapshot shape bridged into reactive state by framework composables.
22
21
  */
23
22
  type SolanaActionState<TResult> = ReactiveActionState<TResult>;
24
-
23
+ /**
24
+ * Detects abort errors from superseded action dispatches (Kit's
25
+ * `isAbortError`). Canonical name for this package.
26
+ */
25
27
  declare function isSolanaActionAborted(error: unknown): boolean;
28
+ /**
29
+ * @deprecated Use {@link isSolanaActionAborted}. Kept as an alias for
30
+ * compatibility with earlier `@solana/kit` consumers.
31
+ */
32
+ declare const isAbortError: typeof isSolanaActionAborted;
26
33
 
27
- export { createSolanaActionStore, isSolanaActionAborted };
34
+ export { createSolanaActionStore, isAbortError, isSolanaActionAborted };
28
35
  export type { SolanaActionState, SolanaActionStore };
package/dist/action.mjs CHANGED
@@ -1,11 +1,11 @@
1
- import { createReactiveActionStore, isAbortError } from '@solana/kit';
2
- export { isAbortError } from '@solana/kit';
1
+ import { createReactiveActionStore, isAbortError as isAbortError$1 } from '@solana/kit';
3
2
 
4
3
  function createSolanaActionStore(fn) {
5
4
  return createReactiveActionStore(fn);
6
5
  }
7
6
  function isSolanaActionAborted(error) {
8
- return isAbortError(error);
7
+ return isAbortError$1(error);
9
8
  }
9
+ const isAbortError = isSolanaActionAborted;
10
10
 
11
- export { createSolanaActionStore, isSolanaActionAborted };
11
+ export { createSolanaActionStore, isAbortError, isSolanaActionAborted };
package/dist/address.d.ts CHANGED
@@ -1,9 +1,14 @@
1
1
  import { Address } from '@solana/kit';
2
2
 
3
3
  type AddressInput = Address | string | null | undefined;
4
+ /**
5
+ * An address, ref-like `{ value }`, or getter — nested arbitrarily, since a
6
+ * getter may return a ref and a ref may hold a getter. `parseAddress`
7
+ * unwraps recursively; falsy values (`null`, `undefined`, `""`) mean absent.
8
+ */
4
9
  type MaybeAddressInput = AddressInput | {
5
- value: AddressInput;
6
- } | (() => AddressInput);
10
+ value: MaybeAddressInput;
11
+ } | (() => MaybeAddressInput);
7
12
  /**
8
13
  * Parse a Solana address from a Kit `Address`, string, ref, or getter.
9
14
  *
package/dist/address.mjs CHANGED
@@ -20,12 +20,18 @@ function toAddressInput(value) {
20
20
  return null;
21
21
  }
22
22
  if (typeof value === "function") {
23
- return value();
23
+ return toAddressInput(value());
24
24
  }
25
25
  if (typeof value === "string") {
26
26
  return value;
27
27
  }
28
- return value.value;
28
+ if (typeof value === "object" && value !== null && "value" in value) {
29
+ return toAddressInput(value.value);
30
+ }
31
+ throw createSolanaError(
32
+ "INVALID_ADDRESS",
33
+ "Invalid Solana address: expected an address string, ref, getter, null, or undefined"
34
+ );
29
35
  }
30
36
 
31
37
  export { parseAddress };
@@ -1,4 +1,4 @@
1
- import { c as SolanaCluster } from './shared/core.C9vxHRXl.js';
1
+ import { c as SolanaCluster } from './shared/core.BhF1J_tt.js';
2
2
  import '@solana/kit-plugin-rpc';
3
3
  import '@solana/kit';
4
4
 
package/dist/clusters.mjs CHANGED
@@ -1,3 +1,5 @@
1
+ import { createSolanaError } from './errors.mjs';
2
+
1
3
  const DEFAULT_CLUSTER = "devnet";
2
4
  const CLUSTER_ENDPOINTS = {
3
5
  mainnet: "https://api.mainnet.solana.com",
@@ -20,7 +22,14 @@ function getClusterWebSocketEndpoint(cluster = DEFAULT_CLUSTER) {
20
22
  return CLUSTER_WEBSOCKET_ENDPOINTS[cluster];
21
23
  }
22
24
  function getWebSocketEndpoint(endpoint) {
23
- const url = new URL(endpoint);
25
+ let url;
26
+ try {
27
+ url = new URL(endpoint);
28
+ } catch (cause) {
29
+ throw createSolanaError("INVALID_INPUT", `Invalid Solana RPC endpoint: ${endpoint}`, {
30
+ cause
31
+ });
32
+ }
24
33
  if (url.protocol === "https:") {
25
34
  url.protocol = "wss:";
26
35
  } else if (url.protocol === "http:") {
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- type SolanaErrorCode = "NO_WALLET_SELECTED" | "WALLET_NOT_CONNECTED" | "WALLET_FEATURE_UNSUPPORTED" | "USER_REJECTED" | "INVALID_ADDRESS" | "TRANSACTION_TIMEOUT" | "RPC_FAILURE" | "STORAGE_FAILURE" | "INVALID_INPUT" | "DECRYPTION_FAILED";
1
+ type SolanaErrorCode = "NO_WALLET_SELECTED" | "WALLET_NOT_CONNECTED" | "WALLET_FEATURE_UNSUPPORTED" | "WALLET_FAILURE" | "USER_REJECTED" | "INVALID_ADDRESS" | "TRANSACTION_TIMEOUT" | "TRANSACTION_NOT_FOUND" | "TRANSACTION_FAILED" | "RPC_FAILURE" | "STORAGE_FAILURE" | "INVALID_INPUT" | "DECRYPTION_FAILED" | "REDIRECT_TIMEOUT" | "MISSING_CLIENT_CAPABILITY" | "INVALID_SIGNATURE";
2
2
  interface SolanaErrorOptions {
3
3
  cause?: unknown;
4
4
  feature?: string;
package/dist/errors.mjs CHANGED
@@ -13,7 +13,10 @@ function createSolanaError(code, message, options) {
13
13
  return new SolanaError(code, message, options);
14
14
  }
15
15
  function isSolanaError(error) {
16
- return error instanceof SolanaError;
16
+ if (error instanceof SolanaError) {
17
+ return true;
18
+ }
19
+ return typeof error === "object" && error !== null && (error.name === "SolanaError" || error.name === "SolanaWalletError" || error.name === "MissingClientCapabilityError" || error.name === "PartialSignAndSendError") && typeof error.code === "string";
17
20
  }
18
21
  function normalizeSolanaError(cause, fallbackCode, fallbackMessage, options = {}) {
19
22
  if (isSolanaError(cause)) {
package/dist/index.d.ts CHANGED
@@ -1,21 +1,14 @@
1
- /// <reference path="../types/buffer.d.ts" />
2
- export { SolanaActionState, SolanaActionStore, createSolanaActionStore, isSolanaActionAborted } from './action.js';
1
+ export { SolanaActionState, SolanaActionStore, createSolanaActionStore, isAbortError, isSolanaActionAborted } from './action.js';
3
2
  export { DEFAULT_CLUSTER, getClusterEndpoint, getClusterWebSocketEndpoint, getWebSocketEndpoint } from './clusters.js';
4
3
  export { AddressInput, MaybeAddressInput, parseAddress } from './address.js';
5
- export { installSolanaBufferPolyfill } from './buffer-polyfill.js';
6
4
  export { SolanaError, SolanaErrorCode, SolanaErrorOptions, createSolanaError, isSolanaError, normalizeSolanaError } from './errors.js';
7
- export { C as ConfirmTransactionOptions, S as SendTransactionOptions, a as SolanaChain, b as SolanaClient, c as SolanaCluster, d as SolanaConfig, e as SolanaContext, f as SolanaSignInAccount, g as SolanaSignInInput, h as SolanaSignInResult, i as SolanaSignMessageResult, j as SolanaTransaction, k as SolanaWallet, l as SolanaWalletInfo, T as TransactionConfirmation, m as TransactionStatus, n as createSolanaClient } from './shared/core.C9vxHRXl.js';
8
- export { RegisterSolanaMobileWalletOptions, SolanaMobileWalletAppIdentity, getDefaultMobileWalletAppIdentity, registerSolanaMobileWallet } from './mobile-wallet.js';
5
+ export { C as ConfirmTransactionOptions, S as SendTransactionOptions, a as SolanaChain, b as SolanaClient, c as SolanaCluster, d as SolanaConfig, e as SolanaContext, f as SolanaSignInAccount, g as SolanaSignInInput, h as SolanaSignInResult, i as SolanaSignMessageResult, j as SolanaTransaction, k as SolanaWallet, l as SolanaWalletInfo, T as TransactionConfirmation, m as TransactionStatus, n as createSolanaClient } from './shared/core.BhF1J_tt.js';
9
6
  export { createSolanaContext } from './rpc.js';
10
7
  export { TokenAccountInfo, TokenAccountsByOwnerOptions, TokenBalanceResult, getTokenAccount, getTokenAccountsByOwner, getTokenBalance } from './token-accounts.js';
11
8
  export { confirmTransactionSignature, signAndSendTransaction } from './transaction.js';
12
- export { withSolanaTimeout, withTimeout } from './timeout.js';
9
+ export { WithTimeoutOptions, withSolanaTimeout, withTimeout } from './timeout.js';
13
10
  export { SolanaWalletError, SolanaWalletErrorCode, assertWalletCanSign, assertWalletCanSignAndSendTransactions, assertWalletCanSignIn, assertWalletCanSignMessage, assertWalletCanSignTransactions, assertWalletConnected, createNoWalletSelectedError, isWalletConnected } from './wallet.js';
14
11
  export * from '@solana/kit';
15
- export { isAbortError } from '@solana/kit';
16
- export { AdaptSolanaIosWalletOptions, GetSolanaIosWalletsOptions, IosWalletCallbackResult, IosWalletInfo, IosWalletMethod, SolanaIosWalletAppIdentity, adaptSolanaIosWallet, getDefaultIosWalletAppIdentity, getDefaultIosWalletRedirectUrl, getSolanaIosWallets, handleSolanaIosWalletCallback, isIosBrowser, isSolanaIosBrowserWalletSupported, isSolanaIosWalletInfo } from './ios-wallet.js';
17
- export { AdaptSolanaWalletOptions, SOLANA_CHAINS, SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, adaptSolanaStandardWallet, getRegisteredSolanaWallets, getSolanaChain, isSolanaStandardWallet, subscribeSolanaWallets } from './wallet-standard.js';
18
- export { Buffer } from 'buffer/';
19
- export { isSolanaMobileWalletSupported } from './mobile-wallet-support.js';
12
+ export { AdaptSolanaWalletOptions, AdaptedSolanaWallet, SOLANA_CHAINS, SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, adaptSolanaStandardWallet, disconnectSolanaStandardWallet, getRegisteredSolanaWallets, getSolanaChain, isSolanaStandardWallet, subscribeSolanaWallets } from './wallet-standard.js';
20
13
  import '@solana/kit-plugin-rpc';
21
14
  import '@wallet-standard/base';
package/dist/index.mjs CHANGED
@@ -1,18 +1,12 @@
1
- export { createSolanaActionStore, isSolanaActionAborted } from './action.mjs';
1
+ export { createSolanaActionStore, isAbortError, isSolanaActionAborted } from './action.mjs';
2
2
  export { DEFAULT_CLUSTER, getClusterEndpoint, getClusterWebSocketEndpoint, getWebSocketEndpoint } from './clusters.mjs';
3
3
  export { parseAddress } from './address.mjs';
4
- export { installSolanaBufferPolyfill } from './buffer-polyfill.mjs';
5
4
  export { SolanaError, createSolanaError, isSolanaError, normalizeSolanaError } from './errors.mjs';
6
5
  export { createSolanaClient } from './kit.mjs';
7
- export { getDefaultMobileWalletAppIdentity, registerSolanaMobileWallet } from './mobile-wallet.mjs';
8
6
  export { createSolanaContext } from './rpc.mjs';
9
7
  export { getTokenAccount, getTokenAccountsByOwner, getTokenBalance } from './token-accounts.mjs';
10
8
  export { confirmTransactionSignature, signAndSendTransaction } from './transaction.mjs';
11
9
  export { withSolanaTimeout, withTimeout } from './timeout.mjs';
12
10
  export { SolanaWalletError, assertWalletCanSign, assertWalletCanSignAndSendTransactions, assertWalletCanSignIn, assertWalletCanSignMessage, assertWalletCanSignTransactions, assertWalletConnected, createNoWalletSelectedError, isWalletConnected } from './wallet.mjs';
13
11
  export * from '@solana/kit';
14
- export { isAbortError } from '@solana/kit';
15
- export { Buffer } from 'buffer/';
16
- export { S as SOLANA_CHAINS, a as SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, b as adaptSolanaStandardWallet, g as getRegisteredSolanaWallets, c as getSolanaChain, i as isSolanaStandardWallet, s as subscribeSolanaWallets } from './shared/core.DaUlAmcN.mjs';
17
- export { a as adaptSolanaIosWallet, g as getDefaultIosWalletAppIdentity, b as getDefaultIosWalletRedirectUrl, c as getSolanaIosWallets, h as handleSolanaIosWalletCallback, i as isIosBrowser, d as isSolanaIosBrowserWalletSupported, e as isSolanaIosWalletInfo } from './shared/core.DJsPYgx_.mjs';
18
- export { isSolanaMobileWalletSupported } from './mobile-wallet-support.mjs';
12
+ export { S as SOLANA_CHAINS, a as SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, b as adaptSolanaStandardWallet, d as disconnectSolanaStandardWallet, g as getRegisteredSolanaWallets, c as getSolanaChain, i as isSolanaStandardWallet, s as subscribeSolanaWallets } from './shared/core.A4I__4IR.mjs';
@@ -1,4 +1,4 @@
1
- import { a as SolanaChain, c as SolanaCluster, l as SolanaWalletInfo, k as SolanaWallet } from './shared/core.C9vxHRXl.js';
1
+ import { a as SolanaChain, c as SolanaCluster, l as SolanaWalletInfo, k as SolanaWallet } from './shared/core.BhF1J_tt.js';
2
2
  import '@solana/kit-plugin-rpc';
3
3
  import '@solana/kit';
4
4
 
@@ -8,7 +8,6 @@ interface SolanaIosWalletAppIdentity {
8
8
  icon?: string;
9
9
  }
10
10
  interface GetSolanaIosWalletsOptions {
11
- appIdentity?: SolanaIosWalletAppIdentity;
12
11
  redirectUrl?: string;
13
12
  chains?: readonly SolanaChain[];
14
13
  cluster?: SolanaCluster;