@navios/core 0.1.15 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.mts +98 -422
- package/dist/_tsup-dts-rollup.d.ts +98 -422
- package/dist/index.d.mts +54 -44
- package/dist/index.d.ts +54 -44
- package/dist/index.js +111 -1023
- package/dist/index.mjs +113 -982
- package/package.json +3 -2
- package/src/adapters/endpoint-adapter.service.mts +3 -6
- package/src/adapters/handler-adapter.interface.mts +1 -1
- package/src/adapters/multipart-adapter.service.mts +2 -1
- package/src/adapters/stream-adapter.service.mts +3 -7
- package/src/attribute.factory.mts +1 -1
- package/src/config/config.provider.mts +8 -10
- package/src/decorators/controller.decorator.mts +3 -6
- package/src/decorators/module.decorator.mts +3 -6
- package/src/decorators/use-guards.decorator.mts +3 -2
- package/src/index.mts +1 -1
- package/src/logger/console-logger.service.mts +3 -2
- package/src/logger/logger.factory.mts +4 -5
- package/src/logger/logger.service.mts +2 -1
- package/src/metadata/controller.metadata.mts +3 -2
- package/src/metadata/handler.metadata.mts +1 -4
- package/src/metadata/index.mts +0 -1
- package/src/metadata/module.metadata.mts +3 -2
- package/src/navios.application.mts +9 -8
- package/src/navios.factory.mts +4 -2
- package/src/services/controller-adapter.service.mts +13 -12
- package/src/services/guard-runner.service.mts +4 -6
- package/src/services/module-loader.service.mts +4 -2
- package/src/tokens/application.token.mts +1 -1
- package/src/tokens/execution-context.token.mts +2 -1
- package/src/tokens/reply.token.mts +1 -1
- package/src/tokens/request.token.mts +1 -1
- package/src/metadata/injectable.metadata.mts +0 -11
- package/src/service-locator/__tests__/injectable.spec.mts +0 -171
- package/src/service-locator/__tests__/injection-token.spec.mts +0 -129
- package/src/service-locator/decorators/get-injectable-token.mts +0 -19
- package/src/service-locator/decorators/index.mts +0 -2
- package/src/service-locator/decorators/injectable.decorator.mts +0 -113
- package/src/service-locator/enums/index.mts +0 -1
- package/src/service-locator/enums/injectable-scope.enum.mts +0 -10
- package/src/service-locator/errors/errors.enum.mts +0 -8
- package/src/service-locator/errors/factory-not-found.mts +0 -8
- package/src/service-locator/errors/factory-token-not-resolved.mts +0 -10
- package/src/service-locator/errors/index.mts +0 -7
- package/src/service-locator/errors/instance-destroying.mts +0 -8
- package/src/service-locator/errors/instance-expired.mts +0 -8
- package/src/service-locator/errors/instance-not-found.mts +0 -8
- package/src/service-locator/errors/unknown-error.mts +0 -15
- package/src/service-locator/event-emitter.mts +0 -107
- package/src/service-locator/index.mts +0 -15
- package/src/service-locator/inject.mts +0 -42
- package/src/service-locator/injection-token.mts +0 -92
- package/src/service-locator/injector.mts +0 -18
- package/src/service-locator/interfaces/factory.interface.mts +0 -11
- package/src/service-locator/override.mts +0 -22
- package/src/service-locator/proxy-service-locator.mts +0 -99
- package/src/service-locator/resolve-service.mts +0 -46
- package/src/service-locator/service-locator-abstract-factory-context.mts +0 -23
- package/src/service-locator/service-locator-event-bus.mts +0 -96
- package/src/service-locator/service-locator-instance-holder.mts +0 -63
- package/src/service-locator/service-locator-manager.mts +0 -89
- package/src/service-locator/service-locator.mts +0 -535
- package/src/service-locator/sync-injector.mts +0 -66
package/dist/index.js
CHANGED
|
@@ -5,15 +5,15 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __knownSymbol = (
|
|
8
|
+
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
9
9
|
var __typeError = (msg) => {
|
|
10
10
|
throw TypeError(msg);
|
|
11
11
|
};
|
|
12
12
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
13
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
14
14
|
var __export = (target, all) => {
|
|
15
|
-
for (var
|
|
16
|
-
__defProp(target,
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
17
|
};
|
|
18
18
|
var __copyProps = (to, from, except, desc) => {
|
|
19
19
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -23,6 +23,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
23
23
|
}
|
|
24
24
|
return to;
|
|
25
25
|
};
|
|
26
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
26
27
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
27
28
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
28
29
|
// file that has been converted to a CommonJS file using a Babel-
|
|
@@ -35,35 +36,35 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
35
36
|
var __decoratorStart = (base) => [, , , __create((base == null ? void 0 : base[__knownSymbol("metadata")]) ?? null)];
|
|
36
37
|
var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
|
|
37
38
|
var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
|
|
38
|
-
var __decoratorContext = (kind,
|
|
39
|
+
var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
|
|
39
40
|
var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
|
|
40
41
|
var __runInitializers = (array, flags, self, value) => {
|
|
41
42
|
for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value = fns[i].call(self, value);
|
|
42
43
|
return value;
|
|
43
44
|
};
|
|
44
|
-
var __decorateElement = (array, flags,
|
|
45
|
+
var __decorateElement = (array, flags, name, decorators, target, extra) => {
|
|
45
46
|
var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
|
|
46
47
|
var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
|
|
47
48
|
var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
|
|
48
|
-
var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [
|
|
49
|
+
var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
|
|
49
50
|
return __privateGet(this, extra);
|
|
50
|
-
}, set [
|
|
51
|
+
}, set [name](x) {
|
|
51
52
|
return __privateSet(this, extra, x);
|
|
52
|
-
} },
|
|
53
|
-
k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") +
|
|
53
|
+
} }, name));
|
|
54
|
+
k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
|
|
54
55
|
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
55
|
-
ctx = __decoratorContext(k,
|
|
56
|
+
ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
|
|
56
57
|
if (k) {
|
|
57
|
-
ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) =>
|
|
58
|
-
if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[
|
|
59
|
-
if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[
|
|
58
|
+
ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
|
|
59
|
+
if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
|
|
60
|
+
if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
|
|
60
61
|
}
|
|
61
62
|
it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
|
|
62
63
|
if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
|
|
63
64
|
else if (typeof it !== "object" || it === null) __typeError("Object expected");
|
|
64
65
|
else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
|
|
65
66
|
}
|
|
66
|
-
return k || __decoratorMetadata(array, target), desc && __defProp(target,
|
|
67
|
+
return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
|
|
67
68
|
};
|
|
68
69
|
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
69
70
|
var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
|
|
@@ -77,7 +78,6 @@ __export(src_exports, {
|
|
|
77
78
|
Application: () => Application,
|
|
78
79
|
AttributeFactory: () => AttributeFactory,
|
|
79
80
|
BadRequestException: () => BadRequestException,
|
|
80
|
-
BoundInjectionToken: () => BoundInjectionToken,
|
|
81
81
|
ConfigProvider: () => ConfigProvider,
|
|
82
82
|
ConfigProviderFactory: () => ConfigProviderFactory,
|
|
83
83
|
ConfigProviderOptions: () => ConfigProviderOptions,
|
|
@@ -91,27 +91,14 @@ __export(src_exports, {
|
|
|
91
91
|
EndpointAdapterService: () => EndpointAdapterService,
|
|
92
92
|
EndpointAdapterToken: () => EndpointAdapterToken,
|
|
93
93
|
EndpointMetadataKey: () => EndpointMetadataKey,
|
|
94
|
-
ErrorsEnum: () => ErrorsEnum,
|
|
95
|
-
EventEmitter: () => EventEmitter,
|
|
96
94
|
ExecutionContext: () => ExecutionContext,
|
|
97
95
|
ExecutionContextInjectionToken: () => ExecutionContextInjectionToken,
|
|
98
96
|
ExecutionContextToken: () => ExecutionContextToken,
|
|
99
|
-
FactoryInjectionToken: () => FactoryInjectionToken,
|
|
100
|
-
FactoryNotFound: () => FactoryNotFound,
|
|
101
|
-
FactoryTokenNotResolved: () => FactoryTokenNotResolved,
|
|
102
97
|
ForbiddenException: () => ForbiddenException,
|
|
103
98
|
GuardRunnerService: () => GuardRunnerService,
|
|
104
99
|
Header: () => Header,
|
|
105
100
|
HttpCode: () => HttpCode,
|
|
106
101
|
HttpException: () => HttpException,
|
|
107
|
-
Injectable: () => Injectable,
|
|
108
|
-
InjectableScope: () => InjectableScope,
|
|
109
|
-
InjectableTokenMeta: () => InjectableTokenMeta,
|
|
110
|
-
InjectableType: () => InjectableType,
|
|
111
|
-
InjectionToken: () => InjectionToken,
|
|
112
|
-
InstanceDestroying: () => InstanceDestroying,
|
|
113
|
-
InstanceExpired: () => InstanceExpired,
|
|
114
|
-
InstanceNotFound: () => InstanceNotFound,
|
|
115
102
|
InternalServerErrorException: () => InternalServerErrorException,
|
|
116
103
|
LOG_LEVELS: () => LOG_LEVELS,
|
|
117
104
|
Logger: () => Logger,
|
|
@@ -131,16 +118,10 @@ __export(src_exports, {
|
|
|
131
118
|
PinoWrapper: () => PinoWrapper,
|
|
132
119
|
Reply: () => Reply,
|
|
133
120
|
Request: () => Request,
|
|
134
|
-
ServiceLocator: () => ServiceLocator,
|
|
135
|
-
ServiceLocatorEventBus: () => ServiceLocatorEventBus,
|
|
136
|
-
ServiceLocatorInstanceHolderKind: () => ServiceLocatorInstanceHolderKind,
|
|
137
|
-
ServiceLocatorInstanceHolderStatus: () => ServiceLocatorInstanceHolderStatus,
|
|
138
|
-
ServiceLocatorManager: () => ServiceLocatorManager,
|
|
139
121
|
Stream: () => Stream,
|
|
140
122
|
StreamAdapterService: () => StreamAdapterService,
|
|
141
123
|
StreamAdapterToken: () => StreamAdapterToken,
|
|
142
124
|
UnauthorizedException: () => UnauthorizedException,
|
|
143
|
-
UnknownError: () => UnknownError,
|
|
144
125
|
UseGuards: () => UseGuards,
|
|
145
126
|
addLeadingSlash: () => addLeadingSlash,
|
|
146
127
|
clc: () => clc,
|
|
@@ -152,12 +133,9 @@ __export(src_exports, {
|
|
|
152
133
|
getAllEndpointMetadata: () => getAllEndpointMetadata,
|
|
153
134
|
getControllerMetadata: () => getControllerMetadata,
|
|
154
135
|
getEndpointMetadata: () => getEndpointMetadata,
|
|
155
|
-
getInjectableToken: () => getInjectableToken,
|
|
156
136
|
getModuleMetadata: () => getModuleMetadata,
|
|
157
|
-
getServiceLocator: () => getServiceLocator,
|
|
158
137
|
hasControllerMetadata: () => hasControllerMetadata,
|
|
159
138
|
hasModuleMetadata: () => hasModuleMetadata,
|
|
160
|
-
inject: () => inject,
|
|
161
139
|
isConstructor: () => isConstructor,
|
|
162
140
|
isEmpty: () => isEmpty,
|
|
163
141
|
isFunction: () => isFunction,
|
|
@@ -171,908 +149,23 @@ __export(src_exports, {
|
|
|
171
149
|
isSymbol: () => isSymbol,
|
|
172
150
|
isUndefined: () => isUndefined,
|
|
173
151
|
normalizePath: () => normalizePath,
|
|
174
|
-
override: () => override,
|
|
175
152
|
provideConfig: () => provideConfig,
|
|
176
|
-
provideServiceLocator: () => provideServiceLocator,
|
|
177
|
-
resolveService: () => resolveService,
|
|
178
|
-
setPromiseCollector: () => setPromiseCollector,
|
|
179
153
|
stripEndSlash: () => stripEndSlash,
|
|
180
|
-
syncInject: () => syncInject,
|
|
181
154
|
yellow: () => yellow
|
|
182
155
|
});
|
|
183
156
|
module.exports = __toCommonJS(src_exports);
|
|
157
|
+
__reExport(src_exports, require("@navios/di"), module.exports);
|
|
184
158
|
|
|
185
|
-
// packages/core/src/
|
|
186
|
-
var
|
|
187
|
-
|
|
188
|
-
// packages/core/src/service-locator/enums/injectable-scope.enum.mts
|
|
189
|
-
var InjectableScope = /* @__PURE__ */ ((InjectableScope2) => {
|
|
190
|
-
InjectableScope2["Singleton"] = "Singleton";
|
|
191
|
-
InjectableScope2["Instance"] = "Instance";
|
|
192
|
-
return InjectableScope2;
|
|
193
|
-
})(InjectableScope || {});
|
|
194
|
-
|
|
195
|
-
// packages/core/src/service-locator/injection-token.mts
|
|
196
|
-
var import_crypto = require("crypto");
|
|
197
|
-
var import_zod = require("zod");
|
|
198
|
-
var InjectionToken = class _InjectionToken {
|
|
199
|
-
constructor(name2, schema) {
|
|
200
|
-
this.name = name2;
|
|
201
|
-
this.schema = schema;
|
|
202
|
-
}
|
|
203
|
-
id = (0, import_crypto.randomUUID)();
|
|
204
|
-
static create(name2, schema) {
|
|
205
|
-
return new _InjectionToken(name2, schema);
|
|
206
|
-
}
|
|
207
|
-
static bound(token, value) {
|
|
208
|
-
return new BoundInjectionToken(token, value);
|
|
209
|
-
}
|
|
210
|
-
static factory(token, factory) {
|
|
211
|
-
return new FactoryInjectionToken(token, factory);
|
|
212
|
-
}
|
|
213
|
-
static refineType(token) {
|
|
214
|
-
return token;
|
|
215
|
-
}
|
|
216
|
-
};
|
|
217
|
-
var BoundInjectionToken = class extends InjectionToken {
|
|
218
|
-
constructor(token, value) {
|
|
219
|
-
super(token.name, token.schema);
|
|
220
|
-
this.token = token;
|
|
221
|
-
this.value = value;
|
|
222
|
-
this.id = token.id;
|
|
223
|
-
}
|
|
224
|
-
};
|
|
225
|
-
var FactoryInjectionToken = class extends InjectionToken {
|
|
226
|
-
constructor(token, factory) {
|
|
227
|
-
super(token.name, token.schema);
|
|
228
|
-
this.token = token;
|
|
229
|
-
this.factory = factory;
|
|
230
|
-
}
|
|
231
|
-
value;
|
|
232
|
-
resolved = false;
|
|
233
|
-
async resolve() {
|
|
234
|
-
if (!this.value) {
|
|
235
|
-
this.value = await this.factory();
|
|
236
|
-
this.resolved = true;
|
|
237
|
-
}
|
|
238
|
-
return this.value;
|
|
239
|
-
}
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
// packages/core/src/service-locator/errors/errors.enum.mts
|
|
243
|
-
var ErrorsEnum = /* @__PURE__ */ ((ErrorsEnum2) => {
|
|
244
|
-
ErrorsEnum2["InstanceExpired"] = "InstanceExpired";
|
|
245
|
-
ErrorsEnum2["InstanceNotFound"] = "InstanceNotFound";
|
|
246
|
-
ErrorsEnum2["InstanceDestroying"] = "InstanceDestroying";
|
|
247
|
-
ErrorsEnum2["UnknownError"] = "UnknownError";
|
|
248
|
-
ErrorsEnum2["FactoryNotFound"] = "FactoryNotFound";
|
|
249
|
-
ErrorsEnum2["FactoryTokenNotResolved"] = "FactoryTokenNotResolved";
|
|
250
|
-
return ErrorsEnum2;
|
|
251
|
-
})(ErrorsEnum || {});
|
|
252
|
-
|
|
253
|
-
// packages/core/src/service-locator/errors/factory-not-found.mts
|
|
254
|
-
var FactoryNotFound = class extends Error {
|
|
255
|
-
constructor(name2) {
|
|
256
|
-
super(`Factory ${name2} not found`);
|
|
257
|
-
this.name = name2;
|
|
258
|
-
}
|
|
259
|
-
code = "FactoryNotFound" /* FactoryNotFound */;
|
|
260
|
-
};
|
|
261
|
-
|
|
262
|
-
// packages/core/src/service-locator/errors/factory-token-not-resolved.mts
|
|
263
|
-
var FactoryTokenNotResolved = class extends Error {
|
|
264
|
-
code = "FactoryTokenNotResolved" /* FactoryTokenNotResolved */;
|
|
265
|
-
constructor(name2) {
|
|
266
|
-
super(`Factory token not resolved: ${name2.toString()}`);
|
|
267
|
-
}
|
|
268
|
-
};
|
|
269
|
-
|
|
270
|
-
// packages/core/src/service-locator/errors/instance-destroying.mts
|
|
271
|
-
var InstanceDestroying = class extends Error {
|
|
272
|
-
constructor(name2) {
|
|
273
|
-
super(`Instance ${name2} destroying`);
|
|
274
|
-
this.name = name2;
|
|
275
|
-
}
|
|
276
|
-
code = "InstanceDestroying" /* InstanceDestroying */;
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
// packages/core/src/service-locator/errors/instance-expired.mts
|
|
280
|
-
var InstanceExpired = class extends Error {
|
|
281
|
-
constructor(name2) {
|
|
282
|
-
super(`Instance ${name2} expired`);
|
|
283
|
-
this.name = name2;
|
|
284
|
-
}
|
|
285
|
-
code = "InstanceExpired" /* InstanceExpired */;
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
// packages/core/src/service-locator/errors/instance-not-found.mts
|
|
289
|
-
var InstanceNotFound = class extends Error {
|
|
290
|
-
constructor(name2) {
|
|
291
|
-
super(`Instance ${name2} not found`);
|
|
292
|
-
this.name = name2;
|
|
293
|
-
}
|
|
294
|
-
code = "InstanceNotFound" /* InstanceNotFound */;
|
|
295
|
-
};
|
|
296
|
-
|
|
297
|
-
// packages/core/src/service-locator/errors/unknown-error.mts
|
|
298
|
-
var UnknownError = class extends Error {
|
|
299
|
-
code = "UnknownError" /* UnknownError */;
|
|
300
|
-
parent;
|
|
301
|
-
constructor(message) {
|
|
302
|
-
if (message instanceof Error) {
|
|
303
|
-
super(message.message);
|
|
304
|
-
this.parent = message;
|
|
305
|
-
return;
|
|
306
|
-
}
|
|
307
|
-
super(message);
|
|
308
|
-
}
|
|
309
|
-
};
|
|
310
|
-
|
|
311
|
-
// packages/core/src/service-locator/service-locator-event-bus.mts
|
|
312
|
-
var ServiceLocatorEventBus = class {
|
|
313
|
-
constructor(logger = null) {
|
|
314
|
-
this.logger = logger;
|
|
315
|
-
}
|
|
316
|
-
listeners = /* @__PURE__ */ new Map();
|
|
317
|
-
on(ns, event, listener) {
|
|
318
|
-
var _a3;
|
|
319
|
-
(_a3 = this.logger) == null ? void 0 : _a3.debug(`[ServiceLocatorEventBus]#on(): ns:${ns} event:${event}`);
|
|
320
|
-
if (!this.listeners.has(ns)) {
|
|
321
|
-
this.listeners.set(ns, /* @__PURE__ */ new Map());
|
|
322
|
-
}
|
|
323
|
-
const nsEvents = this.listeners.get(ns);
|
|
324
|
-
if (!nsEvents.has(event)) {
|
|
325
|
-
nsEvents.set(event, /* @__PURE__ */ new Set());
|
|
326
|
-
}
|
|
327
|
-
nsEvents.get(event).add(listener);
|
|
328
|
-
return () => {
|
|
329
|
-
var _a4;
|
|
330
|
-
nsEvents.get(event).delete(listener);
|
|
331
|
-
if (((_a4 = nsEvents.get(event)) == null ? void 0 : _a4.size) === 0) {
|
|
332
|
-
nsEvents.delete(event);
|
|
333
|
-
}
|
|
334
|
-
if (nsEvents.size === 0) {
|
|
335
|
-
this.listeners.delete(ns);
|
|
336
|
-
}
|
|
337
|
-
};
|
|
338
|
-
}
|
|
339
|
-
async emit(key, event) {
|
|
340
|
-
var _a3, _b, _c;
|
|
341
|
-
if (!this.listeners.has(key)) {
|
|
342
|
-
return;
|
|
343
|
-
}
|
|
344
|
-
const events = this.listeners.get(key);
|
|
345
|
-
const preEvent = `pre:${event}`;
|
|
346
|
-
const postEvent = `post:${event}`;
|
|
347
|
-
(_a3 = this.logger) == null ? void 0 : _a3.debug(`[ServiceLocatorEventBus]#emit(): ${key}:${preEvent}`);
|
|
348
|
-
await Promise.allSettled(
|
|
349
|
-
[...events.get(preEvent) ?? []].map((listener) => listener(preEvent))
|
|
350
|
-
).then((results) => {
|
|
351
|
-
results.filter((result) => result.status === "rejected").forEach((result) => {
|
|
352
|
-
var _a4;
|
|
353
|
-
(_a4 = this.logger) == null ? void 0 : _a4.warn(
|
|
354
|
-
`[ServiceLocatorEventBus]#emit(): ${key}:${preEvent} rejected with`,
|
|
355
|
-
result.reason
|
|
356
|
-
);
|
|
357
|
-
});
|
|
358
|
-
});
|
|
359
|
-
(_b = this.logger) == null ? void 0 : _b.debug(`[ServiceLocatorEventBus]#emit(): ${key}:${event}`);
|
|
360
|
-
const res = await Promise.allSettled(
|
|
361
|
-
[...events.get(event) ?? []].map((listener) => listener(event))
|
|
362
|
-
).then((results) => {
|
|
363
|
-
const res2 = results.filter((result) => result.status === "rejected").map((result) => {
|
|
364
|
-
var _a4;
|
|
365
|
-
(_a4 = this.logger) == null ? void 0 : _a4.warn(
|
|
366
|
-
`[ServiceLocatorEventBus]#emit(): ${key}:${event} rejected with`,
|
|
367
|
-
result.reason
|
|
368
|
-
);
|
|
369
|
-
return result;
|
|
370
|
-
});
|
|
371
|
-
if (res2.length > 0) {
|
|
372
|
-
return Promise.reject(res2);
|
|
373
|
-
}
|
|
374
|
-
return results;
|
|
375
|
-
});
|
|
376
|
-
(_c = this.logger) == null ? void 0 : _c.debug(`[ServiceLocatorEventBus]#emit(): ${key}:${postEvent}`);
|
|
377
|
-
await Promise.allSettled(
|
|
378
|
-
[...events.get(postEvent) ?? []].map((listener) => listener(postEvent))
|
|
379
|
-
).then((results) => {
|
|
380
|
-
results.filter((result) => result.status === "rejected").forEach((result) => {
|
|
381
|
-
var _a4;
|
|
382
|
-
(_a4 = this.logger) == null ? void 0 : _a4.warn(
|
|
383
|
-
`[ServiceLocatorEventBus]#emit(): ${key}:${postEvent} rejected with`,
|
|
384
|
-
result.reason
|
|
385
|
-
);
|
|
386
|
-
});
|
|
387
|
-
});
|
|
388
|
-
return res;
|
|
389
|
-
}
|
|
390
|
-
};
|
|
391
|
-
|
|
392
|
-
// packages/core/src/service-locator/service-locator-instance-holder.mts
|
|
393
|
-
var ServiceLocatorInstanceHolderKind = /* @__PURE__ */ ((ServiceLocatorInstanceHolderKind2) => {
|
|
394
|
-
ServiceLocatorInstanceHolderKind2["Instance"] = "instance";
|
|
395
|
-
ServiceLocatorInstanceHolderKind2["Factory"] = "factory";
|
|
396
|
-
ServiceLocatorInstanceHolderKind2["AbstractFactory"] = "abstractFactory";
|
|
397
|
-
return ServiceLocatorInstanceHolderKind2;
|
|
398
|
-
})(ServiceLocatorInstanceHolderKind || {});
|
|
399
|
-
var ServiceLocatorInstanceHolderStatus = /* @__PURE__ */ ((ServiceLocatorInstanceHolderStatus2) => {
|
|
400
|
-
ServiceLocatorInstanceHolderStatus2["Created"] = "created";
|
|
401
|
-
ServiceLocatorInstanceHolderStatus2["Creating"] = "creating";
|
|
402
|
-
ServiceLocatorInstanceHolderStatus2["Destroying"] = "destroying";
|
|
403
|
-
return ServiceLocatorInstanceHolderStatus2;
|
|
404
|
-
})(ServiceLocatorInstanceHolderStatus || {});
|
|
405
|
-
|
|
406
|
-
// packages/core/src/service-locator/service-locator-manager.mts
|
|
407
|
-
var ServiceLocatorManager = class {
|
|
408
|
-
constructor(logger = null) {
|
|
409
|
-
this.logger = logger;
|
|
410
|
-
}
|
|
411
|
-
instancesHolders = /* @__PURE__ */ new Map();
|
|
412
|
-
get(name2) {
|
|
413
|
-
var _a3, _b, _c;
|
|
414
|
-
const holder = this.instancesHolders.get(name2);
|
|
415
|
-
if (holder) {
|
|
416
|
-
if (holder.ttl !== Infinity) {
|
|
417
|
-
const now = Date.now();
|
|
418
|
-
if (now - holder.createdAt > holder.ttl) {
|
|
419
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
420
|
-
`[ServiceLocatorManager]#getInstanceHolder() TTL expired for ${holder.name}`
|
|
421
|
-
);
|
|
422
|
-
return [new InstanceExpired(holder.name), holder];
|
|
423
|
-
}
|
|
424
|
-
} else if (holder.status === "destroying" /* Destroying */) {
|
|
425
|
-
(_b = this.logger) == null ? void 0 : _b.log(
|
|
426
|
-
`[ServiceLocatorManager]#getInstanceHolder() Instance ${holder.name} is destroying`
|
|
427
|
-
);
|
|
428
|
-
return [new InstanceDestroying(holder.name), holder];
|
|
429
|
-
}
|
|
430
|
-
return [void 0, holder];
|
|
431
|
-
} else {
|
|
432
|
-
(_c = this.logger) == null ? void 0 : _c.log(
|
|
433
|
-
`[ServiceLocatorManager]#getInstanceHolder() Instance ${name2} not found`
|
|
434
|
-
);
|
|
435
|
-
return [new InstanceNotFound(name2)];
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
set(name2, holder) {
|
|
439
|
-
this.instancesHolders.set(name2, holder);
|
|
440
|
-
}
|
|
441
|
-
has(name2) {
|
|
442
|
-
const [error, holder] = this.get(name2);
|
|
443
|
-
if (!error) {
|
|
444
|
-
return [void 0, true];
|
|
445
|
-
}
|
|
446
|
-
if (["InstanceExpired" /* InstanceExpired */, "InstanceDestroying" /* InstanceDestroying */].includes(
|
|
447
|
-
error.code
|
|
448
|
-
)) {
|
|
449
|
-
return [error];
|
|
450
|
-
}
|
|
451
|
-
return [void 0, !!holder];
|
|
452
|
-
}
|
|
453
|
-
delete(name2) {
|
|
454
|
-
return this.instancesHolders.delete(name2);
|
|
455
|
-
}
|
|
456
|
-
filter(predicate) {
|
|
457
|
-
return new Map(
|
|
458
|
-
[...this.instancesHolders].filter(
|
|
459
|
-
([key, value]) => predicate(value, key)
|
|
460
|
-
)
|
|
461
|
-
);
|
|
462
|
-
}
|
|
463
|
-
};
|
|
464
|
-
|
|
465
|
-
// packages/core/src/service-locator/service-locator.mts
|
|
466
|
-
var ServiceLocator = class {
|
|
467
|
-
constructor(logger = null) {
|
|
468
|
-
this.logger = logger;
|
|
469
|
-
this.eventBus = new ServiceLocatorEventBus(logger);
|
|
470
|
-
this.manager = new ServiceLocatorManager(logger);
|
|
471
|
-
}
|
|
472
|
-
abstractFactories = /* @__PURE__ */ new Map();
|
|
473
|
-
instanceFactories = /* @__PURE__ */ new Map();
|
|
474
|
-
eventBus;
|
|
475
|
-
manager;
|
|
476
|
-
getEventBus() {
|
|
477
|
-
return this.eventBus;
|
|
478
|
-
}
|
|
479
|
-
registerInstance(token, instance) {
|
|
480
|
-
const instanceName = this.getInstanceIdentifier(token, void 0);
|
|
481
|
-
this.manager.set(instanceName, {
|
|
482
|
-
name: instanceName,
|
|
483
|
-
instance,
|
|
484
|
-
status: "created" /* Created */,
|
|
485
|
-
kind: "instance" /* Instance */,
|
|
486
|
-
createdAt: Date.now(),
|
|
487
|
-
ttl: Infinity,
|
|
488
|
-
deps: [],
|
|
489
|
-
destroyListeners: [],
|
|
490
|
-
effects: [],
|
|
491
|
-
destroyPromise: null,
|
|
492
|
-
creationPromise: null
|
|
493
|
-
});
|
|
494
|
-
this.eventBus.emit(instanceName, "create");
|
|
495
|
-
}
|
|
496
|
-
removeInstance(token) {
|
|
497
|
-
const instanceName = this.getInstanceIdentifier(token, void 0);
|
|
498
|
-
return this.invalidate(instanceName);
|
|
499
|
-
}
|
|
500
|
-
registerAbstractFactory(token, factory, type = "Singleton" /* Singleton */) {
|
|
501
|
-
var _a3;
|
|
502
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
503
|
-
`[ServiceLocator]#registerAbstractFactory(): Registering abstract factory for ${name}`
|
|
504
|
-
);
|
|
505
|
-
if (type === "Instance" /* Instance */) {
|
|
506
|
-
this.instanceFactories.set(token, factory);
|
|
507
|
-
this.abstractFactories.delete(token);
|
|
508
|
-
} else {
|
|
509
|
-
this.abstractFactories.set(token, factory);
|
|
510
|
-
this.instanceFactories.delete(token);
|
|
511
|
-
}
|
|
512
|
-
}
|
|
513
|
-
resolveTokenArgs(token, args) {
|
|
514
|
-
var _a3, _b;
|
|
515
|
-
let realArgs = args;
|
|
516
|
-
if (token instanceof BoundInjectionToken) {
|
|
517
|
-
realArgs = token.value;
|
|
518
|
-
} else if (token instanceof FactoryInjectionToken) {
|
|
519
|
-
if (token.resolved) {
|
|
520
|
-
realArgs = token.value;
|
|
521
|
-
} else {
|
|
522
|
-
return [new FactoryTokenNotResolved(token.name)];
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
if (!token.schema) {
|
|
526
|
-
return [void 0, realArgs];
|
|
527
|
-
}
|
|
528
|
-
const validatedArgs = (_a3 = token.schema) == null ? void 0 : _a3.safeParse(realArgs);
|
|
529
|
-
if (validatedArgs && !validatedArgs.success) {
|
|
530
|
-
(_b = this.logger) == null ? void 0 : _b.error(
|
|
531
|
-
`[ServiceLocator]#getInstance(): Error validating args for ${token.name.toString()}`,
|
|
532
|
-
validatedArgs.error
|
|
533
|
-
);
|
|
534
|
-
return [new UnknownError(validatedArgs.error)];
|
|
535
|
-
}
|
|
536
|
-
return [void 0, validatedArgs == null ? void 0 : validatedArgs.data];
|
|
537
|
-
}
|
|
538
|
-
getInstanceIdentifier(token, args) {
|
|
539
|
-
const [err, realArgs] = this.resolveTokenArgs(token, args);
|
|
540
|
-
if (err) {
|
|
541
|
-
throw err;
|
|
542
|
-
}
|
|
543
|
-
return this.makeInstanceName(token, realArgs);
|
|
544
|
-
}
|
|
545
|
-
async getInstance(token, args) {
|
|
546
|
-
var _a3, _b;
|
|
547
|
-
const [err, realArgs] = this.resolveTokenArgs(token, args);
|
|
548
|
-
if (err instanceof UnknownError) {
|
|
549
|
-
throw err;
|
|
550
|
-
} else if (err instanceof FactoryTokenNotResolved && token instanceof FactoryInjectionToken) {
|
|
551
|
-
await token.resolve();
|
|
552
|
-
return this.getInstance(token, args);
|
|
553
|
-
}
|
|
554
|
-
const instanceName = this.makeInstanceName(token, realArgs);
|
|
555
|
-
const [error, holder] = this.manager.get(instanceName);
|
|
556
|
-
if (!error) {
|
|
557
|
-
if (holder.status === "creating" /* Creating */) {
|
|
558
|
-
return holder.creationPromise;
|
|
559
|
-
} else if (holder.status === "destroying" /* Destroying */) {
|
|
560
|
-
return [new UnknownError("InstanceDestroying" /* InstanceDestroying */)];
|
|
561
|
-
}
|
|
562
|
-
return [void 0, holder.instance];
|
|
563
|
-
}
|
|
564
|
-
switch (error.code) {
|
|
565
|
-
case "InstanceDestroying" /* InstanceDestroying */:
|
|
566
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
567
|
-
`[ServiceLocator]#getInstance() TTL expired for ${holder == null ? void 0 : holder.name}`
|
|
568
|
-
);
|
|
569
|
-
await (holder == null ? void 0 : holder.destroyPromise);
|
|
570
|
-
return this.getInstance(token, args);
|
|
571
|
-
case "InstanceExpired" /* InstanceExpired */:
|
|
572
|
-
(_b = this.logger) == null ? void 0 : _b.log(
|
|
573
|
-
`[ServiceLocator]#getInstance() TTL expired for ${holder == null ? void 0 : holder.name}`
|
|
574
|
-
);
|
|
575
|
-
await this.invalidate(instanceName);
|
|
576
|
-
return this.getInstance(token, args);
|
|
577
|
-
case "InstanceNotFound" /* InstanceNotFound */:
|
|
578
|
-
break;
|
|
579
|
-
default:
|
|
580
|
-
return [error];
|
|
581
|
-
}
|
|
582
|
-
return this.createInstance(instanceName, token, realArgs);
|
|
583
|
-
}
|
|
584
|
-
async getOrThrowInstance(token, args) {
|
|
585
|
-
const [error, instance] = await this.getInstance(token, args);
|
|
586
|
-
if (error) {
|
|
587
|
-
throw error;
|
|
588
|
-
}
|
|
589
|
-
return instance;
|
|
590
|
-
}
|
|
591
|
-
notifyListeners(name2, event = "create") {
|
|
592
|
-
var _a3;
|
|
593
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
594
|
-
`[ServiceLocator]#notifyListeners() Notifying listeners for ${name2} with event ${event}`
|
|
595
|
-
);
|
|
596
|
-
return this.eventBus.emit(name2, event);
|
|
597
|
-
}
|
|
598
|
-
async createInstance(instanceName, token, args) {
|
|
599
|
-
var _a3;
|
|
600
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
601
|
-
`[ServiceLocator]#createInstance() Creating instance for ${instanceName}`
|
|
602
|
-
);
|
|
603
|
-
let realToken = token instanceof BoundInjectionToken || token instanceof FactoryInjectionToken ? token.token : token;
|
|
604
|
-
if (this.abstractFactories.has(realToken) || this.instanceFactories.has(realToken)) {
|
|
605
|
-
return this.createInstanceFromAbstractFactory(
|
|
606
|
-
instanceName,
|
|
607
|
-
realToken,
|
|
608
|
-
args
|
|
609
|
-
);
|
|
610
|
-
} else {
|
|
611
|
-
return [new FactoryNotFound(realToken.name.toString())];
|
|
612
|
-
}
|
|
613
|
-
}
|
|
614
|
-
async createInstanceFromAbstractFactory(instanceName, token, args) {
|
|
615
|
-
var _a3;
|
|
616
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
617
|
-
`[ServiceLocator]#createInstanceFromAbstractFactory(): Creating instance for ${instanceName} from abstract factory`
|
|
618
|
-
);
|
|
619
|
-
const ctx = this.createContextForAbstractFactory(instanceName);
|
|
620
|
-
let shouldStore = true;
|
|
621
|
-
let abstractFactory = this.abstractFactories.get(token);
|
|
622
|
-
if (!abstractFactory) {
|
|
623
|
-
abstractFactory = this.instanceFactories.get(token);
|
|
624
|
-
shouldStore = false;
|
|
625
|
-
if (!abstractFactory) {
|
|
626
|
-
return [new FactoryNotFound(token.name.toString())];
|
|
627
|
-
}
|
|
628
|
-
}
|
|
629
|
-
const holder = {
|
|
630
|
-
name: instanceName,
|
|
631
|
-
instance: null,
|
|
632
|
-
status: "creating" /* Creating */,
|
|
633
|
-
kind: "abstractFactory" /* AbstractFactory */,
|
|
634
|
-
// @ts-expect-error TS2322 This is correct type
|
|
635
|
-
creationPromise: abstractFactory(ctx, args).then(async (instance) => {
|
|
636
|
-
var _a4;
|
|
637
|
-
holder.instance = instance;
|
|
638
|
-
holder.status = "created" /* Created */;
|
|
639
|
-
holder.deps = ctx.getDependencies();
|
|
640
|
-
holder.destroyListeners = ctx.getDestroyListeners();
|
|
641
|
-
holder.ttl = ctx.getTtl();
|
|
642
|
-
if (holder.deps.length > 0) {
|
|
643
|
-
(_a4 = this.logger) == null ? void 0 : _a4.log(
|
|
644
|
-
`[ServiceLocator]#createInstanceFromAbstractFactory(): Adding subscriptions for ${instanceName} dependencies for their invalidations: ${holder.deps.join(
|
|
645
|
-
", "
|
|
646
|
-
)}`
|
|
647
|
-
);
|
|
648
|
-
holder.deps.forEach((dependency) => {
|
|
649
|
-
holder.destroyListeners.push(
|
|
650
|
-
this.eventBus.on(
|
|
651
|
-
dependency,
|
|
652
|
-
"destroy",
|
|
653
|
-
() => this.invalidate(instanceName)
|
|
654
|
-
)
|
|
655
|
-
);
|
|
656
|
-
});
|
|
657
|
-
}
|
|
658
|
-
if (holder.ttl === 0 || !shouldStore) {
|
|
659
|
-
await this.invalidate(instanceName);
|
|
660
|
-
}
|
|
661
|
-
await this.notifyListeners(instanceName);
|
|
662
|
-
return [void 0, instance];
|
|
663
|
-
}).catch((error) => {
|
|
664
|
-
var _a4;
|
|
665
|
-
(_a4 = this.logger) == null ? void 0 : _a4.error(
|
|
666
|
-
`[ServiceLocator]#createInstanceFromAbstractFactory(): Error creating instance for ${instanceName}`,
|
|
667
|
-
error
|
|
668
|
-
);
|
|
669
|
-
return [new UnknownError(error)];
|
|
670
|
-
}),
|
|
671
|
-
effects: [],
|
|
672
|
-
deps: [],
|
|
673
|
-
destroyListeners: [],
|
|
674
|
-
createdAt: Date.now(),
|
|
675
|
-
ttl: Infinity
|
|
676
|
-
};
|
|
677
|
-
if (shouldStore) {
|
|
678
|
-
this.manager.set(instanceName, holder);
|
|
679
|
-
}
|
|
680
|
-
return holder.creationPromise;
|
|
681
|
-
}
|
|
682
|
-
createContextForAbstractFactory(instanceName) {
|
|
683
|
-
const dependencies = /* @__PURE__ */ new Set();
|
|
684
|
-
const destroyListeners = /* @__PURE__ */ new Set();
|
|
685
|
-
const self = this;
|
|
686
|
-
function invalidate(name2 = instanceName) {
|
|
687
|
-
return self.invalidate(name2);
|
|
688
|
-
}
|
|
689
|
-
function addEffect(listener) {
|
|
690
|
-
destroyListeners.add(listener);
|
|
691
|
-
}
|
|
692
|
-
let ttl = Infinity;
|
|
693
|
-
function setTtl(value) {
|
|
694
|
-
ttl = value;
|
|
695
|
-
}
|
|
696
|
-
function getTtl() {
|
|
697
|
-
return ttl;
|
|
698
|
-
}
|
|
699
|
-
function on(key, event, listener) {
|
|
700
|
-
destroyListeners.add(self.eventBus.on(key, event, listener));
|
|
701
|
-
}
|
|
702
|
-
return {
|
|
703
|
-
// @ts-expect-error This is correct type
|
|
704
|
-
async inject(token, args) {
|
|
705
|
-
let injectionToken = token;
|
|
706
|
-
if (typeof token === "function") {
|
|
707
|
-
injectionToken = getInjectableToken(token);
|
|
708
|
-
}
|
|
709
|
-
if (injectionToken instanceof InjectionToken) {
|
|
710
|
-
const validatedArgs = token.schema ? token.schema.safeParse(args) : void 0;
|
|
711
|
-
const instanceName2 = self.makeInstanceName(token, validatedArgs);
|
|
712
|
-
dependencies.add(instanceName2);
|
|
713
|
-
return self.getOrThrowInstance(injectionToken, args);
|
|
714
|
-
}
|
|
715
|
-
throw new Error(
|
|
716
|
-
`[ServiceLocator]#inject(): Invalid token type: ${typeof token}. Expected a class or an InjectionToken.`
|
|
717
|
-
);
|
|
718
|
-
},
|
|
719
|
-
invalidate,
|
|
720
|
-
eventBus: self.eventBus,
|
|
721
|
-
on,
|
|
722
|
-
getDependencies: () => Array.from(dependencies),
|
|
723
|
-
addEffect,
|
|
724
|
-
getDestroyListeners: () => Array.from(destroyListeners),
|
|
725
|
-
setTtl,
|
|
726
|
-
getTtl
|
|
727
|
-
};
|
|
728
|
-
}
|
|
729
|
-
getSyncInstance(token, args) {
|
|
730
|
-
const [err, realArgs] = this.resolveTokenArgs(token, args);
|
|
731
|
-
if (err) {
|
|
732
|
-
return null;
|
|
733
|
-
}
|
|
734
|
-
const instanceName = this.makeInstanceName(token, realArgs);
|
|
735
|
-
const [error, holder] = this.manager.get(instanceName);
|
|
736
|
-
if (error) {
|
|
737
|
-
return null;
|
|
738
|
-
}
|
|
739
|
-
return holder.instance;
|
|
740
|
-
}
|
|
741
|
-
invalidate(service, round = 1) {
|
|
742
|
-
var _a3, _b, _c, _d, _e;
|
|
743
|
-
(_a3 = this.logger) == null ? void 0 : _a3.log(
|
|
744
|
-
`[ServiceLocator]#invalidate(): Starting Invalidating process of ${service}`
|
|
745
|
-
);
|
|
746
|
-
const toInvalidate = this.manager.filter(
|
|
747
|
-
(holder) => holder.name === service || holder.deps.includes(service)
|
|
748
|
-
);
|
|
749
|
-
const promises = [];
|
|
750
|
-
for (const [key, holder] of toInvalidate.entries()) {
|
|
751
|
-
if (holder.status === "destroying" /* Destroying */) {
|
|
752
|
-
(_b = this.logger) == null ? void 0 : _b.trace(
|
|
753
|
-
`[ServiceLocator]#invalidate(): ${key} is already being destroyed`
|
|
754
|
-
);
|
|
755
|
-
promises.push(holder.destroyPromise);
|
|
756
|
-
continue;
|
|
757
|
-
}
|
|
758
|
-
if (holder.status === "creating" /* Creating */) {
|
|
759
|
-
(_c = this.logger) == null ? void 0 : _c.trace(
|
|
760
|
-
`[ServiceLocator]#invalidate(): ${key} is being created, waiting for creation to finish`
|
|
761
|
-
);
|
|
762
|
-
promises.push(
|
|
763
|
-
(_d = holder.creationPromise) == null ? void 0 : _d.then(() => {
|
|
764
|
-
var _a4;
|
|
765
|
-
if (round > 3) {
|
|
766
|
-
(_a4 = this.logger) == null ? void 0 : _a4.error(
|
|
767
|
-
`[ServiceLocator]#invalidate(): ${key} creation is triggering a new invalidation round, but it is still not created`
|
|
768
|
-
);
|
|
769
|
-
return;
|
|
770
|
-
}
|
|
771
|
-
return this.invalidate(key, round + 1);
|
|
772
|
-
})
|
|
773
|
-
);
|
|
774
|
-
continue;
|
|
775
|
-
}
|
|
776
|
-
holder.status = "destroying" /* Destroying */;
|
|
777
|
-
(_e = this.logger) == null ? void 0 : _e.log(
|
|
778
|
-
`[ServiceLocator]#invalidate(): Invalidating ${key} and notifying listeners`
|
|
779
|
-
);
|
|
780
|
-
holder.destroyPromise = Promise.all(
|
|
781
|
-
holder.destroyListeners.map((listener) => listener())
|
|
782
|
-
).then(async () => {
|
|
783
|
-
this.manager.delete(key);
|
|
784
|
-
await this.notifyListeners(key, "destroy");
|
|
785
|
-
});
|
|
786
|
-
promises.push(holder.destroyPromise);
|
|
787
|
-
}
|
|
788
|
-
return Promise.all(promises);
|
|
789
|
-
}
|
|
790
|
-
async ready() {
|
|
791
|
-
return Promise.all(
|
|
792
|
-
Array.from(this.manager.filter(() => true)).map(([, holder]) => {
|
|
793
|
-
var _a3;
|
|
794
|
-
if (holder.status === "creating" /* Creating */) {
|
|
795
|
-
return (_a3 = holder.creationPromise) == null ? void 0 : _a3.then(() => null);
|
|
796
|
-
}
|
|
797
|
-
if (holder.status === "destroying" /* Destroying */) {
|
|
798
|
-
return holder.destroyPromise.then(() => null);
|
|
799
|
-
}
|
|
800
|
-
return Promise.resolve(null);
|
|
801
|
-
})
|
|
802
|
-
).then(() => null);
|
|
803
|
-
}
|
|
804
|
-
makeInstanceName(token, args) {
|
|
805
|
-
let stringifiedArgs = args ? ":" + JSON.stringify(args, (_, value) => {
|
|
806
|
-
if (typeof value === "function") {
|
|
807
|
-
return `function:${value.name}(${value.length})`;
|
|
808
|
-
}
|
|
809
|
-
if (typeof value === "symbol") {
|
|
810
|
-
return value.toString();
|
|
811
|
-
}
|
|
812
|
-
return value;
|
|
813
|
-
}).replaceAll(/"/g, "").replaceAll(/:/g, "=").replaceAll(/,/g, "|") : "";
|
|
814
|
-
const { name: name2 } = token;
|
|
815
|
-
if (typeof name2 === "function") {
|
|
816
|
-
const className = name2.name;
|
|
817
|
-
return `${className}(${token.id})${stringifiedArgs}`;
|
|
818
|
-
} else if (typeof name2 === "symbol") {
|
|
819
|
-
return `${name2.toString()}(${token.id})${stringifiedArgs}`;
|
|
820
|
-
} else {
|
|
821
|
-
return `${name2}(${token.id})${stringifiedArgs}`;
|
|
822
|
-
}
|
|
823
|
-
}
|
|
824
|
-
};
|
|
825
|
-
|
|
826
|
-
// packages/core/src/service-locator/injector.mts
|
|
827
|
-
var serviceLocator = new ServiceLocator();
|
|
828
|
-
function provideServiceLocator(locator) {
|
|
829
|
-
const original = serviceLocator;
|
|
830
|
-
serviceLocator = locator;
|
|
831
|
-
return original;
|
|
832
|
-
}
|
|
833
|
-
function getServiceLocator() {
|
|
834
|
-
if (!serviceLocator) {
|
|
835
|
-
throw new Error(
|
|
836
|
-
"[ServiceLocator] Service locator is not initialized. Please provide the service locator before using the @Injectable decorator."
|
|
837
|
-
);
|
|
838
|
-
}
|
|
839
|
-
return serviceLocator;
|
|
840
|
-
}
|
|
841
|
-
|
|
842
|
-
// packages/core/src/service-locator/resolve-service.mts
|
|
843
|
-
var import_common = require("@navios/common");
|
|
844
|
-
|
|
845
|
-
// packages/core/src/service-locator/proxy-service-locator.mts
|
|
846
|
-
var ProxyServiceLocator = class {
|
|
847
|
-
constructor(serviceLocator2, ctx) {
|
|
848
|
-
this.serviceLocator = serviceLocator2;
|
|
849
|
-
this.ctx = ctx;
|
|
850
|
-
}
|
|
851
|
-
get abstractFactories() {
|
|
852
|
-
return this.serviceLocator["abstractFactories"];
|
|
853
|
-
}
|
|
854
|
-
getEventBus() {
|
|
855
|
-
return this.serviceLocator.getEventBus();
|
|
856
|
-
}
|
|
857
|
-
registerAbstractFactory(token, factory) {
|
|
858
|
-
return this.serviceLocator.registerAbstractFactory(token, factory);
|
|
859
|
-
}
|
|
860
|
-
getInstance(token, args) {
|
|
861
|
-
return this.ctx.inject(token, args).then(
|
|
862
|
-
(instance) => {
|
|
863
|
-
return [void 0, instance];
|
|
864
|
-
},
|
|
865
|
-
(error) => {
|
|
866
|
-
return [error];
|
|
867
|
-
}
|
|
868
|
-
);
|
|
869
|
-
}
|
|
870
|
-
getOrThrowInstance(token, args) {
|
|
871
|
-
return this.ctx.inject(token, args);
|
|
872
|
-
}
|
|
873
|
-
getSyncInstance(token, args) {
|
|
874
|
-
return this.serviceLocator.getSyncInstance(token, args);
|
|
875
|
-
}
|
|
876
|
-
invalidate(service, round) {
|
|
877
|
-
return this.serviceLocator.invalidate(service, round);
|
|
878
|
-
}
|
|
879
|
-
ready() {
|
|
880
|
-
return this.serviceLocator.ready();
|
|
881
|
-
}
|
|
882
|
-
makeInstanceName(token, args) {
|
|
883
|
-
return this.serviceLocator.makeInstanceName(token, args);
|
|
884
|
-
}
|
|
885
|
-
};
|
|
886
|
-
function makeProxyServiceLocator(serviceLocator2, ctx) {
|
|
887
|
-
return new ProxyServiceLocator(serviceLocator2, ctx);
|
|
888
|
-
}
|
|
889
|
-
|
|
890
|
-
// packages/core/src/service-locator/sync-injector.mts
|
|
891
|
-
var promiseCollector = null;
|
|
892
|
-
function syncInject(token, args) {
|
|
893
|
-
let realToken = token;
|
|
894
|
-
if (!(token instanceof InjectionToken)) {
|
|
895
|
-
realToken = getInjectableToken(token);
|
|
896
|
-
}
|
|
897
|
-
const instance = getServiceLocator().getSyncInstance(realToken, args);
|
|
898
|
-
if (!instance) {
|
|
899
|
-
if (promiseCollector) {
|
|
900
|
-
const promise = getServiceLocator().getInstance(realToken, args);
|
|
901
|
-
promiseCollector(promise);
|
|
902
|
-
} else {
|
|
903
|
-
throw new Error(
|
|
904
|
-
`[ServiceLocator] No instance found for ${realToken.name.toString()}`
|
|
905
|
-
);
|
|
906
|
-
}
|
|
907
|
-
}
|
|
908
|
-
return instance;
|
|
909
|
-
}
|
|
910
|
-
function setPromiseCollector(collector) {
|
|
911
|
-
const original = promiseCollector;
|
|
912
|
-
promiseCollector = collector;
|
|
913
|
-
return original;
|
|
914
|
-
}
|
|
915
|
-
|
|
916
|
-
// packages/core/src/service-locator/resolve-service.mts
|
|
917
|
-
async function resolveService(ctx, target, args = []) {
|
|
918
|
-
const proxyServiceLocator = makeProxyServiceLocator(getServiceLocator(), ctx);
|
|
919
|
-
let promises = [];
|
|
920
|
-
const promiseCollector2 = (promise) => {
|
|
921
|
-
promises.push(promise);
|
|
922
|
-
};
|
|
923
|
-
const originalPromiseCollector = setPromiseCollector(promiseCollector2);
|
|
924
|
-
const tryLoad = () => {
|
|
925
|
-
const original = provideServiceLocator(proxyServiceLocator);
|
|
926
|
-
let result = new target(...args);
|
|
927
|
-
provideServiceLocator(original);
|
|
928
|
-
return result;
|
|
929
|
-
};
|
|
930
|
-
let instance = tryLoad();
|
|
931
|
-
setPromiseCollector(originalPromiseCollector);
|
|
932
|
-
if (promises.length > 0) {
|
|
933
|
-
await Promise.all(promises);
|
|
934
|
-
promises = [];
|
|
935
|
-
instance = tryLoad();
|
|
936
|
-
}
|
|
937
|
-
if (promises.length > 0) {
|
|
938
|
-
console.error(`[ServiceLocator] ${target.name} has problem with it's definition.
|
|
939
|
-
|
|
940
|
-
One or more of the dependencies are registered as a InjectableScope.Instance and are used with syncInject.
|
|
941
|
-
|
|
942
|
-
Please use inject instead of syncInject to load those dependencies.`);
|
|
943
|
-
throw new import_common.NaviosException(
|
|
944
|
-
`[ServiceLocator] Service ${target.name} cannot be instantiated.`
|
|
945
|
-
);
|
|
946
|
-
}
|
|
947
|
-
return instance;
|
|
948
|
-
}
|
|
949
|
-
|
|
950
|
-
// packages/core/src/service-locator/decorators/injectable.decorator.mts
|
|
951
|
-
var InjectableType = /* @__PURE__ */ ((InjectableType2) => {
|
|
952
|
-
InjectableType2["Class"] = "Class";
|
|
953
|
-
InjectableType2["Factory"] = "Factory";
|
|
954
|
-
return InjectableType2;
|
|
955
|
-
})(InjectableType || {});
|
|
956
|
-
var InjectableTokenMeta = Symbol.for("InjectableTokenMeta");
|
|
957
|
-
function Injectable({
|
|
958
|
-
scope = "Singleton" /* Singleton */,
|
|
959
|
-
type = "Class" /* Class */,
|
|
960
|
-
token
|
|
961
|
-
} = {}) {
|
|
962
|
-
return (target, context) => {
|
|
963
|
-
if (context.kind !== "class") {
|
|
964
|
-
throw new Error(
|
|
965
|
-
"[ServiceLocator] @Injectable decorator can only be used on classes."
|
|
966
|
-
);
|
|
967
|
-
}
|
|
968
|
-
let injectableToken = token ?? InjectionToken.create(target);
|
|
969
|
-
const locator = getServiceLocator();
|
|
970
|
-
if (type === "Class" /* Class */) {
|
|
971
|
-
locator.registerAbstractFactory(
|
|
972
|
-
injectableToken,
|
|
973
|
-
async (ctx) => resolveService(ctx, target),
|
|
974
|
-
scope
|
|
975
|
-
);
|
|
976
|
-
} else if (type === "Factory" /* Factory */) {
|
|
977
|
-
locator.registerAbstractFactory(
|
|
978
|
-
injectableToken,
|
|
979
|
-
async (ctx, args) => {
|
|
980
|
-
const builder = await resolveService(ctx, target);
|
|
981
|
-
if (typeof builder.create !== "function") {
|
|
982
|
-
throw new import_common2.NaviosException(
|
|
983
|
-
`[ServiceLocator] Factory ${target.name} does not implement the create method.`
|
|
984
|
-
);
|
|
985
|
-
}
|
|
986
|
-
return builder.create(ctx, args);
|
|
987
|
-
},
|
|
988
|
-
scope
|
|
989
|
-
);
|
|
990
|
-
}
|
|
991
|
-
target[InjectableTokenMeta] = injectableToken;
|
|
992
|
-
return target;
|
|
993
|
-
};
|
|
994
|
-
}
|
|
995
|
-
|
|
996
|
-
// packages/core/src/service-locator/decorators/get-injectable-token.mts
|
|
997
|
-
function getInjectableToken(target) {
|
|
998
|
-
const token = target[InjectableTokenMeta];
|
|
999
|
-
if (!token) {
|
|
1000
|
-
throw new Error(
|
|
1001
|
-
`[ServiceLocator] Class ${target.name} is not decorated with @Injectable.`
|
|
1002
|
-
);
|
|
1003
|
-
}
|
|
1004
|
-
return token;
|
|
1005
|
-
}
|
|
1006
|
-
|
|
1007
|
-
// packages/core/src/service-locator/event-emitter.mts
|
|
1008
|
-
var EventEmitter = class {
|
|
1009
|
-
listeners = /* @__PURE__ */ new Map();
|
|
1010
|
-
on(event, listener) {
|
|
1011
|
-
if (!this.listeners.has(event)) {
|
|
1012
|
-
this.listeners.set(event, /* @__PURE__ */ new Set());
|
|
1013
|
-
}
|
|
1014
|
-
this.listeners.get(event).add(listener);
|
|
1015
|
-
return () => {
|
|
1016
|
-
this.off(event, listener);
|
|
1017
|
-
};
|
|
1018
|
-
}
|
|
1019
|
-
off(event, listener) {
|
|
1020
|
-
if (!this.listeners.has(event)) {
|
|
1021
|
-
return;
|
|
1022
|
-
}
|
|
1023
|
-
this.listeners.get(event).delete(listener);
|
|
1024
|
-
if (this.listeners.get(event).size === 0) {
|
|
1025
|
-
this.listeners.delete(event);
|
|
1026
|
-
}
|
|
1027
|
-
}
|
|
1028
|
-
once(event, listener) {
|
|
1029
|
-
const off = this.on(event, (...args) => {
|
|
1030
|
-
off();
|
|
1031
|
-
listener(...args);
|
|
1032
|
-
});
|
|
1033
|
-
return off;
|
|
1034
|
-
}
|
|
1035
|
-
async emit(event, ...args) {
|
|
1036
|
-
if (!this.listeners.has(event)) {
|
|
1037
|
-
return;
|
|
1038
|
-
}
|
|
1039
|
-
return Promise.all(Array.from(this.listeners.get(event)).map((listener) => listener(...args)));
|
|
1040
|
-
}
|
|
1041
|
-
addChannel(ns, event, target) {
|
|
1042
|
-
return this.on(event, (...args) => target.emit(ns, event, ...args));
|
|
1043
|
-
}
|
|
1044
|
-
};
|
|
1045
|
-
|
|
1046
|
-
// packages/core/src/service-locator/inject.mts
|
|
1047
|
-
function inject(token, args) {
|
|
1048
|
-
let realToken = token;
|
|
1049
|
-
if (!(token instanceof InjectionToken)) {
|
|
1050
|
-
realToken = getInjectableToken(token);
|
|
1051
|
-
}
|
|
1052
|
-
return getServiceLocator().getOrThrowInstance(realToken, args);
|
|
1053
|
-
}
|
|
1054
|
-
|
|
1055
|
-
// packages/core/src/service-locator/override.mts
|
|
1056
|
-
function override(token, target) {
|
|
1057
|
-
const serviceLocator2 = getServiceLocator();
|
|
1058
|
-
const originalDefinition = serviceLocator2["abstractFactories"].get(token);
|
|
1059
|
-
serviceLocator2.registerAbstractFactory(token, async (ctx, args) => {
|
|
1060
|
-
const builder = new target();
|
|
1061
|
-
return builder.create(ctx, args);
|
|
1062
|
-
});
|
|
1063
|
-
return () => {
|
|
1064
|
-
if (originalDefinition) {
|
|
1065
|
-
serviceLocator2.registerAbstractFactory(token, originalDefinition);
|
|
1066
|
-
}
|
|
1067
|
-
};
|
|
1068
|
-
}
|
|
159
|
+
// packages/core/src/adapters/endpoint-adapter.service.mts
|
|
160
|
+
var import_di2 = require("@navios/di");
|
|
1069
161
|
|
|
1070
162
|
// packages/core/src/adapters/stream-adapter.service.mts
|
|
1071
|
-
var
|
|
163
|
+
var import_di = require("@navios/di");
|
|
164
|
+
var StreamAdapterToken = import_di.InjectionToken.create(
|
|
1072
165
|
Symbol.for("StreamAdapterService")
|
|
1073
166
|
);
|
|
1074
167
|
var _StreamAdapterService_decorators, _init;
|
|
1075
|
-
_StreamAdapterService_decorators = [Injectable({
|
|
168
|
+
_StreamAdapterService_decorators = [(0, import_di.Injectable)({
|
|
1076
169
|
token: StreamAdapterToken
|
|
1077
170
|
})];
|
|
1078
171
|
var StreamAdapterService = class {
|
|
@@ -1115,7 +208,7 @@ var StreamAdapterService = class {
|
|
|
1115
208
|
return argument;
|
|
1116
209
|
};
|
|
1117
210
|
return async function(request, reply) {
|
|
1118
|
-
const controllerInstance = await inject(controller);
|
|
211
|
+
const controllerInstance = await (0, import_di.inject)(controller);
|
|
1119
212
|
const argument = await formatArguments(request);
|
|
1120
213
|
await controllerInstance[handlerMetadata.classMethod](argument, reply);
|
|
1121
214
|
};
|
|
@@ -1137,11 +230,11 @@ StreamAdapterService = __decorateElement(_init, 0, "StreamAdapterService", _Stre
|
|
|
1137
230
|
__runInitializers(_init, 1, StreamAdapterService);
|
|
1138
231
|
|
|
1139
232
|
// packages/core/src/adapters/endpoint-adapter.service.mts
|
|
1140
|
-
var EndpointAdapterToken = InjectionToken.create(
|
|
233
|
+
var EndpointAdapterToken = import_di2.InjectionToken.create(
|
|
1141
234
|
Symbol.for("EndpointAdapterService")
|
|
1142
235
|
);
|
|
1143
236
|
var _EndpointAdapterService_decorators, _init2, _a;
|
|
1144
|
-
_EndpointAdapterService_decorators = [Injectable({
|
|
237
|
+
_EndpointAdapterService_decorators = [(0, import_di2.Injectable)({
|
|
1145
238
|
token: EndpointAdapterToken
|
|
1146
239
|
})];
|
|
1147
240
|
var EndpointAdapterService = class extends (_a = StreamAdapterService) {
|
|
@@ -1174,7 +267,7 @@ var EndpointAdapterService = class extends (_a = StreamAdapterService) {
|
|
|
1174
267
|
return argument;
|
|
1175
268
|
};
|
|
1176
269
|
return async function(request, reply) {
|
|
1177
|
-
const controllerInstance = await inject(controller);
|
|
270
|
+
const controllerInstance = await (0, import_di2.inject)(controller);
|
|
1178
271
|
const argument = await formatArguments(request);
|
|
1179
272
|
const result = await controllerInstance[handlerMetadata.classMethod](argument);
|
|
1180
273
|
reply.status(handlerMetadata.successStatusCode).headers(handlerMetadata.headers).send(result);
|
|
@@ -1186,12 +279,13 @@ EndpointAdapterService = __decorateElement(_init2, 0, "EndpointAdapterService",
|
|
|
1186
279
|
__runInitializers(_init2, 1, EndpointAdapterService);
|
|
1187
280
|
|
|
1188
281
|
// packages/core/src/adapters/multipart-adapter.service.mts
|
|
1189
|
-
var
|
|
1190
|
-
var
|
|
282
|
+
var import_di3 = require("@navios/di");
|
|
283
|
+
var import_zod = require("zod");
|
|
284
|
+
var MultipartAdapterToken = import_di3.InjectionToken.create(
|
|
1191
285
|
Symbol.for("MultipartAdapterService")
|
|
1192
286
|
);
|
|
1193
287
|
var _MultipartAdapterService_decorators, _init3, _a2;
|
|
1194
|
-
_MultipartAdapterService_decorators = [Injectable({
|
|
288
|
+
_MultipartAdapterService_decorators = [(0, import_di3.Injectable)({
|
|
1195
289
|
token: MultipartAdapterToken
|
|
1196
290
|
})];
|
|
1197
291
|
var MultipartAdapterService = class extends (_a2 = EndpointAdapterService) {
|
|
@@ -1246,15 +340,15 @@ var MultipartAdapterService = class extends (_a2 = EndpointAdapterService) {
|
|
|
1246
340
|
return Object.keys(shape).reduce(
|
|
1247
341
|
(target, key) => {
|
|
1248
342
|
let schema = shape[key];
|
|
1249
|
-
const isOptional = schema instanceof
|
|
343
|
+
const isOptional = schema instanceof import_zod.ZodOptional;
|
|
1250
344
|
if (isOptional) {
|
|
1251
345
|
schema = schema.unwrap();
|
|
1252
346
|
}
|
|
1253
|
-
const isArray = schema instanceof
|
|
347
|
+
const isArray = schema instanceof import_zod.ZodArray;
|
|
1254
348
|
if (isArray) {
|
|
1255
349
|
schema = schema.element;
|
|
1256
350
|
}
|
|
1257
|
-
const isObject2 = schema instanceof
|
|
351
|
+
const isObject2 = schema instanceof import_zod.ZodObject;
|
|
1258
352
|
return {
|
|
1259
353
|
...target,
|
|
1260
354
|
[key]: {
|
|
@@ -1296,7 +390,8 @@ function envString(key, defaultValue) {
|
|
|
1296
390
|
}
|
|
1297
391
|
|
|
1298
392
|
// packages/core/src/config/config.provider.mts
|
|
1299
|
-
var
|
|
393
|
+
var import_di14 = require("@navios/di");
|
|
394
|
+
var import_zod3 = require("zod");
|
|
1300
395
|
|
|
1301
396
|
// packages/core/src/logger/utils/cli-colors.util.mts
|
|
1302
397
|
var isColorAllowed = () => !process.env.NO_COLOR;
|
|
@@ -1395,13 +490,21 @@ var isSymbol = (val) => typeof val === "symbol";
|
|
|
1395
490
|
|
|
1396
491
|
// packages/core/src/logger/console-logger.service.mts
|
|
1397
492
|
var import_util = require("util");
|
|
493
|
+
var import_di11 = require("@navios/di");
|
|
1398
494
|
|
|
1399
495
|
// packages/core/src/tokens/application.token.mts
|
|
496
|
+
var import_di4 = require("@navios/di");
|
|
1400
497
|
var ApplicationInjectionToken = "ApplicationInjectionToken";
|
|
1401
|
-
var Application = InjectionToken.create(
|
|
498
|
+
var Application = import_di4.InjectionToken.create(
|
|
1402
499
|
ApplicationInjectionToken
|
|
1403
500
|
);
|
|
1404
501
|
|
|
502
|
+
// packages/core/src/tokens/execution-context.token.mts
|
|
503
|
+
var import_di8 = require("@navios/di");
|
|
504
|
+
|
|
505
|
+
// packages/core/src/services/controller-adapter.service.mts
|
|
506
|
+
var import_di6 = require("@navios/di");
|
|
507
|
+
|
|
1405
508
|
// packages/core/src/metadata/handler.metadata.mts
|
|
1406
509
|
var EndpointMetadataKey = Symbol("EndpointMetadataKey");
|
|
1407
510
|
function getAllEndpointMetadata(context) {
|
|
@@ -1557,6 +660,9 @@ var ExecutionContext = class {
|
|
|
1557
660
|
}
|
|
1558
661
|
};
|
|
1559
662
|
|
|
663
|
+
// packages/core/src/services/guard-runner.service.mts
|
|
664
|
+
var import_di5 = require("@navios/di");
|
|
665
|
+
|
|
1560
666
|
// packages/core/src/exceptions/http.exception.mts
|
|
1561
667
|
var HttpException = class {
|
|
1562
668
|
constructor(statusCode, response, error) {
|
|
@@ -1612,12 +718,12 @@ var ConflictException = class extends HttpException {
|
|
|
1612
718
|
|
|
1613
719
|
// packages/core/src/services/guard-runner.service.mts
|
|
1614
720
|
var _GuardRunnerService_decorators, _init4;
|
|
1615
|
-
_GuardRunnerService_decorators = [Injectable()];
|
|
721
|
+
_GuardRunnerService_decorators = [(0, import_di5.Injectable)()];
|
|
1616
722
|
var GuardRunnerService = class {
|
|
1617
723
|
async runGuards(allGuards, executionContext) {
|
|
1618
724
|
let canActivate = true;
|
|
1619
725
|
for (const guard of Array.from(allGuards).reverse()) {
|
|
1620
|
-
const guardInstance = await inject(
|
|
726
|
+
const guardInstance = await (0, import_di5.inject)(
|
|
1621
727
|
guard
|
|
1622
728
|
);
|
|
1623
729
|
if (!guardInstance.canActivate) {
|
|
@@ -1680,10 +786,10 @@ __runInitializers(_init4, 1, GuardRunnerService);
|
|
|
1680
786
|
|
|
1681
787
|
// packages/core/src/services/controller-adapter.service.mts
|
|
1682
788
|
var _ControllerAdapterService_decorators, _init5;
|
|
1683
|
-
_ControllerAdapterService_decorators = [Injectable()];
|
|
789
|
+
_ControllerAdapterService_decorators = [(0, import_di6.Injectable)()];
|
|
1684
790
|
var _ControllerAdapterService = class _ControllerAdapterService {
|
|
1685
|
-
guardRunner = syncInject(GuardRunnerService);
|
|
1686
|
-
logger = syncInject(Logger, {
|
|
791
|
+
guardRunner = (0, import_di6.syncInject)(GuardRunnerService);
|
|
792
|
+
logger = (0, import_di6.syncInject)(Logger, {
|
|
1687
793
|
context: _ControllerAdapterService.name
|
|
1688
794
|
});
|
|
1689
795
|
async setupController(controller, instance, moduleMetadata) {
|
|
@@ -1696,7 +802,7 @@ var _ControllerAdapterService = class _ControllerAdapterService {
|
|
|
1696
802
|
`[Navios] Malformed Endpoint ${controller.name}:${classMethod}`
|
|
1697
803
|
);
|
|
1698
804
|
}
|
|
1699
|
-
const adapter = await inject(
|
|
805
|
+
const adapter = await (0, import_di6.inject)(
|
|
1700
806
|
adapterToken
|
|
1701
807
|
);
|
|
1702
808
|
const executionContext = new ExecutionContext(
|
|
@@ -1749,11 +855,11 @@ var _ControllerAdapterService = class _ControllerAdapterService {
|
|
|
1749
855
|
) : void 0;
|
|
1750
856
|
}
|
|
1751
857
|
wrapHandler(executionContext, handler) {
|
|
1752
|
-
const locator =
|
|
858
|
+
const locator = (0, import_di6.getGlobalServiceLocator)();
|
|
1753
859
|
return async (request, reply) => {
|
|
1754
|
-
locator.
|
|
1755
|
-
locator.
|
|
1756
|
-
locator.
|
|
860
|
+
locator.storeInstance(request, Request);
|
|
861
|
+
locator.storeInstance(reply, Reply);
|
|
862
|
+
locator.storeInstance(executionContext, ExecutionContextToken);
|
|
1757
863
|
executionContext.provideRequest(request);
|
|
1758
864
|
executionContext.provideReply(reply);
|
|
1759
865
|
try {
|
|
@@ -1776,10 +882,11 @@ __runInitializers(_init5, 1, _ControllerAdapterService);
|
|
|
1776
882
|
var ControllerAdapterService = _ControllerAdapterService;
|
|
1777
883
|
|
|
1778
884
|
// packages/core/src/services/module-loader.service.mts
|
|
885
|
+
var import_di7 = require("@navios/di");
|
|
1779
886
|
var _ModuleLoaderService_decorators, _init6;
|
|
1780
|
-
_ModuleLoaderService_decorators = [Injectable()];
|
|
887
|
+
_ModuleLoaderService_decorators = [(0, import_di7.Injectable)()];
|
|
1781
888
|
var _ModuleLoaderService = class _ModuleLoaderService {
|
|
1782
|
-
logger = syncInject(Logger, {
|
|
889
|
+
logger = (0, import_di7.syncInject)(Logger, {
|
|
1783
890
|
context: _ModuleLoaderService.name
|
|
1784
891
|
});
|
|
1785
892
|
modulesMetadata = /* @__PURE__ */ new Map();
|
|
@@ -1807,7 +914,7 @@ var _ModuleLoaderService = class _ModuleLoaderService {
|
|
|
1807
914
|
async (importedModule) => this.traverseModules(importedModule, metadata)
|
|
1808
915
|
);
|
|
1809
916
|
await Promise.all(loadingPromises);
|
|
1810
|
-
const instance = await inject(module2);
|
|
917
|
+
const instance = await (0, import_di7.inject)(module2);
|
|
1811
918
|
if (instance.onModuleInit) {
|
|
1812
919
|
await instance.onModuleInit();
|
|
1813
920
|
}
|
|
@@ -1845,17 +952,19 @@ var ModuleLoaderService = _ModuleLoaderService;
|
|
|
1845
952
|
|
|
1846
953
|
// packages/core/src/tokens/execution-context.token.mts
|
|
1847
954
|
var ExecutionContextInjectionToken = "ExecutionContextInjectionToken";
|
|
1848
|
-
var ExecutionContextToken = InjectionToken.create(
|
|
955
|
+
var ExecutionContextToken = import_di8.InjectionToken.create(
|
|
1849
956
|
ExecutionContextInjectionToken
|
|
1850
957
|
);
|
|
1851
958
|
|
|
1852
959
|
// packages/core/src/tokens/reply.token.mts
|
|
960
|
+
var import_di9 = require("@navios/di");
|
|
1853
961
|
var ReplyInjectionToken = "ReplyInjectionToken";
|
|
1854
|
-
var Reply = InjectionToken.create(ReplyInjectionToken);
|
|
962
|
+
var Reply = import_di9.InjectionToken.create(ReplyInjectionToken);
|
|
1855
963
|
|
|
1856
964
|
// packages/core/src/tokens/request.token.mts
|
|
965
|
+
var import_di10 = require("@navios/di");
|
|
1857
966
|
var RequestInjectionToken = "RequestInjectionToken";
|
|
1858
|
-
var Request = InjectionToken.create(
|
|
967
|
+
var Request = import_di10.InjectionToken.create(
|
|
1859
968
|
RequestInjectionToken
|
|
1860
969
|
);
|
|
1861
970
|
|
|
@@ -1878,7 +987,7 @@ var dateTimeFormatter = new Intl.DateTimeFormat(void 0, {
|
|
|
1878
987
|
month: "2-digit"
|
|
1879
988
|
});
|
|
1880
989
|
var _ConsoleLogger_decorators, _init7;
|
|
1881
|
-
_ConsoleLogger_decorators = [Injectable()];
|
|
990
|
+
_ConsoleLogger_decorators = [(0, import_di11.Injectable)()];
|
|
1882
991
|
var _ConsoleLogger = class _ConsoleLogger {
|
|
1883
992
|
/**
|
|
1884
993
|
* The options of the logger.
|
|
@@ -1917,7 +1026,7 @@ var _ConsoleLogger = class _ConsoleLogger {
|
|
|
1917
1026
|
this.originalContext = context;
|
|
1918
1027
|
}
|
|
1919
1028
|
if (opts == null ? void 0 : opts.requestId) {
|
|
1920
|
-
const locator =
|
|
1029
|
+
const locator = (0, import_di11.getGlobalServiceLocator)();
|
|
1921
1030
|
locator.getEventBus().on(locator.getInstanceIdentifier(Request, void 0), "create", () => {
|
|
1922
1031
|
const request = locator.getSyncInstance(Request, void 0);
|
|
1923
1032
|
this.requestId = (request == null ? void 0 : request.id) ?? null;
|
|
@@ -2237,9 +1346,11 @@ __runInitializers(_init7, 1, _ConsoleLogger);
|
|
|
2237
1346
|
var ConsoleLogger = _ConsoleLogger;
|
|
2238
1347
|
|
|
2239
1348
|
// packages/core/src/logger/logger.factory.mts
|
|
2240
|
-
var
|
|
1349
|
+
var import_di13 = require("@navios/di");
|
|
1350
|
+
var import_zod2 = require("zod");
|
|
2241
1351
|
|
|
2242
1352
|
// packages/core/src/logger/logger.service.mts
|
|
1353
|
+
var import_di12 = require("@navios/di");
|
|
2243
1354
|
var DEFAULT_LOGGER = new ConsoleLogger();
|
|
2244
1355
|
var dateTimeFormatter2 = new Intl.DateTimeFormat(void 0, {
|
|
2245
1356
|
year: "numeric",
|
|
@@ -2250,7 +1361,7 @@ var dateTimeFormatter2 = new Intl.DateTimeFormat(void 0, {
|
|
|
2250
1361
|
month: "2-digit"
|
|
2251
1362
|
});
|
|
2252
1363
|
var _LoggerInstance_decorators, _init8;
|
|
2253
|
-
_LoggerInstance_decorators = [Injectable()];
|
|
1364
|
+
_LoggerInstance_decorators = [(0, import_di12.Injectable)()];
|
|
2254
1365
|
var _LoggerInstance = class _LoggerInstance {
|
|
2255
1366
|
constructor(context, options = {}) {
|
|
2256
1367
|
this.context = context;
|
|
@@ -2364,16 +1475,16 @@ var LoggerInstance = _LoggerInstance;
|
|
|
2364
1475
|
|
|
2365
1476
|
// packages/core/src/logger/logger.factory.mts
|
|
2366
1477
|
var LoggerInjectionToken = "LoggerInjectionToken";
|
|
2367
|
-
var LoggerOptions =
|
|
2368
|
-
context:
|
|
2369
|
-
options:
|
|
2370
|
-
timestamp:
|
|
1478
|
+
var LoggerOptions = import_zod2.z.object({
|
|
1479
|
+
context: import_zod2.z.string().optional(),
|
|
1480
|
+
options: import_zod2.z.object({
|
|
1481
|
+
timestamp: import_zod2.z.boolean().optional()
|
|
2371
1482
|
}).optional()
|
|
2372
1483
|
}).optional();
|
|
2373
|
-
var Logger = InjectionToken.create(LoggerInjectionToken, LoggerOptions);
|
|
1484
|
+
var Logger = import_di13.InjectionToken.create(LoggerInjectionToken, LoggerOptions);
|
|
2374
1485
|
var _LoggerFactory_decorators, _init9;
|
|
2375
|
-
_LoggerFactory_decorators = [Injectable({
|
|
2376
|
-
type:
|
|
1486
|
+
_LoggerFactory_decorators = [(0, import_di13.Injectable)({
|
|
1487
|
+
type: import_di13.InjectableType.Factory,
|
|
2377
1488
|
token: Logger
|
|
2378
1489
|
})];
|
|
2379
1490
|
var LoggerFactory = class {
|
|
@@ -2438,7 +1549,7 @@ var PinoWrapper = class _PinoWrapper {
|
|
|
2438
1549
|
};
|
|
2439
1550
|
|
|
2440
1551
|
// packages/core/src/config/config.service.mts
|
|
2441
|
-
var
|
|
1552
|
+
var import_common = require("@navios/common");
|
|
2442
1553
|
var ConfigServiceInstance = class {
|
|
2443
1554
|
constructor(config = {}, logger) {
|
|
2444
1555
|
this.config = config;
|
|
@@ -2477,24 +1588,24 @@ var ConfigServiceInstance = class {
|
|
|
2477
1588
|
if (value === null) {
|
|
2478
1589
|
const message = errorMessage || `Configuration value for key "${String(key)}" is not defined`;
|
|
2479
1590
|
this.logger.error(message);
|
|
2480
|
-
throw new
|
|
1591
|
+
throw new import_common.NaviosException(message);
|
|
2481
1592
|
}
|
|
2482
1593
|
return value;
|
|
2483
1594
|
}
|
|
2484
1595
|
};
|
|
2485
1596
|
|
|
2486
1597
|
// packages/core/src/config/config.provider.mts
|
|
2487
|
-
var ConfigProviderOptions =
|
|
2488
|
-
load:
|
|
1598
|
+
var ConfigProviderOptions = import_zod3.z.object({
|
|
1599
|
+
load: import_zod3.z.function()
|
|
2489
1600
|
});
|
|
2490
|
-
var ConfigProvider = InjectionToken.create(ConfigServiceInstance, ConfigProviderOptions);
|
|
1601
|
+
var ConfigProvider = import_di14.InjectionToken.create(ConfigServiceInstance, ConfigProviderOptions);
|
|
2491
1602
|
var _ConfigProviderFactory_decorators, _init10;
|
|
2492
|
-
_ConfigProviderFactory_decorators = [Injectable({
|
|
1603
|
+
_ConfigProviderFactory_decorators = [(0, import_di14.Injectable)({
|
|
2493
1604
|
token: ConfigProvider,
|
|
2494
|
-
type:
|
|
1605
|
+
type: import_di14.InjectableType.Factory
|
|
2495
1606
|
})];
|
|
2496
1607
|
var ConfigProviderFactory = class {
|
|
2497
|
-
logger = syncInject(Logger, {
|
|
1608
|
+
logger = (0, import_di14.syncInject)(Logger, {
|
|
2498
1609
|
context: "ConfigService"
|
|
2499
1610
|
});
|
|
2500
1611
|
async create(ctx, args) {
|
|
@@ -2516,10 +1627,11 @@ _init10 = __decoratorStart(null);
|
|
|
2516
1627
|
ConfigProviderFactory = __decorateElement(_init10, 0, "ConfigProviderFactory", _ConfigProviderFactory_decorators, ConfigProviderFactory);
|
|
2517
1628
|
__runInitializers(_init10, 1, ConfigProviderFactory);
|
|
2518
1629
|
function provideConfig(options) {
|
|
2519
|
-
return InjectionToken.bound(ConfigProvider, options);
|
|
1630
|
+
return import_di14.InjectionToken.bound(ConfigProvider, options);
|
|
2520
1631
|
}
|
|
2521
1632
|
|
|
2522
1633
|
// packages/core/src/decorators/controller.decorator.mts
|
|
1634
|
+
var import_di15 = require("@navios/di");
|
|
2523
1635
|
function Controller({ guards } = {}) {
|
|
2524
1636
|
return function(target, context) {
|
|
2525
1637
|
if (context.kind !== "class") {
|
|
@@ -2527,7 +1639,7 @@ function Controller({ guards } = {}) {
|
|
|
2527
1639
|
"[Navios] @Controller decorator can only be used on classes."
|
|
2528
1640
|
);
|
|
2529
1641
|
}
|
|
2530
|
-
const token = InjectionToken.create(target);
|
|
1642
|
+
const token = import_di15.InjectionToken.create(target);
|
|
2531
1643
|
if (context.metadata) {
|
|
2532
1644
|
const controllerMetadata = getControllerMetadata(target, context);
|
|
2533
1645
|
if (guards) {
|
|
@@ -2536,15 +1648,15 @@ function Controller({ guards } = {}) {
|
|
|
2536
1648
|
}
|
|
2537
1649
|
}
|
|
2538
1650
|
}
|
|
2539
|
-
return Injectable({
|
|
1651
|
+
return (0, import_di15.Injectable)({
|
|
2540
1652
|
token,
|
|
2541
|
-
scope:
|
|
1653
|
+
scope: import_di15.InjectableScope.Instance
|
|
2542
1654
|
})(target, context);
|
|
2543
1655
|
};
|
|
2544
1656
|
}
|
|
2545
1657
|
|
|
2546
1658
|
// packages/core/src/decorators/endpoint.decorator.mts
|
|
2547
|
-
var
|
|
1659
|
+
var import_zod4 = require("zod");
|
|
2548
1660
|
function Endpoint(endpoint) {
|
|
2549
1661
|
return (target, context) => {
|
|
2550
1662
|
if (typeof target !== "function") {
|
|
@@ -2579,13 +1691,13 @@ function Endpoint(endpoint) {
|
|
|
2579
1691
|
}
|
|
2580
1692
|
|
|
2581
1693
|
// packages/core/src/decorators/header.decorator.mts
|
|
2582
|
-
function Header(
|
|
1694
|
+
function Header(name, value) {
|
|
2583
1695
|
return (target, context) => {
|
|
2584
1696
|
if (context.kind !== "method") {
|
|
2585
1697
|
throw new Error("[Navios] Header decorator can only be used on methods.");
|
|
2586
1698
|
}
|
|
2587
1699
|
const metadata = getEndpointMetadata(target, context);
|
|
2588
|
-
metadata.headers[
|
|
1700
|
+
metadata.headers[name] = value;
|
|
2589
1701
|
return target;
|
|
2590
1702
|
};
|
|
2591
1703
|
}
|
|
@@ -2605,6 +1717,7 @@ function HttpCode(code) {
|
|
|
2605
1717
|
}
|
|
2606
1718
|
|
|
2607
1719
|
// packages/core/src/decorators/module.decorator.mts
|
|
1720
|
+
var import_di16 = require("@navios/di");
|
|
2608
1721
|
function Module({ controllers = [], imports = [], guards = [] } = {
|
|
2609
1722
|
controllers: [],
|
|
2610
1723
|
imports: [],
|
|
@@ -2614,7 +1727,7 @@ function Module({ controllers = [], imports = [], guards = [] } = {
|
|
|
2614
1727
|
if (context.kind !== "class") {
|
|
2615
1728
|
throw new Error("[Navios] @Module decorator can only be used on classes.");
|
|
2616
1729
|
}
|
|
2617
|
-
const token = InjectionToken.create(target);
|
|
1730
|
+
const token = import_di16.InjectionToken.create(target);
|
|
2618
1731
|
const moduleMetadata = getModuleMetadata(target, context);
|
|
2619
1732
|
for (const controller of controllers) {
|
|
2620
1733
|
moduleMetadata.controllers.add(controller);
|
|
@@ -2625,15 +1738,15 @@ function Module({ controllers = [], imports = [], guards = [] } = {
|
|
|
2625
1738
|
for (const guard of Array.from(guards).reverse()) {
|
|
2626
1739
|
moduleMetadata.guards.add(guard);
|
|
2627
1740
|
}
|
|
2628
|
-
return Injectable({
|
|
1741
|
+
return (0, import_di16.Injectable)({
|
|
2629
1742
|
token,
|
|
2630
|
-
scope:
|
|
1743
|
+
scope: import_di16.InjectableScope.Singleton
|
|
2631
1744
|
})(target, context);
|
|
2632
1745
|
};
|
|
2633
1746
|
}
|
|
2634
1747
|
|
|
2635
1748
|
// packages/core/src/decorators/multipart.decorator.mts
|
|
2636
|
-
var
|
|
1749
|
+
var import_zod5 = require("zod");
|
|
2637
1750
|
function Multipart(endpoint) {
|
|
2638
1751
|
return (target, context) => {
|
|
2639
1752
|
if (typeof target !== "function") {
|
|
@@ -2784,16 +1897,17 @@ var AttributeFactory = class {
|
|
|
2784
1897
|
};
|
|
2785
1898
|
|
|
2786
1899
|
// packages/core/src/navios.application.mts
|
|
1900
|
+
var import_di17 = require("@navios/di");
|
|
2787
1901
|
var import_cors = __toESM(require("@fastify/cors"), 1);
|
|
2788
1902
|
var import_multipart = __toESM(require("@fastify/multipart"), 1);
|
|
2789
1903
|
var import_fastify = require("fastify");
|
|
2790
1904
|
var import_fastify_type_provider_zod = require("fastify-type-provider-zod");
|
|
2791
1905
|
var _NaviosApplication_decorators, _init11;
|
|
2792
|
-
_NaviosApplication_decorators = [Injectable()];
|
|
1906
|
+
_NaviosApplication_decorators = [(0, import_di17.Injectable)()];
|
|
2793
1907
|
var _NaviosApplication = class _NaviosApplication {
|
|
2794
|
-
moduleLoader = syncInject(ModuleLoaderService);
|
|
2795
|
-
controllerAdapter = syncInject(ControllerAdapterService);
|
|
2796
|
-
logger = syncInject(Logger, {
|
|
1908
|
+
moduleLoader = (0, import_di17.syncInject)(ModuleLoaderService);
|
|
1909
|
+
controllerAdapter = (0, import_di17.syncInject)(ControllerAdapterService);
|
|
1910
|
+
logger = (0, import_di17.syncInject)(Logger, {
|
|
2797
1911
|
context: _NaviosApplication.name
|
|
2798
1912
|
});
|
|
2799
1913
|
server = null;
|
|
@@ -2814,7 +1928,7 @@ var _NaviosApplication = class _NaviosApplication {
|
|
|
2814
1928
|
await this.moduleLoader.loadModules(this.appModule);
|
|
2815
1929
|
this.server = await this.getFastifyInstance(this.options);
|
|
2816
1930
|
this.configureFastifyInstance(this.server);
|
|
2817
|
-
|
|
1931
|
+
(0, import_di17.getGlobalServiceLocator)().storeInstance(this.server, Application);
|
|
2818
1932
|
this.server.setValidatorCompiler(import_fastify_type_provider_zod.validatorCompiler);
|
|
2819
1933
|
this.server.setSerializerCompiler(import_fastify_type_provider_zod.serializerCompiler);
|
|
2820
1934
|
if (this.corsOptions) {
|
|
@@ -2838,7 +1952,7 @@ var _NaviosApplication = class _NaviosApplication {
|
|
|
2838
1952
|
}
|
|
2839
1953
|
} else {
|
|
2840
1954
|
fastifyOptions.loggerInstance = new PinoWrapper(
|
|
2841
|
-
await inject(Logger, {
|
|
1955
|
+
await (0, import_di17.inject)(Logger, {
|
|
2842
1956
|
context: "FastifyAdapter"
|
|
2843
1957
|
})
|
|
2844
1958
|
);
|
|
@@ -2848,7 +1962,7 @@ var _NaviosApplication = class _NaviosApplication {
|
|
|
2848
1962
|
return (0, import_fastify.fastify)({
|
|
2849
1963
|
...options,
|
|
2850
1964
|
loggerInstance: new PinoWrapper(
|
|
2851
|
-
await inject(Logger, {
|
|
1965
|
+
await (0, import_di17.inject)(Logger, {
|
|
2852
1966
|
context: "FastifyAdapter"
|
|
2853
1967
|
})
|
|
2854
1968
|
)
|
|
@@ -2959,9 +2073,10 @@ __runInitializers(_init11, 1, _NaviosApplication);
|
|
|
2959
2073
|
var NaviosApplication = _NaviosApplication;
|
|
2960
2074
|
|
|
2961
2075
|
// packages/core/src/navios.factory.mts
|
|
2076
|
+
var import_di18 = require("@navios/di");
|
|
2962
2077
|
var NaviosFactory = class {
|
|
2963
2078
|
static async create(appModule, options = {}) {
|
|
2964
|
-
const app = await inject(NaviosApplication);
|
|
2079
|
+
const app = await (0, import_di18.inject)(NaviosApplication);
|
|
2965
2080
|
this.registerLoggerConfiguration(options);
|
|
2966
2081
|
app.setup(appModule, options);
|
|
2967
2082
|
return app;
|
|
@@ -2981,7 +2096,6 @@ var NaviosFactory = class {
|
|
|
2981
2096
|
Application,
|
|
2982
2097
|
AttributeFactory,
|
|
2983
2098
|
BadRequestException,
|
|
2984
|
-
BoundInjectionToken,
|
|
2985
2099
|
ConfigProvider,
|
|
2986
2100
|
ConfigProviderFactory,
|
|
2987
2101
|
ConfigProviderOptions,
|
|
@@ -2995,27 +2109,14 @@ var NaviosFactory = class {
|
|
|
2995
2109
|
EndpointAdapterService,
|
|
2996
2110
|
EndpointAdapterToken,
|
|
2997
2111
|
EndpointMetadataKey,
|
|
2998
|
-
ErrorsEnum,
|
|
2999
|
-
EventEmitter,
|
|
3000
2112
|
ExecutionContext,
|
|
3001
2113
|
ExecutionContextInjectionToken,
|
|
3002
2114
|
ExecutionContextToken,
|
|
3003
|
-
FactoryInjectionToken,
|
|
3004
|
-
FactoryNotFound,
|
|
3005
|
-
FactoryTokenNotResolved,
|
|
3006
2115
|
ForbiddenException,
|
|
3007
2116
|
GuardRunnerService,
|
|
3008
2117
|
Header,
|
|
3009
2118
|
HttpCode,
|
|
3010
2119
|
HttpException,
|
|
3011
|
-
Injectable,
|
|
3012
|
-
InjectableScope,
|
|
3013
|
-
InjectableTokenMeta,
|
|
3014
|
-
InjectableType,
|
|
3015
|
-
InjectionToken,
|
|
3016
|
-
InstanceDestroying,
|
|
3017
|
-
InstanceExpired,
|
|
3018
|
-
InstanceNotFound,
|
|
3019
2120
|
InternalServerErrorException,
|
|
3020
2121
|
LOG_LEVELS,
|
|
3021
2122
|
Logger,
|
|
@@ -3035,16 +2136,10 @@ var NaviosFactory = class {
|
|
|
3035
2136
|
PinoWrapper,
|
|
3036
2137
|
Reply,
|
|
3037
2138
|
Request,
|
|
3038
|
-
ServiceLocator,
|
|
3039
|
-
ServiceLocatorEventBus,
|
|
3040
|
-
ServiceLocatorInstanceHolderKind,
|
|
3041
|
-
ServiceLocatorInstanceHolderStatus,
|
|
3042
|
-
ServiceLocatorManager,
|
|
3043
2139
|
Stream,
|
|
3044
2140
|
StreamAdapterService,
|
|
3045
2141
|
StreamAdapterToken,
|
|
3046
2142
|
UnauthorizedException,
|
|
3047
|
-
UnknownError,
|
|
3048
2143
|
UseGuards,
|
|
3049
2144
|
addLeadingSlash,
|
|
3050
2145
|
clc,
|
|
@@ -3056,12 +2151,9 @@ var NaviosFactory = class {
|
|
|
3056
2151
|
getAllEndpointMetadata,
|
|
3057
2152
|
getControllerMetadata,
|
|
3058
2153
|
getEndpointMetadata,
|
|
3059
|
-
getInjectableToken,
|
|
3060
2154
|
getModuleMetadata,
|
|
3061
|
-
getServiceLocator,
|
|
3062
2155
|
hasControllerMetadata,
|
|
3063
2156
|
hasModuleMetadata,
|
|
3064
|
-
inject,
|
|
3065
2157
|
isConstructor,
|
|
3066
2158
|
isEmpty,
|
|
3067
2159
|
isFunction,
|
|
@@ -3075,12 +2167,8 @@ var NaviosFactory = class {
|
|
|
3075
2167
|
isSymbol,
|
|
3076
2168
|
isUndefined,
|
|
3077
2169
|
normalizePath,
|
|
3078
|
-
override,
|
|
3079
2170
|
provideConfig,
|
|
3080
|
-
provideServiceLocator,
|
|
3081
|
-
resolveService,
|
|
3082
|
-
setPromiseCollector,
|
|
3083
2171
|
stripEndSlash,
|
|
3084
|
-
|
|
3085
|
-
|
|
2172
|
+
yellow,
|
|
2173
|
+
...require("@navios/di")
|
|
3086
2174
|
});
|