@yoroi/portfolio
Version:
The Portfolio package of Yoroi SDK
42 lines (41 loc) • 1.85 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.tokenDiscoveryReviverMapping = exports.tokenAmountReviverMapping = exports.primaryBalanceBreakdownReviverMapping = exports.deserializers = void 0;
var _common = require("@yoroi/common");
var _immer = require("immer");
var _primaryBreakdown = require("../validators/primary-breakdown");
var _tokenAmount = require("../validators/token-amount");
const tokenDiscoveryReviverMapping = {
supply: _common.StorageReviverType.AsBigInt
};
exports.tokenDiscoveryReviverMapping = tokenDiscoveryReviverMapping;
const tokenAmountReviverMapping = {
quantity: _common.StorageReviverType.AsBigInt
};
exports.tokenAmountReviverMapping = tokenAmountReviverMapping;
const primaryBalanceBreakdownReviverMapping = {
availableRewards: _common.StorageReviverType.AsBigInt,
totalFromTxs: _common.StorageReviverType.AsBigInt,
lockedAsStorageCost: _common.StorageReviverType.AsBigInt
};
exports.primaryBalanceBreakdownReviverMapping = primaryBalanceBreakdownReviverMapping;
const tokenAmountDeserializer = jsonString => {
if (jsonString == null) return null;
const record = (0, _common.storageDeserializerMaker)(tokenAmountReviverMapping)(jsonString);
const parsed = (0, _tokenAmount.parseTokenAmount)(record);
return parsed ?? null;
};
const primaryBalanceBreakdownDeserializer = jsonString => {
if (jsonString == null) return null;
const record = (0, _common.storageDeserializerMaker)(primaryBalanceBreakdownReviverMapping)(jsonString);
const parsed = (0, _primaryBreakdown.parsePrimaryBreakdown)(record);
return parsed ?? null;
};
const deserializers = (0, _immer.freeze)({
tokenAmount: tokenAmountDeserializer,
primaryBreakdown: primaryBalanceBreakdownDeserializer
}, true);
exports.deserializers = deserializers;
//# sourceMappingURL=deserializers.js.map