UNPKG

@broxus/tip4

Version:

Set of ready-to-use tvm nft token contracts following tip4 standard

44 lines (38 loc) 1.14 kB
import { Migration } from "./migration"; import prompts from "prompts"; const migration = new Migration(); export type AddressN = `0:${string}`; export const isValidEverAddress = (address: string): address is AddressN => /^(?:-1|0):[0-9a-fA-F]{64}$/.test(address); async function main() { const response = await prompts([ { type: "text", name: "owner", message: "Collection new owner address", validate: (value: string) => isValidEverAddress(value) ? true : "Invalid Everscale address", }, ]); const account = await migration.loadAccount("Account1"); const collection = migration.loadContract("Collection", "SimilarCollection"); if (response.owner) { await locklift.transactions.waitFinalized( collection.methods .transferOwnership({ newOwner: response.owner, }) .send({ from: account.address, amount: locklift.utils.toNano(1), }) ); console.log("Transfer ownership to: " + response.owner); } } main() .then(() => process.exit(0)) .catch((e) => { console.log(e); process.exit(1); });