UNPKG

@ardier16/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

68 lines 2.67 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ParamVotingHelper = void 0; const types_1 = require("../types"); /** * Helps work with Parameters voting instances */ class ParamVotingHelper { mapParameterToOnChainJson(parameter) { const value = parameter.paramValue; const rawParameter = { paramKey: parameter.paramKey, paramType: parameter.paramType, addrValue: '0x0000000000000000000000000000000000000000', boolValue: false, bytes32value: '0x0000000000000000000000000000000000000000000000000000000000000000', strValue: '', uintValue: '0', }; switch (parameter.paramType) { case types_1.ParameterType.ADDRESS: rawParameter.addrValue = value; break; case types_1.ParameterType.BOOL: rawParameter.boolValue = (value.toLowerCase() === 'true'); break; case types_1.ParameterType.BYTE: rawParameter.bytes32value = value; break; case types_1.ParameterType.STRING: rawParameter.strValue = value; break; case types_1.ParameterType.UINT: rawParameter.uintValue = value; break; } const parameterAsArray = [rawParameter.paramKey, rawParameter.paramType, rawParameter.addrValue, rawParameter.boolValue, rawParameter.bytes32value, rawParameter.strValue, rawParameter.uintValue]; const mappedParameter = Object.assign(parameterAsArray, rawParameter); return mappedParameter; } mapOnChainJsonToParameter(rawParameter) { let paramValue; switch (rawParameter.paramType) { case types_1.ParameterType.ADDRESS: paramValue = rawParameter.addrValue; break; case types_1.ParameterType.BOOL: paramValue = rawParameter.boolValue.toString(); break; case types_1.ParameterType.BYTE: paramValue = rawParameter.bytes32value; break; case types_1.ParameterType.STRING: paramValue = rawParameter.strValue; break; case types_1.ParameterType.UINT: paramValue = rawParameter.uintValue; break; } return { paramKey: rawParameter.paramKey, paramType: rawParameter.paramType, paramValue }; } } exports.ParamVotingHelper = ParamVotingHelper; //# sourceMappingURL=param-voting-helper.js.map