@nosana/kit 2.0.32 → 2.0.38
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/errors/NosanaError.d.ts +2 -2
- package/dist/generated_clients/jobs/accounts/index.d.ts +3 -3
- package/dist/generated_clients/jobs/accounts/index.js +3 -3
- package/dist/generated_clients/jobs/accounts/jobAccount.d.ts +2 -2
- package/dist/generated_clients/jobs/accounts/jobAccount.js +25 -25
- package/dist/generated_clients/jobs/accounts/marketAccount.d.ts +2 -2
- package/dist/generated_clients/jobs/accounts/marketAccount.js +25 -25
- package/dist/generated_clients/jobs/accounts/runAccount.d.ts +2 -2
- package/dist/generated_clients/jobs/accounts/runAccount.js +13 -13
- package/dist/generated_clients/jobs/errors/index.d.ts +1 -1
- package/dist/generated_clients/jobs/errors/index.js +1 -1
- package/dist/generated_clients/jobs/errors/nosanaJobs.d.ts +1 -1
- package/dist/generated_clients/jobs/errors/nosanaJobs.js +5 -5
- package/dist/generated_clients/jobs/index.d.ts +5 -5
- package/dist/generated_clients/jobs/index.js +5 -5
- package/dist/generated_clients/jobs/instructions/assign.d.ts +22 -6
- package/dist/generated_clients/jobs/instructions/assign.js +28 -13
- package/dist/generated_clients/jobs/instructions/assign.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/claim.d.ts +16 -4
- package/dist/generated_clients/jobs/instructions/claim.js +19 -8
- package/dist/generated_clients/jobs/instructions/claim.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/clean.d.ts +9 -3
- package/dist/generated_clients/jobs/instructions/clean.js +12 -7
- package/dist/generated_clients/jobs/instructions/clean.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/cleanAdmin.d.ts +9 -3
- package/dist/generated_clients/jobs/instructions/cleanAdmin.js +12 -7
- package/dist/generated_clients/jobs/instructions/cleanAdmin.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/close.d.ts +12 -4
- package/dist/generated_clients/jobs/instructions/close.js +15 -8
- package/dist/generated_clients/jobs/instructions/close.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/closeAdmin.d.ts +12 -4
- package/dist/generated_clients/jobs/instructions/closeAdmin.js +15 -8
- package/dist/generated_clients/jobs/instructions/closeAdmin.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/complete.d.ts +9 -4
- package/dist/generated_clients/jobs/instructions/complete.js +13 -9
- package/dist/generated_clients/jobs/instructions/complete.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/delist.d.ts +14 -4
- package/dist/generated_clients/jobs/instructions/delist.js +17 -8
- package/dist/generated_clients/jobs/instructions/delist.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/end.d.ts +16 -4
- package/dist/generated_clients/jobs/instructions/end.js +19 -8
- package/dist/generated_clients/jobs/instructions/end.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/extend.d.ts +18 -5
- package/dist/generated_clients/jobs/instructions/extend.js +22 -10
- package/dist/generated_clients/jobs/instructions/extend.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/finish.d.ts +19 -5
- package/dist/generated_clients/jobs/instructions/finish.js +23 -10
- package/dist/generated_clients/jobs/instructions/finish.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/index.d.ts +19 -19
- package/dist/generated_clients/jobs/instructions/index.js +19 -19
- package/dist/generated_clients/jobs/instructions/list.d.ts +21 -6
- package/dist/generated_clients/jobs/instructions/list.js +27 -13
- package/dist/generated_clients/jobs/instructions/list.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/open.d.ts +20 -9
- package/dist/generated_clients/jobs/instructions/open.js +30 -20
- package/dist/generated_clients/jobs/instructions/open.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/quit.d.ts +10 -3
- package/dist/generated_clients/jobs/instructions/quit.js +13 -7
- package/dist/generated_clients/jobs/instructions/quit.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/quitAdmin.d.ts +9 -3
- package/dist/generated_clients/jobs/instructions/quitAdmin.js +12 -7
- package/dist/generated_clients/jobs/instructions/quitAdmin.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/recover.d.ts +14 -4
- package/dist/generated_clients/jobs/instructions/recover.js +17 -8
- package/dist/generated_clients/jobs/instructions/recover.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/stop.d.ts +9 -3
- package/dist/generated_clients/jobs/instructions/stop.js +12 -7
- package/dist/generated_clients/jobs/instructions/stop.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/update.d.ts +14 -8
- package/dist/generated_clients/jobs/instructions/update.js +22 -17
- package/dist/generated_clients/jobs/instructions/update.js.map +1 -1
- package/dist/generated_clients/jobs/instructions/work.d.ts +15 -4
- package/dist/generated_clients/jobs/instructions/work.js +18 -8
- package/dist/generated_clients/jobs/instructions/work.js.map +1 -1
- package/dist/generated_clients/jobs/programs/index.d.ts +1 -1
- package/dist/generated_clients/jobs/programs/index.js +1 -1
- package/dist/generated_clients/jobs/programs/nosanaJobs.d.ts +3 -3
- package/dist/generated_clients/jobs/programs/nosanaJobs.js +6 -6
- package/dist/generated_clients/jobs/shared/index.d.ts +2 -2
- package/dist/generated_clients/jobs/shared/index.js +9 -9
- package/dist/generated_clients/jobs/types/index.d.ts +3 -3
- package/dist/generated_clients/jobs/types/index.js +3 -3
- package/dist/generated_clients/jobs/types/jobState.d.ts +1 -1
- package/dist/generated_clients/jobs/types/jobState.js +1 -1
- package/dist/generated_clients/jobs/types/jobType.d.ts +1 -1
- package/dist/generated_clients/jobs/types/jobType.js +1 -1
- package/dist/generated_clients/jobs/types/queueType.d.ts +1 -1
- package/dist/generated_clients/jobs/types/queueType.js +1 -1
- package/dist/generated_clients/merkle_distributor/accounts/claimStatus.d.ts +2 -2
- package/dist/generated_clients/merkle_distributor/accounts/claimStatus.js +17 -17
- package/dist/generated_clients/merkle_distributor/accounts/index.d.ts +2 -2
- package/dist/generated_clients/merkle_distributor/accounts/index.js +2 -2
- package/dist/generated_clients/merkle_distributor/accounts/merkleDistributor.d.ts +2 -2
- package/dist/generated_clients/merkle_distributor/accounts/merkleDistributor.js +45 -45
- package/dist/generated_clients/merkle_distributor/errors/index.d.ts +1 -1
- package/dist/generated_clients/merkle_distributor/errors/index.js +1 -1
- package/dist/generated_clients/merkle_distributor/errors/merkleDistributor.d.ts +1 -1
- package/dist/generated_clients/merkle_distributor/errors/merkleDistributor.js +5 -5
- package/dist/generated_clients/merkle_distributor/index.d.ts +4 -4
- package/dist/generated_clients/merkle_distributor/index.js +4 -4
- package/dist/generated_clients/merkle_distributor/instructions/claimLocked.d.ts +13 -4
- package/dist/generated_clients/merkle_distributor/instructions/claimLocked.js +16 -8
- package/dist/generated_clients/merkle_distributor/instructions/claimLocked.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/clawback.d.ts +13 -4
- package/dist/generated_clients/merkle_distributor/instructions/clawback.js +17 -9
- package/dist/generated_clients/merkle_distributor/instructions/clawback.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.d.ts +10 -3
- package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.js +13 -7
- package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.d.ts +12 -4
- package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.js +15 -8
- package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/index.d.ts +9 -9
- package/dist/generated_clients/merkle_distributor/instructions/index.js +9 -9
- package/dist/generated_clients/merkle_distributor/instructions/newClaim.d.ts +17 -7
- package/dist/generated_clients/merkle_distributor/instructions/newClaim.js +24 -15
- package/dist/generated_clients/merkle_distributor/instructions/newClaim.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/newDistributor.d.ts +24 -13
- package/dist/generated_clients/merkle_distributor/instructions/newDistributor.js +37 -27
- package/dist/generated_clients/merkle_distributor/instructions/newDistributor.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/setAdmin.d.ts +9 -3
- package/dist/generated_clients/merkle_distributor/instructions/setAdmin.js +12 -7
- package/dist/generated_clients/merkle_distributor/instructions/setAdmin.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.d.ts +9 -3
- package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.js +12 -7
- package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.d.ts +9 -4
- package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.js +13 -9
- package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.js.map +1 -1
- package/dist/generated_clients/merkle_distributor/programs/index.d.ts +1 -1
- package/dist/generated_clients/merkle_distributor/programs/index.js +1 -1
- package/dist/generated_clients/merkle_distributor/programs/merkleDistributor.d.ts +3 -3
- package/dist/generated_clients/merkle_distributor/programs/merkleDistributor.js +6 -6
- package/dist/generated_clients/merkle_distributor/shared/index.d.ts +2 -2
- package/dist/generated_clients/merkle_distributor/shared/index.js +9 -9
- package/dist/generated_clients/staking/accounts/index.d.ts +2 -2
- package/dist/generated_clients/staking/accounts/index.js +2 -2
- package/dist/generated_clients/staking/accounts/settingsAccount.d.ts +2 -2
- package/dist/generated_clients/staking/accounts/settingsAccount.js +7 -7
- package/dist/generated_clients/staking/accounts/stakeAccount.d.ts +2 -2
- package/dist/generated_clients/staking/accounts/stakeAccount.js +17 -17
- package/dist/generated_clients/staking/errors/index.d.ts +1 -1
- package/dist/generated_clients/staking/errors/index.js +1 -1
- package/dist/generated_clients/staking/errors/nosanaStaking.d.ts +1 -1
- package/dist/generated_clients/staking/errors/nosanaStaking.js +5 -5
- package/dist/generated_clients/staking/index.d.ts +4 -4
- package/dist/generated_clients/staking/index.js +4 -4
- package/dist/generated_clients/staking/instructions/close.d.ts +12 -4
- package/dist/generated_clients/staking/instructions/close.js +15 -8
- package/dist/generated_clients/staking/instructions/close.js.map +1 -1
- package/dist/generated_clients/staking/instructions/extend.d.ts +9 -4
- package/dist/generated_clients/staking/instructions/extend.js +13 -9
- package/dist/generated_clients/staking/instructions/extend.js.map +1 -1
- package/dist/generated_clients/staking/instructions/index.d.ts +10 -10
- package/dist/generated_clients/staking/instructions/index.js +10 -10
- package/dist/generated_clients/staking/instructions/init.d.ts +11 -4
- package/dist/generated_clients/staking/instructions/init.js +15 -9
- package/dist/generated_clients/staking/instructions/init.js.map +1 -1
- package/dist/generated_clients/staking/instructions/restake.d.ts +9 -3
- package/dist/generated_clients/staking/instructions/restake.js +12 -7
- package/dist/generated_clients/staking/instructions/restake.js.map +1 -1
- package/dist/generated_clients/staking/instructions/slash.d.ts +14 -5
- package/dist/generated_clients/staking/instructions/slash.js +18 -10
- package/dist/generated_clients/staking/instructions/slash.js.map +1 -1
- package/dist/generated_clients/staking/instructions/stake.d.ts +17 -6
- package/dist/generated_clients/staking/instructions/stake.js +24 -14
- package/dist/generated_clients/staking/instructions/stake.js.map +1 -1
- package/dist/generated_clients/staking/instructions/topup.d.ts +13 -5
- package/dist/generated_clients/staking/instructions/topup.js +17 -10
- package/dist/generated_clients/staking/instructions/topup.js.map +1 -1
- package/dist/generated_clients/staking/instructions/unstake.d.ts +9 -3
- package/dist/generated_clients/staking/instructions/unstake.js +12 -7
- package/dist/generated_clients/staking/instructions/unstake.js.map +1 -1
- package/dist/generated_clients/staking/instructions/updateSettings.d.ts +10 -3
- package/dist/generated_clients/staking/instructions/updateSettings.js +13 -7
- package/dist/generated_clients/staking/instructions/updateSettings.js.map +1 -1
- package/dist/generated_clients/staking/instructions/withdraw.d.ts +12 -4
- package/dist/generated_clients/staking/instructions/withdraw.js +15 -8
- package/dist/generated_clients/staking/instructions/withdraw.js.map +1 -1
- package/dist/generated_clients/staking/programs/index.d.ts +1 -1
- package/dist/generated_clients/staking/programs/index.js +1 -1
- package/dist/generated_clients/staking/programs/nosanaStaking.d.ts +3 -3
- package/dist/generated_clients/staking/programs/nosanaStaking.js +6 -6
- package/dist/generated_clients/staking/shared/index.d.ts +2 -2
- package/dist/generated_clients/staking/shared/index.js +9 -9
- package/dist/index.d.ts +2 -2
- package/dist/index.js.map +1 -1
- package/dist/services/programs/merkleDistributor/MerkleDistributorProgram.js +0 -1
- package/dist/services/programs/merkleDistributor/MerkleDistributorProgram.js.map +1 -1
- package/package.json +36 -17
|
@@ -5,9 +5,15 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const INIT_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
settings: 0,
|
|
13
|
+
authority: 1,
|
|
14
|
+
systemProgram: 2,
|
|
15
|
+
rent: 3,
|
|
16
|
+
};
|
|
11
17
|
export const INIT_DISCRIMINATOR = new Uint8Array([
|
|
12
18
|
220, 59, 207, 236, 108, 250, 47, 100,
|
|
13
19
|
]);
|
|
@@ -15,11 +21,11 @@ export function getInitDiscriminatorBytes() {
|
|
|
15
21
|
return fixEncoderSize(getBytesEncoder(), 8).encode(INIT_DISCRIMINATOR);
|
|
16
22
|
}
|
|
17
23
|
export function getInitInstructionDataEncoder() {
|
|
18
|
-
return transformEncoder(getStructEncoder([[
|
|
24
|
+
return transformEncoder(getStructEncoder([["discriminator", fixEncoderSize(getBytesEncoder(), 8)]]), (value) => ({ ...value, discriminator: INIT_DISCRIMINATOR }));
|
|
19
25
|
}
|
|
20
26
|
export function getInitInstructionDataDecoder() {
|
|
21
27
|
return getStructDecoder([
|
|
22
|
-
[
|
|
28
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
23
29
|
]);
|
|
24
30
|
}
|
|
25
31
|
export function getInitInstructionDataCodec() {
|
|
@@ -39,13 +45,13 @@ export function getInitInstruction(input, config) {
|
|
|
39
45
|
// Resolve default values.
|
|
40
46
|
if (!accounts.systemProgram.value) {
|
|
41
47
|
accounts.systemProgram.value =
|
|
42
|
-
|
|
48
|
+
"11111111111111111111111111111111";
|
|
43
49
|
}
|
|
44
50
|
if (!accounts.rent.value) {
|
|
45
51
|
accounts.rent.value =
|
|
46
|
-
|
|
52
|
+
"SysvarRent111111111111111111111111111111111";
|
|
47
53
|
}
|
|
48
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
54
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
49
55
|
return Object.freeze({
|
|
50
56
|
accounts: [
|
|
51
57
|
getAccountMeta(accounts.settings),
|
|
@@ -60,7 +66,7 @@ export function getInitInstruction(input, config) {
|
|
|
60
66
|
export function parseInitInstruction(instruction) {
|
|
61
67
|
if (instruction.accounts.length < 4) {
|
|
62
68
|
// TODO: Coded error.
|
|
63
|
-
throw new Error(
|
|
69
|
+
throw new Error("Not enough accounts");
|
|
64
70
|
}
|
|
65
71
|
let accountIndex = 0;
|
|
66
72
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,oBAAoB,CAAC;AAEjF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,UAAU,CAAC;IAC/C,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;CACrC,CAAC,CAAC;AAEH,MAAM,UAAU,yBAAyB;IACvC,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACzE,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,15 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
export declare const
|
|
8
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
export declare const RESTAKE_INSTRUCTION_ACCOUNTS: {
|
|
11
|
+
readonly vault: 0;
|
|
12
|
+
readonly stake: 1;
|
|
13
|
+
readonly authority: 2;
|
|
14
|
+
};
|
|
15
|
+
export type RestakeInstructionAccountName = keyof typeof RESTAKE_INSTRUCTION_ACCOUNTS;
|
|
16
|
+
export declare const RESTAKE_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
11
17
|
export declare function getRestakeDiscriminatorBytes(): ReadonlyUint8Array;
|
|
12
18
|
export type RestakeInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
13
19
|
TAccountVault extends string ? WritableAccount<TAccountVault> : TAccountVault,
|
|
@@ -5,9 +5,14 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const RESTAKE_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
vault: 0,
|
|
13
|
+
stake: 1,
|
|
14
|
+
authority: 2,
|
|
15
|
+
};
|
|
11
16
|
export const RESTAKE_DISCRIMINATOR = new Uint8Array([
|
|
12
17
|
97, 161, 241, 167, 6, 32, 213, 53,
|
|
13
18
|
]);
|
|
@@ -15,11 +20,11 @@ export function getRestakeDiscriminatorBytes() {
|
|
|
15
20
|
return fixEncoderSize(getBytesEncoder(), 8).encode(RESTAKE_DISCRIMINATOR);
|
|
16
21
|
}
|
|
17
22
|
export function getRestakeInstructionDataEncoder() {
|
|
18
|
-
return transformEncoder(getStructEncoder([[
|
|
23
|
+
return transformEncoder(getStructEncoder([["discriminator", fixEncoderSize(getBytesEncoder(), 8)]]), (value) => ({ ...value, discriminator: RESTAKE_DISCRIMINATOR }));
|
|
19
24
|
}
|
|
20
25
|
export function getRestakeInstructionDataDecoder() {
|
|
21
26
|
return getStructDecoder([
|
|
22
|
-
[
|
|
27
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
23
28
|
]);
|
|
24
29
|
}
|
|
25
30
|
export function getRestakeInstructionDataCodec() {
|
|
@@ -35,7 +40,7 @@ export function getRestakeInstruction(input, config) {
|
|
|
35
40
|
authority: { value: input.authority ?? null, isWritable: false },
|
|
36
41
|
};
|
|
37
42
|
const accounts = originalAccounts;
|
|
38
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
43
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
39
44
|
return Object.freeze({
|
|
40
45
|
accounts: [
|
|
41
46
|
getAccountMeta(accounts.vault),
|
|
@@ -49,7 +54,7 @@ export function getRestakeInstruction(input, config) {
|
|
|
49
54
|
export function parseRestakeInstruction(instruction) {
|
|
50
55
|
if (instruction.accounts.length < 3) {
|
|
51
56
|
// TODO: Coded error.
|
|
52
|
-
throw new Error(
|
|
57
|
+
throw new Error("Not enough accounts");
|
|
53
58
|
}
|
|
54
59
|
let accountIndex = 0;
|
|
55
60
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/restake.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"restake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/restake.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GAcjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,oBAAoB,CAAC;AAEjF,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,SAAS,EAAE,CAAC;CACJ,CAAC;AAGX,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,UAAU,CAAC;IAClD,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,UAAU,4BAA4B;IAC1C,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAC5E,CAAC;AA8BD,MAAM,UAAU,gCAAgC;IAC9C,OAAO,gBAAgB,CACrB,gBAAgB,CAAC,CAAC,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3E,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,CAAC,CAChE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC;IAC9C,OAAO,gBAAgB,CAAC;QACtB,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;KACxD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,8BAA8B;IAI5C,OAAO,YAAY,CACjB,gCAAgC,EAAE,EAClC,gCAAgC,EAAE,CACnC,CAAC;AACJ,CAAC;AAYD,MAAM,UAAU,qBAAqB,CAMnC,KAAoE,EACpE,MAA6C;IAO7C,mBAAmB;IACnB,MAAM,cAAc,GAClB,MAAM,EAAE,cAAc,IAAI,8BAA8B,CAAC;IAE3D,qBAAqB;IACrB,MAAM,gBAAgB,GAAG;QACvB,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;QACvD,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;QACvD,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;KACjE,CAAC;IACF,MAAM,QAAQ,GAAG,gBAGhB,CAAC;IAEF,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE;YACR,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9B,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9B,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;SACnC;QACD,IAAI,EAAE,gCAAgC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,cAAc;KAMf,CAAC,CAAC;AACL,CAAC;AAeD,MAAM,UAAU,uBAAuB,CAIrC,WAEyC;IAEzC,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,qBAAqB;QACrB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,MAAM,WAAW,GAAI,WAAW,CAAC,QAA0B,CAAC,YAAY,CAAE,CAAC;QAC3E,YAAY,IAAI,CAAC,CAAC;QAClB,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IACF,OAAO;QACL,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,QAAQ,EAAE;YACR,KAAK,EAAE,cAAc,EAAE;YACvB,KAAK,EAAE,cAAc,EAAE;YACvB,SAAS,EAAE,cAAc,EAAE;SAC5B;QACD,IAAI,EAAE,gCAAgC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;KAClE,CAAC;AACJ,CAAC"}
|
|
@@ -5,11 +5,20 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
export declare const
|
|
8
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
export declare const SLASH_INSTRUCTION_ACCOUNTS: {
|
|
11
|
+
readonly vault: 0;
|
|
12
|
+
readonly stake: 1;
|
|
13
|
+
readonly tokenAccount: 2;
|
|
14
|
+
readonly settings: 3;
|
|
15
|
+
readonly authority: 4;
|
|
16
|
+
readonly tokenProgram: 5;
|
|
17
|
+
};
|
|
18
|
+
export type SlashInstructionAccountName = keyof typeof SLASH_INSTRUCTION_ACCOUNTS;
|
|
19
|
+
export declare const SLASH_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
11
20
|
export declare function getSlashDiscriminatorBytes(): ReadonlyUint8Array;
|
|
12
|
-
export type SlashInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountTokenAccount extends string | AccountMeta<string> = string, TAccountSettings extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> =
|
|
21
|
+
export type SlashInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountTokenAccount extends string | AccountMeta<string> = string, TAccountSettings extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
13
22
|
TAccountVault extends string ? WritableAccount<TAccountVault> : TAccountVault,
|
|
14
23
|
TAccountStake extends string ? WritableAccount<TAccountStake> : TAccountStake,
|
|
15
24
|
TAccountTokenAccount extends string ? WritableAccount<TAccountTokenAccount> : TAccountTokenAccount,
|
|
@@ -35,7 +44,7 @@ export type SlashInput<TAccountVault extends string = string, TAccountStake exte
|
|
|
35
44
|
settings: Address<TAccountSettings>;
|
|
36
45
|
authority: TransactionSigner<TAccountAuthority>;
|
|
37
46
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
38
|
-
amount: SlashInstructionDataArgs[
|
|
47
|
+
amount: SlashInstructionDataArgs["amount"];
|
|
39
48
|
};
|
|
40
49
|
export declare function getSlashInstruction<TAccountVault extends string, TAccountStake extends string, TAccountTokenAccount extends string, TAccountSettings extends string, TAccountAuthority extends string, TAccountTokenProgram extends string, TProgramAddress extends Address = typeof NOSANA_STAKING_PROGRAM_ADDRESS>(input: SlashInput<TAccountVault, TAccountStake, TAccountTokenAccount, TAccountSettings, TAccountAuthority, TAccountTokenProgram>, config?: {
|
|
41
50
|
programAddress?: TProgramAddress;
|
|
@@ -5,9 +5,17 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const SLASH_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
vault: 0,
|
|
13
|
+
stake: 1,
|
|
14
|
+
tokenAccount: 2,
|
|
15
|
+
settings: 3,
|
|
16
|
+
authority: 4,
|
|
17
|
+
tokenProgram: 5,
|
|
18
|
+
};
|
|
11
19
|
export const SLASH_DISCRIMINATOR = new Uint8Array([
|
|
12
20
|
204, 141, 18, 161, 8, 177, 92, 142,
|
|
13
21
|
]);
|
|
@@ -16,14 +24,14 @@ export function getSlashDiscriminatorBytes() {
|
|
|
16
24
|
}
|
|
17
25
|
export function getSlashInstructionDataEncoder() {
|
|
18
26
|
return transformEncoder(getStructEncoder([
|
|
19
|
-
[
|
|
20
|
-
[
|
|
27
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
|
|
28
|
+
["amount", getU64Encoder()],
|
|
21
29
|
]), (value) => ({ ...value, discriminator: SLASH_DISCRIMINATOR }));
|
|
22
30
|
}
|
|
23
31
|
export function getSlashInstructionDataDecoder() {
|
|
24
32
|
return getStructDecoder([
|
|
25
|
-
[
|
|
26
|
-
[
|
|
33
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
34
|
+
["amount", getU64Decoder()],
|
|
27
35
|
]);
|
|
28
36
|
}
|
|
29
37
|
export function getSlashInstructionDataCodec() {
|
|
@@ -47,9 +55,9 @@ export function getSlashInstruction(input, config) {
|
|
|
47
55
|
// Resolve default values.
|
|
48
56
|
if (!accounts.tokenProgram.value) {
|
|
49
57
|
accounts.tokenProgram.value =
|
|
50
|
-
|
|
58
|
+
"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
|
|
51
59
|
}
|
|
52
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
60
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
53
61
|
return Object.freeze({
|
|
54
62
|
accounts: [
|
|
55
63
|
getAccountMeta(accounts.vault),
|
|
@@ -66,7 +74,7 @@ export function getSlashInstruction(input, config) {
|
|
|
66
74
|
export function parseSlashInstruction(instruction) {
|
|
67
75
|
if (instruction.accounts.length < 6) {
|
|
68
76
|
// TODO: Coded error.
|
|
69
|
-
throw new Error(
|
|
77
|
+
throw new Error("Not enough accounts");
|
|
70
78
|
}
|
|
71
79
|
let accountIndex = 0;
|
|
72
80
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slash.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/slash.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,oBAAoB,CAAC;AAEjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,UAAU,CAAC;IAChD,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;CACnC,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B;IACxC,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAC1E,CAAC;
|
|
1
|
+
{"version":3,"file":"slash.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/slash.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,22 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
export declare const
|
|
8
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
export declare const STAKE_INSTRUCTION_ACCOUNTS: {
|
|
11
|
+
readonly mint: 0;
|
|
12
|
+
readonly user: 1;
|
|
13
|
+
readonly vault: 2;
|
|
14
|
+
readonly stake: 3;
|
|
15
|
+
readonly authority: 4;
|
|
16
|
+
readonly systemProgram: 5;
|
|
17
|
+
readonly tokenProgram: 6;
|
|
18
|
+
readonly rent: 7;
|
|
19
|
+
};
|
|
20
|
+
export type StakeInstructionAccountName = keyof typeof STAKE_INSTRUCTION_ACCOUNTS;
|
|
21
|
+
export declare const STAKE_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
11
22
|
export declare function getStakeDiscriminatorBytes(): ReadonlyUint8Array;
|
|
12
|
-
export type StakeInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountMint extends string | AccountMeta<string> = string, TAccountUser extends string | AccountMeta<string> = string, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> =
|
|
23
|
+
export type StakeInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountMint extends string | AccountMeta<string> = string, TAccountUser extends string | AccountMeta<string> = string, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TAccountTokenProgram extends string | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TAccountRent extends string | AccountMeta<string> = "SysvarRent111111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
13
24
|
TAccountMint extends string ? ReadonlyAccount<TAccountMint> : TAccountMint,
|
|
14
25
|
TAccountUser extends string ? WritableAccount<TAccountUser> : TAccountUser,
|
|
15
26
|
TAccountVault extends string ? WritableAccount<TAccountVault> : TAccountVault,
|
|
@@ -41,8 +52,8 @@ export type StakeInput<TAccountMint extends string = string, TAccountUser extend
|
|
|
41
52
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
42
53
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
43
54
|
rent?: Address<TAccountRent>;
|
|
44
|
-
amount: StakeInstructionDataArgs[
|
|
45
|
-
duration: StakeInstructionDataArgs[
|
|
55
|
+
amount: StakeInstructionDataArgs["amount"];
|
|
56
|
+
duration: StakeInstructionDataArgs["duration"];
|
|
46
57
|
};
|
|
47
58
|
export declare function getStakeInstruction<TAccountMint extends string, TAccountUser extends string, TAccountVault extends string, TAccountStake extends string, TAccountAuthority extends string, TAccountSystemProgram extends string, TAccountTokenProgram extends string, TAccountRent extends string, TProgramAddress extends Address = typeof NOSANA_STAKING_PROGRAM_ADDRESS>(input: StakeInput<TAccountMint, TAccountUser, TAccountVault, TAccountStake, TAccountAuthority, TAccountSystemProgram, TAccountTokenProgram, TAccountRent>, config?: {
|
|
48
59
|
programAddress?: TProgramAddress;
|
|
@@ -5,9 +5,19 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, getU64Decoder, getU64Encoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, getU64Decoder, getU64Encoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const STAKE_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
mint: 0,
|
|
13
|
+
user: 1,
|
|
14
|
+
vault: 2,
|
|
15
|
+
stake: 3,
|
|
16
|
+
authority: 4,
|
|
17
|
+
systemProgram: 5,
|
|
18
|
+
tokenProgram: 6,
|
|
19
|
+
rent: 7,
|
|
20
|
+
};
|
|
11
21
|
export const STAKE_DISCRIMINATOR = new Uint8Array([
|
|
12
22
|
206, 176, 202, 18, 200, 209, 179, 108,
|
|
13
23
|
]);
|
|
@@ -16,16 +26,16 @@ export function getStakeDiscriminatorBytes() {
|
|
|
16
26
|
}
|
|
17
27
|
export function getStakeInstructionDataEncoder() {
|
|
18
28
|
return transformEncoder(getStructEncoder([
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[
|
|
29
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
|
|
30
|
+
["amount", getU64Encoder()],
|
|
31
|
+
["duration", getU128Encoder()],
|
|
22
32
|
]), (value) => ({ ...value, discriminator: STAKE_DISCRIMINATOR }));
|
|
23
33
|
}
|
|
24
34
|
export function getStakeInstructionDataDecoder() {
|
|
25
35
|
return getStructDecoder([
|
|
26
|
-
[
|
|
27
|
-
[
|
|
28
|
-
[
|
|
36
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
37
|
+
["amount", getU64Decoder()],
|
|
38
|
+
["duration", getU128Decoder()],
|
|
29
39
|
]);
|
|
30
40
|
}
|
|
31
41
|
export function getStakeInstructionDataCodec() {
|
|
@@ -51,17 +61,17 @@ export function getStakeInstruction(input, config) {
|
|
|
51
61
|
// Resolve default values.
|
|
52
62
|
if (!accounts.systemProgram.value) {
|
|
53
63
|
accounts.systemProgram.value =
|
|
54
|
-
|
|
64
|
+
"11111111111111111111111111111111";
|
|
55
65
|
}
|
|
56
66
|
if (!accounts.tokenProgram.value) {
|
|
57
67
|
accounts.tokenProgram.value =
|
|
58
|
-
|
|
68
|
+
"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
|
|
59
69
|
}
|
|
60
70
|
if (!accounts.rent.value) {
|
|
61
71
|
accounts.rent.value =
|
|
62
|
-
|
|
72
|
+
"SysvarRent111111111111111111111111111111111";
|
|
63
73
|
}
|
|
64
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
74
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
65
75
|
return Object.freeze({
|
|
66
76
|
accounts: [
|
|
67
77
|
getAccountMeta(accounts.mint),
|
|
@@ -80,7 +90,7 @@ export function getStakeInstruction(input, config) {
|
|
|
80
90
|
export function parseStakeInstruction(instruction) {
|
|
81
91
|
if (instruction.accounts.length < 8) {
|
|
82
92
|
// TODO: Coded error.
|
|
83
|
-
throw new Error(
|
|
93
|
+
throw new Error("Not enough accounts");
|
|
84
94
|
}
|
|
85
95
|
let accountIndex = 0;
|
|
86
96
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/stake.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,oBAAoB,CAAC;AAEjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,UAAU,CAAC;IAChD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B;IACxC,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAC1E,CAAC;
|
|
1
|
+
{"version":3,"file":"stake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/stake.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,19 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
export declare const
|
|
8
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
export declare const TOPUP_INSTRUCTION_ACCOUNTS: {
|
|
11
|
+
readonly user: 0;
|
|
12
|
+
readonly vault: 1;
|
|
13
|
+
readonly stake: 2;
|
|
14
|
+
readonly authority: 3;
|
|
15
|
+
readonly tokenProgram: 4;
|
|
16
|
+
};
|
|
17
|
+
export type TopupInstructionAccountName = keyof typeof TOPUP_INSTRUCTION_ACCOUNTS;
|
|
18
|
+
export declare const TOPUP_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
11
19
|
export declare function getTopupDiscriminatorBytes(): ReadonlyUint8Array;
|
|
12
|
-
export type TopupInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountUser extends string | AccountMeta<string> = string, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> =
|
|
20
|
+
export type TopupInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountUser extends string | AccountMeta<string> = string, TAccountVault extends string | AccountMeta<string> = string, TAccountStake extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
13
21
|
TAccountUser extends string ? WritableAccount<TAccountUser> : TAccountUser,
|
|
14
22
|
TAccountVault extends string ? WritableAccount<TAccountVault> : TAccountVault,
|
|
15
23
|
TAccountStake extends string ? WritableAccount<TAccountStake> : TAccountStake,
|
|
@@ -33,7 +41,7 @@ export type TopupInput<TAccountUser extends string = string, TAccountVault exten
|
|
|
33
41
|
stake: Address<TAccountStake>;
|
|
34
42
|
authority: TransactionSigner<TAccountAuthority>;
|
|
35
43
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
36
|
-
amount: TopupInstructionDataArgs[
|
|
44
|
+
amount: TopupInstructionDataArgs["amount"];
|
|
37
45
|
};
|
|
38
46
|
export declare function getTopupInstruction<TAccountUser extends string, TAccountVault extends string, TAccountStake extends string, TAccountAuthority extends string, TAccountTokenProgram extends string, TProgramAddress extends Address = typeof NOSANA_STAKING_PROGRAM_ADDRESS>(input: TopupInput<TAccountUser, TAccountVault, TAccountStake, TAccountAuthority, TAccountTokenProgram>, config?: {
|
|
39
47
|
programAddress?: TProgramAddress;
|
|
@@ -5,9 +5,16 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const TOPUP_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
user: 0,
|
|
13
|
+
vault: 1,
|
|
14
|
+
stake: 2,
|
|
15
|
+
authority: 3,
|
|
16
|
+
tokenProgram: 4,
|
|
17
|
+
};
|
|
11
18
|
export const TOPUP_DISCRIMINATOR = new Uint8Array([
|
|
12
19
|
126, 42, 49, 78, 225, 151, 99, 77,
|
|
13
20
|
]);
|
|
@@ -16,14 +23,14 @@ export function getTopupDiscriminatorBytes() {
|
|
|
16
23
|
}
|
|
17
24
|
export function getTopupInstructionDataEncoder() {
|
|
18
25
|
return transformEncoder(getStructEncoder([
|
|
19
|
-
[
|
|
20
|
-
[
|
|
26
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
|
|
27
|
+
["amount", getU64Encoder()],
|
|
21
28
|
]), (value) => ({ ...value, discriminator: TOPUP_DISCRIMINATOR }));
|
|
22
29
|
}
|
|
23
30
|
export function getTopupInstructionDataDecoder() {
|
|
24
31
|
return getStructDecoder([
|
|
25
|
-
[
|
|
26
|
-
[
|
|
32
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
33
|
+
["amount", getU64Decoder()],
|
|
27
34
|
]);
|
|
28
35
|
}
|
|
29
36
|
export function getTopupInstructionDataCodec() {
|
|
@@ -46,9 +53,9 @@ export function getTopupInstruction(input, config) {
|
|
|
46
53
|
// Resolve default values.
|
|
47
54
|
if (!accounts.tokenProgram.value) {
|
|
48
55
|
accounts.tokenProgram.value =
|
|
49
|
-
|
|
56
|
+
"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
|
|
50
57
|
}
|
|
51
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
58
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
52
59
|
return Object.freeze({
|
|
53
60
|
accounts: [
|
|
54
61
|
getAccountMeta(accounts.user),
|
|
@@ -64,7 +71,7 @@ export function getTopupInstruction(input, config) {
|
|
|
64
71
|
export function parseTopupInstruction(instruction) {
|
|
65
72
|
if (instruction.accounts.length < 5) {
|
|
66
73
|
// TODO: Coded error.
|
|
67
|
-
throw new Error(
|
|
74
|
+
throw new Error("Not enough accounts");
|
|
68
75
|
}
|
|
69
76
|
let accountIndex = 0;
|
|
70
77
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topup.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/topup.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,oBAAoB,CAAC;AAEjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,UAAU,CAAC;IAChD,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B;IACxC,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAC1E,CAAC;
|
|
1
|
+
{"version":3,"file":"topup.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/topup.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,15 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
export declare const
|
|
8
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
export declare const UNSTAKE_INSTRUCTION_ACCOUNTS: {
|
|
11
|
+
readonly stake: 0;
|
|
12
|
+
readonly reward: 1;
|
|
13
|
+
readonly authority: 2;
|
|
14
|
+
};
|
|
15
|
+
export type UnstakeInstructionAccountName = keyof typeof UNSTAKE_INSTRUCTION_ACCOUNTS;
|
|
16
|
+
export declare const UNSTAKE_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
11
17
|
export declare function getUnstakeDiscriminatorBytes(): ReadonlyUint8Array;
|
|
12
18
|
export type UnstakeInstruction<TProgram extends string = typeof NOSANA_STAKING_PROGRAM_ADDRESS, TAccountStake extends string | AccountMeta<string> = string, TAccountReward extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
13
19
|
TAccountStake extends string ? WritableAccount<TAccountStake> : TAccountStake,
|
|
@@ -5,9 +5,14 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
|
-
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from
|
|
9
|
-
import { NOSANA_STAKING_PROGRAM_ADDRESS } from
|
|
10
|
-
import { getAccountMetaFactory } from
|
|
8
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from "@solana/kit";
|
|
9
|
+
import { NOSANA_STAKING_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
10
|
+
import { getAccountMetaFactory } from "../shared/index.js";
|
|
11
|
+
export const UNSTAKE_INSTRUCTION_ACCOUNTS = {
|
|
12
|
+
stake: 0,
|
|
13
|
+
reward: 1,
|
|
14
|
+
authority: 2,
|
|
15
|
+
};
|
|
11
16
|
export const UNSTAKE_DISCRIMINATOR = new Uint8Array([
|
|
12
17
|
90, 95, 107, 42, 205, 124, 50, 225,
|
|
13
18
|
]);
|
|
@@ -15,11 +20,11 @@ export function getUnstakeDiscriminatorBytes() {
|
|
|
15
20
|
return fixEncoderSize(getBytesEncoder(), 8).encode(UNSTAKE_DISCRIMINATOR);
|
|
16
21
|
}
|
|
17
22
|
export function getUnstakeInstructionDataEncoder() {
|
|
18
|
-
return transformEncoder(getStructEncoder([[
|
|
23
|
+
return transformEncoder(getStructEncoder([["discriminator", fixEncoderSize(getBytesEncoder(), 8)]]), (value) => ({ ...value, discriminator: UNSTAKE_DISCRIMINATOR }));
|
|
19
24
|
}
|
|
20
25
|
export function getUnstakeInstructionDataDecoder() {
|
|
21
26
|
return getStructDecoder([
|
|
22
|
-
[
|
|
27
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
|
|
23
28
|
]);
|
|
24
29
|
}
|
|
25
30
|
export function getUnstakeInstructionDataCodec() {
|
|
@@ -35,7 +40,7 @@ export function getUnstakeInstruction(input, config) {
|
|
|
35
40
|
authority: { value: input.authority ?? null, isWritable: false },
|
|
36
41
|
};
|
|
37
42
|
const accounts = originalAccounts;
|
|
38
|
-
const getAccountMeta = getAccountMetaFactory(programAddress,
|
|
43
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
39
44
|
return Object.freeze({
|
|
40
45
|
accounts: [
|
|
41
46
|
getAccountMeta(accounts.stake),
|
|
@@ -49,7 +54,7 @@ export function getUnstakeInstruction(input, config) {
|
|
|
49
54
|
export function parseUnstakeInstruction(instruction) {
|
|
50
55
|
if (instruction.accounts.length < 3) {
|
|
51
56
|
// TODO: Coded error.
|
|
52
|
-
throw new Error(
|
|
57
|
+
throw new Error("Not enough accounts");
|
|
53
58
|
}
|
|
54
59
|
let accountIndex = 0;
|
|
55
60
|
const getNextAccount = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unstake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/unstake.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unstake.js","sourceRoot":"","sources":["../../../../src/generated_clients/staking/instructions/unstake.ts"],"names":[],"mappings":"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"}
|