@vue-solana/vue 1.2.0 → 2.1.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.
Files changed (220) hide show
  1. package/README.md +162 -23
  2. package/dist/buffer-polyfill.d.cts +0 -1
  3. package/dist/buffer-polyfill.d.mts +0 -1
  4. package/dist/buffer-polyfill.d.ts +0 -1
  5. package/dist/index.cjs +62 -22
  6. package/dist/index.d.cts +29 -13
  7. package/dist/index.d.mts +29 -13
  8. package/dist/index.d.ts +29 -13
  9. package/dist/index.mjs +41 -21
  10. package/dist/kit.d.cts +1 -1
  11. package/dist/kit.d.mts +1 -1
  12. package/dist/kit.d.ts +1 -1
  13. package/dist/shared/vue.5euWd6-V.mjs +59 -0
  14. package/dist/shared/vue.9TPxZPMf.cjs +59 -0
  15. package/dist/shared/vue.B4-LEdSE.cjs +102 -0
  16. package/dist/shared/{vue.C0uCLjJ6.cjs → vue.B6ainw2G.cjs} +1 -1
  17. package/dist/shared/vue.B8LptjZP.mjs +32 -0
  18. package/dist/shared/vue.B8pLQ8P4.cjs +105 -0
  19. package/dist/shared/vue.B8ub540p.mjs +109 -0
  20. package/dist/shared/{vue.D0ycWj82.mjs → vue.BD6Gm1nl.mjs} +9 -9
  21. package/dist/shared/{vue.BEesxsrA.cjs → vue.BGxz4dru.cjs} +7 -3
  22. package/dist/shared/{vue.DDxhSi72.mjs → vue.BINkrA8h.mjs} +9 -9
  23. package/dist/shared/{vue.COPnX5fq.cjs → vue.BIxphCAq.cjs} +1 -1
  24. package/dist/shared/{vue.CKTUFwSI.mjs → vue.BOpgWr43.mjs} +9 -10
  25. package/dist/shared/vue.BQRpjwKl.mjs +80 -0
  26. package/dist/shared/vue.BVaMoz9y.cjs +9 -0
  27. package/dist/shared/vue.BVj9lWBK.cjs +111 -0
  28. package/dist/shared/vue.BY0qpgYr.cjs +35 -0
  29. package/dist/shared/vue.Bfu1dCKe.mjs +10 -0
  30. package/dist/shared/vue.Bk5xjlUx.cjs +61 -0
  31. package/dist/shared/{vue.BtUKvuQw.mjs → vue.BsGwt78R.mjs} +2 -2
  32. package/dist/shared/{vue.BbX3ePDY.cjs → vue.Bwd1sGAM.cjs} +9 -10
  33. package/dist/shared/vue.ByxbBC3y.mjs +57 -0
  34. package/dist/shared/{vue.CPjEwHSg.mjs → vue.C13umiQi.mjs} +20 -8
  35. package/dist/shared/vue.C5FVoEZT.mjs +99 -0
  36. package/dist/shared/vue.CATOh_9G.mjs +42 -0
  37. package/dist/shared/{vue.Bhdhmz8d.cjs → vue.CIs8QhCw.cjs} +18 -74
  38. package/dist/shared/vue.CMohL_Cz.mjs +58 -0
  39. package/dist/shared/{vue.CYKT65tB.mjs → vue.CQh3AUE8.mjs} +2 -6
  40. package/dist/shared/{vue.DzKfcfpX.cjs → vue.CWZSMVnB.cjs} +6 -6
  41. package/dist/shared/{vue.B12Pt1PQ.mjs → vue.CXB4NEMA.mjs} +18 -74
  42. package/dist/shared/{vue.DFbay4mm.mjs → vue.C_4qJDiF.mjs} +1 -1
  43. package/dist/shared/vue.CoaIWGPT.cjs +38 -0
  44. package/dist/shared/vue.CogzzQXM.mjs +171 -0
  45. package/dist/shared/vue.CpkwC8Th.mjs +7 -0
  46. package/dist/shared/vue.CrkK_T15.cjs +86 -0
  47. package/dist/shared/vue.D-qi8PSL.cjs +82 -0
  48. package/dist/shared/{vue.B2AQR2bE.mjs → vue.D218Ow7t.mjs} +8 -4
  49. package/dist/shared/{vue.QHAHFnw8.mjs → vue.D3Y0PWbF.mjs} +3 -3
  50. package/dist/shared/vue.D5U1yLG3.mjs +83 -0
  51. package/dist/shared/{vue.j1vB3h1n.cjs → vue.DAg5wC1G.cjs} +9 -9
  52. package/dist/shared/vue.DDbVk0Zh.cjs +180 -0
  53. package/dist/shared/{vue.BE4KHksm.cjs → vue.DE3emjSF.cjs} +2 -7
  54. package/dist/shared/vue.DEHxNvUX.cjs +7 -0
  55. package/dist/shared/vue.DFaMJLAQ.cjs +60 -0
  56. package/dist/shared/vue.DImwKTwJ.mjs +103 -0
  57. package/dist/shared/{vue.G9t8pE0J.cjs → vue.DKyQ7J67.cjs} +1 -1
  58. package/dist/shared/vue.DNxOpDXz.cjs +12 -0
  59. package/dist/shared/vue.DXQVIRZA.mjs +174 -0
  60. package/dist/shared/vue.DYk0Xfr3.mjs +36 -0
  61. package/dist/shared/vue.D_P5SqqD.mjs +5 -0
  62. package/dist/shared/{vue.B14U1xmP.cjs → vue.Di7yjJ-R.cjs} +20 -8
  63. package/dist/shared/vue.DtCbCcPd.cjs +173 -0
  64. package/dist/shared/{vue.CM_uqVc0.mjs → vue.Dyi1OCI1.mjs} +6 -6
  65. package/dist/shared/{vue.BsD6AAmO.cjs → vue.E_npPFoV.cjs} +8 -8
  66. package/dist/shared/{vue.LNhX07HB.cjs → vue.FiMmnMHr.cjs} +2 -2
  67. package/dist/shared/{vue.CSzg70vB.mjs → vue.JUWqu6kD.mjs} +1 -1
  68. package/dist/shared/{vue.By1CUlOU.mjs → vue.Mxc8w6Qk.mjs} +1 -1
  69. package/dist/shared/{vue.ByUemLSf.cjs → vue.Sbbm9JSu.cjs} +3 -3
  70. package/dist/shared/vue.g8fnm_ca.cjs +45 -0
  71. package/dist/swr.cjs +136 -0
  72. package/dist/swr.d.cts +41 -0
  73. package/dist/swr.d.mts +41 -0
  74. package/dist/swr.d.ts +41 -0
  75. package/dist/swr.mjs +131 -0
  76. package/dist/useAccountInfo.cjs +7 -5
  77. package/dist/useAccountInfo.d.cts +12 -8
  78. package/dist/useAccountInfo.d.mts +12 -8
  79. package/dist/useAccountInfo.d.ts +12 -8
  80. package/dist/useAccountInfo.mjs +7 -5
  81. package/dist/useAction.cjs +9 -0
  82. package/dist/useAction.d.cts +45 -0
  83. package/dist/useAction.d.mts +45 -0
  84. package/dist/useAction.d.ts +45 -0
  85. package/dist/useAction.mjs +3 -0
  86. package/dist/useBalance.cjs +5 -4
  87. package/dist/useBalance.d.cts +4 -2
  88. package/dist/useBalance.d.mts +4 -2
  89. package/dist/useBalance.d.ts +4 -2
  90. package/dist/useBalance.mjs +5 -4
  91. package/dist/useClientCapability.cjs +12 -0
  92. package/dist/useClientCapability.d.cts +39 -0
  93. package/dist/useClientCapability.d.mts +39 -0
  94. package/dist/useClientCapability.d.ts +39 -0
  95. package/dist/useClientCapability.mjs +5 -0
  96. package/dist/useConnection.cjs +4 -3
  97. package/dist/useConnection.d.cts +9 -2
  98. package/dist/useConnection.d.mts +9 -2
  99. package/dist/useConnection.d.ts +9 -2
  100. package/dist/useConnection.mjs +4 -3
  101. package/dist/useIdentity.cjs +12 -0
  102. package/dist/useIdentity.d.cts +3 -0
  103. package/dist/useIdentity.d.mts +3 -0
  104. package/dist/useIdentity.d.ts +3 -0
  105. package/dist/useIdentity.mjs +6 -0
  106. package/dist/usePayer.cjs +13 -0
  107. package/dist/usePayer.d.cts +18 -0
  108. package/dist/usePayer.d.mts +18 -0
  109. package/dist/usePayer.d.ts +18 -0
  110. package/dist/usePayer.mjs +6 -0
  111. package/dist/usePlanTransaction.cjs +14 -0
  112. package/dist/usePlanTransaction.d.cts +37 -0
  113. package/dist/usePlanTransaction.d.mts +37 -0
  114. package/dist/usePlanTransaction.d.ts +37 -0
  115. package/dist/usePlanTransaction.mjs +7 -0
  116. package/dist/usePlanTransactions.cjs +13 -0
  117. package/dist/usePlanTransactions.d.cts +4 -0
  118. package/dist/usePlanTransactions.d.mts +4 -0
  119. package/dist/usePlanTransactions.d.ts +4 -0
  120. package/dist/usePlanTransactions.mjs +7 -0
  121. package/dist/useProgramAccounts.cjs +7 -5
  122. package/dist/useProgramAccounts.d.cts +24 -9
  123. package/dist/useProgramAccounts.d.mts +24 -9
  124. package/dist/useProgramAccounts.d.ts +24 -9
  125. package/dist/useProgramAccounts.mjs +7 -5
  126. package/dist/useRequest.cjs +11 -0
  127. package/dist/useRequest.d.cts +57 -0
  128. package/dist/useRequest.d.mts +57 -0
  129. package/dist/useRequest.d.ts +57 -0
  130. package/dist/useRequest.mjs +5 -0
  131. package/dist/useRpc.cjs +3 -2
  132. package/dist/useRpc.d.cts +5 -2
  133. package/dist/useRpc.d.mts +5 -2
  134. package/dist/useRpc.d.ts +5 -2
  135. package/dist/useRpc.mjs +3 -2
  136. package/dist/useSelectedWalletAccount.cjs +13 -0
  137. package/dist/useSelectedWalletAccount.d.cts +117 -0
  138. package/dist/useSelectedWalletAccount.d.mts +117 -0
  139. package/dist/useSelectedWalletAccount.d.ts +117 -0
  140. package/dist/useSelectedWalletAccount.mjs +3 -0
  141. package/dist/useSignAndSendTransaction.cjs +7 -6
  142. package/dist/useSignAndSendTransaction.d.cts +18 -24
  143. package/dist/useSignAndSendTransaction.d.mts +18 -24
  144. package/dist/useSignAndSendTransaction.d.ts +18 -24
  145. package/dist/useSignAndSendTransaction.mjs +7 -6
  146. package/dist/useSignAndSendTransactions.cjs +15 -0
  147. package/dist/useSignAndSendTransactions.d.cts +35 -0
  148. package/dist/useSignAndSendTransactions.d.mts +35 -0
  149. package/dist/useSignAndSendTransactions.d.ts +35 -0
  150. package/dist/useSignAndSendTransactions.mjs +8 -0
  151. package/dist/useSignIn.cjs +13 -0
  152. package/dist/useSignIn.d.cts +23 -0
  153. package/dist/useSignIn.d.mts +23 -0
  154. package/dist/useSignIn.d.ts +23 -0
  155. package/dist/useSignIn.mjs +7 -0
  156. package/dist/useSignMessage.cjs +4 -3
  157. package/dist/useSignMessage.mjs +4 -3
  158. package/dist/useSignTransactions.cjs +13 -0
  159. package/dist/useSignTransactions.d.cts +24 -0
  160. package/dist/useSignTransactions.d.mts +24 -0
  161. package/dist/useSignTransactions.d.ts +24 -0
  162. package/dist/useSignTransactions.mjs +7 -0
  163. package/dist/useSignatureStatus.cjs +5 -4
  164. package/dist/useSignatureStatus.d.cts +9 -5
  165. package/dist/useSignatureStatus.d.mts +9 -5
  166. package/dist/useSignatureStatus.d.ts +9 -5
  167. package/dist/useSignatureStatus.mjs +5 -4
  168. package/dist/useSolana.cjs +2 -1
  169. package/dist/useSolana.mjs +2 -1
  170. package/dist/useSolanaClient.cjs +3 -2
  171. package/dist/useSolanaClient.mjs +3 -2
  172. package/dist/useSubscription.cjs +9 -0
  173. package/dist/useSubscription.d.cts +58 -0
  174. package/dist/useSubscription.d.mts +58 -0
  175. package/dist/useSubscription.d.ts +58 -0
  176. package/dist/useSubscription.mjs +3 -0
  177. package/dist/useTokenAccounts.cjs +7 -6
  178. package/dist/useTokenAccounts.d.cts +6 -6
  179. package/dist/useTokenAccounts.d.mts +6 -6
  180. package/dist/useTokenAccounts.d.ts +6 -6
  181. package/dist/useTokenAccounts.mjs +7 -6
  182. package/dist/useTokenBalance.cjs +7 -6
  183. package/dist/useTokenBalance.d.cts +2 -2
  184. package/dist/useTokenBalance.d.mts +2 -2
  185. package/dist/useTokenBalance.d.ts +2 -2
  186. package/dist/useTokenBalance.mjs +7 -6
  187. package/dist/useTrackedData.cjs +10 -0
  188. package/dist/useTrackedData.d.cts +86 -0
  189. package/dist/useTrackedData.d.mts +86 -0
  190. package/dist/useTrackedData.d.ts +86 -0
  191. package/dist/useTrackedData.mjs +4 -0
  192. package/dist/useTransaction.cjs +2 -1
  193. package/dist/useTransaction.d.cts +13 -3
  194. package/dist/useTransaction.d.mts +13 -3
  195. package/dist/useTransaction.d.ts +13 -3
  196. package/dist/useTransaction.mjs +2 -1
  197. package/dist/useTransactionConfirmation.cjs +5 -4
  198. package/dist/useTransactionConfirmation.d.cts +18 -24
  199. package/dist/useTransactionConfirmation.d.mts +18 -24
  200. package/dist/useTransactionConfirmation.d.ts +18 -24
  201. package/dist/useTransactionConfirmation.mjs +5 -4
  202. package/dist/useWallet.cjs +3 -2
  203. package/dist/useWallet.d.cts +2 -2
  204. package/dist/useWallet.d.mts +2 -2
  205. package/dist/useWallet.d.ts +2 -2
  206. package/dist/useWallet.mjs +3 -2
  207. package/dist/useWallets.cjs +3 -2
  208. package/dist/useWallets.mjs +3 -2
  209. package/package.json +73 -9
  210. package/dist/shared/vue.C4d2JA8U.mjs +0 -44
  211. package/dist/shared/vue.CE5i8KZZ.cjs +0 -46
  212. package/dist/shared/vue.CfrVAzEf.mjs +0 -129
  213. package/dist/shared/vue.DCgByzxg.cjs +0 -9
  214. package/dist/shared/vue.DiNn3XHm.mjs +0 -7
  215. package/dist/shared/vue._CAClzAz.cjs +0 -131
  216. package/dist/web3.cjs +0 -13
  217. package/dist/web3.d.cts +0 -1
  218. package/dist/web3.d.mts +0 -1
  219. package/dist/web3.d.ts +0 -1
  220. package/dist/web3.mjs +0 -1
