UNPKG

@odata2ts/converter-ui5-v2

Version:

Collection of odata2ts compatible converters suitable for integrating with UI5's OData V2 model

38 lines 1.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.timeToMsDurationConverter = void 0; const converter_common_1 = require("@odata2ts/converter-common"); exports.timeToMsDurationConverter = { id: "timeToMsDurationConverter", from: "Edm.Time", to: "@odata2ts/converter-ui5-v2.MsDuration", convertFrom: function (value) { if (typeof value !== "string") { return value; } const duration = converter_common_1.simpleDurationConverter.convertFrom(value); if (typeof duration !== "object" || duration === null) { return undefined; } return { ms: (duration.seconds || 0) * 1000 + (duration.minutes || 0) * 60 * 1000 + (duration.hours || 0) * 60 * 60 * 1000, }; }, convertTo: function (value) { if (!value) { return value; } const hours = Math.floor(value.ms / (1000 * 60 * 60)); const hoursInMs = hours * 1000 * 60 * 60; const minutes = Math.floor((value.ms - hoursInMs) / (1000 * 60)); const minutesInMs = minutes * 1000 * 60; const seconds = (value.ms - hoursInMs - minutesInMs) / 1000; const duration = { hours, minutes, seconds, }; return converter_common_1.simpleDurationConverter.convertTo(duration); }, }; //# sourceMappingURL=TimeToMsDurationConverter.js.map