@vue-solana/nuxt 2.2.0 → 2.4.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/README.md +65 -49
- package/dist/module.cjs +14 -7
- package/dist/module.d.cts +8 -1
- package/dist/module.d.mts +8 -1
- package/dist/module.d.ts +8 -1
- package/dist/module.mjs +14 -7
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -23,6 +23,7 @@ New to Solana? Start with the official docs and the project concepts guide:
|
|
|
23
23
|
|
|
24
24
|
- Installs the Vue Solana plugin automatically.
|
|
25
25
|
- Auto-imports Solana RPC, wallet, account, token, message signing, live data, and transaction composables.
|
|
26
|
+
- Builds the default client with the official Kit RPC planner and transaction-sending executor; payer secrets are never accepted through public runtime config.
|
|
26
27
|
- Uses direct Vue package subpaths to avoid pulling unrelated runtime code into Nuxt bundles.
|
|
27
28
|
- Client-only runtime plugin with SSR-safe inert composable state before hydration.
|
|
28
29
|
- Unified wallet discovery for browser extensions, Android Mobile Wallet Adapter, and supported iOS browser wallets.
|
|
@@ -31,12 +32,12 @@ New to Solana? Start with the official docs and the project concepts guide:
|
|
|
31
32
|
|
|
32
33
|
## Compatibility
|
|
33
34
|
|
|
34
|
-
| Requirement | Supported
|
|
35
|
-
| ------------- |
|
|
36
|
-
| Nuxt | `^3.0.0 \|\| ^4.0.0`
|
|
37
|
-
| TypeScript | TypeScript 5.x recommended
|
|
38
|
-
| Solana client | Provided through `@vue-solana/core`
|
|
39
|
-
| Clusters | `mainnet-beta
|
|
35
|
+
| Requirement | Supported |
|
|
36
|
+
| ------------- | ----------------------------------------------------------------- |
|
|
37
|
+
| Nuxt | `^3.0.0 \|\| ^4.0.0` |
|
|
38
|
+
| TypeScript | TypeScript 5.x recommended |
|
|
39
|
+
| Solana client | Provided through `@vue-solana/core` |
|
|
40
|
+
| Clusters | `mainnet` (alias `mainnet-beta`), `devnet`, `testnet`, `localnet` |
|
|
40
41
|
|
|
41
42
|
## Install
|
|
42
43
|
|
|
@@ -63,28 +64,31 @@ You can also configure a custom RPC endpoint:
|
|
|
63
64
|
export default defineNuxtConfig({
|
|
64
65
|
modules: ["@vue-solana/nuxt"],
|
|
65
66
|
solana: {
|
|
66
|
-
cluster: "mainnet
|
|
67
|
+
cluster: "mainnet",
|
|
67
68
|
endpoint: "https://your-rpc.example.com",
|
|
68
69
|
commitment: "confirmed",
|
|
69
70
|
},
|
|
70
71
|
});
|
|
71
72
|
```
|
|
72
73
|
|
|
73
|
-
Supported clusters are `mainnet-beta
|
|
74
|
+
Supported clusters are `mainnet` (legacy alias `mainnet-beta`), `devnet`, `testnet`, and `localnet`. Use `mainnet` for Solana mainnet; this is Solana's official mainnet cluster name.
|
|
74
75
|
|
|
75
76
|
Nuxt module options are stored in public runtime config, so they must be JSON-serializable. Custom `wallet` adapter objects are intentionally excluded from Nuxt config; use the Vue plugin directly in client-only Vue code if you need to inject a custom wallet object.
|
|
76
77
|
|
|
78
|
+
`ModuleOptions` also intentionally omits `payer` and `payerSecretKey`. Direct core/Vue clients support both, but the Nuxt module does not forward either field and strips it from public runtime config. Never put a raw secret, seed phrase, or `payerSecretKey` in `nuxt.config.ts` or `runtimeConfig.public`: those values are visible in the browser. For a client-owned signer, install a `payer` in a client-only plugin and set `clientPlugin: false` so the module does not install a second plugin; a client-sent transaction always needs one.
|
|
79
|
+
|
|
77
80
|
### Module Options
|
|
78
81
|
|
|
79
|
-
| Option | Type
|
|
80
|
-
| -------------- |
|
|
81
|
-
| `cluster` | `"mainnet-beta" \| "devnet" \| "testnet" \| "localnet"` | `"devnet"` | Solana cluster used when `endpoint` is omitted. |
|
|
82
|
-
| `endpoint` | `string`
|
|
83
|
-
| `wsEndpoint` | `string`
|
|
84
|
-
| `commitment` | Solana commitment
|
|
85
|
-
| `autoConnect` | `boolean`
|
|
86
|
-
| `mobileWallet` | JSON-serializable mobile wallet options or `false`
|
|
87
|
-
| `iosWallet` | JSON-serializable iOS wallet options or `false`
|
|
82
|
+
| Option | Type | Default | Description |
|
|
83
|
+
| -------------- | -------------------------------------------------------------------- | ------------------------------------ | --------------------------------------------------------------------------------------------- |
|
|
84
|
+
| `cluster` | `"mainnet" \| "mainnet-beta" \| "devnet" \| "testnet" \| "localnet"` | `"devnet"` | Solana cluster used when `endpoint` is omitted. |
|
|
85
|
+
| `endpoint` | `string` | Public endpoint for `cluster` | HTTP RPC endpoint. Use a dedicated RPC provider for production apps. |
|
|
86
|
+
| `wsEndpoint` | `string` | Derived from `endpoint` | WebSocket RPC endpoint. |
|
|
87
|
+
| `commitment` | Solana commitment | Solana client default | Default commitment for created connections. |
|
|
88
|
+
| `autoConnect` | `boolean` | `false` | Reconnects only a previously selected discovered wallet identity when it is discovered again. |
|
|
89
|
+
| `mobileWallet` | JSON-serializable mobile wallet options or `false` | Enabled on supported Android clients | Configures or disables Android Mobile Wallet Adapter registration. |
|
|
90
|
+
| `iosWallet` | JSON-serializable iOS wallet options or `false` | Enabled on iOS browsers | Configures or disables iOS browser wallet universal links (Phantom, Solflare, Backpack). |
|
|
91
|
+
| `clientPlugin` | `boolean` | `true` | Set to `false` to skip the module's runtime plugin and install `createSolanaPlugin` yourself. |
|
|
88
92
|
|
|
89
93
|
For development, use `devnet` and request free test SOL from the official faucet:
|
|
90
94
|
|
|
@@ -124,37 +128,43 @@ The module auto-imports these composables from direct `@vue-solana/vue/*` subpat
|
|
|
124
128
|
- `useSolanaIdentity()`
|
|
125
129
|
- `useSolanaPlanTransaction()`
|
|
126
130
|
- `useSolanaPlanTransactions()`
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
|
131
|
-
|
|
|
132
|
-
| `
|
|
133
|
-
| `
|
|
134
|
-
| `
|
|
135
|
-
| `
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
140
|
-
| `
|
|
141
|
-
| `
|
|
142
|
-
| `
|
|
143
|
-
| `
|
|
144
|
-
| `
|
|
145
|
-
| `
|
|
146
|
-
| `
|
|
147
|
-
| `
|
|
148
|
-
| `
|
|
149
|
-
| `
|
|
150
|
-
| `
|
|
151
|
-
| `
|
|
152
|
-
| `
|
|
153
|
-
| `
|
|
154
|
-
| `
|
|
155
|
-
| `
|
|
156
|
-
| `
|
|
157
|
-
| `
|
|
131
|
+
- `useSolanaSendTransaction()`
|
|
132
|
+
- `useSolanaSendTransactions()`
|
|
133
|
+
|
|
134
|
+
| Composable | Purpose |
|
|
135
|
+
| ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
136
|
+
| `useSolana()` | Full Solana context. |
|
|
137
|
+
| `useSolanaClient()` | Reactive Kit RPC client and its compositions. |
|
|
138
|
+
| `useSolanaRpc()` | Cluster, endpoint, connection status, latest blockhash, and `checkConnection()`. |
|
|
139
|
+
| `useSolanaConnection()` | Deprecated alias for the Kit client returned by `useSolanaClient()`. |
|
|
140
|
+
| `useSolanaAccountInfo()` | Account info reads and optional subscriptions. |
|
|
141
|
+
| `useSolanaAirdrop()` | Airdrops SOL into an account on test networks and local validators. |
|
|
142
|
+
| `useSolanaBalance()` | Lamport balance reads. |
|
|
143
|
+
| `useSolanaProgramAccounts()` | Program account scans with filters and `dataSlice`. |
|
|
144
|
+
| `useSolanaTokenAccounts()` | SPL token account reads for an owner. |
|
|
145
|
+
| `useSolanaTokenBalance()` | SPL token balance reads for a mint/owner pair. |
|
|
146
|
+
| `useSolanaWallet()` | Active wallet state and connect/disconnect actions. |
|
|
147
|
+
| `useSolanaWallets()` | Wallet discovery, selected wallet state, and selection actions. |
|
|
148
|
+
| `useSolanaSignMessage()` | Wallet message signing. |
|
|
149
|
+
| `useSolanaSignIn()` | Sign In With Solana (SIWS) trigger returning a server-verifiable result. |
|
|
150
|
+
| `useSolanaSignAndSendTransaction()` | Wallet transaction signing, sending, and optional confirmation. |
|
|
151
|
+
| `useSolanaSignTransactions()` | Batch transaction signing (falls back to `signAllTransactions`). |
|
|
152
|
+
| `useSolanaSignAndSendTransactions()` | Batch sign-and-send returning one signature per transaction. |
|
|
153
|
+
| `useSolanaTransactionConfirmation()` | Confirmation state for an already submitted signature. |
|
|
154
|
+
| `useSolanaSignatureStatus()` | Signature status reads with optional polling or websocket subscription. |
|
|
155
|
+
| `useSolanaAction()` | Generic async action state machine; each dispatch aborts the prior attempt. |
|
|
156
|
+
| `useSolanaRequest()` | One-shot Kit request with stale-while-revalidate as its source changes. |
|
|
157
|
+
| `useSolanaSubscription()` | Live data over a Kit reactive stream store (e.g. RPC subscriptions). |
|
|
158
|
+
| `useSolanaTrackedData()` | Slot-deduplicated fetch plus subscription over Kit's slot-tracking store. |
|
|
159
|
+
| `useSolanaSelectedWalletAccount()` | App-wide selected wallet account context provided by the runtime plugin. |
|
|
160
|
+
| `useSolanaPayer()` | Reactive Kit client `payer` signer ref. Nuxt config intentionally does not provide one; use a client-only plugin with `clientPlugin: false`. |
|
|
161
|
+
| `useSolanaIdentity()` | Reactive Kit client `identity` signer ref. |
|
|
162
|
+
| `useSolanaPlanTransaction()` | Plans a single transaction message from instruction inputs without signing. |
|
|
163
|
+
| `useSolanaPlanTransactions()` | Plans a batch of transaction messages from instruction inputs. |
|
|
164
|
+
| `useSolanaSendTransaction()` | Plans, signs, submits, and confirms one transaction through the client. |
|
|
165
|
+
| `useSolanaSendTransactions()` | Sends a batch of transactions (parallel or sequential) through the client. |
|
|
166
|
+
|
|
167
|
+
The default client built by the module composes the official `solanaRpc()`, `rpcTransactionPlanner()`, and `rpcTransactionPlanSendingExecutor()` plugins. The old custom fallback sender is not used. `useSolanaSendTransaction()` and `useSolanaSendTransactions()` therefore use the official client-sending capability, but the module does not configure a payer because `payer` and `payerSecretKey` are omitted from `ModuleOptions`. Their `sent` status is reached after the official executor completes its send-and-confirm operation at `confirmed` commitment.
|
|
158
168
|
|
|
159
169
|
The runtime plugin is client-only. Auto-imported composables can be called during SSR and return inert state until hydration provides the real client context. Trigger RPC and wallet work from client lifecycle hooks or user actions.
|
|
160
170
|
|
|
@@ -282,6 +292,12 @@ async function signIn() {
|
|
|
282
292
|
|
|
283
293
|
Message signing is for wallet ownership or authentication challenges. It is separate from transaction signing and does not authorize on-chain activity. For auth flows, use a server-issued nonce and verify the returned signature server-side.
|
|
284
294
|
|
|
295
|
+
## Client-Sent Transactions
|
|
296
|
+
|
|
297
|
+
`useSolanaSendTransaction()` and `useSolanaSendTransactions()` use the official Kit transaction-sending capability installed by the default module client. The RPC executor plans, signs, submits, and waits for `confirmed` commitment without a wallet popup, so the composable reports `sent` only after send-and-confirm completes. Install a client-owned `payer` in a client-only Vue plugin with `clientPlugin: false`; do not put `payerSecretKey` or any raw secret in public runtime config.
|
|
298
|
+
|
|
299
|
+
The wallet flow remains separate: `useSolanaSignAndSendTransaction()` can return after RPC submission by default, or wait for a selected commitment when `confirm: true` is passed. Keep that flow when the connected user must approve each transaction.
|
|
300
|
+
|
|
285
301
|
## Example App
|
|
286
302
|
|
|
287
303
|
This README includes small snippets for quick reference. For a complete runnable Nuxt flow, see the example app:
|
|
@@ -310,7 +326,7 @@ Docs: [Vue Solana Agent Skill](https://vue-solana-docs.vercel.app/agent-skill)
|
|
|
310
326
|
- Nuxt module options are stored in public runtime config, so they must be JSON-serializable.
|
|
311
327
|
- Public Solana RPC endpoints are useful for development, but production apps should use dedicated RPC infrastructure.
|
|
312
328
|
- Broad `useSolanaProgramAccounts()` scans can be expensive or blocked on public RPC nodes. Prefer narrow filters and `dataSlice`.
|
|
313
|
-
- Use `mainnet
|
|
329
|
+
- 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.
|
|
314
330
|
- Desktop native app wallets are planned but not implemented yet.
|
|
315
331
|
|
|
316
332
|
## Status
|
package/dist/module.cjs
CHANGED
|
@@ -17,6 +17,8 @@ const SOLANA_COMPOSABLE_IMPORTS = [
|
|
|
17
17
|
["useRequest", "useSolanaRequest"],
|
|
18
18
|
["useRpc", "useSolanaRpc"],
|
|
19
19
|
["useSelectedWalletAccount", "useSolanaSelectedWalletAccount"],
|
|
20
|
+
["useSendTransaction", "useSolanaSendTransaction"],
|
|
21
|
+
["useSendTransactions", "useSolanaSendTransactions"],
|
|
20
22
|
["useSignIn", "useSolanaSignIn"],
|
|
21
23
|
["useSignMessage", "useSolanaSignMessage"],
|
|
22
24
|
["useSignAndSendTransaction", "useSolanaSignAndSendTransaction"],
|
|
@@ -66,10 +68,10 @@ const module$1 = kit.defineNuxtModule({
|
|
|
66
68
|
setup(options, nuxt) {
|
|
67
69
|
const resolver = kit.createResolver((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('module.cjs', document.baseURI).href)));
|
|
68
70
|
const publicConfig = nuxt.options.runtimeConfig.public;
|
|
69
|
-
publicConfig.solana = {
|
|
71
|
+
publicConfig.solana = toPublicSolanaConfig({
|
|
70
72
|
...typeof publicConfig.solana === "object" && publicConfig.solana !== null ? publicConfig.solana : {},
|
|
71
|
-
...
|
|
72
|
-
};
|
|
73
|
+
...options
|
|
74
|
+
});
|
|
73
75
|
mergeViteOptimizeDeps(nuxt.options.vite);
|
|
74
76
|
nuxt.hook("vite:extendConfig", (config, { isClient }) => {
|
|
75
77
|
if (!isClient) {
|
|
@@ -80,16 +82,21 @@ const module$1 = kit.defineNuxtModule({
|
|
|
80
82
|
mergeViteOptimizeDeps(config.environments.client);
|
|
81
83
|
}
|
|
82
84
|
});
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
if (options.clientPlugin !== false) {
|
|
86
|
+
kit.addPlugin({
|
|
87
|
+
src: resolver.resolve("./runtime/plugin"),
|
|
88
|
+
mode: "client"
|
|
89
|
+
});
|
|
90
|
+
}
|
|
87
91
|
kit.addImports(SOLANA_IMPORTS);
|
|
88
92
|
}
|
|
89
93
|
});
|
|
90
94
|
function toPublicSolanaConfig(options) {
|
|
91
95
|
const runtimeOptions = { ...options };
|
|
92
96
|
delete runtimeOptions.wallet;
|
|
97
|
+
delete runtimeOptions.payer;
|
|
98
|
+
delete runtimeOptions.payerSecretKey;
|
|
99
|
+
delete runtimeOptions.clientPlugin;
|
|
93
100
|
return runtimeOptions;
|
|
94
101
|
}
|
|
95
102
|
function mergeViteOptimizeDeps(target) {
|
package/dist/module.d.cts
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { defineNuxtModule } from '@nuxt/kit';
|
|
2
2
|
import { VueSolanaPluginOptions } from '@vue-solana/vue';
|
|
3
3
|
|
|
4
|
-
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet"
|
|
4
|
+
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet" | "payer" | "payerSecretKey"> & {
|
|
5
|
+
/**
|
|
6
|
+
* Set to `false` to auto-import the composables without installing the Solana
|
|
7
|
+
* runtime plugin. Use it when the app installs `createSolanaPlugin` itself,
|
|
8
|
+
* e.g. to attach a client-only `payer` that module options cannot carry.
|
|
9
|
+
*/
|
|
10
|
+
clientPlugin?: boolean;
|
|
11
|
+
};
|
|
5
12
|
type DefinedNuxtModule = ReturnType<ReturnType<typeof defineNuxtModule<ModuleOptions>>["with"]>;
|
|
6
13
|
declare const module$1: DefinedNuxtModule;
|
|
7
14
|
|
package/dist/module.d.mts
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { defineNuxtModule } from '@nuxt/kit';
|
|
2
2
|
import { VueSolanaPluginOptions } from '@vue-solana/vue';
|
|
3
3
|
|
|
4
|
-
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet"
|
|
4
|
+
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet" | "payer" | "payerSecretKey"> & {
|
|
5
|
+
/**
|
|
6
|
+
* Set to `false` to auto-import the composables without installing the Solana
|
|
7
|
+
* runtime plugin. Use it when the app installs `createSolanaPlugin` itself,
|
|
8
|
+
* e.g. to attach a client-only `payer` that module options cannot carry.
|
|
9
|
+
*/
|
|
10
|
+
clientPlugin?: boolean;
|
|
11
|
+
};
|
|
5
12
|
type DefinedNuxtModule = ReturnType<ReturnType<typeof defineNuxtModule<ModuleOptions>>["with"]>;
|
|
6
13
|
declare const module$1: DefinedNuxtModule;
|
|
7
14
|
|
package/dist/module.d.ts
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { defineNuxtModule } from '@nuxt/kit';
|
|
2
2
|
import { VueSolanaPluginOptions } from '@vue-solana/vue';
|
|
3
3
|
|
|
4
|
-
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet"
|
|
4
|
+
type ModuleOptions = Omit<VueSolanaPluginOptions, "wallet" | "payer" | "payerSecretKey"> & {
|
|
5
|
+
/**
|
|
6
|
+
* Set to `false` to auto-import the composables without installing the Solana
|
|
7
|
+
* runtime plugin. Use it when the app installs `createSolanaPlugin` itself,
|
|
8
|
+
* e.g. to attach a client-only `payer` that module options cannot carry.
|
|
9
|
+
*/
|
|
10
|
+
clientPlugin?: boolean;
|
|
11
|
+
};
|
|
5
12
|
type DefinedNuxtModule = ReturnType<ReturnType<typeof defineNuxtModule<ModuleOptions>>["with"]>;
|
|
6
13
|
declare const module$1: DefinedNuxtModule;
|
|
7
14
|
|
package/dist/module.mjs
CHANGED
|
@@ -14,6 +14,8 @@ const SOLANA_COMPOSABLE_IMPORTS = [
|
|
|
14
14
|
["useRequest", "useSolanaRequest"],
|
|
15
15
|
["useRpc", "useSolanaRpc"],
|
|
16
16
|
["useSelectedWalletAccount", "useSolanaSelectedWalletAccount"],
|
|
17
|
+
["useSendTransaction", "useSolanaSendTransaction"],
|
|
18
|
+
["useSendTransactions", "useSolanaSendTransactions"],
|
|
17
19
|
["useSignIn", "useSolanaSignIn"],
|
|
18
20
|
["useSignMessage", "useSolanaSignMessage"],
|
|
19
21
|
["useSignAndSendTransaction", "useSolanaSignAndSendTransaction"],
|
|
@@ -63,10 +65,10 @@ const module$1 = defineNuxtModule({
|
|
|
63
65
|
setup(options, nuxt) {
|
|
64
66
|
const resolver = createResolver(import.meta.url);
|
|
65
67
|
const publicConfig = nuxt.options.runtimeConfig.public;
|
|
66
|
-
publicConfig.solana = {
|
|
68
|
+
publicConfig.solana = toPublicSolanaConfig({
|
|
67
69
|
...typeof publicConfig.solana === "object" && publicConfig.solana !== null ? publicConfig.solana : {},
|
|
68
|
-
...
|
|
69
|
-
};
|
|
70
|
+
...options
|
|
71
|
+
});
|
|
70
72
|
mergeViteOptimizeDeps(nuxt.options.vite);
|
|
71
73
|
nuxt.hook("vite:extendConfig", (config, { isClient }) => {
|
|
72
74
|
if (!isClient) {
|
|
@@ -77,16 +79,21 @@ const module$1 = defineNuxtModule({
|
|
|
77
79
|
mergeViteOptimizeDeps(config.environments.client);
|
|
78
80
|
}
|
|
79
81
|
});
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
if (options.clientPlugin !== false) {
|
|
83
|
+
addPlugin({
|
|
84
|
+
src: resolver.resolve("./runtime/plugin"),
|
|
85
|
+
mode: "client"
|
|
86
|
+
});
|
|
87
|
+
}
|
|
84
88
|
addImports(SOLANA_IMPORTS);
|
|
85
89
|
}
|
|
86
90
|
});
|
|
87
91
|
function toPublicSolanaConfig(options) {
|
|
88
92
|
const runtimeOptions = { ...options };
|
|
89
93
|
delete runtimeOptions.wallet;
|
|
94
|
+
delete runtimeOptions.payer;
|
|
95
|
+
delete runtimeOptions.payerSecretKey;
|
|
96
|
+
delete runtimeOptions.clientPlugin;
|
|
90
97
|
return runtimeOptions;
|
|
91
98
|
}
|
|
92
99
|
function mergeViteOptimizeDeps(target) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vue-solana/nuxt",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"description": "Nuxt module for Solana applications.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"access": "public"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@vue-solana/vue": "2.
|
|
50
|
+
"@vue-solana/vue": "2.4.0"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"nuxt": "^3.0.0 || ^4.0.0"
|