package/dist/index.d.ts CHANGED
@@ -1,31 +1,39 @@
1
- export { UseAccountInfoOptions, useAccountInfo } from './useAccountInfo.js';
2
- export { useBalance } from './useBalance.js';
1
+ export { AccountInfo, UseAccountInfoOptions, useAccountInfo } from './useAccountInfo.js';
2
+ export { UseActionOptions, UseActionReturn, UseActionStatus, useAction } from './useAction.js';
3
+ export { BalanceInput, useBalance } from './useBalance.js';
4
+ export { MissingClientCapabilityError, UseClientCapabilityOptions, useClientCapability } from './useClientCapability.js';
3
5
  export { useConnection } from './useConnection.js';
6
+ export { PlanTransactionConfig, PlanTransactionStatus, usePlanTransaction, usePlanTransactions } from './usePlanTransaction.js';
4
7
  export { ProgramAccount, ProgramAccountDataSizeFilter, ProgramAccountDataSlice, ProgramAccountFilter, ProgramAccountMemcmpEncoding, ProgramAccountMemcmpFilter, UseProgramAccountsOptions, useProgramAccounts } from './useProgramAccounts.js';
8
+ export { useIdentity, usePayer } from './usePayer.js';
9
+ export { UseRequestOptions, UseRequestReturn, UseRequestSource, UseRequestStatus, useRequest } from './useRequest.js';
5
10
  export { useRpc } from './useRpc.js';
