@hawksightco/hawk-sdk 1.1.49 → 1.1.52
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/src/anchor.d.ts.map +1 -1
- package/dist/src/classes/AltStorage.d.ts +29 -0
- package/dist/src/classes/AltStorage.d.ts.map +1 -0
- package/dist/src/classes/AltStorage.js +58 -0
- package/dist/src/classes/HawkAPI.d.ts +3 -0
- package/dist/src/classes/HawkAPI.d.ts.map +1 -1
- package/dist/src/classes/HawkAPI.js +2 -0
- package/dist/src/classes/SimpleIxGenerator.d.ts +10 -0
- package/dist/src/classes/SimpleIxGenerator.d.ts.map +1 -1
- package/dist/src/classes/SimpleIxGenerator.js +10 -0
- package/dist/src/classes/SimplePdaGenerator.d.ts +28 -0
- package/dist/src/classes/SimplePdaGenerator.d.ts.map +1 -0
- package/dist/src/classes/SimplePdaGenerator.js +33 -0
- package/dist/src/classes/Transactions.d.ts +1 -1
- package/dist/src/classes/Transactions.d.ts.map +1 -1
- package/dist/src/classes/Transactions.js +4 -17
- package/dist/src/classes/TxGenerator.d.ts +39 -1
- package/dist/src/classes/TxGenerator.d.ts.map +1 -1
- package/dist/src/classes/TxGenerator.js +91 -0
- package/dist/src/functions.d.ts +2 -0
- package/dist/src/functions.d.ts.map +1 -1
- package/dist/src/functions.js +7 -5
- package/dist/src/hawksight.d.ts +1 -0
- package/dist/src/hawksight.d.ts.map +1 -1
- package/dist/src/hawksight.js +1 -1
- package/dist/src/idl/iyf-extension-idl.d.ts +3627 -1048
- package/dist/src/idl/iyf-extension-idl.d.ts.map +1 -1
- package/dist/src/idl/iyf-extension-idl.js +3673 -1094
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/ixGenerator/IyfExtensionIxGenerator.d.ts.map +1 -1
- package/dist/src/ixGenerator/IyfExtensionIxGenerator.js +1 -0
- package/dist/src/ixGenerator/IyfMainIxGenerator.d.ts +48 -0
- package/dist/src/ixGenerator/IyfMainIxGenerator.d.ts.map +1 -1
- package/dist/src/ixGenerator/IyfMainIxGenerator.js +77 -0
- package/dist/src/ixGenerator/OrcaIxGenerator.d.ts +23 -0
- package/dist/src/ixGenerator/OrcaIxGenerator.d.ts.map +1 -0
- package/dist/src/ixGenerator/OrcaIxGenerator.js +119 -0
- package/dist/src/ixGenerator/UtilIxGenerator.d.ts +20 -0
- package/dist/src/ixGenerator/UtilIxGenerator.d.ts.map +1 -0
- package/dist/src/ixGenerator/UtilIxGenerator.js +25 -0
- package/dist/src/orca.d.ts +8 -0
- package/dist/src/orca.d.ts.map +1 -1
- package/dist/src/orca.js +15 -1
- package/dist/src/pdaGenerator/HawksightPdaGenerator.d.ts +23 -0
- package/dist/src/pdaGenerator/HawksightPdaGenerator.d.ts.map +1 -0
- package/dist/src/pdaGenerator/HawksightPdaGenerator.js +56 -0
- package/dist/src/pdaGenerator/MeteoraPdaGenerator.d.ts +6 -0
- package/dist/src/pdaGenerator/MeteoraPdaGenerator.d.ts.map +1 -0
- package/dist/src/pdaGenerator/MeteoraPdaGenerator.js +9 -0
- package/dist/src/pdaGenerator/OrcaPdaGenerator.d.ts +15 -0
- package/dist/src/pdaGenerator/OrcaPdaGenerator.d.ts.map +1 -0
- package/dist/src/pdaGenerator/OrcaPdaGenerator.js +45 -0
- package/dist/src/pdaGenerator/RaydiumPdaGenerator.d.ts +6 -0
- package/dist/src/pdaGenerator/RaydiumPdaGenerator.d.ts.map +1 -0
- package/dist/src/pdaGenerator/RaydiumPdaGenerator.js +9 -0
- package/dist/src/pdaGenerator/UtilPdaGenerator.d.ts +8 -0
- package/dist/src/pdaGenerator/UtilPdaGenerator.d.ts.map +1 -0
- package/dist/src/pdaGenerator/UtilPdaGenerator.js +41 -0
- package/package.json +1 -1
package/dist/src/index.d.ts
CHANGED
|
@@ -5,4 +5,5 @@ export { TxGenerator } from "./classes/TxGenerator";
|
|
|
5
5
|
export { Client } from "./classes/Client";
|
|
6
6
|
export { CreateTxMetadata } from "./classes/CreateTxMetadata";
|
|
7
7
|
export { TransactionBatchExecute2 } from "./classes/TransactionBatchExecute2";
|
|
8
|
+
export { AltStorage } from './classes/AltStorage';
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.TransactionBatchExecute2 = exports.CreateTxMetadata = exports.Client = exports.TxGenerator = exports.HawkAPI = void 0;
|
|
17
|
+
exports.AltStorage = exports.TransactionBatchExecute2 = exports.CreateTxMetadata = exports.Client = exports.TxGenerator = exports.HawkAPI = void 0;
|
|
18
18
|
__exportStar(require("./types"), exports);
|
|
19
19
|
__exportStar(require("./functions"), exports);
|
|
20
20
|
var HawkAPI_1 = require("./classes/HawkAPI");
|
|
@@ -27,3 +27,5 @@ var CreateTxMetadata_1 = require("./classes/CreateTxMetadata");
|
|
|
27
27
|
Object.defineProperty(exports, "CreateTxMetadata", { enumerable: true, get: function () { return CreateTxMetadata_1.CreateTxMetadata; } });
|
|
28
28
|
var TransactionBatchExecute2_1 = require("./classes/TransactionBatchExecute2");
|
|
29
29
|
Object.defineProperty(exports, "TransactionBatchExecute2", { enumerable: true, get: function () { return TransactionBatchExecute2_1.TransactionBatchExecute2; } });
|
|
30
|
+
var AltStorage_1 = require("./classes/AltStorage");
|
|
31
|
+
Object.defineProperty(exports, "AltStorage", { enumerable: true, get: function () { return AltStorage_1.AltStorage; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IyfExtensionIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/IyfExtensionIxGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IAC5B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,qBAAa,uBAAuB;IAGhC,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,kBAAkB;IAGrC;;;;;OAKG;IACG,WAAW,CAAC,EAChB,UAAU,EACV,UAAU,EACV,IAAI,EACJ,eAAe,EACf,MAAM,GACP,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"IyfExtensionIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/IyfExtensionIxGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IAC5B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,qBAAa,uBAAuB;IAGhC,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,kBAAkB;IAGrC;;;;;OAKG;IACG,WAAW,CAAC,EAChB,UAAU,EACV,UAAU,EACV,IAAI,EACJ,eAAe,EACf,MAAM,GACP,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC;CAyCtD"}
|
|
@@ -28,6 +28,30 @@ export type JupiterRouteIxReturn = {
|
|
|
28
28
|
closeAtaIx: web3.TransactionInstruction;
|
|
29
29
|
ataExists: boolean;
|
|
30
30
|
};
|
|
31
|
+
type DepositMultipleToken = {
|
|
32
|
+
payer: web3.PublicKey;
|
|
33
|
+
deposit: {
|
|
34
|
+
mint: web3.PublicKey;
|
|
35
|
+
amount: BN;
|
|
36
|
+
}[];
|
|
37
|
+
};
|
|
38
|
+
type WithdrawMultipleToken = {
|
|
39
|
+
payer: web3.PublicKey;
|
|
40
|
+
withdraw: {
|
|
41
|
+
mint: web3.PublicKey;
|
|
42
|
+
}[];
|
|
43
|
+
useSta?: boolean;
|
|
44
|
+
};
|
|
45
|
+
type DepositTokenFromUserPda = {
|
|
46
|
+
userWallet: web3.PublicKey;
|
|
47
|
+
mint: web3.PublicKey;
|
|
48
|
+
amount: BN;
|
|
49
|
+
};
|
|
50
|
+
type WithdrawTokenFromUserPda = {
|
|
51
|
+
userWallet: web3.PublicKey;
|
|
52
|
+
mint: web3.PublicKey;
|
|
53
|
+
useSta?: boolean;
|
|
54
|
+
};
|
|
31
55
|
/**
|
|
32
56
|
* Iyf Main IX Generator
|
|
33
57
|
*/
|
|
@@ -66,6 +90,30 @@ export declare class IyfMainIxGenerator {
|
|
|
66
90
|
*/
|
|
67
91
|
iyfExtensionExecute(connection: web3.Connection, { userWallet, iyfExtensionIx, }: IyfExtensionExecute): Promise<web3.TransactionInstruction>;
|
|
68
92
|
jupiterRouteIx({ connection, userWallet, userPda, sourceTokenAccount, destinationTokenAccount, destinationMint, platformFeeAccount, eventAuthority, remainingAccounts, data, quotedOutAmount, slippageBps, platformFeeBps, checkDestinationTokenAccount, }: JupiterRouteIx): Promise<JupiterRouteIxReturn>;
|
|
93
|
+
/**
|
|
94
|
+
* Deposit multiple user pda token to passthrough token accounts
|
|
95
|
+
*
|
|
96
|
+
* @returns DepositMultipleToken instruction
|
|
97
|
+
*/
|
|
98
|
+
depositMultipleToken({ payer, deposit }: DepositMultipleToken): Promise<web3.TransactionInstruction>;
|
|
99
|
+
/**
|
|
100
|
+
* Deposit multiple user pda token to passthrough token accountsz
|
|
101
|
+
*
|
|
102
|
+
* @returns DepositMultipleToken instruction
|
|
103
|
+
*/
|
|
104
|
+
withdrawMultipleToken({ payer, withdraw, useSta }: WithdrawMultipleToken): Promise<web3.TransactionInstruction>;
|
|
105
|
+
/**
|
|
106
|
+
* Deposit single token from user pda
|
|
107
|
+
*
|
|
108
|
+
* @returns
|
|
109
|
+
*/
|
|
110
|
+
depositTokenFromUserPda({ userWallet, mint, amount, }: DepositTokenFromUserPda): Promise<web3.TransactionInstruction>;
|
|
111
|
+
/**
|
|
112
|
+
* Withdraw single token from user pda
|
|
113
|
+
*
|
|
114
|
+
* @returns
|
|
115
|
+
*/
|
|
116
|
+
withdrawTokenFromUserPda({ userWallet, mint, useSta, }: WithdrawTokenFromUserPda): Promise<web3.TransactionInstruction>;
|
|
69
117
|
}
|
|
70
118
|
export {};
|
|
71
119
|
//# sourceMappingURL=IyfMainIxGenerator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IyfMainIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/IyfMainIxGenerator.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAA6C,sBAAsB,EAAc,uBAAuB,
|
|
1
|
+
{"version":3,"file":"IyfMainIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/IyfMainIxGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -214,5 +214,82 @@ class IyfMainIxGenerator {
|
|
|
214
214
|
};
|
|
215
215
|
});
|
|
216
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Deposit multiple user pda token to passthrough token accounts
|
|
219
|
+
*
|
|
220
|
+
* @returns DepositMultipleToken instruction
|
|
221
|
+
*/
|
|
222
|
+
depositMultipleToken(_a) {
|
|
223
|
+
return __awaiter(this, arguments, void 0, function* ({ payer, deposit }) {
|
|
224
|
+
return yield (0, hawksight_1.depositMultipleToken)({ payer, deposit });
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Deposit multiple user pda token to passthrough token accountsz
|
|
229
|
+
*
|
|
230
|
+
* @returns DepositMultipleToken instruction
|
|
231
|
+
*/
|
|
232
|
+
withdrawMultipleToken(_a) {
|
|
233
|
+
return __awaiter(this, arguments, void 0, function* ({ payer, withdraw, useSta }) {
|
|
234
|
+
return yield (0, hawksight_1.withdrawMultipleToken)({ payer, withdraw, useSta });
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Deposit single token from user pda
|
|
239
|
+
*
|
|
240
|
+
* @returns
|
|
241
|
+
*/
|
|
242
|
+
depositTokenFromUserPda(_a) {
|
|
243
|
+
return __awaiter(this, arguments, void 0, function* ({ userWallet, mint, amount, }) {
|
|
244
|
+
const farm = addresses_1.USDC_FARM;
|
|
245
|
+
const userPda = (0, functions_1.generateUserPda)(userWallet);
|
|
246
|
+
const remainingAccounts = [];
|
|
247
|
+
const userToken = (0, functions_1.generateAta)(userWallet, mint);
|
|
248
|
+
const userPdaToken = (0, functions_1.generateAta)(userPda, mint);
|
|
249
|
+
const ownerFeeToken = (0, functions_1.generateAta)(addresses_1.SITE_FEE_OWNER, mint);
|
|
250
|
+
const ix = yield anchor_1.Anchor.instance().iyfMain.methods
|
|
251
|
+
.depositTokenToUserPda(amount)
|
|
252
|
+
.accounts({
|
|
253
|
+
farm,
|
|
254
|
+
userPda,
|
|
255
|
+
payer: userWallet,
|
|
256
|
+
userToken,
|
|
257
|
+
userPdaToken,
|
|
258
|
+
ownerFeeToken,
|
|
259
|
+
tokenProgram: addresses_1.TOKEN_PROGRAM_ID,
|
|
260
|
+
})
|
|
261
|
+
.instruction();
|
|
262
|
+
return ix;
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Withdraw single token from user pda
|
|
267
|
+
*
|
|
268
|
+
* @returns
|
|
269
|
+
*/
|
|
270
|
+
withdrawTokenFromUserPda(_a) {
|
|
271
|
+
return __awaiter(this, arguments, void 0, function* ({ userWallet, mint, useSta, }) {
|
|
272
|
+
const farm = addresses_1.USDC_FARM;
|
|
273
|
+
const userPda = (0, functions_1.generateUserPda)(userWallet);
|
|
274
|
+
const remainingAccounts = [];
|
|
275
|
+
const userToken = (0, functions_1.generateAta)(userWallet, mint);
|
|
276
|
+
const userPdaToken = useSta ? (0, functions_1.generateUserPdaStorageAccount)(userPda, mint) : (0, functions_1.generateAta)(userPda, mint);
|
|
277
|
+
const ownerFeeToken = (0, functions_1.generateAta)(addresses_1.SITE_FEE_OWNER, mint);
|
|
278
|
+
const ix = yield anchor_1.Anchor.instance().iyfMain.methods
|
|
279
|
+
.withdrawTokenFromUserPda()
|
|
280
|
+
.accounts({
|
|
281
|
+
farm,
|
|
282
|
+
userPda,
|
|
283
|
+
payer: userWallet,
|
|
284
|
+
userToken,
|
|
285
|
+
userPdaToken,
|
|
286
|
+
ownerFeeToken,
|
|
287
|
+
tokenProgram: addresses_1.TOKEN_PROGRAM_ID,
|
|
288
|
+
})
|
|
289
|
+
.remainingAccounts(remainingAccounts)
|
|
290
|
+
.instruction();
|
|
291
|
+
return ix;
|
|
292
|
+
});
|
|
293
|
+
}
|
|
217
294
|
}
|
|
218
295
|
exports.IyfMainIxGenerator = IyfMainIxGenerator;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as web3 from "@solana/web3.js";
|
|
2
|
+
import { IyfMainIxGenerator } from "./IyfMainIxGenerator";
|
|
3
|
+
type OrcaLimitClosePositionAutomation = {
|
|
4
|
+
connection: web3.Connection;
|
|
5
|
+
userWallet: web3.PublicKey;
|
|
6
|
+
position: web3.PublicKey;
|
|
7
|
+
minBinId: number;
|
|
8
|
+
maxBinId: number;
|
|
9
|
+
useAta?: boolean;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Orca IX Generator
|
|
13
|
+
*/
|
|
14
|
+
export declare class OrcaIxGenerator {
|
|
15
|
+
private iyfMain;
|
|
16
|
+
constructor(iyfMain: IyfMainIxGenerator);
|
|
17
|
+
/**
|
|
18
|
+
* Orca limit close position automation
|
|
19
|
+
*/
|
|
20
|
+
orcaLimitClosePositionAutomation({ connection, userWallet, position, minBinId, maxBinId, useAta, }: OrcaLimitClosePositionAutomation): Promise<web3.TransactionInstruction>;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=OrcaIxGenerator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrcaIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/OrcaIxGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,KAAK,gCAAgC,GAAG;IACtC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IAC5B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC;IAC3B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAA;AAED;;GAEG;AACH,qBAAa,eAAe;IAGxB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,kBAAkB;IAGrC;;OAEG;IACG,gCAAgC,CAAC,EACrC,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,MAAa,GACd,EAAE,gCAAgC,GAAG,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC;CAsE3E"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.OrcaIxGenerator = void 0;
|
|
36
|
+
const web3 = __importStar(require("@solana/web3.js"));
|
|
37
|
+
const anchor_1 = require("../anchor");
|
|
38
|
+
const functions_1 = require("../functions");
|
|
39
|
+
const addresses_1 = require("../addresses");
|
|
40
|
+
const orca_1 = require("../orca");
|
|
41
|
+
/**
|
|
42
|
+
* Orca IX Generator
|
|
43
|
+
*/
|
|
44
|
+
class OrcaIxGenerator {
|
|
45
|
+
constructor(iyfMain) {
|
|
46
|
+
this.iyfMain = iyfMain;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Orca limit close position automation
|
|
50
|
+
*/
|
|
51
|
+
orcaLimitClosePositionAutomation(_a) {
|
|
52
|
+
return __awaiter(this, arguments, void 0, function* ({ connection, userWallet, position, minBinId, maxBinId, useAta = true, }) {
|
|
53
|
+
// Initialize anchor
|
|
54
|
+
anchor_1.Anchor.initialize(connection);
|
|
55
|
+
// Generate user pda
|
|
56
|
+
const userPda = (0, functions_1.generateUserPda)(userWallet);
|
|
57
|
+
const positionInfo = yield anchor_1.Anchor.instance().orcaProgram.account.position.fetch(position);
|
|
58
|
+
const whirlpoolInfo = yield anchor_1.Anchor.instance().orcaProgram.account.whirlpool.fetch(positionInfo.whirlpool);
|
|
59
|
+
const whirlpool = positionInfo.whirlpool;
|
|
60
|
+
const positionMint = positionInfo.positionMint;
|
|
61
|
+
const positionTokenAccount = (0, functions_1.generateAta)(userPda, positionMint);
|
|
62
|
+
const tokenOwnerAccountA = useAta ? (0, functions_1.generateAta)(userPda, whirlpoolInfo.tokenMintA) : (0, functions_1.generateUserPdaStorageAccount)(userPda, whirlpoolInfo.tokenMintA);
|
|
63
|
+
const tokenOwnerAccountB = useAta ? (0, functions_1.generateAta)(userPda, whirlpoolInfo.tokenMintB) : (0, functions_1.generateUserPdaStorageAccount)(userPda, whirlpoolInfo.tokenMintB);
|
|
64
|
+
const tokenVaultA = whirlpoolInfo.tokenVaultA;
|
|
65
|
+
const tokenVaultB = whirlpoolInfo.tokenVaultB;
|
|
66
|
+
const startIndex = (0, orca_1.getStartTickIndex)(positionInfo.tickLowerIndex, whirlpoolInfo.tickSpacing);
|
|
67
|
+
const nextIndex = (0, orca_1.getNextStartTick)(positionInfo.tickLowerIndex, whirlpoolInfo.tickSpacing);
|
|
68
|
+
const { publicKey: tickArrayLower } = (0, orca_1.getTickArray)(addresses_1.ORCA_WHIRLPOOL_PROGRAM, whirlpool, startIndex);
|
|
69
|
+
const { publicKey: tickArrayUpper } = (0, orca_1.getTickArray)(addresses_1.ORCA_WHIRLPOOL_PROGRAM, whirlpool, nextIndex);
|
|
70
|
+
const ownerFeeA = (0, functions_1.generateAta)(addresses_1.SITE_FEE_OWNER, whirlpoolInfo.tokenMintA);
|
|
71
|
+
const ownerFeeB = (0, functions_1.generateAta)(addresses_1.SITE_FEE_OWNER, whirlpoolInfo.tokenMintB);
|
|
72
|
+
const remainingAccounts = [];
|
|
73
|
+
for (const rewardInfo of whirlpoolInfo.rewardInfos) {
|
|
74
|
+
if (rewardInfo.mint.equals(web3.PublicKey.default)) {
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
const rewardAccount = useAta ? (0, functions_1.generateAta)(userPda, rewardInfo.mint) : (0, functions_1.generateUserPdaStorageAccount)(userPda, rewardInfo.mint);
|
|
78
|
+
remainingAccounts.push({ pubkey: rewardAccount, isSigner: false, isWritable: true });
|
|
79
|
+
remainingAccounts.push({ pubkey: rewardInfo.vault, isSigner: false, isWritable: true });
|
|
80
|
+
remainingAccounts.push({ pubkey: (0, functions_1.generateAta)(addresses_1.SITE_FEE_OWNER, rewardInfo.mint), isSigner: false, isWritable: true });
|
|
81
|
+
}
|
|
82
|
+
// Generate move_token instruction
|
|
83
|
+
// @ts-ignore
|
|
84
|
+
const iyfExtensionIx = yield anchor_1.Anchor.instance().iyfExtension
|
|
85
|
+
.methods
|
|
86
|
+
.orcaLimitClosePositionAutomation(minBinId, maxBinId)
|
|
87
|
+
.accounts({
|
|
88
|
+
farm: addresses_1.USDC_FARM,
|
|
89
|
+
userPda,
|
|
90
|
+
authority: userWallet,
|
|
91
|
+
iyfProgram: addresses_1.IYF_MAIN,
|
|
92
|
+
hawksightAuthority: addresses_1.HS_AUTHORITY,
|
|
93
|
+
orcaWhirlpoolProgram: addresses_1.ORCA_WHIRLPOOL_PROGRAM,
|
|
94
|
+
positionMint,
|
|
95
|
+
whirlpool,
|
|
96
|
+
position,
|
|
97
|
+
positionTokenAccount,
|
|
98
|
+
tokenOwnerAccountA,
|
|
99
|
+
tokenOwnerAccountB,
|
|
100
|
+
tokenVaultA,
|
|
101
|
+
tokenVaultB,
|
|
102
|
+
tickArrayLower,
|
|
103
|
+
tickArrayUpper,
|
|
104
|
+
ownerFeeA,
|
|
105
|
+
ownerFeeB,
|
|
106
|
+
tokenProgram: addresses_1.TOKEN_PROGRAM_ID,
|
|
107
|
+
associatedTokenProgram: addresses_1.ASSOCIATED_TOKEN_PROGRAM,
|
|
108
|
+
})
|
|
109
|
+
.remainingAccounts(remainingAccounts)
|
|
110
|
+
.instruction();
|
|
111
|
+
// Wrap instruction in iyf extension (iyf-main)
|
|
112
|
+
return yield this.iyfMain.iyfExtensionExecute(connection, {
|
|
113
|
+
userWallet,
|
|
114
|
+
iyfExtensionIx,
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.OrcaIxGenerator = OrcaIxGenerator;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as web3 from "@solana/web3.js";
|
|
2
|
+
type CreateAssociatedTokenAccountInstruction = {
|
|
3
|
+
payer: web3.PublicKey;
|
|
4
|
+
owner: web3.PublicKey;
|
|
5
|
+
mint: web3.PublicKey;
|
|
6
|
+
tokenProgram?: web3.PublicKey;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Iyf Main IX Generator
|
|
10
|
+
*/
|
|
11
|
+
export declare class UtilIxGenerator {
|
|
12
|
+
/**
|
|
13
|
+
* Create associated token account instruction
|
|
14
|
+
*
|
|
15
|
+
* @returns Create ATA instruction
|
|
16
|
+
*/
|
|
17
|
+
createAssociatedTokenAccountInstruction({ payer, owner, mint, tokenProgram }: CreateAssociatedTokenAccountInstruction): web3.TransactionInstruction;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=UtilIxGenerator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UtilIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/UtilIxGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAKxC,KAAK,uCAAuC,GAAG;IAC7C,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;IACtB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,qBAAa,eAAe;IAE1B;;;;OAIG;IACH,uCAAuC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,uCAAuC;CAkBtH"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UtilIxGenerator = void 0;
|
|
4
|
+
const addresses_1 = require("../addresses");
|
|
5
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
6
|
+
const functions_1 = require("../functions");
|
|
7
|
+
/**
|
|
8
|
+
* Iyf Main IX Generator
|
|
9
|
+
*/
|
|
10
|
+
class UtilIxGenerator {
|
|
11
|
+
/**
|
|
12
|
+
* Create associated token account instruction
|
|
13
|
+
*
|
|
14
|
+
* @returns Create ATA instruction
|
|
15
|
+
*/
|
|
16
|
+
createAssociatedTokenAccountInstruction({ payer, owner, mint, tokenProgram }) {
|
|
17
|
+
// Designed to allow token2022
|
|
18
|
+
if (tokenProgram === undefined) {
|
|
19
|
+
tokenProgram = addresses_1.TOKEN_PROGRAM_ID;
|
|
20
|
+
}
|
|
21
|
+
const associatedToken = (0, functions_1.generateAta)(owner, mint);
|
|
22
|
+
return (0, spl_token_1.createAssociatedTokenAccountInstruction)(payer, associatedToken, owner, mint, tokenProgram, addresses_1.ASSOCIATED_TOKEN_PROGRAM);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.UtilIxGenerator = UtilIxGenerator;
|
package/dist/src/orca.d.ts
CHANGED
|
@@ -27,6 +27,14 @@ export declare function getTickArrayFromTickIndex(tickIndex: number, tickSpacing
|
|
|
27
27
|
* @returns
|
|
28
28
|
*/
|
|
29
29
|
export declare function getStartTickIndex(tickIndex: number, tickSpacing: number, offset?: number): number;
|
|
30
|
+
/**
|
|
31
|
+
* Returns next start tick
|
|
32
|
+
*
|
|
33
|
+
* @param tickIndex
|
|
34
|
+
* @param tickSpacing
|
|
35
|
+
* @returns
|
|
36
|
+
*/
|
|
37
|
+
export declare function getNextStartTick(tickIndex: number, tickSpacing: number): number;
|
|
30
38
|
/**
|
|
31
39
|
* @category Program Derived Addresses
|
|
32
40
|
* @param programId
|
package/dist/src/orca.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orca.d.ts","sourceRoot":"","sources":["../../src/orca.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAGxC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,eAAe,GAAE,MAAU;;;EAGlK;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,UAQ3F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM;;;EAO1G"}
|
|
1
|
+
{"version":3,"file":"orca.d.ts","sourceRoot":"","sources":["../../src/orca.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAGxC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,eAAe,GAAE,MAAU;;;EAGlK;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,UAQ3F;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAKtE;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM;;;EAO1G"}
|
package/dist/src/orca.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.getTickArray = exports.getStartTickIndex = exports.getTickArrayFromTickIndex = exports.PDA_TICK_ARRAY_SEED = exports.MAX_TICK_INDEX = exports.MIN_TICK_INDEX = exports.TICK_ARRAY_SIZE = void 0;
|
|
29
|
+
exports.getTickArray = exports.getNextStartTick = exports.getStartTickIndex = exports.getTickArrayFromTickIndex = exports.PDA_TICK_ARRAY_SEED = exports.MAX_TICK_INDEX = exports.MIN_TICK_INDEX = exports.TICK_ARRAY_SIZE = void 0;
|
|
30
30
|
const web3 = __importStar(require("@solana/web3.js"));
|
|
31
31
|
const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
|
|
32
32
|
exports.TICK_ARRAY_SIZE = 88;
|
|
@@ -67,6 +67,20 @@ function getStartTickIndex(tickIndex, tickSpacing, offset = 0) {
|
|
|
67
67
|
return startTickIndex;
|
|
68
68
|
}
|
|
69
69
|
exports.getStartTickIndex = getStartTickIndex;
|
|
70
|
+
/**
|
|
71
|
+
* Returns next start tick
|
|
72
|
+
*
|
|
73
|
+
* @param tickIndex
|
|
74
|
+
* @param tickSpacing
|
|
75
|
+
* @returns
|
|
76
|
+
*/
|
|
77
|
+
function getNextStartTick(tickIndex, tickSpacing) {
|
|
78
|
+
const startTick = getStartTickIndex(tickIndex, tickSpacing);
|
|
79
|
+
const multiple = tickSpacing * exports.TICK_ARRAY_SIZE;
|
|
80
|
+
const nextTick = getStartTickIndex(startTick + multiple, tickSpacing);
|
|
81
|
+
return nextTick;
|
|
82
|
+
}
|
|
83
|
+
exports.getNextStartTick = getNextStartTick;
|
|
70
84
|
/**
|
|
71
85
|
* @category Program Derived Addresses
|
|
72
86
|
* @param programId
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as web3 from "@solana/web3.js";
|
|
2
|
+
/**
|
|
3
|
+
* Iyf Main IX Generator
|
|
4
|
+
*/
|
|
5
|
+
export declare class HawksightPdaGenerator {
|
|
6
|
+
/**
|
|
7
|
+
* Generate UserPDA
|
|
8
|
+
*
|
|
9
|
+
* @param userWallet
|
|
10
|
+
* @param farm
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
generateUserPda(userWallet: web3.PublicKey, farm?: web3.PublicKey): web3.PublicKey;
|
|
14
|
+
/**
|
|
15
|
+
* Generate the PDA for the userPda's storage account
|
|
16
|
+
*
|
|
17
|
+
* @param userPda
|
|
18
|
+
* @param mint
|
|
19
|
+
* @returns Storage Account owned by the user pda
|
|
20
|
+
*/
|
|
21
|
+
generateUserPdaStorageAccount(userPda: web3.PublicKey, mint: web3.PublicKey): web3.PublicKey;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=HawksightPdaGenerator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HawksightPdaGenerator.d.ts","sourceRoot":"","sources":["../../../src/pdaGenerator/HawksightPdaGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AASxC;;GAEG;AACH,qBAAa,qBAAqB;IAEhC;;;;;;OAMG;IACH,eAAe,CACb,UAAU,EAAE,IAAI,CAAC,SAAS,EAC1B,IAAI,GAAE,IAAI,CAAC,SAEV,GACA,IAAI,CAAC,SAAS;IAQjB;;;;;;OAMG;IACH,6BAA6B,CAC3B,OAAO,EAAE,IAAI,CAAC,SAAS,EACvB,IAAI,EAAE,IAAI,CAAC,SAAS;CAQvB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.HawksightPdaGenerator = void 0;
|
|
27
|
+
const web3 = __importStar(require("@solana/web3.js"));
|
|
28
|
+
const addresses_1 = require("../addresses");
|
|
29
|
+
/**
|
|
30
|
+
* Iyf Main IX Generator
|
|
31
|
+
*/
|
|
32
|
+
class HawksightPdaGenerator {
|
|
33
|
+
/**
|
|
34
|
+
* Generate UserPDA
|
|
35
|
+
*
|
|
36
|
+
* @param userWallet
|
|
37
|
+
* @param farm
|
|
38
|
+
* @returns
|
|
39
|
+
*/
|
|
40
|
+
generateUserPda(userWallet, farm = new web3.PublicKey("7jLQhREMxXjKdpwVuN6gwsWt3BNfAg9WqbepffPbi4ww")) {
|
|
41
|
+
const [pda] = web3.PublicKey.findProgramAddressSync([Buffer.from("multi-user"), farm.toBuffer(), userWallet.toBuffer()], new web3.PublicKey("FqGg2Y1FNxMiGd51Q6UETixQWkF5fB92MysbYogRJb3P"));
|
|
42
|
+
return pda;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Generate the PDA for the userPda's storage account
|
|
46
|
+
*
|
|
47
|
+
* @param userPda
|
|
48
|
+
* @param mint
|
|
49
|
+
* @returns Storage Account owned by the user pda
|
|
50
|
+
*/
|
|
51
|
+
generateUserPdaStorageAccount(userPda, mint) {
|
|
52
|
+
const [storageAccount] = web3.PublicKey.findProgramAddressSync([Buffer.from("storage-token"), mint.toBuffer(), userPda.toBuffer()], addresses_1.IYF_MAIN);
|
|
53
|
+
return storageAccount;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.HawksightPdaGenerator = HawksightPdaGenerator;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MeteoraPdaGenerator.d.ts","sourceRoot":"","sources":["../../../src/pdaGenerator/MeteoraPdaGenerator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,qBAAa,mBAAmB;CAE/B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as web3 from "@solana/web3.js";
|
|
2
|
+
/**
|
|
3
|
+
* Orca PDA Generator
|
|
4
|
+
*/
|
|
5
|
+
export declare class OrcaPdaGenerator {
|
|
6
|
+
/**
|
|
7
|
+
* Generate Orca Position PDA
|
|
8
|
+
*
|
|
9
|
+
* @param userWallet
|
|
10
|
+
* @param farm
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
generateOrcaPositionPDA(positionMint: web3.PublicKey): web3.PublicKey;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=OrcaPdaGenerator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrcaPdaGenerator.d.ts","sourceRoot":"","sources":["../../../src/pdaGenerator/OrcaPdaGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAGxC;;GAEG;AACH,qBAAa,gBAAgB;IAE3B;;;;;;OAMG;IACH,uBAAuB,CACrB,YAAY,EAAE,IAAI,CAAC,SAAS,GAC3B,IAAI,CAAC,SAAS;CAOlB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.OrcaPdaGenerator = void 0;
|
|
27
|
+
const web3 = __importStar(require("@solana/web3.js"));
|
|
28
|
+
const addresses_1 = require("../addresses");
|
|
29
|
+
/**
|
|
30
|
+
* Orca PDA Generator
|
|
31
|
+
*/
|
|
32
|
+
class OrcaPdaGenerator {
|
|
33
|
+
/**
|
|
34
|
+
* Generate Orca Position PDA
|
|
35
|
+
*
|
|
36
|
+
* @param userWallet
|
|
37
|
+
* @param farm
|
|
38
|
+
* @returns
|
|
39
|
+
*/
|
|
40
|
+
generateOrcaPositionPDA(positionMint) {
|
|
41
|
+
const [pda] = web3.PublicKey.findProgramAddressSync([Buffer.from("position", "utf-8"), positionMint.toBuffer()], addresses_1.ORCA_WHIRLPOOL_PROGRAM);
|
|
42
|
+
return pda;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.OrcaPdaGenerator = OrcaPdaGenerator;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RaydiumPdaGenerator.d.ts","sourceRoot":"","sources":["../../../src/pdaGenerator/RaydiumPdaGenerator.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,mBAAmB;CAE/B"}
|