UNPKG

@elsikora/nestjs-crud-automator

Version:

A library for automating the creation of CRUD operations in NestJS.

33 lines (29 loc) 1.22 kB
'use strict'; var manualPropertyMetadata_constant = require('../../../../constant/utility/dto/manual-property-metadata.constant.js'); /** * Returns merged manual DTO decorator metadata for the supplied prototype, including inherited * properties with child definitions overriding parent ones. * @param {object} target - DTO prototype. * @returns {Map<string | symbol, TManualDtoPropertyMetadata>} Merged property metadata map. */ function GetManualDtoPropertyMetadata(target) { const prototypes = []; let current = target; while (current && current !== Object.prototype) { prototypes.unshift(current); current = Object.getPrototypeOf(current); } const merged = new Map(); for (const prototype of prototypes) { const registry = Reflect.getMetadata?.(manualPropertyMetadata_constant.MANUAL_PROPERTY_METADATA_DTO_UTILITY_CONSTANT.KEY, prototype); if (!registry) { continue; } for (const [propertyKey, metadata] of registry.entries()) { merged.set(propertyKey, metadata); } } return merged; } exports.GetManualDtoPropertyMetadata = GetManualDtoPropertyMetadata; //# sourceMappingURL=get.utility.js.map