11
+ export { SelectedWalletAccount, SelectedWalletAccountContext, SelectedWalletAccountOptions, SelectedWalletAccountProvider, WalletAccountFilter, createSelectedWalletAccountContext, provideSelectedWalletAccount, selectedWalletAccountInjectionKey, useSelectedWalletAccount } from './useSelectedWalletAccount.js';
6
12
  export { SignMessageStatus, useSignMessage } from './useSignMessage.js';
7
13
  export { SignAndSendTransactionOptions, SignAndSendTransactionStatus, useSignAndSendTransaction } from './useSignAndSendTransaction.js';
8
- export { UseSignatureStatusOptions, useSignatureStatus } from './useSignatureStatus.js';
14
+ export { SignTransactionsStatus, useSignTransactions } from './useSignTransactions.js';
15
+ export { PartialSignAndSendError, SignAndSendTransactionsStatus, useSignAndSendTransactions } from './useSignAndSendTransactions.js';
16
+ export { SignatureStatus, UseSignatureStatusOptions, useSignatureStatus } from './useSignatureStatus.js';
17
+ export { SignInStatus, useSignIn } from './useSignIn.js';
9
18
  export { tryUseSolana, useSolana } from './useSolana.js';
10
19
  export { useSolanaClient } from './useSolanaClient.js';
