@swaptoshi/governance-module
Version:
Klayr governance on-chain module
37 lines • 1.68 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.BoostedAccountStore = void 0;
const schema_1 = require("../schema");
const base_1 = require("./base");
const instances_1 = require("./instances");
class BoostedAccountStore extends base_1.BaseStoreWithInstance {
constructor() {
super(...arguments);
this.schema = schema_1.boostedAccountStoreSchema;
this.default = { targetHeight: 0 };
}
async getMutableBoostedAccount(ctx) {
this._checkDependencies();
const boostedAccountData = await this.getOrDefault(ctx.context, ctx.senderAddress);
const boostedAccount = new instances_1.BoostedAccount(this.stores, this.events, this.config, this.genesisConfig, this.moduleName, boostedAccountData, ctx.senderAddress);
boostedAccount.addMutableDependencies({
context: ctx,
tokenMethod: this.tokenMethod,
internalMethod: this.internalMethod,
});
return boostedAccount;
}
async getImmutableBoostedAccount(ctx) {
this._checkDependencies();
const boostedAccountData = await this.getOrDefault(ctx.context, ctx.senderAddress);
const boostedAccount = new instances_1.BoostedAccount(this.stores, this.events, this.config, this.genesisConfig, this.moduleName, boostedAccountData, ctx.senderAddress);
boostedAccount.addImmutableDependencies({
context: ctx,
tokenMethod: this.tokenMethod,
internalMethod: this.internalMethod,
});
return boostedAccount;
}
}
exports.BoostedAccountStore = BoostedAccountStore;
//# sourceMappingURL=boosted_account.js.map