@phantom/server-sdk 1.0.0-beta.9 → 1.0.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 +63 -9
- package/dist/index.d.ts +2 -1
- package/dist/index.js +33 -25
- package/dist/index.mjs +37 -33
- package/package.json +12 -7
package/README.md
CHANGED
|
@@ -126,7 +126,7 @@ console.log("Ethereum address:", ethereumAddress);
|
|
|
126
126
|
The Server SDK provides two methods for handling transactions:
|
|
127
127
|
|
|
128
128
|
1. **`signTransaction(params)`** - Signs a transaction without submitting it to the network
|
|
129
|
-
- Returns the signed transaction
|
|
129
|
+
- Returns the signed transaction
|
|
130
130
|
- No network interaction
|
|
131
131
|
- Useful for offline signing or when you want to broadcast later
|
|
132
132
|
|
|
@@ -311,7 +311,7 @@ const customAddresses = await sdk.getWalletAddresses(
|
|
|
311
311
|
|
|
312
312
|
## Network Support
|
|
313
313
|
|
|
314
|
-
The SDK
|
|
314
|
+
The Server SDK uses the `NetworkId` enum to identify blockchain networks for signing transactions and messages.
|
|
315
315
|
|
|
316
316
|
### Solana Networks
|
|
317
317
|
|
|
@@ -322,21 +322,75 @@ The SDK supports multiple blockchain networks through the `NetworkId` enum:
|
|
|
322
322
|
### Ethereum Networks
|
|
323
323
|
|
|
324
324
|
- `NetworkId.ETHEREUM_MAINNET` - Ethereum Mainnet
|
|
325
|
-
- `NetworkId.ETHEREUM_GOERLI` - Goerli Testnet
|
|
326
325
|
- `NetworkId.ETHEREUM_SEPOLIA` - Sepolia Testnet
|
|
327
326
|
|
|
328
|
-
###
|
|
327
|
+
### Polygon Networks
|
|
329
328
|
|
|
330
|
-
- `NetworkId.POLYGON_MAINNET` - Polygon Mainnet
|
|
331
|
-
- `NetworkId.
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
329
|
+
- `NetworkId.POLYGON_MAINNET` - Polygon Mainnet (Chain ID: 137)
|
|
330
|
+
- `NetworkId.POLYGON_AMOY` - Polygon Amoy Testnet (Chain ID: 80002)
|
|
331
|
+
|
|
332
|
+
### Base Networks
|
|
333
|
+
|
|
334
|
+
- `NetworkId.BASE_MAINNET` - Base Mainnet (Chain ID: 8453)
|
|
335
|
+
- `NetworkId.BASE_SEPOLIA` - Base Sepolia Testnet (Chain ID: 84532)
|
|
336
|
+
|
|
337
|
+
### Arbitrum Networks
|
|
338
|
+
|
|
339
|
+
- `NetworkId.ARBITRUM_ONE` - Arbitrum One (Chain ID: 42161)
|
|
340
|
+
- `NetworkId.ARBITRUM_SEPOLIA` - Arbitrum Sepolia Testnet (Chain ID: 421614)
|
|
341
|
+
|
|
342
|
+
### Monad Networks
|
|
343
|
+
|
|
344
|
+
- `NetworkId.MONAD_MAINNET` - Monad Mainnet (Chain ID: 143)
|
|
345
|
+
- `NetworkId.MONAD_TESTNET` - Monad Testnet (Chain ID: 10143)
|
|
335
346
|
|
|
336
347
|
### Future Support
|
|
337
348
|
|
|
338
349
|
- `NetworkId.BITCOIN_MAINNET` - Bitcoin Mainnet
|
|
350
|
+
- `NetworkId.BITCOIN_TESTNET` - Bitcoin Testnet
|
|
339
351
|
- `NetworkId.SUI_MAINNET` - Sui Mainnet
|
|
352
|
+
- `NetworkId.SUI_TESTNET` - Sui Testnet
|
|
353
|
+
- `NetworkId.SUI_DEVNET` - Sui Devnet
|
|
354
|
+
|
|
355
|
+
### Usage Examples
|
|
356
|
+
|
|
357
|
+
```typescript
|
|
358
|
+
import { ServerSDK, NetworkId } from "@phantom/server-sdk";
|
|
359
|
+
|
|
360
|
+
const sdk = new ServerSDK({
|
|
361
|
+
organizationId: process.env.ORGANIZATION_ID!,
|
|
362
|
+
appId: process.env.APP_ID!,
|
|
363
|
+
apiPrivateKey: process.env.PRIVATE_KEY!,
|
|
364
|
+
});
|
|
365
|
+
|
|
366
|
+
// Sign a message on Solana
|
|
367
|
+
await sdk.signMessage({
|
|
368
|
+
walletId: wallet.walletId,
|
|
369
|
+
message: "Hello from Phantom!",
|
|
370
|
+
networkId: NetworkId.SOLANA_MAINNET,
|
|
371
|
+
});
|
|
372
|
+
|
|
373
|
+
// Sign a transaction on Ethereum
|
|
374
|
+
await sdk.signAndSendTransaction({
|
|
375
|
+
walletId: wallet.walletId,
|
|
376
|
+
transaction: ethTransaction,
|
|
377
|
+
networkId: NetworkId.ETHEREUM_MAINNET,
|
|
378
|
+
});
|
|
379
|
+
|
|
380
|
+
// Sign on Polygon
|
|
381
|
+
await sdk.signAndSendTransaction({
|
|
382
|
+
walletId: wallet.walletId,
|
|
383
|
+
transaction: polygonTransaction,
|
|
384
|
+
networkId: NetworkId.POLYGON_MAINNET,
|
|
385
|
+
});
|
|
386
|
+
|
|
387
|
+
// Sign on Base
|
|
388
|
+
await sdk.signAndSendTransaction({
|
|
389
|
+
walletId: wallet.walletId,
|
|
390
|
+
transaction: baseTransaction,
|
|
391
|
+
networkId: NetworkId.BASE_MAINNET,
|
|
392
|
+
});
|
|
393
|
+
```
|
|
340
394
|
|
|
341
395
|
## API Reference
|
|
342
396
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AddressType, NetworkId, PhantomClient, Organization, GetWalletsResult, CreateWalletResult } from '@phantom/client';
|
|
2
2
|
export { CreateWalletResult, DerivationPath, GetWalletsResult, NetworkConfig, PhantomClient, SignedTransaction, SignedTransactionResult, Transaction, Wallet, deriveSubmissionConfig, generateKeyPair, getDerivationPathForNetwork, getNetworkConfig, getNetworkDescription, getNetworkIdsByChain, getSupportedNetworkIds, supportsTransactionSubmission } from '@phantom/client';
|
|
3
3
|
import { ParsedSignatureResult, ParsedTransactionResult } from '@phantom/parsers';
|
|
4
|
-
export {
|
|
4
|
+
export { ParsedSignatureResult, ParsedTransaction, ParsedTransactionResult, parseSignMessageResponse, parseToKmsTransaction, parseTransactionResponse } from '@phantom/parsers';
|
|
5
5
|
export { NetworkId } from '@phantom/constants';
|
|
6
6
|
export { ApiKeyStamper } from '@phantom/api-key-stamper';
|
|
7
7
|
|
|
@@ -42,6 +42,7 @@ declare class ServerSDK {
|
|
|
42
42
|
constructor(config: ServerSDKConfig);
|
|
43
43
|
/**
|
|
44
44
|
* Sign a message - supports plain text and automatically converts to base64url
|
|
45
|
+
* Routes to appropriate signing method based on network type
|
|
45
46
|
* @param params - Message parameters with plain text message
|
|
46
47
|
* @returns Promise<ParsedSignatureResult> - Parsed signature with explorer URL
|
|
47
48
|
*/
|
package/dist/index.js
CHANGED
|
@@ -42,10 +42,9 @@ __export(src_exports, {
|
|
|
42
42
|
getNetworkDescription: () => import_client2.getNetworkDescription,
|
|
43
43
|
getNetworkIdsByChain: () => import_client2.getNetworkIdsByChain,
|
|
44
44
|
getSupportedNetworkIds: () => import_client2.getSupportedNetworkIds,
|
|
45
|
-
parseMessage: () => import_parsers2.parseMessage,
|
|
46
45
|
parseSignMessageResponse: () => import_parsers2.parseSignMessageResponse,
|
|
46
|
+
parseToKmsTransaction: () => import_parsers2.parseToKmsTransaction,
|
|
47
47
|
parseTransactionResponse: () => import_parsers2.parseTransactionResponse,
|
|
48
|
-
parseTransactionToBase64Url: () => import_parsers2.parseTransactionToBase64Url,
|
|
49
48
|
supportsTransactionSubmission: () => import_client2.supportsTransactionSubmission
|
|
50
49
|
});
|
|
51
50
|
module.exports = __toCommonJS(src_exports);
|
|
@@ -59,8 +58,13 @@ var import_bs58 = __toESM(require("bs58"));
|
|
|
59
58
|
// package.json
|
|
60
59
|
var package_default = {
|
|
61
60
|
name: "@phantom/server-sdk",
|
|
62
|
-
version: "1.0.0
|
|
61
|
+
version: "1.0.0",
|
|
63
62
|
description: "Server SDK for Phantom Wallet",
|
|
63
|
+
repository: {
|
|
64
|
+
type: "git",
|
|
65
|
+
url: "https://github.com/phantom/phantom-connect-sdk",
|
|
66
|
+
directory: "packages/server-sdk"
|
|
67
|
+
},
|
|
64
68
|
main: "dist/index.js",
|
|
65
69
|
module: "dist/index.mjs",
|
|
66
70
|
types: "dist/index.d.ts",
|
|
@@ -147,25 +151,23 @@ var ServerSDK = class {
|
|
|
147
151
|
{
|
|
148
152
|
apiBaseUrl: config.apiBaseUrl || import_constants.DEFAULT_WALLET_API_URL,
|
|
149
153
|
organizationId: config.organizationId,
|
|
150
|
-
headers
|
|
154
|
+
headers,
|
|
155
|
+
walletType: "server-wallet"
|
|
151
156
|
},
|
|
152
157
|
stamper
|
|
153
158
|
);
|
|
154
159
|
}
|
|
155
160
|
/**
|
|
156
161
|
* Sign a message - supports plain text and automatically converts to base64url
|
|
162
|
+
* Routes to appropriate signing method based on network type
|
|
157
163
|
* @param params - Message parameters with plain text message
|
|
158
164
|
* @returns Promise<ParsedSignatureResult> - Parsed signature with explorer URL
|
|
159
165
|
*/
|
|
160
166
|
async signMessage(params) {
|
|
161
|
-
const
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
networkId: params.networkId,
|
|
166
|
-
derivationIndex: params.derivationIndex
|
|
167
|
-
};
|
|
168
|
-
const rawResponse = await this.client.signMessage(signMessageParams);
|
|
167
|
+
const rawResponse = (0, import_utils.isEthereumChain)(params.networkId) ? await this.client.ethereumSignMessage({
|
|
168
|
+
...params,
|
|
169
|
+
message: (0, import_base64url.stringToBase64url)(params.message)
|
|
170
|
+
}) : await this.client.signUtf8Message(params);
|
|
169
171
|
return (0, import_parsers.parseSignMessageResponse)(rawResponse, params.networkId);
|
|
170
172
|
}
|
|
171
173
|
/**
|
|
@@ -174,15 +176,18 @@ var ServerSDK = class {
|
|
|
174
176
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result without hash
|
|
175
177
|
*/
|
|
176
178
|
async signTransaction(params) {
|
|
177
|
-
const parsedTransaction = await (0, import_parsers.
|
|
178
|
-
const
|
|
179
|
+
const parsedTransaction = await (0, import_parsers.parseToKmsTransaction)(params.transaction, params.networkId);
|
|
180
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
181
|
+
if (!transactionPayload) {
|
|
182
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
183
|
+
}
|
|
184
|
+
const rawResponse = await this.client.signTransaction({
|
|
179
185
|
walletId: params.walletId,
|
|
180
|
-
transaction:
|
|
186
|
+
transaction: transactionPayload,
|
|
181
187
|
networkId: params.networkId,
|
|
182
188
|
derivationIndex: params.derivationIndex,
|
|
183
189
|
account: params.account
|
|
184
|
-
};
|
|
185
|
-
const rawResponse = await this.client.signTransaction(signTransactionParams);
|
|
190
|
+
});
|
|
186
191
|
return await (0, import_parsers.parseTransactionResponse)(rawResponse.rawTransaction, params.networkId);
|
|
187
192
|
}
|
|
188
193
|
/**
|
|
@@ -191,15 +196,18 @@ var ServerSDK = class {
|
|
|
191
196
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result with hash and explorer URL
|
|
192
197
|
*/
|
|
193
198
|
async signAndSendTransaction(params) {
|
|
194
|
-
const parsedTransaction = await (0, import_parsers.
|
|
195
|
-
const
|
|
199
|
+
const parsedTransaction = await (0, import_parsers.parseToKmsTransaction)(params.transaction, params.networkId);
|
|
200
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
201
|
+
if (!transactionPayload) {
|
|
202
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
203
|
+
}
|
|
204
|
+
const rawResponse = await this.client.signAndSendTransaction({
|
|
196
205
|
walletId: params.walletId,
|
|
197
|
-
transaction:
|
|
206
|
+
transaction: transactionPayload,
|
|
198
207
|
networkId: params.networkId,
|
|
199
208
|
derivationIndex: params.derivationIndex,
|
|
200
209
|
account: params.account
|
|
201
|
-
};
|
|
202
|
-
const rawResponse = await this.client.signAndSendTransaction(signAndSendParams);
|
|
210
|
+
});
|
|
203
211
|
return await (0, import_parsers.parseTransactionResponse)(rawResponse.rawTransaction, params.networkId, rawResponse.hash);
|
|
204
212
|
}
|
|
205
213
|
createOrganization(name, keyPair) {
|
|
@@ -208,7 +216,8 @@ var ServerSDK = class {
|
|
|
208
216
|
{
|
|
209
217
|
apiBaseUrl: this.config.apiBaseUrl || import_constants.DEFAULT_WALLET_API_URL,
|
|
210
218
|
organizationId: this.config.organizationId,
|
|
211
|
-
headers
|
|
219
|
+
headers,
|
|
220
|
+
walletType: "server-wallet"
|
|
212
221
|
},
|
|
213
222
|
new import_api_key_stamper.ApiKeyStamper({
|
|
214
223
|
apiSecretKey: keyPair.secretKey
|
|
@@ -254,9 +263,8 @@ var ServerSDK = class {
|
|
|
254
263
|
getNetworkDescription,
|
|
255
264
|
getNetworkIdsByChain,
|
|
256
265
|
getSupportedNetworkIds,
|
|
257
|
-
parseMessage,
|
|
258
266
|
parseSignMessageResponse,
|
|
267
|
+
parseToKmsTransaction,
|
|
259
268
|
parseTransactionResponse,
|
|
260
|
-
parseTransactionToBase64Url,
|
|
261
269
|
supportsTransactionSubmission
|
|
262
270
|
});
|
package/dist/index.mjs
CHANGED
|
@@ -2,20 +2,22 @@
|
|
|
2
2
|
import {
|
|
3
3
|
PhantomClient
|
|
4
4
|
} from "@phantom/client";
|
|
5
|
-
import { randomUUID, getSecureTimestampSync } from "@phantom/utils";
|
|
6
|
-
import {
|
|
7
|
-
ANALYTICS_HEADERS,
|
|
8
|
-
DEFAULT_WALLET_API_URL
|
|
9
|
-
} from "@phantom/constants";
|
|
5
|
+
import { randomUUID, getSecureTimestampSync, isEthereumChain } from "@phantom/utils";
|
|
6
|
+
import { ANALYTICS_HEADERS, DEFAULT_WALLET_API_URL } from "@phantom/constants";
|
|
10
7
|
import { ApiKeyStamper } from "@phantom/api-key-stamper";
|
|
11
|
-
import { base64urlEncode } from "@phantom/base64url";
|
|
8
|
+
import { base64urlEncode, stringToBase64url } from "@phantom/base64url";
|
|
12
9
|
import bs58 from "bs58";
|
|
13
10
|
|
|
14
11
|
// package.json
|
|
15
12
|
var package_default = {
|
|
16
13
|
name: "@phantom/server-sdk",
|
|
17
|
-
version: "1.0.0
|
|
14
|
+
version: "1.0.0",
|
|
18
15
|
description: "Server SDK for Phantom Wallet",
|
|
16
|
+
repository: {
|
|
17
|
+
type: "git",
|
|
18
|
+
url: "https://github.com/phantom/phantom-connect-sdk",
|
|
19
|
+
directory: "packages/server-sdk"
|
|
20
|
+
},
|
|
19
21
|
main: "dist/index.js",
|
|
20
22
|
module: "dist/index.mjs",
|
|
21
23
|
types: "dist/index.d.ts",
|
|
@@ -69,8 +71,7 @@ var package_default = {
|
|
|
69
71
|
|
|
70
72
|
// src/index.ts
|
|
71
73
|
import {
|
|
72
|
-
|
|
73
|
-
parseTransactionToBase64Url,
|
|
74
|
+
parseToKmsTransaction,
|
|
74
75
|
parseSignMessageResponse,
|
|
75
76
|
parseTransactionResponse
|
|
76
77
|
} from "@phantom/parsers";
|
|
@@ -89,8 +90,7 @@ import {
|
|
|
89
90
|
import { NetworkId } from "@phantom/constants";
|
|
90
91
|
import { ApiKeyStamper as ApiKeyStamper2 } from "@phantom/api-key-stamper";
|
|
91
92
|
import {
|
|
92
|
-
|
|
93
|
-
parseTransactionToBase64Url as parseTransactionToBase64Url2,
|
|
93
|
+
parseToKmsTransaction as parseToKmsTransaction2,
|
|
94
94
|
parseSignMessageResponse as parseSignMessageResponse2,
|
|
95
95
|
parseTransactionResponse as parseTransactionResponse2
|
|
96
96
|
} from "@phantom/parsers";
|
|
@@ -123,25 +123,23 @@ var ServerSDK = class {
|
|
|
123
123
|
{
|
|
124
124
|
apiBaseUrl: config.apiBaseUrl || DEFAULT_WALLET_API_URL,
|
|
125
125
|
organizationId: config.organizationId,
|
|
126
|
-
headers
|
|
126
|
+
headers,
|
|
127
|
+
walletType: "server-wallet"
|
|
127
128
|
},
|
|
128
129
|
stamper
|
|
129
130
|
);
|
|
130
131
|
}
|
|
131
132
|
/**
|
|
132
133
|
* Sign a message - supports plain text and automatically converts to base64url
|
|
134
|
+
* Routes to appropriate signing method based on network type
|
|
133
135
|
* @param params - Message parameters with plain text message
|
|
134
136
|
* @returns Promise<ParsedSignatureResult> - Parsed signature with explorer URL
|
|
135
137
|
*/
|
|
136
138
|
async signMessage(params) {
|
|
137
|
-
const
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
networkId: params.networkId,
|
|
142
|
-
derivationIndex: params.derivationIndex
|
|
143
|
-
};
|
|
144
|
-
const rawResponse = await this.client.signMessage(signMessageParams);
|
|
139
|
+
const rawResponse = isEthereumChain(params.networkId) ? await this.client.ethereumSignMessage({
|
|
140
|
+
...params,
|
|
141
|
+
message: stringToBase64url(params.message)
|
|
142
|
+
}) : await this.client.signUtf8Message(params);
|
|
145
143
|
return parseSignMessageResponse(rawResponse, params.networkId);
|
|
146
144
|
}
|
|
147
145
|
/**
|
|
@@ -150,15 +148,18 @@ var ServerSDK = class {
|
|
|
150
148
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result without hash
|
|
151
149
|
*/
|
|
152
150
|
async signTransaction(params) {
|
|
153
|
-
const parsedTransaction = await
|
|
154
|
-
const
|
|
151
|
+
const parsedTransaction = await parseToKmsTransaction(params.transaction, params.networkId);
|
|
152
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
153
|
+
if (!transactionPayload) {
|
|
154
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
155
|
+
}
|
|
156
|
+
const rawResponse = await this.client.signTransaction({
|
|
155
157
|
walletId: params.walletId,
|
|
156
|
-
transaction:
|
|
158
|
+
transaction: transactionPayload,
|
|
157
159
|
networkId: params.networkId,
|
|
158
160
|
derivationIndex: params.derivationIndex,
|
|
159
161
|
account: params.account
|
|
160
|
-
};
|
|
161
|
-
const rawResponse = await this.client.signTransaction(signTransactionParams);
|
|
162
|
+
});
|
|
162
163
|
return await parseTransactionResponse(rawResponse.rawTransaction, params.networkId);
|
|
163
164
|
}
|
|
164
165
|
/**
|
|
@@ -167,15 +168,18 @@ var ServerSDK = class {
|
|
|
167
168
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result with hash and explorer URL
|
|
168
169
|
*/
|
|
169
170
|
async signAndSendTransaction(params) {
|
|
170
|
-
const parsedTransaction = await
|
|
171
|
-
const
|
|
171
|
+
const parsedTransaction = await parseToKmsTransaction(params.transaction, params.networkId);
|
|
172
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
173
|
+
if (!transactionPayload) {
|
|
174
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
175
|
+
}
|
|
176
|
+
const rawResponse = await this.client.signAndSendTransaction({
|
|
172
177
|
walletId: params.walletId,
|
|
173
|
-
transaction:
|
|
178
|
+
transaction: transactionPayload,
|
|
174
179
|
networkId: params.networkId,
|
|
175
180
|
derivationIndex: params.derivationIndex,
|
|
176
181
|
account: params.account
|
|
177
|
-
};
|
|
178
|
-
const rawResponse = await this.client.signAndSendTransaction(signAndSendParams);
|
|
182
|
+
});
|
|
179
183
|
return await parseTransactionResponse(rawResponse.rawTransaction, params.networkId, rawResponse.hash);
|
|
180
184
|
}
|
|
181
185
|
createOrganization(name, keyPair) {
|
|
@@ -184,7 +188,8 @@ var ServerSDK = class {
|
|
|
184
188
|
{
|
|
185
189
|
apiBaseUrl: this.config.apiBaseUrl || DEFAULT_WALLET_API_URL,
|
|
186
190
|
organizationId: this.config.organizationId,
|
|
187
|
-
headers
|
|
191
|
+
headers,
|
|
192
|
+
walletType: "server-wallet"
|
|
188
193
|
},
|
|
189
194
|
new ApiKeyStamper({
|
|
190
195
|
apiSecretKey: keyPair.secretKey
|
|
@@ -229,9 +234,8 @@ export {
|
|
|
229
234
|
getNetworkDescription,
|
|
230
235
|
getNetworkIdsByChain,
|
|
231
236
|
getSupportedNetworkIds,
|
|
232
|
-
parseMessage2 as parseMessage,
|
|
233
237
|
parseSignMessageResponse2 as parseSignMessageResponse,
|
|
238
|
+
parseToKmsTransaction2 as parseToKmsTransaction,
|
|
234
239
|
parseTransactionResponse2 as parseTransactionResponse,
|
|
235
|
-
parseTransactionToBase64Url2 as parseTransactionToBase64Url,
|
|
236
240
|
supportsTransactionSubmission
|
|
237
241
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@phantom/server-sdk",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Server SDK for Phantom Wallet",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/phantom/phantom-connect-sdk",
|
|
8
|
+
"directory": "packages/server-sdk"
|
|
9
|
+
},
|
|
5
10
|
"main": "dist/index.js",
|
|
6
11
|
"module": "dist/index.mjs",
|
|
7
12
|
"types": "dist/index.d.ts",
|
|
@@ -37,12 +42,12 @@
|
|
|
37
42
|
"typescript": "^5.0.4"
|
|
38
43
|
},
|
|
39
44
|
"dependencies": {
|
|
40
|
-
"@phantom/api-key-stamper": "^1.0.0
|
|
41
|
-
"@phantom/base64url": "^1.0.0
|
|
42
|
-
"@phantom/client": "^1.0.0
|
|
43
|
-
"@phantom/constants": "^1.0.0
|
|
44
|
-
"@phantom/parsers": "^1.0.0
|
|
45
|
-
"@phantom/utils": "^1.0.0
|
|
45
|
+
"@phantom/api-key-stamper": "^1.0.0",
|
|
46
|
+
"@phantom/base64url": "^1.0.0",
|
|
47
|
+
"@phantom/client": "^1.0.0",
|
|
48
|
+
"@phantom/constants": "^1.0.0",
|
|
49
|
+
"@phantom/parsers": "^1.0.0",
|
|
50
|
+
"@phantom/utils": "^1.0.0",
|
|
46
51
|
"bs58": "^6.0.0"
|
|
47
52
|
},
|
|
48
53
|
"files": [
|