UNPKG

@newfound8ion/newcoin.daos-js

Version:

JS Library to read data from newcoin.daos smart contract.

199 lines (198 loc) 6.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ActionGenerator = void 0; /* tslint:disable:variable-name */ class ActionGenerator { constructor(contract, token_contract) { this.contract = contract; this.token_contract = token_contract; } async createDao(authorization, owner, description) { return this._pack(this.contract, authorization, "crtdao", { owner, description, }); } async createProposal(authorization, proposer, dao_id, title, summary, url, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtproposal", { proposer, dao_id, title, summary, url, pass_rate, vote_start, vote_end, }); } // async createNFTProposal( // authorization: EosioAuthorizationObject[], // proposer: string, // dao_id: number, // side: string, // asset_ids: number[], // price: string, // vote_start: string, // vote_end: string // ): Promise<EosioActionObject[]> { // return this._pack(this.contract, authorization, "crtnftprl", { // proposer, // dao_id, // side, // asset_ids, // price, // vote_start, // vote_end // }); // } async createStakeProposal(authorization, proposer, dao_id, to, quantity, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtstkprp", { proposer, dao_id, to, quantity, pass_rate, vote_start, vote_end, }); } async createInflateProposal(authorization, proposer, dao_id, to, quantity, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtinflprp", { proposer, dao_id, to, quantity, pass_rate, vote_start, vote_end, }); } async createDeflateProposal(authorization, proposer, dao_id, from, quantity, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtdeflprp", { proposer, dao_id, from, quantity, pass_rate, vote_start, vote_end, }); } async createWhiteListProposal(authorization, proposer, dao_id, user, type, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtwhltprp", { proposer, dao_id, user, type, pass_rate, vote_start, vote_end, }); } async createRemoveWhiteListProposal(authorization, proposer, dao_id, user, pass_rate, vote_start, vote_end) { return this._pack(this.contract, authorization, "crtrmwhltprp", { proposer, dao_id, user, pass_rate, vote_start, vote_end, }); } async approveProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "appproposal", { approver, dao_id, proposal_id, }); } async approveStakeProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "appstkprp", { approver, dao_id, proposal_id, }); } async approveInflateProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "appinflprp", { approver, dao_id, proposal_id, }); } async approveDeflateProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "appdeflprp", { approver, dao_id, proposal_id, }); } async approveWhiteListProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "appwhlprp", { approver, dao_id, proposal_id, }); } async approveRemoveWhiteListProposal(authorization, approver, dao_id, proposal_id) { return this._pack(this.contract, authorization, "apprmvwhlprp", { approver, dao_id, proposal_id, }); } async executeProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execproposal", { dao_id, proposal_id, }); } async executeStakeProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execstkprp", { dao_id, proposal_id, }); } async executeInflateProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execinflprp", { dao_id, proposal_id, }); } async executeDeflateProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execdeflprp", { dao_id, proposal_id, }); } async executeWhiteListProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execwhlprp", { dao_id, proposal_id, }); } async executeRemoveWhiteListProposal(authorization, dao_id, proposal_id) { return this._pack(this.contract, authorization, "execrmwhlprp", { dao_id, proposal_id, }); } async withdraw(authorization, owner, vote_id) { return this._pack(this.contract, authorization, "withdraw", { owner, vote_id, }); } async vote(authorization, from, quantity, proposal_type, dao_id, proposal_id, option) { return this._pack(this.token_contract, authorization, "transfer", { from: from, to: this.contract, quantity: quantity, memo: `vote:${proposal_type};dao_id:${dao_id};proposal_id:${proposal_id};option:${option}`, }); } _pack(account, authorization, name, data) { return [{ account, name, authorization, data }]; } } exports.ActionGenerator = ActionGenerator;