fix: распаковать источник из обёртки smart-updown в корень ветки
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import { Connection } from "@solana/web3.js";
|
||||
import { AnchorProvider, Program, Wallet } from "@anchor-lang/core";
|
||||
import { Keypair } from "@solana/web3.js";
|
||||
import idl from "../idl/smart_updown.json";
|
||||
|
||||
import type { SmartUpdown } from "../idl/smart_updown";
|
||||
|
||||
/**
|
||||
* Создаёт готовый клиент программы: Connection + AnchorProvider (подпись админа-
|
||||
* релеера) + типизированный Program, собранный из IDL.
|
||||
*/
|
||||
export function makeProgram(
|
||||
connection: Connection,
|
||||
admin: Keypair
|
||||
): Program<SmartUpdown> {
|
||||
const provider = new AnchorProvider(
|
||||
connection,
|
||||
new Wallet(admin),
|
||||
{ commitment: "confirmed", preflightCommitment: "confirmed" }
|
||||
);
|
||||
// IDL.address задаёт programId в рантайме.
|
||||
return new Program<SmartUpdown>(idl as unknown as SmartUpdown, provider);
|
||||
}
|
||||
|
||||
export function makeConnection(rpcUrl: string): Connection {
|
||||
return new Connection(rpcUrl, "confirmed");
|
||||
}
|
||||
Reference in New Issue
Block a user