UNPKG

lakutata

Version:

An IoC-based universal application framework.

257 lines (179 loc) 5.6 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const e = require("../../../vendor/Package.1.cjs"); const r = require("../../../vendor/Package.3.cjs"); const t = require("../../decorators/di/Lifetime.cjs"); const i = require("../base/EventEmitter.cjs"); const s = require("./Provider.cjs"); const n = require("../base/internal/ObjectContainer.cjs"); require("../base/async-constructor/AsyncConstructor.cjs"); require("../base/async-constructor/Append.cjs"); require("../helpers/IsPromiseLike.cjs"); require("../helpers/IsPromise.cjs"); require("util/types"); require("../../exceptions/MethodNotFoundException.cjs"); require("../base/abstracts/Exception.cjs"); require("../base/internal/BasicInfo.cjs"); require("../helpers/As.cjs"); require("../../../vendor/Package.6.cjs"); require("../../../vendor/Package.5.cjs"); require("../../../vendor/Package.7.cjs"); require("../base/internal/ThrowWarning.cjs"); require("../helpers/Templating.cjs"); require("../base/internal/CamelCase.cjs"); require("../helpers/NoCase.cjs"); require("../ioc/DependencyInjectionContainer.cjs"); require("util"); require("../ioc/Errors.cjs"); require("../../exceptions/di/DependencyInjectionException.cjs"); require("../base/internal/ConstructorSymbol.cjs"); require("../../constants/DIMetadataKey.cjs"); require("../../../vendor/Package.4.cjs"); require("node:crypto"); require("../../../vendor/Package.2.cjs"); require("../base/internal/DataValidator.cjs"); require("node:util/types"); require("../validation/VLD.cjs"); require("../../../vendor/Package.11.cjs"); require("url"); require("../../../vendor/Package.10.cjs"); require("../../exceptions/dto/InvalidValueException.cjs"); require("../../../vendor/Package.9.cjs"); require("../helpers/IsHtml.cjs"); require("../helpers/IsXML.cjs"); require("../../constants/DTOMetadataKey.cjs"); require("../helpers/ObjectConstructor.cjs"); require("../helpers/ObjectParentConstructors.cjs"); require("../helpers/ObjectParentConstructor.cjs"); require("../helpers/ObjectPrototype.cjs"); require("../ioc/InjectionMode.cjs"); require("../ioc/Lifetime.cjs"); require("../ioc/ListModules.cjs"); require("../../../vendor/Package.8.cjs"); require("os"); require("path"); require("stream"); require("events"); require("fs"); require("../ioc/Utils.cjs"); require("../ioc/FunctionTokenizer.cjs"); require("../ioc/LoadModules.cjs"); require("../ioc/Resolvers.cjs"); require("../ioc/ParamParser.cjs"); require("../base/internal/ObjectLifetime.cjs"); require("../../exceptions/di/LifetimeLockedException.cjs"); require("../base/internal/ObjectWeakRefs.cjs"); require("../base/internal/ConfigurableRecordsInjection.cjs"); require("../base/internal/ObjectConfiguration.cjs"); require("../base/internal/ObjectInjection.cjs"); require("../helpers/DevNull.cjs"); require("../../decorators/dto/Expect.cjs"); require("../../decorators/dto/IndexSignature.cjs"); require("../../decorators/dto/Accept.cjs"); require("../base/internal/MethodValidation.cjs"); require("../../exceptions/dto/InvalidMethodAcceptException.cjs"); require("../../exceptions/dto/InvalidMethodReturnException.cjs"); require("../helpers/IsEmptyObject.cjs"); exports.Component = class Component extends s.Provider { #e=new i.EventEmitter; async [r.__init](...e) { await super[r.__init](...e); } async [r.__destroy](...e) { await super[r.__destroy]((async () => { this.#e.removeAllListeners(); }), ...e); } get container() { return n.GetObjectContainer(this); } createScope() { return n.GetObjectContainer(this).createScope(); } emit(e, ...r) { return this.#e.emit(e, ...r); } async emitRequest(e, ...r) { return this.#e.emitRequest(e, ...r); } addListener(e, r) { this.#e.addListener(e, r); return this; } on(e, r) { this.#e.on(e, r); return this; } prependListener(e, r) { this.#e.prependListener(e, r); return this; } once(e, r) { this.#e.once(e, r); return this; } prependOnceListener(e, r) { this.#e.prependOnceListener(e, r); return this; } many(e, r, t) { this.#e.many(e, r, t); return this; } prependMany(e, r, t) { this.#e.prependMany(e, r, t); return this; } onAny(e) { this.#e.onAny(e); return this; } prependAny(e) { this.#e.prependAny(e); return this; } offAny(e) { this.#e.offAny(e); return this; } removeListener(e, r) { this.#e.removeListener(e, r); return this; } off(e, r) { this.#e.off(e, r); return this; } removeAllListeners(e) { this.#e.removeAllListeners(e); return this; } setMaxListeners(e) { this.#e.setMaxListeners(e); } getMaxListeners() { return this.#e.getMaxListeners(); } eventNames(e) { return this.#e.eventNames(e); } listenerCount(e) { return this.#e.listenerCount(e); } listeners(e) { return this.#e.listeners(e); } listenersAny() { return this.#e.listenersAny(); } hasListeners(e) { return this.#e.hasListeners(e); } async reload() { await this[r.__destroy](); await this[r.__init](); } }; exports.Component = e.__decorate([ t.Singleton(), r.DefineObjectType(r.ObjectType.Component) ], exports.Component);