UNPKG

@node-in-layers/core

Version:

The core library for the Node In Layers rapid web development framework.

35 lines 1.21 kB
import omit from 'lodash/omit.js'; import * as globalsApp from './globals/index.js'; import * as layersApp from './layers.js'; import { CoreNamespace } from './types.js'; /** * Loads a node in layers system. * 1. Reads the configuration (if not provided). * 2. Loads globals * 3. Loads all layers * @param args - The required arguments. */ const loadSystem = async (args) => { const globalServices = globalsApp.services.create({ environment: args.environment, workingDirectory: typeof process !== 'undefined' ? process.cwd() : '', }); const globalFeatures = globalsApp.features.create({ services: { [globalsApp.name]: globalServices, }, }); const globals = await globalFeatures.loadGlobals(args.config || args.environment); const layersServices = layersApp.services.create(); // @ts-ignore const layersFeatures = layersApp.features.create({ ...globals, services: { [layersApp.name]: layersServices, }, }); const layers = await layersFeatures.loadLayers(); return omit(layers, [`services.${CoreNamespace.layers}`]); }; export { loadSystem }; //# sourceMappingURL=entries.js.map