You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import hre from "hardhat";
|
|
const { ethers } = hre;
|
|
import fs from "fs";
|
|
|
|
async function main() {
|
|
const accounts = await ethers.getSigners();
|
|
console.log(accounts[0].address);
|
|
|
|
const Git3 = await hre.ethers.getContractAt(
|
|
"Git3",
|
|
"0xa709975Bc01e745432f8898499E7b9a60f420117"
|
|
);
|
|
let storageManager = await Git3.storageManager();
|
|
console.log("storageManager", storageManager);
|
|
|
|
const flat = await hre.ethers.getContractAt("FlatDirectory", storageManager);
|
|
let owner = await flat.owner();
|
|
console.log("owner", owner);
|
|
return;
|
|
|
|
let file = fs.readFileSync("test/git3.png");
|
|
|
|
let buffer = Array.from(file).slice(0, 24576);
|
|
let fileSize = buffer.length;
|
|
console.log("buffer", buffer.length);
|
|
|
|
let cost = 0;
|
|
if (fileSize > 24 * 1024 - 326) {
|
|
cost = Math.floor((fileSize + 326) / 1024 / 24);
|
|
}
|
|
let key = ethers.utils.toUtf8Bytes("aaa");
|
|
let rept = await Git3.upload(key, buffer, {
|
|
value: ethers.utils.parseEther(cost.toString()),
|
|
});
|
|
console.log("rept", "https://explorer.galileo.web3q.io/tx/" + rept.hash);
|
|
}
|
|
|
|
main().catch((error) => {
|
|
console.error(error);
|
|
process.exit(1);
|
|
});
|