generated from twilson63/hypar
-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathload-dev-data.js
56 lines (48 loc) · 1.49 KB
/
load-dev-data.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
const Arweave = require('arweave')
const fs = require('fs')
const input = require('./data/1.json')
const data = fs.readFileSync('./data/image1.png')
const input2 = require('./data/2.json')
const data2 = fs.readFileSync('./data/image2.png')
const arweave = Arweave.init({
host: 'localhost',
port: '1984',
protocol: 'http'
});
(async () => {
const w = await arweave.wallets.generate()
const addr = await arweave.wallets.jwkToAddress(w)
const tokens = arweave.ar.arToWinston(100)
// mint some tokens
await arweave.api.get(`mint/${addr}/${tokens}`)
await arweave.api.get('mine')
// add data1
let tx = await arweave.createTransaction({
data
}, w)
input.tags.map(tag => {
tx.addTag(tag.name, tag.value)
})
await arweave.transactions.sign(tx, w)
let uploader = await arweave.transactions.getUploader(tx)
while (!uploader.isComplete) {
await uploader.uploadChunk()
console.log(`${uploader.pctComplete}% complete, ${uploader.uploadedChunks}/${uploader.totalChunks}`)
}
await arweave.api.get('mine')
// add data2
tx = await arweave.createTransaction({
data: data2
}, w)
input2.tags.map(tag => {
tx.addTag(tag.name, tag.value)
})
await arweave.transactions.sign(tx, w)
uploader = await arweave.transactions.getUploader(tx)
while (!uploader.isComplete) {
await uploader.uploadChunk()
console.log(`${uploader.pctComplete}% complete, ${uploader.uploadedChunks}/${uploader.totalChunks}`)
}
await arweave.api.get('mine')
console.log('done')
})()