UNPKG

arky-js

Version:

**Arky.js** is a powerful, annotation-based framework for building serverless applications on **AWS Lambda and API Gateway**. Inspired by Angular and NestJS, Arky.js simplifies serverless development by providing decorators for defining modules, controlle

27 lines (26 loc) 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MODULE_METADATA_KEY = void 0; exports.Module = Module; require("reflect-metadata"); exports.MODULE_METADATA_KEY = "module"; function Module(module) { return function (target) { // Retrieve existing metadata (if any) const existingMetadata = Reflect.getMetadata(exports.MODULE_METADATA_KEY, target) || {}; // Merge the existing metadata with the new metadata const updatedMetadata = { imports: [...(existingMetadata.imports || []), ...(module.imports || [])], controllers: [ ...(existingMetadata.controllers || []), ...(module.controllers || []), ], providers: [ ...(existingMetadata.providers || []), ...(module.providers || []), ], }; // Define new metadata Reflect.defineMetadata(exports.MODULE_METADATA_KEY, updatedMetadata, target); }; }