@phantom/server-sdk 1.0.0-beta.16 → 1.0.0-beta.18
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/dist/index.d.ts +2 -1
- package/dist/index.js +23 -18
- package/dist/index.mjs +26 -22
- package/package.json +2 -2
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,7 +58,7 @@ 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-beta.
|
|
61
|
+
version: "1.0.0-beta.18",
|
|
63
62
|
description: "Server SDK for Phantom Wallet",
|
|
64
63
|
main: "dist/index.js",
|
|
65
64
|
module: "dist/index.mjs",
|
|
@@ -154,18 +153,19 @@ var ServerSDK = class {
|
|
|
154
153
|
}
|
|
155
154
|
/**
|
|
156
155
|
* Sign a message - supports plain text and automatically converts to base64url
|
|
156
|
+
* Routes to appropriate signing method based on network type
|
|
157
157
|
* @param params - Message parameters with plain text message
|
|
158
158
|
* @returns Promise<ParsedSignatureResult> - Parsed signature with explorer URL
|
|
159
159
|
*/
|
|
160
160
|
async signMessage(params) {
|
|
161
|
-
const
|
|
161
|
+
const base64UrlMessage = (0, import_base64url.stringToBase64url)(params.message);
|
|
162
162
|
const signMessageParams = {
|
|
163
163
|
walletId: params.walletId,
|
|
164
|
-
message:
|
|
164
|
+
message: base64UrlMessage,
|
|
165
165
|
networkId: params.networkId,
|
|
166
166
|
derivationIndex: params.derivationIndex
|
|
167
167
|
};
|
|
168
|
-
const rawResponse = await this.client.
|
|
168
|
+
const rawResponse = (0, import_utils.isEthereumChain)(params.networkId) ? await this.client.ethereumSignMessage(signMessageParams) : await this.client.signRawPayload(signMessageParams);
|
|
169
169
|
return (0, import_parsers.parseSignMessageResponse)(rawResponse, params.networkId);
|
|
170
170
|
}
|
|
171
171
|
/**
|
|
@@ -174,15 +174,18 @@ var ServerSDK = class {
|
|
|
174
174
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result without hash
|
|
175
175
|
*/
|
|
176
176
|
async signTransaction(params) {
|
|
177
|
-
const parsedTransaction = await (0, import_parsers.
|
|
178
|
-
const
|
|
177
|
+
const parsedTransaction = await (0, import_parsers.parseToKmsTransaction)(params.transaction, params.networkId);
|
|
178
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
179
|
+
if (!transactionPayload) {
|
|
180
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
181
|
+
}
|
|
182
|
+
const rawResponse = await this.client.signTransaction({
|
|
179
183
|
walletId: params.walletId,
|
|
180
|
-
transaction:
|
|
184
|
+
transaction: transactionPayload,
|
|
181
185
|
networkId: params.networkId,
|
|
182
186
|
derivationIndex: params.derivationIndex,
|
|
183
187
|
account: params.account
|
|
184
|
-
};
|
|
185
|
-
const rawResponse = await this.client.signTransaction(signTransactionParams);
|
|
188
|
+
});
|
|
186
189
|
return await (0, import_parsers.parseTransactionResponse)(rawResponse.rawTransaction, params.networkId);
|
|
187
190
|
}
|
|
188
191
|
/**
|
|
@@ -191,15 +194,18 @@ var ServerSDK = class {
|
|
|
191
194
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result with hash and explorer URL
|
|
192
195
|
*/
|
|
193
196
|
async signAndSendTransaction(params) {
|
|
194
|
-
const parsedTransaction = await (0, import_parsers.
|
|
195
|
-
const
|
|
197
|
+
const parsedTransaction = await (0, import_parsers.parseToKmsTransaction)(params.transaction, params.networkId);
|
|
198
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
199
|
+
if (!transactionPayload) {
|
|
200
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
201
|
+
}
|
|
202
|
+
const rawResponse = await this.client.signAndSendTransaction({
|
|
196
203
|
walletId: params.walletId,
|
|
197
|
-
transaction:
|
|
204
|
+
transaction: transactionPayload,
|
|
198
205
|
networkId: params.networkId,
|
|
199
206
|
derivationIndex: params.derivationIndex,
|
|
200
207
|
account: params.account
|
|
201
|
-
};
|
|
202
|
-
const rawResponse = await this.client.signAndSendTransaction(signAndSendParams);
|
|
208
|
+
});
|
|
203
209
|
return await (0, import_parsers.parseTransactionResponse)(rawResponse.rawTransaction, params.networkId, rawResponse.hash);
|
|
204
210
|
}
|
|
205
211
|
createOrganization(name, keyPair) {
|
|
@@ -254,9 +260,8 @@ var ServerSDK = class {
|
|
|
254
260
|
getNetworkDescription,
|
|
255
261
|
getNetworkIdsByChain,
|
|
256
262
|
getSupportedNetworkIds,
|
|
257
|
-
parseMessage,
|
|
258
263
|
parseSignMessageResponse,
|
|
264
|
+
parseToKmsTransaction,
|
|
259
265
|
parseTransactionResponse,
|
|
260
|
-
parseTransactionToBase64Url,
|
|
261
266
|
supportsTransactionSubmission
|
|
262
267
|
});
|
package/dist/index.mjs
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
import {
|
|
3
3
|
PhantomClient
|
|
4
4
|
} from "@phantom/client";
|
|
5
|
-
import { randomUUID, getSecureTimestampSync } from "@phantom/utils";
|
|
5
|
+
import { randomUUID, getSecureTimestampSync, isEthereumChain } from "@phantom/utils";
|
|
6
6
|
import {
|
|
7
7
|
ANALYTICS_HEADERS,
|
|
8
8
|
DEFAULT_WALLET_API_URL
|
|
9
9
|
} from "@phantom/constants";
|
|
10
10
|
import { ApiKeyStamper } from "@phantom/api-key-stamper";
|
|
11
|
-
import { base64urlEncode } from "@phantom/base64url";
|
|
11
|
+
import { base64urlEncode, stringToBase64url } from "@phantom/base64url";
|
|
12
12
|
import bs58 from "bs58";
|
|
13
13
|
|
|
14
14
|
// package.json
|
|
15
15
|
var package_default = {
|
|
16
16
|
name: "@phantom/server-sdk",
|
|
17
|
-
version: "1.0.0-beta.
|
|
17
|
+
version: "1.0.0-beta.18",
|
|
18
18
|
description: "Server SDK for Phantom Wallet",
|
|
19
19
|
main: "dist/index.js",
|
|
20
20
|
module: "dist/index.mjs",
|
|
@@ -69,8 +69,7 @@ var package_default = {
|
|
|
69
69
|
|
|
70
70
|
// src/index.ts
|
|
71
71
|
import {
|
|
72
|
-
|
|
73
|
-
parseTransactionToBase64Url,
|
|
72
|
+
parseToKmsTransaction,
|
|
74
73
|
parseSignMessageResponse,
|
|
75
74
|
parseTransactionResponse
|
|
76
75
|
} from "@phantom/parsers";
|
|
@@ -89,8 +88,7 @@ import {
|
|
|
89
88
|
import { NetworkId } from "@phantom/constants";
|
|
90
89
|
import { ApiKeyStamper as ApiKeyStamper2 } from "@phantom/api-key-stamper";
|
|
91
90
|
import {
|
|
92
|
-
|
|
93
|
-
parseTransactionToBase64Url as parseTransactionToBase64Url2,
|
|
91
|
+
parseToKmsTransaction as parseToKmsTransaction2,
|
|
94
92
|
parseSignMessageResponse as parseSignMessageResponse2,
|
|
95
93
|
parseTransactionResponse as parseTransactionResponse2
|
|
96
94
|
} from "@phantom/parsers";
|
|
@@ -130,18 +128,19 @@ var ServerSDK = class {
|
|
|
130
128
|
}
|
|
131
129
|
/**
|
|
132
130
|
* Sign a message - supports plain text and automatically converts to base64url
|
|
131
|
+
* Routes to appropriate signing method based on network type
|
|
133
132
|
* @param params - Message parameters with plain text message
|
|
134
133
|
* @returns Promise<ParsedSignatureResult> - Parsed signature with explorer URL
|
|
135
134
|
*/
|
|
136
135
|
async signMessage(params) {
|
|
137
|
-
const
|
|
136
|
+
const base64UrlMessage = stringToBase64url(params.message);
|
|
138
137
|
const signMessageParams = {
|
|
139
138
|
walletId: params.walletId,
|
|
140
|
-
message:
|
|
139
|
+
message: base64UrlMessage,
|
|
141
140
|
networkId: params.networkId,
|
|
142
141
|
derivationIndex: params.derivationIndex
|
|
143
142
|
};
|
|
144
|
-
const rawResponse = await this.client.
|
|
143
|
+
const rawResponse = isEthereumChain(params.networkId) ? await this.client.ethereumSignMessage(signMessageParams) : await this.client.signRawPayload(signMessageParams);
|
|
145
144
|
return parseSignMessageResponse(rawResponse, params.networkId);
|
|
146
145
|
}
|
|
147
146
|
/**
|
|
@@ -150,15 +149,18 @@ var ServerSDK = class {
|
|
|
150
149
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result without hash
|
|
151
150
|
*/
|
|
152
151
|
async signTransaction(params) {
|
|
153
|
-
const parsedTransaction = await
|
|
154
|
-
const
|
|
152
|
+
const parsedTransaction = await parseToKmsTransaction(params.transaction, params.networkId);
|
|
153
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
154
|
+
if (!transactionPayload) {
|
|
155
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
156
|
+
}
|
|
157
|
+
const rawResponse = await this.client.signTransaction({
|
|
155
158
|
walletId: params.walletId,
|
|
156
|
-
transaction:
|
|
159
|
+
transaction: transactionPayload,
|
|
157
160
|
networkId: params.networkId,
|
|
158
161
|
derivationIndex: params.derivationIndex,
|
|
159
162
|
account: params.account
|
|
160
|
-
};
|
|
161
|
-
const rawResponse = await this.client.signTransaction(signTransactionParams);
|
|
163
|
+
});
|
|
162
164
|
return await parseTransactionResponse(rawResponse.rawTransaction, params.networkId);
|
|
163
165
|
}
|
|
164
166
|
/**
|
|
@@ -167,15 +169,18 @@ var ServerSDK = class {
|
|
|
167
169
|
* @returns Promise<ParsedTransactionResult> - Parsed transaction result with hash and explorer URL
|
|
168
170
|
*/
|
|
169
171
|
async signAndSendTransaction(params) {
|
|
170
|
-
const parsedTransaction = await
|
|
171
|
-
const
|
|
172
|
+
const parsedTransaction = await parseToKmsTransaction(params.transaction, params.networkId);
|
|
173
|
+
const transactionPayload = parsedTransaction.parsed;
|
|
174
|
+
if (!transactionPayload) {
|
|
175
|
+
throw new Error("Failed to parse transaction: no valid encoding found");
|
|
176
|
+
}
|
|
177
|
+
const rawResponse = await this.client.signAndSendTransaction({
|
|
172
178
|
walletId: params.walletId,
|
|
173
|
-
transaction:
|
|
179
|
+
transaction: transactionPayload,
|
|
174
180
|
networkId: params.networkId,
|
|
175
181
|
derivationIndex: params.derivationIndex,
|
|
176
182
|
account: params.account
|
|
177
|
-
};
|
|
178
|
-
const rawResponse = await this.client.signAndSendTransaction(signAndSendParams);
|
|
183
|
+
});
|
|
179
184
|
return await parseTransactionResponse(rawResponse.rawTransaction, params.networkId, rawResponse.hash);
|
|
180
185
|
}
|
|
181
186
|
createOrganization(name, keyPair) {
|
|
@@ -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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@phantom/server-sdk",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.18",
|
|
4
4
|
"description": "Server SDK for Phantom Wallet",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@phantom/api-key-stamper": "^1.0.0-beta.7",
|
|
41
41
|
"@phantom/base64url": "^1.0.0-beta.7",
|
|
42
|
-
"@phantom/client": "^1.0.0-beta.
|
|
42
|
+
"@phantom/client": "^1.0.0-beta.18",
|
|
43
43
|
"@phantom/constants": "^1.0.0-beta.7",
|
|
44
44
|
"@phantom/parsers": "^1.0.0-beta.7",
|
|
45
45
|
"@phantom/utils": "^1.0.0-beta.4",
|