PageSourceSearch

https://moc-dapp.surge.sh/bundle.js

js moc-dapp.surge.sh collected 2026-10-03 14:56:10 UTC 3,972 bytes, 138 lines download raw bytes

1let abi = [{
2        inputs: [],
3        payable: false,
4        stateMutability: "nonpayable",
5        type: "constructor"
6    },
7    {
8        constant: false,
9        inputs: [{
10            internalType: "uint256",
11            name: "x",
12            type: "uint256"
13        }],
14        name: "vote",
15        outputs: [{
16            internalType: "uint256",
17            name: "",
18            type: "uint256"
19        }],
20        payable: false,
21        stateMutability: "nonpayable",
22        type: "function"
23    },
24    {
25        constant: true,
26        inputs: [{
27            internalType: "uint256",
28            name: "x",
29            type: "uint256"
30        }],
31        name: "getItem",
32        outputs: [{
33            internalType: "uint256",
34            name: "",
35            type: "uint256"
36        }],
37        payable: false,
38        stateMutability: "view",
39        type: "function"
40    }
41];
42
43let web3;
44let moc;
45
46const initWeb3 = () => {
47    return new Promise((resolve, reject) => {
48        if (typeof window.ethereum !== "undefined") {
49            const web3 = new Web3(window.ethereum);
50            window.ethereum
51                .enable()
52                .then(() => {
53                    resolve(new Web3(window.ethereum));
54                })
55                .catch(e => {
56                    reject(e);
57                });
58            return;
59        }
60        if (typeof window.web3 !== "undefined") {
61            return resolve(new Web3(window.web3.currentProvider));
62        }
63        reject();
64        resolve(new Web3("http://localhost:9545"));
65    });
66};
67
68const initContract = () => {
69    return new web3.eth.Contract(
70        abi,
71        `0x4a25Dc113f29Cd54e83C5008e1A8EA907e708B3B`
72    );
73};
74
75let accounts = [];
76
77// document.getElementById('landing').style.display = 'none'
78// let contractAddress = "0x4a25Dc113f29Cd54e83C5008e1A8EA907e708B3B";
79// let web3 = new Web3(window.ethereum);
80// let moc = new web3.eth.Contract(contractABI, contractAddress);
81document.getElementById("landing").style.display = "none";
82document.getElementById("img").style.display = "none";
83document.addEventListener("DOMContentLoaded", () => {
84    initWeb3()
85        .then(_web3 => {
86            web3 = _web3;
87            moc = initContract();
88            refresh();
89            document.getElementById("landing").style.display = "flex";
90            document.getElementById("cover").style.display = "none";
91
92            web3.eth.getAccounts().then(_accounts => {
93                accounts = _accounts;
94                // console.log(accounts)
95            });
96        })
97        .catch(e => {
98            document.getElementById("cover").style.display = "none";
99            document.getElementById("img").style.display = "block";
100            document.getElementById("warn").innerHTML =
101                "Please install MetaMask or any Wallet Client";
102
103            // console.log(e.message)
104        });
105});
106
107const refresh = () => {
108    for (let i = 0; i < 3; i++)
109        moc.methods
110        .getItem(i)
111        .call()
112        .then(result => {
113            document.getElementById(`v${i}`).innerHTML = result;
114        });
115};
116
117function vote(e) {
118    document.getElementById("warn").innerHTML =
119        `Transactions started awating confirmation
120        <div class = "d-flex justify-content-center">
121            <div class = "spinner-border" role = "status">
122            <span class = "sr-only" >
122 Loading... </span> </div> </div>
123        
124        `;
125    moc.methods
126        .vote(e.id[4])
127        .send({
128            from: accounts[0]
129        })
130        .then(result => {
131            console.log(result);
132            document.getElementById("warn").innerHTML = `Transactions Success!`
133            refresh();
134        })
135        .catch(err => {
136            document.getElementById("warn").innerHTML = `Last Transactions failed`
137        });
138}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.