UNPKG

reveal-sdk-node

Version:

RevealBI Node.js SDK

41 lines (40 loc) 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createDictionaryFromJsonObject = exports.copyEntriesToJsonObject = exports.dateToJson = exports.dateFromJson = void 0; function dateFromJson(json) { let dateStr = json === null || json === void 0 ? void 0 : json['value']; return (typeof dateStr === 'string') ? new Date(dateStr) : null; } exports.dateFromJson = dateFromJson; function dateToJson(date) { return { "_type": "date", "value": date.toJSON() }; } exports.dateToJson = dateToJson; function copyEntriesToJsonObject(dict, jsonObj) { if (!dict) return; for (const [key, value] of Object.entries(dict)) { jsonObj[key] = value instanceof Date ? dateToJson(value) : value; } } exports.copyEntriesToJsonObject = copyEntriesToJsonObject; function createDictionaryFromJsonObject(jsonObj) { if (!jsonObj) return null; const entries = Object.entries(jsonObj); if (entries.length == 0) return null; const dict = {}; for (const [key, value] of entries) { let valueToSet = value; if ((value === null || value === void 0 ? void 0 : value._type) === 'date') { valueToSet = dateFromJson(value); } dict[key] = valueToSet; } return dict; } exports.createDictionaryFromJsonObject = createDictionaryFromJsonObject;