@funded-labs/dab-js
Version:
JS adapter for DAB
24 lines (23 loc) • 1.09 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatMetadata = exports.formatRegistryDetails = exports.parseDetailValue = void 0;
const BOOLEAN_DETAIL_TYPE = ["True", "False"];
const parseDetailValue = (detailValue) => {
const key = Object.keys(detailValue)[0];
const value = BOOLEAN_DETAIL_TYPE.includes(key) ? Boolean(key) : Object.values(detailValue)[0];
if (Array.isArray(value)) {
return value.map((v) => typeof value === 'number' ? v : (0, exports.parseDetailValue)(v));
}
return value;
};
exports.parseDetailValue = parseDetailValue;
const formatRegistryDetails = (details) => {
const formattedDetails = {};
for (const [key, detailValue] of details) {
formattedDetails[key] = (0, exports.parseDetailValue)(detailValue);
}
return formattedDetails;
};
exports.formatRegistryDetails = formatRegistryDetails;
const formatMetadata = (metadata) => (Object.assign(Object.assign({}, metadata), { details: (0, exports.formatRegistryDetails)(metadata.details) }));
exports.formatMetadata = formatMetadata;