@deserialize/swap-sdk 1.5.1 → 1.5.3
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/swapSDK.d.ts +2 -1
- package/dist/swapSDK.js +26 -6
- package/dist/swapSDK.js.map +1 -1
- package/package.json +1 -1
- package/src/swapSDK.ts +33 -8
package/dist/swapSDK.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import web3, { Connection, Keypair, PublicKey, TransactionInstruction, VersionedTransaction } from "@solana/web3.js";
|
1
|
+
import web3, { Connection, Keypair, PublicKey, TransactionInstruction, TransactionVersion, VersionedTransaction } from "@solana/web3.js";
|
2
2
|
/**
|
3
3
|
* Parameters to request a swap.
|
4
4
|
*/
|
@@ -282,6 +282,7 @@ export declare class SwapSDK {
|
|
282
282
|
* @returns A promise that resolves to a SwapTxResult.
|
283
283
|
*/
|
284
284
|
swapTx(params: SwapRequestParams): Promise<SwapTxResult>;
|
285
|
+
decodeTOBase58: (serializedTransaction: string, transactionVersion?: TransactionVersion) => web3.VersionedTransaction | web3.Transaction;
|
285
286
|
/**
|
286
287
|
* Calls the /tokenList endpoint and returns an array of tokens.
|
287
288
|
*
|
package/dist/swapSDK.js
CHANGED
@@ -114,6 +114,17 @@ class SwapSDK {
|
|
114
114
|
this.base58 = bs58_1.default;
|
115
115
|
this.web3 = web3_js_1.default;
|
116
116
|
this.DEX_IDS = exports.DEX_IDS;
|
117
|
+
this.decodeTOBase58 = (serializedTransaction, transactionVersion = 0) => {
|
118
|
+
const based58Decoded = bs58_1.default.decode(serializedTransaction);
|
119
|
+
let transaction;
|
120
|
+
if (transactionVersion === "legacy") {
|
121
|
+
transaction = web3_js_1.Transaction.from(based58Decoded);
|
122
|
+
}
|
123
|
+
else {
|
124
|
+
transaction = web3_js_1.VersionedTransaction.deserialize(based58Decoded);
|
125
|
+
}
|
126
|
+
return transaction;
|
127
|
+
};
|
117
128
|
this.baseUrl = baseUrl || exports.BASE_URL;
|
118
129
|
}
|
119
130
|
/**
|
@@ -152,12 +163,21 @@ class SwapSDK {
|
|
152
163
|
return await response.json();
|
153
164
|
}
|
154
165
|
async getHighestSwapQuote(params) {
|
155
|
-
const allQuotes = (await Promise.all(Object.values(this.DEX_IDS).map((dexId) => {
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
166
|
+
const allQuotes = (await Promise.all(Object.values(this.DEX_IDS).map(async (dexId) => {
|
167
|
+
let quote;
|
168
|
+
try {
|
169
|
+
quote = await this.getSwapQuote({
|
170
|
+
...params,
|
171
|
+
dexId,
|
172
|
+
});
|
173
|
+
return quote;
|
174
|
+
}
|
175
|
+
catch (error) {
|
176
|
+
return null;
|
177
|
+
}
|
178
|
+
})))
|
179
|
+
.filter((quote) => quote !== null)
|
180
|
+
.sort((a, b) => {
|
161
181
|
return parseFloat(b.amountOut) - parseFloat(a.amountOut);
|
162
182
|
});
|
163
183
|
return allQuotes;
|
package/dist/swapSDK.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"swapSDK.js","sourceRoot":"","sources":["../src/swapSDK.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,aAAa;AACb,
|
1
|
+
{"version":3,"file":"swapSDK.js","sourceRoot":"","sources":["../src/swapSDK.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,aAAa;AACb,2DAWyB;AACzB,gDAA0B;AAC1B,qCAIkB;AAwLL,QAAA,UAAU,GAAG;IACxB,yBAAyB,EAAE,2BAA2B;CACvD,CAAC;AAYF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,MAAa,OAAO;IAGlB,YAAY,OAAgB;QAI5B,WAAM,GAAG,cAAM,CAAC;QAChB,SAAI,GAAG,iBAAI,CAAC;QACZ,YAAO,GAAG,eAAO,CAAC;QAsKlB,mBAAc,GAAG,CACf,qBAA6B,EAC7B,qBAAyC,CAAC,EAC1C,EAAE;YACF,MAAM,cAAc,GAAG,cAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC5D,IAAI,WAA+C,CAAC;YACpD,IAAI,kBAAkB,KAAK,QAAQ,EAAE,CAAC;gBACpC,WAAW,GAAG,qBAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,8BAAoB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC;QAvLA,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,gBAAQ,CAAC;IACrC,CAAC;IAMD;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,MAAyB;QAC1C,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,2BAAkB,CAAC,4BAA4B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACpC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAU,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,mCAA0B,CAClC,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,OAAO,EAAE,CACxC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,MAAyB;QAEzB,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9C,IAAI,KAAoB,CAAC;YACzB,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;oBAC9B,GAAG,MAAM;oBACT,KAAK;iBACN,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CACH,CACF;aACE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;aAEjC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACb,OAAO,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QACL,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAGxB;QACC,MAAM,IAAI,GAAG;YACX,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE;YACtC,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,EAAE;YACnD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,sEAAsE;QACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,8BAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE/D,6DAA6D;QAC7D,MAAM,cAAc,GAAgB,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CACjE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,mBAAS,CAAC,IAAI,CAAC,CACtC,CAAC;QAEF,4DAA4D;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAC7C,iBAAO,CAAC,aAAa,CAAC,cAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CACxC,CAAC;QAEF,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO;YACL,WAAW;YACX,sBAAsB,EAAE,IAAI,CAAC,WAAW;YACxC,cAAc;YACd,OAAO;SACR,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,MAAyB;QACpC,oBAAoB;QACpB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE9C,uCAAuC;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YACzC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK;SACN,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAErC,6DAA6D;QAC7D,MAAM,cAAc,GAAgB,IAAI,CAAC,cAAc,CAAC;QACxD,wDAAwD;QACxD,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;YAC1D,MAAM,EAAE,IAAI,mBAAS,CAAC,EAAE,CAAC,MAAM,CAAC;YAChC,MAAM,EAAE,IAAI,mBAAS,CAAC,EAAE,CAAC,MAAM,CAAC;YAChC,KAAK,EAAE,EAAE,CAAC,KAAmB;SAC9B,CAAC,CAAC,CAAC;QAEJ,4DAA4D;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO;YACL,WAAW;YACX,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YAClC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YACpC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YACnC,SAAS;YACT,cAAc;YACd,OAAO;YACP,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;SACnC,CAAC;IACJ,CAAC;IAgBD;;;;OAIG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAmB,CAAC;QACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC1B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;YACzB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;YAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK;YAC7B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,OAAO,EAAE,GAAG;YACZ,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,YAAoB;QACnC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,eAAe,YAAY,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,MAA0B;QAE1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,kBAAkB,EAAE;gBAC9D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aAC7B,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAiC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,mBAAmB,CACvB,UAAsB,EACtB,WAAiC;QAEjC,MAAM,MAAM,GAA8B,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;QACtE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC5E,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,IAAA,8BAAqB,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,OAAY;QACxC,OAAO,IAAI,gCAAsB,CAAC;YAChC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;gBAC5C,MAAM,EAAE,IAAI,mBAAS,CAAC,GAAG,CAAC,MAAM,CAAC;gBACjC,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,UAAU,EAAE,GAAG,CAAC,UAAU;aAC3B,CAAC,CAAC;YACH,SAAS,EAAE,IAAI,mBAAS,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3C,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;CACF;AAnTD,0BAmTC;AAEY,QAAA,OAAO,GAAG;IACrB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,QAAQ,GAAG,6BAA6B,CAAC"}
|
package/package.json
CHANGED
package/src/swapSDK.ts
CHANGED
@@ -6,6 +6,8 @@ import web3, {
|
|
6
6
|
SimulateTransactionConfig,
|
7
7
|
Transaction,
|
8
8
|
TransactionInstruction,
|
9
|
+
TransactionVersion,
|
10
|
+
Version,
|
9
11
|
VersionedMessage,
|
10
12
|
VersionedTransaction,
|
11
13
|
} from "@solana/web3.js";
|
@@ -332,16 +334,25 @@ export class SwapSDK {
|
|
332
334
|
): Promise<QuoteResponse[]> {
|
333
335
|
const allQuotes = (
|
334
336
|
await Promise.all(
|
335
|
-
Object.values(this.DEX_IDS).map((dexId) => {
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
337
|
+
Object.values(this.DEX_IDS).map(async (dexId) => {
|
338
|
+
let quote: QuoteResponse;
|
339
|
+
try {
|
340
|
+
quote = await this.getSwapQuote({
|
341
|
+
...params,
|
342
|
+
dexId,
|
343
|
+
});
|
344
|
+
return quote;
|
345
|
+
} catch (error) {
|
346
|
+
return null;
|
347
|
+
}
|
340
348
|
})
|
341
349
|
)
|
342
|
-
)
|
343
|
-
|
344
|
-
|
350
|
+
)
|
351
|
+
.filter((quote) => quote !== null)
|
352
|
+
|
353
|
+
.sort((a, b) => {
|
354
|
+
return parseFloat(b.amountOut) - parseFloat(a.amountOut);
|
355
|
+
});
|
345
356
|
return allQuotes;
|
346
357
|
}
|
347
358
|
|
@@ -443,6 +454,20 @@ export class SwapSDK {
|
|
443
454
|
};
|
444
455
|
}
|
445
456
|
|
457
|
+
decodeTOBase58 = (
|
458
|
+
serializedTransaction: string,
|
459
|
+
transactionVersion: TransactionVersion = 0
|
460
|
+
) => {
|
461
|
+
const based58Decoded = base58.decode(serializedTransaction);
|
462
|
+
let transaction: VersionedTransaction | Transaction;
|
463
|
+
if (transactionVersion === "legacy") {
|
464
|
+
transaction = Transaction.from(based58Decoded);
|
465
|
+
} else {
|
466
|
+
transaction = VersionedTransaction.deserialize(based58Decoded);
|
467
|
+
}
|
468
|
+
return transaction;
|
469
|
+
};
|
470
|
+
|
446
471
|
/**
|
447
472
|
* Calls the /tokenList endpoint and returns an array of tokens.
|
448
473
|
*
|