UNPKG

@aut-labs/sdk

Version:

The TS/JS SDK package aims to make it easy for frontends/backends to integrate with Aut Smart Contracts

84 lines 3.05 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AdminsContract = void 0; const abi_types_1 = require("@aut-labs/abi-types"); const response_1 = require("../models/response"); const base_contract_1 = __importDefault(require("./base.contract")); const find_event_1 = require("../utils/find-event"); const logger_1 = require("../utils/logger"); const sdkLogger = (0, logger_1.getLogger)(); class AdminsContract extends base_contract_1.default { async isAdmin(address) { try { const isAdmin = await this.functions.isAdmin(address); sdkLogger.info("isAdmin", isAdmin); return new response_1.SDKContractGenericResponse({ isSuccess: true, data: isAdmin }); } catch (error) { sdkLogger.error("isAdmin", error); return new response_1.SDKContractGenericResponse({ error }); } } async getAdmins() { try { const admins = await this.functions.admins(); sdkLogger.info("getAdmins", admins); return new response_1.SDKContractGenericResponse({ isSuccess: true, data: admins }); } catch (error) { sdkLogger.error("getAdmins", error); return new response_1.SDKContractGenericResponse({ error }); } } async addAdmins(addresses) { try { sdkLogger.info("addAdmins", addresses); const tx = await (await this.functions.addAdmins(addresses)).wait(); const event = (0, find_event_1.findLogEvent)(tx, abi_types_1.HubContractEventType.AdminGranted); sdkLogger.info("addAdmins", event); return new response_1.SDKContractGenericResponse({ isSuccess: !!event, event }); } catch (error) { sdkLogger.error("addAdmins", error); return new response_1.SDKContractGenericResponse({ error }); } } async removeAdmins(addresss) { try { sdkLogger.info("removeAdmins", addresss); const tx = await (await this.functions.removeAdmin(addresss[0])).wait(); const event = (0, find_event_1.findLogEvent)(tx, abi_types_1.HubContractEventType.AdminRenounced); sdkLogger.info("removeAdmins", event); return new response_1.SDKContractGenericResponse({ isSuccess: !!event, event }); } catch (error) { sdkLogger.error("removeAdmins", error); return new response_1.SDKContractGenericResponse({ error }); } } } exports.AdminsContract = AdminsContract; //# sourceMappingURL=admin.contract.js.map