UNPKG

@yoroi/api

Version:
48 lines (47 loc) 2.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isFtMetadata = isFtMetadata; exports.isMetadataFile = isMetadataFile; exports.isNftMetadata = isNftMetadata; exports.parseFtMetadataRecord = parseFtMetadataRecord; exports.parseNftMetadataRecord = parseNftMetadataRecord; var _common = require("@yoroi/common"); function isMetadataFile(data) { if (!(0, _common.isRecord)(data)) return false; const file = data; if (file.name && !(0, _common.isString)(file.name)) return false; if (!(0, _common.isString)(file.mediaType)) return false; if (!(0, _common.isStringOrArrayOfString)(file.src)) return false; return true; } function isNftMetadata(data) { if (!(0, _common.isRecord)(data)) return false; const metadata = data; if (!(0, _common.isString)(metadata.name)) return false; if (!(0, _common.isStringOrArrayOfString)(metadata.image)) return false; if (metadata.mediaType && !(0, _common.isString)(metadata.mediaType)) return false; if (metadata.description && !(0, _common.isStringOrArrayOfString)(metadata.description)) return false; if (metadata.files && !(0, _common.isArrayOfType)(metadata.files, isMetadataFile) && !isMetadataFile(metadata.files)) return false; return true; } function isFtMetadata(data) { if (!(0, _common.isRecord)(data)) return false; const metadata = data; if (!(0, _common.isString)(metadata.name)) return false; if (metadata.description && !(0, _common.isStringOrArrayOfString)(metadata.description)) return false; if (metadata.policy && !(0, _common.isStringOrArrayOfString)(metadata.policy)) return false; if (metadata.logo && !(0, _common.isStringOrArrayOfString)(metadata.logo)) return false; if (metadata.ticker && !(0, _common.isString)(metadata.ticker)) return false; if (metadata.url && !(0, _common.isStringOrArrayOfString)(metadata.url)) return false; if (metadata.decimals !== undefined && !(0, _common.isPositiveNumber)(metadata.decimals)) return false; return true; } function parseNftMetadataRecord(data) { return isNftMetadata(data) ? data : undefined; } function parseFtMetadataRecord(data) { return isFtMetadata(data) ? data : undefined; } //# sourceMappingURL=parsers.js.map