UNPKG

amocrm-client

Version:
31 lines 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CollectionType = exports.MomentType = exports.applyMixins = exports.delay = void 0; const tslib_1 = require("tslib"); const class_transformer_1 = require("class-transformer"); const moment_1 = tslib_1.__importDefault(require("moment")); const ResourceCollection_1 = require("./api/ResourceCollection"); const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms)); exports.delay = delay; /* eslint-disable @typescript-eslint/no-explicit-any */ function applyMixins(baseClass, mixins) { return mixins.reduce((target, mixin) => { return mixin(target); }, baseClass); } exports.applyMixins = applyMixins; function MomentType() { return (target, key) => { (0, class_transformer_1.Transform)(({ value }) => (0, moment_1.default)(value), { toClassOnly: true })(target, key); (0, class_transformer_1.Transform)(({ value }) => value.unix(), { toPlainOnly: true })(target, key); }; } exports.MomentType = MomentType; function CollectionType() { return (target, key) => { (0, class_transformer_1.Transform)(({ value }) => new ResourceCollection_1.ResourceCollection(value), { toClassOnly: true })(target, key); (0, class_transformer_1.Transform)(({ value }) => value.all(), { toPlainOnly: true })(target, key); }; } exports.CollectionType = CollectionType; //# sourceMappingURL=util.js.map