@zebec-network/solana-payroll-sdk 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -120,6 +120,13 @@ export declare function createRequestUnlockInstruction(program: Program<ZebecPay
120
120
  companyId: number[];
121
121
  nonce: BN;
122
122
  }): Promise<TransactionInstruction>;
123
+ export declare function createCancelUnlockInstruction(program: Program<ZebecPayrollIdl>, accounts: {
124
+ company: PublicKey;
125
+ companyDeposit: PublicKey;
126
+ }, data: {
127
+ companyId: number[];
128
+ nonce: BN;
129
+ }): Promise<TransactionInstruction>;
123
130
  export declare function createCompleteUnlockInstruction(program: Program<ZebecPayrollIdl>, accounts: {
124
131
  admin: PublicKey;
125
132
  feePayer: PublicKey;
@@ -156,6 +156,15 @@ export async function createRequestUnlockInstruction(program, accounts, data) {
156
156
  })
157
157
  .instruction();
158
158
  }
159
+ export async function createCancelUnlockInstruction(program, accounts, data) {
160
+ return program.methods
161
+ .cancelUnlock(data.companyId, data.nonce)
162
+ .accountsPartial({
163
+ company: accounts.company,
164
+ companyDeposit: accounts.companyDeposit,
165
+ })
166
+ .instruction();
167
+ }
159
168
  export async function createCompleteUnlockInstruction(program, accounts, data) {
160
169
  return program.methods
161
170
  .completeUnlock(data.companyId, data.nonce)
@@ -3,7 +3,7 @@ import { type Commitment } from "@solana/web3.js";
3
3
  import { MultiTransactionPayload, TransactionPayload } from "@zebec-network/solana-common";
4
4
  import type { ZebecConfigs as ZebecConfigsIdl } from "@zebec-network/zebec_configs";
5
5
  import type { ZebecPayroll as ZebecPayrollIdl } from "@zebec-network/zebec_payroll";
6
- import type { CancelMultiplePayrollParams, CancelPayrollParams, ChangePayrollReceiverParams, CompanyDepositInfo, CompanyNonceInfo, CompleteUnlockParams, CreateMultiplePayrollParams, CreatePayrollParams, DistributeRewardsParams, PauseResumeMultiplePayrollParams, PauseResumePayrollParams, PayrollConfigInfo, PayrollMetadataInfo, RequestUnlockParams, SetMultipleTopupDelegateParams, SetTopupDelegateParams, TokenMetadata, TopupMultiplePayrollParams, TopupPayrollParams, WithdrawMultiplePayrollParams, WithdrawPayrollParams, YieldDepositParams } from "./types.js";
6
+ import type { CancelMultiplePayrollParams, CancelPayrollParams, CancelUnlockParams, ChangePayrollReceiverParams, CompanyDepositInfo, CompanyNonceInfo, CompleteUnlockParams, CreateMultiplePayrollParams, CreatePayrollParams, DistributeRewardsParams, PauseResumeMultiplePayrollParams, PauseResumePayrollParams, PayrollConfigInfo, PayrollMetadataInfo, RequestUnlockParams, SetMultipleTopupDelegateParams, SetTopupDelegateParams, TokenMetadata, TopupMultiplePayrollParams, TopupPayrollParams, WithdrawMultiplePayrollParams, WithdrawPayrollParams, YieldDepositParams } from "./types.js";
7
7
  export declare function getPayrollConfig(configProgram: Program<ZebecConfigsIdl>, configName: string): Promise<PayrollConfigInfo>;
8
8
  export declare function getWhitelistedTokens(configProgram: Program<ZebecConfigsIdl>, configName: string, commitment?: "processed" | "confirmed" | "finalized"): Promise<TokenMetadata[]>;
9
9
  export declare function getPayrollMetadataInfo(program: Program<ZebecPayrollIdl>, payrollMetadata: Address, commitment?: Commitment): Promise<PayrollMetadataInfo>;
@@ -23,6 +23,7 @@ export declare function topupMultiplePayroll(payrollProgram: Program<ZebecPayrol
23
23
  export declare function getCompanyNonceInfo(payrollProgram: Program<ZebecPayrollIdl>, companyIdBuffer: Buffer, commitment?: Commitment): Promise<CompanyNonceInfo | null>;
24
24
  export declare function yieldDeposit(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: YieldDepositParams, commitment?: Commitment): Promise<TransactionPayload>;
25
25
  export declare function requestUnlock(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: RequestUnlockParams): Promise<TransactionPayload>;
26
+ export declare function cancelUnlock(payrollProgram: Program<ZebecPayrollIdl>, params: CancelUnlockParams): Promise<TransactionPayload>;
26
27
  export declare function completeUnlock(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: CompleteUnlockParams, commitment?: Commitment): Promise<TransactionPayload>;
27
28
  export declare function distributeRewards(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: DistributeRewardsParams): Promise<TransactionPayload>;
28
29
  export declare function getCompanyDeposit(payrollProgram: Program<ZebecPayrollIdl>, company: Address): Promise<CompanyDepositInfo | null>;
package/dist/services.js CHANGED
@@ -8,7 +8,7 @@ import { createAssociatedTokenAccountInstruction, getAssociatedTokenAddressSync,
8
8
  import { BigNumber } from "bignumber.js";
9
9
  import { BN } from "bn.js";
10
10
  import { PAYROLL_NAME_BUFFER_SIZE, USX_DECIMALS } from "./constants.js";
11
- import { createCancelPayrollInstruction, createChangeRecipientInstruction, createCompleteUnlockInstruction, createCreatePayrollInstruction, createDistributeRewardsInstruction, createPauseResumePayrollInstruction, createRequestUnlockInstruction, createSetTopupDelegateInstruction, createTopupPayrollInstruction, createTransferFeesInstruction, createWithdrawPayrollInstruction, createYieldDepositInstruction, } from "./instructions.js";
11
+ import { createCancelPayrollInstruction, createCancelUnlockInstruction, createChangeRecipientInstruction, createCompleteUnlockInstruction, createCreatePayrollInstruction, createDistributeRewardsInstruction, createPauseResumePayrollInstruction, createRequestUnlockInstruction, createSetTopupDelegateInstruction, createTopupPayrollInstruction, createTransferFeesInstruction, createWithdrawPayrollInstruction, createYieldDepositInstruction, } from "./instructions.js";
12
12
  import { deriveCheckAccountPda, deriveCompanyDepositPda, deriveCompanyNoncePda, derivePayrollConfigPda, derivePayrollVaultPda, deriveYieldConfigPda, } from "./pda.js";
13
13
  import { getFeeInfoForPayroll } from "./utils.js";
14
14
  export async function getPayrollConfig(configProgram, configName) {
@@ -749,6 +749,18 @@ export async function requestUnlock(payrollProgram, configsProgram, params) {
749
749
  });
750
750
  return createTransactionPayload(payrollProgram, feePayer, [ix]);
751
751
  }
752
+ export async function cancelUnlock(payrollProgram, params) {
753
+ const company = translateAddress(params.company);
754
+ const [companyDeposit] = deriveCompanyDepositPda(Buffer.from(params.companyId), params.nonce, payrollProgram.programId);
755
+ const ix = await createCancelUnlockInstruction(payrollProgram, {
756
+ company,
757
+ companyDeposit,
758
+ }, {
759
+ companyId: Array.from(params.companyId),
760
+ nonce: new BN(params.nonce),
761
+ });
762
+ return createTransactionPayload(payrollProgram, company, [ix]);
763
+ }
752
764
  export async function completeUnlock(payrollProgram, configsProgram, params, commitment) {
753
765
  commitment = commitment ?? payrollProgram.provider.connection.commitment;
754
766
  const company = translateAddress(params.company);
package/dist/types.d.ts CHANGED
@@ -211,6 +211,11 @@ export type RequestUnlockParams = {
211
211
  companyId: Buffer | Uint8Array;
212
212
  nonce: bigint;
213
213
  };
214
+ export type CancelUnlockParams = {
215
+ company: Address;
216
+ companyId: Buffer | Uint8Array;
217
+ nonce: bigint;
218
+ };
214
219
  export type CompleteUnlockParams = {
215
220
  feePayer: Address;
216
221
  company: Address;
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "@zebec-network/core-utils": "^1.3.1",
12
12
  "@zebec-network/solana-common": "^2.6.0",
13
13
  "@zebec-network/zebec_configs": "^1.2.3",
14
- "@zebec-network/zebec_payroll": "^1.4.9",
14
+ "@zebec-network/zebec_payroll": "^1.5.0",
15
15
  "bignumber.js": "^11.1.1"
16
16
  },
17
17
  "devDependencies": {
@@ -36,12 +36,12 @@
36
36
  "build": "npm run clean && tsc",
37
37
  "clean": "rimraf ./dist",
38
38
  "format": "npx @biomejs/biome format --write",
39
- "prepare": "npm run build",
39
+ "prepare": "npm run format && npm run build",
40
40
  "run:example": "node --loader ts-node/esm -- example/buildTransactionAndSendForSigning.ts",
41
41
  "test": "ts-mocha -p ./tsconfig.json -t 1000000000 test/**/*.test.ts",
42
42
  "test:single": "ts-mocha -p ./tsconfig.json -t 1000000000 --"
43
43
  },
44
44
  "type": "module",
45
45
  "types": "dist/index.d.ts",
46
- "version": "2.4.0"
47
- }
46
+ "version": "2.5.0"
47
+ }