20
+ export { UseSubscriptionOptions, UseSubscriptionReturn, UseSubscriptionSource, UseSubscriptionStatus, useSubscription } from './useSubscription.js';
11
21
  export { UseTokenAccountsOptions, useTokenAccounts } from './useTokenAccounts.js';
12
22
  export { useTokenBalance } from './useTokenBalance.js';
23
+ export { UseTrackedDataInitialSource, UseTrackedDataOptions, UseTrackedDataReturn, UseTrackedDataSource, UseTrackedDataStatus, UseTrackedDataStreamSource, useTrackedData } from './useTrackedData.js';
13
24
  export { UseTransactionOptions, useTransaction } from './useTransaction.js';
14
25
  export { TransactionConfirmationStatus, getConfirmedTransactionStatus, useTransactionConfirmation } from './useTransactionConfirmation.js';
15
26
  export { useWallet } from './useWallet.js';
16
27
  export { useWallets } from './useWallets.js';
17
- export { S as SolanaConnectionStatus, V as VueSolanaContext, s as solanaInjectionKey } from './shared/vue.DL3z5PxP.js';
18
- export { Address, Lamports, Rpc, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
28
+ import { V as VueSolanaContext } from './shared/vue.DL3z5PxP.js';
29
+ export { S as SolanaConnectionStatus, s as solanaInjectionKey } from './shared/vue.DL3z5PxP.js';
30
+ export { Address, Commitment, Lamports, Rpc, Signature, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
19
31
  import { GetSolanaIosWalletsOptions } from '@vue-solana/core/ios-wallet';
20
32
  import { RegisterSolanaMobileWalletOptions } from '@vue-solana/core/mobile-wallet';
21
33
  import { SolanaConfig, SolanaWallet } from '@vue-solana/core/types';
22
34
  import { App } from 'vue';
23
- import '@vue-solana/core/address';
24
35
  import '@vue-solana/core/errors';
25
- import '@vue-solana/core/web3';
26
- import '@solana/web3-compat';
27
36
  import '@solana/kit';
28
- import '@vue-solana/core/spl-token';
29
37
  import '@vue-solana/core/token-accounts';
30
38
 
31
39
  interface VueSolanaPluginOptions extends SolanaConfig {
@@ -33,10 +41,18 @@ interface VueSolanaPluginOptions extends SolanaConfig {
33
41
  mobileWallet?: false | RegisterSolanaMobileWalletOptions;
34
42
  iosWallet?: false | GetSolanaIosWalletsOptions;
35
43
  }
36
- declare function createSolanaPlugin(options?: VueSolanaPluginOptions): {
44
+ interface VueSolanaPlugin {
45
+ /** Installs the plugin on a Vue app (called synchronously by `app.use`). */
37
46
  install(app: App): void;
38
- };
47
+ /**
48
+ * The app context built by `install`, available once `app.use(plugin)` has
49
+ * run. Lets framework integrations (e.g. the Nuxt module) hand the live
50
+ * context to consumers that run outside a component setup.
51
+ */
52
+ context: VueSolanaContext | null;
53
+ }
54
+ declare function createSolanaPlugin(options?: VueSolanaPluginOptions): VueSolanaPlugin;
39
55
  declare const VueSolana: typeof createSolanaPlugin;
40
56
 
41
- export { VueSolana, createSolanaPlugin };
42
- export type { VueSolanaPluginOptions };
57
+ export { VueSolana, VueSolanaContext, createSolanaPlugin };
58
+ export type { VueSolanaPlugin, VueSolanaPluginOptions };
package/dist/index.mjs CHANGED
@@ -1,20 +1,31 @@
1
- export { u as useAccountInfo } from './shared/vue.CfrVAzEf.mjs';
2
- export { u as useBalance } from './shared/vue.DDxhSi72.mjs';
3
- export { u as useConnection } from './shared/vue.DiNn3XHm.mjs';
4
- export { u as useProgramAccounts } from './shared/vue.CPjEwHSg.mjs';
5
- export { u as useRpc } from './shared/vue.BtUKvuQw.mjs';
6
- export { u as useSignMessage } from './shared/vue.CSzg70vB.mjs';
7
- export { u as useSignAndSendTransaction } from './shared/vue.CM_uqVc0.mjs';
8
- export { u as useSignatureStatus } from './shared/vue.B12Pt1PQ.mjs';
9
- import { s as solanaInjectionKey } from './shared/vue.CYKT65tB.mjs';
10
- export { t as tryUseSolana, u as useSolana } from './shared/vue.CYKT65tB.mjs';
11
- export { u as useSolanaClient } from './shared/vue.By1CUlOU.mjs';
12
- export { u as useTokenAccounts } from './shared/vue.CKTUFwSI.mjs';
13
- export { u as useTokenBalance } from './shared/vue.D0ycWj82.mjs';
14
- export { u as useTransaction } from './shared/vue.C4d2JA8U.mjs';
15
- export { g as getConfirmedTransactionStatus, u as useTransactionConfirmation } from './shared/vue.QHAHFnw8.mjs';
16
- export { u as useWallet } from './shared/vue.B2AQR2bE.mjs';
17
- export { u as useWallets } from './shared/vue.DFbay4mm.mjs';
1
+ export { u as useAccountInfo } from './shared/vue.BQRpjwKl.mjs';
2
+ export { u as useAction } from './shared/vue.DYk0Xfr3.mjs';
3
+ export { u as useBalance } from './shared/vue.BINkrA8h.mjs';
4
+ export { M as MissingClientCapabilityError, u as useClientCapability } from './shared/vue.B8LptjZP.mjs';
5
+ export { u as useConnection } from './shared/vue.CpkwC8Th.mjs';
6
+ export { u as usePlanTransaction, a as usePlanTransactions } from './shared/vue.C5FVoEZT.mjs';
7
+ export { u as useProgramAccounts } from './shared/vue.C13umiQi.mjs';
8
+ export { u as useIdentity, a as usePayer } from './shared/vue.CATOh_9G.mjs';
9
+ export { u as useRequest } from './shared/vue.DImwKTwJ.mjs';
10
+ export { u as useRpc } from './shared/vue.BsGwt78R.mjs';
11
+ export { S as SelectedWalletAccountProvider, c as createSelectedWalletAccountContext, p as provideSelectedWalletAccount, s as selectedWalletAccountInjectionKey, u as useSelectedWalletAccount } from './shared/vue.DXQVIRZA.mjs';
12
+ export { u as useSignMessage } from './shared/vue.JUWqu6kD.mjs';
13
+ export { u as useSignAndSendTransaction } from './shared/vue.Dyi1OCI1.mjs';
14
+ export { u as useSignTransactions } from './shared/vue.CMohL_Cz.mjs';
15
+ export { P as PartialSignAndSendError, u as useSignAndSendTransactions } from './shared/vue.D5U1yLG3.mjs';
16
+ export { u as useSignatureStatus } from './shared/vue.CXB4NEMA.mjs';
17
+ export { u as useSignIn } from './shared/vue.ByxbBC3y.mjs';
18
+ export { t as tryUseSolana, u as useSolana } from './shared/vue.CQh3AUE8.mjs';
19
+ export { u as useSolanaClient } from './shared/vue.Mxc8w6Qk.mjs';
20
+ export { u as useSubscription } from './shared/vue.B8ub540p.mjs';
21
+ export { u as useTokenAccounts } from './shared/vue.BOpgWr43.mjs';
22
+ export { u as useTokenBalance } from './shared/vue.BD6Gm1nl.mjs';
23
+ export { u as useTrackedData } from './shared/vue.CogzzQXM.mjs';
24
+ export { u as useTransaction } from './shared/vue.5euWd6-V.mjs';
25
+ export { g as getConfirmedTransactionStatus, u as useTransactionConfirmation } from './shared/vue.D3Y0PWbF.mjs';
26
+ export { u as useWallet } from './shared/vue.D218Ow7t.mjs';
27
+ export { u as useWallets } from './shared/vue.C_4qJDiF.mjs';
28
+ import { s as solanaInjectionKey } from './shared/vue.D_P5SqqD.mjs';
18
29
  export { address, createSolanaClient, lamports } from '@vue-solana/core/kit';
19
30
  import { createSolanaError, normalizeSolanaError } from '@vue-solana/core/errors';
20
31
  import { createSolanaContext } from '@vue-solana/core/rpc';
@@ -23,6 +34,8 @@ import { getRegisteredSolanaWallets, getSolanaChain, adaptSolanaStandardWallet,
23
34
  import { shallowRef, ref, triggerRef } from 'vue';
24
35
  import { handleSolanaIosWalletCallback, getSolanaIosWallets, isSolanaIosWalletInfo, adaptSolanaIosWallet } from '@vue-solana/core/ios-wallet';
25
36
  import '@vue-solana/core/address';
37
+ import './shared/vue.Bfu1dCKe.mjs';
38
+ import '@vue-solana/core/action';
26
39
  import '@vue-solana/core/wallet';
27
40
  import '@vue-solana/core/transaction';
28
41
  import 'bs58';
@@ -153,7 +166,10 @@ function createSolanaWalletRegistry(options) {
153
166
  signMessage: adaptedWallet.signMessage?.bind(adaptedWallet),
154
167
  signTransaction: adaptedWallet.signTransaction?.bind(adaptedWallet),
155
168
  signAllTransactions: adaptedWallet.signAllTransactions?.bind(adaptedWallet),
156
- signAndSendTransaction: adaptedWallet.signAndSendTransaction?.bind(adaptedWallet)
169
+ signAndSendTransaction: adaptedWallet.signAndSendTransaction?.bind(adaptedWallet),
170
+ signIn: adaptedWallet.signIn?.bind(adaptedWallet),
171
+ signTransactions: adaptedWallet.signTransactions?.bind(adaptedWallet),
172
+ signAndSendTransactions: adaptedWallet.signAndSendTransactions?.bind(adaptedWallet)
157
173
  };
158
174
  adaptedWallets.set(walletInfo.wallet, cachedAdapter);
159
175
  return cachedAdapter;
@@ -197,7 +213,8 @@ function isObject(value) {
197
213
 
198
214
  const RPC_CHECK_TIMEOUT_MS = 1e4;
199
215
  function createSolanaPlugin(options = {}) {
200
- return {
216
+ const plugin = {
217
+ context: null,
201
218
  install(app) {
202
219
  const context = createSolanaContext(options);
203
220
  const wallet = shallowRef(options.wallet ?? null);
@@ -226,13 +243,14 @@ function createSolanaPlugin(options = {}) {
226
243
  wsEndpoint: context.wsEndpoint
227
244
  });
228
245
  try {
229
- const blockhash = await withTimeout(
230
- context.connection.getLatestBlockhash(),
246
+ const response = await withTimeout(
247
+ context.client.rpc.getLatestBlockhash().send(),
231
248
  RPC_CHECK_TIMEOUT_MS,
232
249
  () => new Error(
233
250
  `RPC connection check timed out after ${RPC_CHECK_TIMEOUT_MS / 1e3} seconds.`
234
251
  )
235
252
  );
253
+ const blockhash = response.value;
236
254
  if (checkId !== rpcCheckId) {
237
255
  return;
238
256
  }
@@ -344,6 +362,7 @@ function createSolanaPlugin(options = {}) {
344
362
  }
345
363
  };
346
364
  app.provide(solanaInjectionKey, vueContext);
365
+ plugin.context = vueContext;
347
366
  if (typeof window !== "undefined") {
348
367
  window.setTimeout(() => {
349
368
  try {
@@ -356,6 +375,7 @@ function createSolanaPlugin(options = {}) {
356
375
  }
357
376
  }
358
377
  };
378
+ return plugin;
359
379
  }
360
380
  function isSameWallet(wallet, selectedWallet) {
361
381
  return wallet.name === selectedWallet?.name && wallet.source === selectedWallet.source && wallet.platform === selectedWallet.platform;
package/dist/kit.d.cts CHANGED
@@ -1 +1 @@
1
- export { Address, Lamports, Rpc, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
1
+ export { Address, Commitment, Lamports, Rpc, Signature, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
package/dist/kit.d.mts CHANGED
@@ -1 +1 @@
1
- export { Address, Lamports, Rpc, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
1
+ export { Address, Commitment, Lamports, Rpc, Signature, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
package/dist/kit.d.ts CHANGED
@@ -1 +1 @@
1
- export { Address, Lamports, Rpc, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
1
+ export { Address, Commitment, Lamports, Rpc, Signature, SolanaClient, SolanaRpcApi, address, createSolanaClient, lamports } from '@vue-solana/core/kit';
@@ -0,0 +1,59 @@
1
+ import { createSolanaActionStore, isSolanaActionAborted } from '@vue-solana/core/action';
2
+ import { normalizeSolanaError } from '@vue-solana/core/errors';
3
+ import { withSolanaTimeout } from '@vue-solana/core/timeout';
4
+ import { shallowRef, ref, getCurrentScope, onScopeDispose } from 'vue';
5
+
6
+ const DEFAULT_TIMEOUT_MESSAGE = "Transaction did not return a result before timing out.";
7
+ function useTransaction(handler, options = {}) {
8
+ const signature = shallowRef(null);
9
+ const loading = ref(false);
10
+ const error = ref(null);
11
+ const store = createSolanaActionStore(async (_signal, ...args) => {
12
+ const attempt = withSolanaTimeout(
13
+ handler(...args),
14
+ options.timeoutMs,
15
+ options.timeoutMessage ?? DEFAULT_TIMEOUT_MESSAGE
16
+ );
17
+ attempt.catch(() => void 0);
18
+ return attempt;
19
+ });
20
+ const unsubscribe = store.subscribe(() => {
21
+ const state = store.getState();
22
+ if (state.status === "running") {
23
+ loading.value = true;
24
+ } else if (state.status === "success") {
25
+ signature.value = state.data;
26
+ loading.value = false;
27
+ error.value = null;
28
+ } else if (state.status === "error") {
29
+ error.value = normalizeSolanaError(state.error, "RPC_FAILURE");
30
+ loading.value = false;
31
+ }
32
+ });
33
+ if (getCurrentScope()) {
34
+ onScopeDispose(() => {
35
+ unsubscribe();
36
+ store.reset();
37
+ });
38
+ }
39
+ async function execute(...args) {
40
+ loading.value = true;
41
+ error.value = null;
42
+ try {
43
+ return await store.dispatchAsync(...args);
44
+ } catch (cause) {
45
+ if (isSolanaActionAborted(cause)) {
46
+ throw cause;
47
+ }
48
+ throw normalizeSolanaError(cause, "RPC_FAILURE");
49
+ }
50
+ }
51
+ return {
52
+ signature,
53
+ loading,
54
+ error,
55
+ execute
56
+ };
57
+ }
58
+
59
+ export { useTransaction as u };
@@ -0,0 +1,59 @@
1
+ 'use strict';
2
+
3
+ const errors = require('@vue-solana/core/errors');
4
+ const wallet = require('@vue-solana/core/wallet');
5
+ const vue = require('vue');
6
+ const useWallet = require('./vue.BGxz4dru.cjs');
7
+
8
+ function useSignIn() {
9
+ const { wallet: wallet$1 } = useWallet.useWallet();
10
+ const signInResult = vue.shallowRef(null);
11
+ const status = vue.ref("idle");
12
+ const loading = vue.ref(false);
13
+ const error = vue.ref(null);
14
+ let executionId = 0;
15
+ async function signIn(input) {
16
+ const currentExecutionId = ++executionId;
17
+ status.value = "signing-in";
18
+ loading.value = true;
19
+ error.value = null;
20
+ signInResult.value = null;
21
+ const activeWallet = wallet$1.value;
22
+ if (!activeWallet) {
23
+ const normalizedError = wallet.createNoWalletSelectedError();
24
+ error.value = normalizedError;
25
+ status.value = "error";
26
+ loading.value = false;
27
+ throw normalizedError;
28
+ }
29
+ try {
30
+ wallet.assertWalletCanSignIn(activeWallet);
31
+ const result = await activeWallet.signIn(input);
32
+ if (currentExecutionId === executionId) {
33
+ signInResult.value = result;
34
+ status.value = "signed-in";
35
+ }
36
+ return result;
37
+ } catch (cause) {
38
+ const normalizedError = errors.normalizeSolanaError(cause, "RPC_FAILURE");
39
+ if (currentExecutionId === executionId) {
40
+ error.value = normalizedError;
41
+ status.value = "error";
42
+ }
43
+ throw normalizedError;
44
+ } finally {
45
+ if (currentExecutionId === executionId) {
46
+ loading.value = false;
47
+ }
48
+ }
49
+ }
50
+ return {
51
+ signInResult,
52
+ status,
53
+ loading,
54
+ error,
55
+ signIn
56
+ };
57
+ }
58
+
59
+ exports.useSignIn = useSignIn;
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+
3
+ const errors = require('@vue-solana/core/errors');
4
+ const vue = require('vue');
5
+ const useClientCapability = require('./vue.BY0qpgYr.cjs');
6
+ const useSolanaClient = require('./vue.BIxphCAq.cjs');
7
+
8
+ function usePlanTransaction() {
9
+ useClientCapability.useClientCapability(["planTransaction"], {
10
+ hookName: "usePlanTransaction",
11
+ providerHint: "Install a planner plugin, e.g. `createClient().use(rpcTransactionPlanner())` from `@solana/kit-plugin-rpc`."
12
+ });
13
+ const { client } = useSolanaClient.useSolanaClient();
14
+ const transactionMessage = vue.shallowRef(null);
15
+ const status = vue.ref("idle");
16
+ const loading = vue.ref(false);
17
+ const error = vue.ref(null);
18
+ let executionId = 0;
19
+ async function execute(input, config) {
20
+ const currentExecutionId = ++executionId;
21
+ const planner = client;
22
+ status.value = "planning";
23
+ loading.value = true;
24
+ error.value = null;
25
+ transactionMessage.value = null;
26
+ try {
27
+ const message = await planner.planTransaction(input, config);
28
+ if (currentExecutionId === executionId) {
29
+ transactionMessage.value = message;
30
+ status.value = "planned";
31
+ }
32
+ return message;
33
+ } catch (cause) {
34
+ const normalizedError = errors.normalizeSolanaError(cause, "RPC_FAILURE");
35
+ if (currentExecutionId === executionId) {
36
+ error.value = normalizedError;
37
+ status.value = "error";
38
+ }
39
+ throw normalizedError;
40
+ } finally {
41
+ if (currentExecutionId === executionId) {
42
+ loading.value = false;
43
+ }
44
+ }
45
+ }
46
+ return {
47
+ transactionMessage,
48
+ status,
49
+ loading,
50
+ error,
51
+ execute
52
+ };
53
+ }
54
+ function usePlanTransactions() {
55
+ useClientCapability.useClientCapability(["planTransactions"], {
56
+ hookName: "usePlanTransactions",
57
+ providerHint: "Install a planner plugin, e.g. `createClient().use(rpcTransactionPlanner())` from `@solana/kit-plugin-rpc`."
58
+ });
59
+ const { client } = useSolanaClient.useSolanaClient();
60
+ const transactionPlan = vue.shallowRef(null);
61
+ const status = vue.ref("idle");
62
+ const loading = vue.ref(false);
63
+ const error = vue.ref(null);
64
+ let executionId = 0;
65
+ async function execute(input, config) {
66
+ const currentExecutionId = ++executionId;
67
+ const planner = client;
68
+ status.value = "planning";
69
+ loading.value = true;
70
+ error.value = null;
71
+ transactionPlan.value = null;
72
+ try {
73
+ const plan = await planner.planTransactions(input, config);
74
+ if (currentExecutionId === executionId) {
75
+ transactionPlan.value = plan;
76
+ status.value = "planned";
77
+ }
78
+ return plan;
79
+ } catch (cause) {
80
+ const normalizedError = errors.normalizeSolanaError(cause, "RPC_FAILURE");
81
+ if (currentExecutionId === executionId) {
82
+ error.value = normalizedError;
83
+ status.value = "error";
84
+ }
85
+ throw normalizedError;
86
+ } finally {
87
+ if (currentExecutionId === executionId) {
88
+ loading.value = false;
89
+ }
90
+ }
91
+ }
92
+ return {
93
+ transactionPlan,
94
+ status,
95
+ loading,
96
+ error,
97
+ execute
98
+ };
99
+ }
100
+
101
+ exports.usePlanTransaction = usePlanTransaction;
102
+ exports.usePlanTransactions = usePlanTransactions;
@@ -3,7 +3,7 @@
3
3
  const errors = require('@vue-solana/core/errors');
4
4
  const wallet = require('@vue-solana/core/wallet');
5
5
  const vue = require('vue');
6
- const useWallet = require('./vue.BEesxsrA.cjs');
6
+ const useWallet = require('./vue.BGxz4dru.cjs');
7
7
 
8
8
  function useSignMessage() {
9
9
  const { wallet: wallet$1 } = useWallet.useWallet();
@@ -0,0 +1,32 @@
1
+ import { u as useSolanaClient } from './vue.Mxc8w6Qk.mjs';
2
+
3
+ class MissingClientCapabilityError extends Error {
4
+ /** Name of the hook that requested the capability, e.g. `usePayer`. */
5
+ hookName;
6
+ /** Human guidance for installing the capability on the client. */
7
+ providerHint;
8
+ /** The missing capability name(s). */
9
+ capabilities;
10
+ constructor(hookName, capabilities, providerHint) {
11
+ super(
12
+ `${hookName} requires the ${capabilities.map((capability) => `\`${capability}\``).join(" and ")} capabilit${capabilities.length === 1 ? "y" : "ies"} on the Solana client, but none ${capabilities.length === 1 ? "was" : "were"} found. ` + providerHint
13
+ );
14
+ this.name = "MissingClientCapabilityError";
15
+ this.hookName = hookName;
16
+ this.capabilities = capabilities;
17
+ this.providerHint = providerHint;
18
+ }
19
+ }
20
+ function useClientCapability(capability, options = {}) {
21
+ const capabilities = Array.isArray(capability) ? [...capability] : [capability];
22
+ const hookName = options.hookName ?? "useClientCapability";
23
+ const providerHint = options.providerHint ?? "Install it by adding the corresponding @solana/kit plugin with `createClient().use(...)`.";
24
+ const { client } = useSolanaClient();
25
+ for (const name of capabilities) {
26
+ if (typeof client[name] === "undefined") {
27
+ throw new MissingClientCapabilityError(hookName, [name], providerHint);
28
+ }
29
+ }
30
+ }
31
+
32
+ export { MissingClientCapabilityError as M, useClientCapability as u };
@@ -0,0 +1,105 @@
1
+ 'use strict';
2
+
3
+ const action = require('@vue-solana/core/action');
4
+ const kit = require('@vue-solana/core/kit');
5
+ const errors = require('@vue-solana/core/errors');
6
+ const vue = require('vue');
7
+
8
+ function useRequest(source, options = {}) {
9
+ const data = vue.shallowRef(void 0);
10
+ const error = vue.shallowRef(null);
11
+ const status = vue.shallowRef("fetching");
12
+ let disposed = false;
13
+ let attempt = 0;
14
+ const store = action.createSolanaActionStore(
15
+ async (signal, resolved) => {
16
+ attempt += 1;
17
+ const callerSignal = options.getAbortSignal?.(attempt);
18
+ const composedSignal = callerSignal ? AbortSignal.any([signal, callerSignal]) : signal;
19
+ let pending;
20
+ if (isSendSource(resolved)) {
21
+ pending = Promise.resolve(resolved.send({ abortSignal: composedSignal }));
22
+ } else if (typeof resolved === "function") {
23
+ pending = Promise.resolve(resolved(composedSignal)).then(
24
+ (result) => isSendSource(result) ? result.send({ abortSignal: composedSignal }) : result
25
+ );
26
+ } else {
27
+ throw new Error("useRequest source did not resolve to a request function");
28
+ }
29
+ return kit.getAbortablePromise(pending, composedSignal);
30
+ }
31
+ );
32
+ const unsubscribe = store.subscribe(() => {
33
+ const next = store.getState();
34
+ if (next.status === "success") {
35
+ data.value = next.data;
36
+ error.value = null;
37
+ status.value = "success";
38
+ } else if (next.status === "error") {
39
+ error.value = errors.normalizeSolanaError(next.error, "RPC_FAILURE");
40
+ status.value = "error";
41
+ } else if (next.status === "running") {
42
+ status.value = "fetching";
43
+ }
44
+ });
45
+ vue.onScopeDispose(() => {
46
+ disposed = true;
47
+ unsubscribe();
48
+ store.reset();
49
+ });
50
+ function unwrapSource() {
51
+ if (vue.isRef(source)) {
52
+ return source.value;
53
+ }
54
+ return source;
55
+ }
56
+ async function run() {
57
+ if (disposed) {
58
+ return void 0;
59
+ }
60
+ const resolved = unwrapSource();
61
+ if (isDisabled(resolved)) {
62
+ data.value = void 0;
63
+ error.value = null;
64
+ status.value = "disabled";
65
+ store.reset();
66
+ return void 0;
67
+ }
68
+ status.value = "fetching";
69
+ try {
70
+ return await store.dispatchAsync(resolved);
71
+ } catch (cause) {
72
+ if (store.getState().status !== "error") {
73
+ return void 0;
74
+ }
75
+ throw errors.normalizeSolanaError(cause, "RPC_FAILURE");
76
+ }
77
+ }
78
+ const refresh = () => run();
79
+ vue.watch(
80
+ () => vue.isRef(source) ? source.value : source,
81
+ () => {
82
+ void refresh().catch(() => void 0);
83
+ }
84
+ );
85
+ vue.onMounted(() => {
86
+ void refresh().catch(() => void 0);
87
+ });
88
+ if (!vue.getCurrentInstance()) {
89
+ void refresh().catch(() => void 0);
90
+ }
91
+ return {
92
+ data: vue.computed(() => data.value),
93
+ error: vue.computed(() => error.value),
94
+ refresh,
95
+ status: vue.computed(() => status.value)
96
+ };
97
+ }
98
+ function isDisabled(resolved) {
99
+ return resolved === null || resolved === void 0;
100
+ }
101
+ function isSendSource(resolved) {
102
+ return typeof resolved === "object" && resolved !== null && "send" in resolved && typeof resolved.send === "function";
103
+ }
104
+
105
+ exports.useRequest = useRequest;