@vercube/core 0.0.23 → 0.0.24
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/index.d.mts +14 -1
- package/dist/index.mjs +75 -143
- package/package.json +7 -6
package/dist/index.d.mts
CHANGED
|
@@ -2,6 +2,7 @@ import { Container } from "@vercube/di";
|
|
|
2
2
|
import { FastResponse, ServerPlugin } from "srvx";
|
|
3
3
|
import { LoggerTypes } from "@vercube/logger";
|
|
4
4
|
import { DotenvOptions } from "c12";
|
|
5
|
+
import { RolldownPluginOption } from "rolldown";
|
|
5
6
|
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
6
7
|
|
|
7
8
|
//#region src/Services/Plugins/BasePlugin.d.ts
|
|
@@ -70,11 +71,23 @@ declare namespace ConfigTypes {
|
|
|
70
71
|
/**
|
|
71
72
|
* The entry point file for the application build.
|
|
72
73
|
*/
|
|
73
|
-
entry?: string;
|
|
74
|
+
entry?: string | string[];
|
|
74
75
|
/**
|
|
75
76
|
* Defines to pass to the build.
|
|
76
77
|
*/
|
|
77
78
|
define?: Record<string, string>;
|
|
79
|
+
/**
|
|
80
|
+
* Path to the tsconfig file to use for the build.
|
|
81
|
+
*/
|
|
82
|
+
tsconfig?: string;
|
|
83
|
+
/**
|
|
84
|
+
* Flag to indicate if declaration files should be generated.
|
|
85
|
+
*/
|
|
86
|
+
dts?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Additional plugins to use in the bundler.
|
|
89
|
+
*/
|
|
90
|
+
plugins?: RolldownPluginOption[];
|
|
78
91
|
/**
|
|
79
92
|
* Output configuration for build artifacts.
|
|
80
93
|
*/
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import "node:module";
|
|
2
1
|
import { BaseDecorator, Container, Inject, InjectOptional, createDecorator, initializeContainer } from "@vercube/di";
|
|
3
2
|
import { FastResponse, serve } from "srvx";
|
|
4
3
|
import { addRoute, createRouter, findRoute } from "rou3";
|
|
@@ -10,32 +9,6 @@ import { ConsoleProvider } from "@vercube/logger/drivers/ConsoleProvider";
|
|
|
10
9
|
import { loadConfig, setupDotenv } from "c12";
|
|
11
10
|
import { defu } from "defu";
|
|
12
11
|
|
|
13
|
-
//#region rolldown:runtime
|
|
14
|
-
var __create = Object.create;
|
|
15
|
-
var __defProp = Object.defineProperty;
|
|
16
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
17
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
18
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
19
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
20
|
-
var __commonJS = (cb, mod) => function() {
|
|
21
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
22
|
-
};
|
|
23
|
-
var __copyProps = (to, from, except, desc) => {
|
|
24
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
25
|
-
key = keys[i];
|
|
26
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
27
|
-
get: ((k) => from[k]).bind(null, key),
|
|
28
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
return to;
|
|
32
|
-
};
|
|
33
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
34
|
-
value: mod,
|
|
35
|
-
enumerable: true
|
|
36
|
-
}) : target, mod));
|
|
37
|
-
|
|
38
|
-
//#endregion
|
|
39
12
|
//#region src/Services/Config/RuntimeConfig.ts
|
|
40
13
|
/**
|
|
41
14
|
* RuntimeConfig class manages the runtime configuration for the Vercube application.
|
|
@@ -171,7 +144,7 @@ var BadRequestError = class BadRequestError extends HttpError {
|
|
|
171
144
|
*/
|
|
172
145
|
async function resolveRequestBody(event) {
|
|
173
146
|
const text = await event.request.text();
|
|
174
|
-
if (!text) return
|
|
147
|
+
if (!text) return;
|
|
175
148
|
try {
|
|
176
149
|
return JSON.parse(text);
|
|
177
150
|
} catch {
|
|
@@ -208,8 +181,7 @@ function getRequestHeaders(event) {
|
|
|
208
181
|
* @returns The value of the query parameter if found, null otherwise
|
|
209
182
|
*/
|
|
210
183
|
function resolveQueryParam(name, event) {
|
|
211
|
-
|
|
212
|
-
return url.searchParams.get(name);
|
|
184
|
+
return new URL(event.request.url).searchParams.get(name);
|
|
213
185
|
}
|
|
214
186
|
/**
|
|
215
187
|
* Resolves all query parameters from the URL of a router event
|
|
@@ -313,8 +285,7 @@ var MetadataResolver = class {
|
|
|
313
285
|
* @public
|
|
314
286
|
*/
|
|
315
287
|
resolveMiddlewares(ctx, propertyName) {
|
|
316
|
-
|
|
317
|
-
return middlewares.sort((a) => a.target === "__global__" ? -1 : 1);
|
|
288
|
+
return (ctx?.__metadata?.__middlewares?.filter((m) => m.target === "__global__" || m.target === propertyName) ?? []).sort((a) => a.target === "__global__" ? -1 : 1);
|
|
318
289
|
}
|
|
319
290
|
};
|
|
320
291
|
|
|
@@ -364,20 +335,16 @@ var GlobalMiddlewareRegistry = class {
|
|
|
364
335
|
};
|
|
365
336
|
|
|
366
337
|
//#endregion
|
|
367
|
-
//#region
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
}
|
|
375
|
-
module.exports = __decorate, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
376
|
-
}) });
|
|
338
|
+
//#region \0@oxc-project+runtime@0.90.0/helpers/decorate.js
|
|
339
|
+
function __decorate(decorators, target, key, desc) {
|
|
340
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
341
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
342
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
343
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
344
|
+
}
|
|
377
345
|
|
|
378
346
|
//#endregion
|
|
379
347
|
//#region src/Services/Router/RequestHandler.ts
|
|
380
|
-
var import_decorate$17 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
381
348
|
/**
|
|
382
349
|
* Handles HTTP requests by preparing and executing route handlers with their associated middlewares
|
|
383
350
|
*
|
|
@@ -405,8 +372,7 @@ var RequestHandler = class {
|
|
|
405
372
|
const method = this.gMetadataResolver.resolveMethod(prototype, propertyName);
|
|
406
373
|
const middlewares = this.gMetadataResolver.resolveMiddlewares(prototype, propertyName);
|
|
407
374
|
const globalMiddlewares = this.gGlobalMiddlewareRegistry.middlewares;
|
|
408
|
-
const
|
|
409
|
-
const resolvedMiddlewares = uniqueMiddlewares.map((m) => ({
|
|
375
|
+
const resolvedMiddlewares = [...middlewares, ...globalMiddlewares].filter((m, index, self) => self.findIndex((t) => t.middleware === m.middleware) === index).map((m) => ({
|
|
410
376
|
...m,
|
|
411
377
|
middleware: this.gContainer.resolve(m.middleware)
|
|
412
378
|
}));
|
|
@@ -476,12 +442,11 @@ var RequestHandler = class {
|
|
|
476
442
|
if (internalError instanceof Response) return internalError;
|
|
477
443
|
}
|
|
478
444
|
const body = fakeResponse?.body ?? JSON.stringify(handlerResponse);
|
|
479
|
-
|
|
445
|
+
return new Response(body, {
|
|
480
446
|
status: fakeResponse.status ?? 200,
|
|
481
447
|
statusText: fakeResponse.statusText ?? "OK",
|
|
482
448
|
headers: fakeResponse.headers
|
|
483
449
|
});
|
|
484
|
-
return response;
|
|
485
450
|
} catch (error) {
|
|
486
451
|
return this.gContainer.get(ErrorHandlerProvider).handleError(error);
|
|
487
452
|
}
|
|
@@ -512,9 +477,9 @@ var RequestHandler = class {
|
|
|
512
477
|
return fakeResponse;
|
|
513
478
|
}
|
|
514
479
|
};
|
|
515
|
-
(
|
|
516
|
-
(
|
|
517
|
-
(
|
|
480
|
+
__decorate([Inject(MetadataResolver)], RequestHandler.prototype, "gMetadataResolver", void 0);
|
|
481
|
+
__decorate([Inject(Container)], RequestHandler.prototype, "gContainer", void 0);
|
|
482
|
+
__decorate([Inject(GlobalMiddlewareRegistry)], RequestHandler.prototype, "gGlobalMiddlewareRegistry", void 0);
|
|
518
483
|
|
|
519
484
|
//#endregion
|
|
520
485
|
//#region src/Hooks/Router/RouterAfterInitHook.ts
|
|
@@ -627,8 +592,7 @@ var HooksService = class {
|
|
|
627
592
|
const instance = new ClassConstructor();
|
|
628
593
|
if (data) for (const key of Object.keys(data)) {
|
|
629
594
|
const rawInstance = instance;
|
|
630
|
-
|
|
631
|
-
rawInstance[key] = rawData[key];
|
|
595
|
+
rawInstance[key] = data[key];
|
|
632
596
|
}
|
|
633
597
|
return instance;
|
|
634
598
|
}
|
|
@@ -636,7 +600,6 @@ var HooksService = class {
|
|
|
636
600
|
|
|
637
601
|
//#endregion
|
|
638
602
|
//#region src/Services/Router/Router.ts
|
|
639
|
-
var import_decorate$16 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
640
603
|
/**
|
|
641
604
|
* Router service responsible for managing application routes
|
|
642
605
|
*
|
|
@@ -689,12 +652,12 @@ var Router = class {
|
|
|
689
652
|
return findRoute(this.fRouterContext, route.method.toUpperCase(), url);
|
|
690
653
|
}
|
|
691
654
|
};
|
|
692
|
-
(
|
|
655
|
+
__decorate([Inject(HooksService)], Router.prototype, "gHooksService", void 0);
|
|
693
656
|
|
|
694
657
|
//#endregion
|
|
695
658
|
//#region src/Utils/Mine.ts
|
|
696
659
|
const mime = { getType(ext) {
|
|
697
|
-
|
|
660
|
+
return {
|
|
698
661
|
".html": "text/html",
|
|
699
662
|
".css": "text/css",
|
|
700
663
|
".js": "application/javascript",
|
|
@@ -705,8 +668,7 @@ const mime = { getType(ext) {
|
|
|
705
668
|
".gif": "image/gif",
|
|
706
669
|
".svg": "image/svg+xml",
|
|
707
670
|
".ico": "image/x-icon"
|
|
708
|
-
};
|
|
709
|
-
return types[ext] || null;
|
|
671
|
+
}[ext] || null;
|
|
710
672
|
} };
|
|
711
673
|
|
|
712
674
|
//#endregion
|
|
@@ -745,8 +707,7 @@ var StaticRequestHandler = class {
|
|
|
745
707
|
if (!dirs) return;
|
|
746
708
|
if (request.method !== "GET") return;
|
|
747
709
|
const url = new URL(request.url);
|
|
748
|
-
|
|
749
|
-
let relativePath = path;
|
|
710
|
+
let relativePath = normalize(url.pathname);
|
|
750
711
|
for (const dir of dirs) relativePath = relativePath.replace(dir, "");
|
|
751
712
|
for (const dir of dirs) {
|
|
752
713
|
const fullPath = join(process.cwd(), dir, relativePath);
|
|
@@ -785,7 +746,6 @@ var StaticRequestHandler = class {
|
|
|
785
746
|
|
|
786
747
|
//#endregion
|
|
787
748
|
//#region src/Services/HttpServer/HttpServer.ts
|
|
788
|
-
var import_decorate$15 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
789
749
|
/**
|
|
790
750
|
* HTTP server implementation for handling incoming web requests
|
|
791
751
|
*
|
|
@@ -890,10 +850,10 @@ var HttpServer = class {
|
|
|
890
850
|
}
|
|
891
851
|
}
|
|
892
852
|
};
|
|
893
|
-
(
|
|
894
|
-
(
|
|
895
|
-
(
|
|
896
|
-
(
|
|
853
|
+
__decorate([Inject(Container)], HttpServer.prototype, "gContainer", void 0);
|
|
854
|
+
__decorate([Inject(Router)], HttpServer.prototype, "gRouter", void 0);
|
|
855
|
+
__decorate([Inject(RequestHandler)], HttpServer.prototype, "gRequestHandler", void 0);
|
|
856
|
+
__decorate([Inject(StaticRequestHandler)], HttpServer.prototype, "gStaticRequestHandler", void 0);
|
|
897
857
|
|
|
898
858
|
//#endregion
|
|
899
859
|
//#region src/Services/Plugins/BasePlugin.ts
|
|
@@ -915,7 +875,6 @@ var BasePlugin = class {
|
|
|
915
875
|
|
|
916
876
|
//#endregion
|
|
917
877
|
//#region src/Services/Plugins/PluginsRegistry.ts
|
|
918
|
-
var import_decorate$14 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
919
878
|
var PluginsRegistry = class {
|
|
920
879
|
gContainer;
|
|
921
880
|
/** Holds the list of plugins */
|
|
@@ -951,11 +910,10 @@ var PluginsRegistry = class {
|
|
|
951
910
|
for (const { instance, options } of this.fPlugins.values()) await instance.use(app, options);
|
|
952
911
|
}
|
|
953
912
|
};
|
|
954
|
-
(
|
|
913
|
+
__decorate([Inject(Container)], PluginsRegistry.prototype, "gContainer", void 0);
|
|
955
914
|
|
|
956
915
|
//#endregion
|
|
957
916
|
//#region src/Common/App.ts
|
|
958
|
-
var import_decorate$13 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
959
917
|
/**
|
|
960
918
|
* Represents the main application class.
|
|
961
919
|
*/
|
|
@@ -1051,11 +1009,11 @@ var App = class {
|
|
|
1051
1009
|
await this.gPluginsRegistry.init(this);
|
|
1052
1010
|
}
|
|
1053
1011
|
};
|
|
1054
|
-
(
|
|
1055
|
-
(
|
|
1056
|
-
(
|
|
1057
|
-
(
|
|
1058
|
-
(
|
|
1012
|
+
__decorate([Inject(Router)], App.prototype, "gRouter", void 0);
|
|
1013
|
+
__decorate([Inject(PluginsRegistry)], App.prototype, "gPluginsRegistry", void 0);
|
|
1014
|
+
__decorate([Inject(HttpServer)], App.prototype, "gHttpServer", void 0);
|
|
1015
|
+
__decorate([Inject(StaticRequestHandler)], App.prototype, "gStaticRequestHandler", void 0);
|
|
1016
|
+
__decorate([Inject(RuntimeConfig)], App.prototype, "gRuntimeConfig", void 0);
|
|
1059
1017
|
|
|
1060
1018
|
//#endregion
|
|
1061
1019
|
//#region src/Errors/Http/InternalServerError.ts
|
|
@@ -1082,7 +1040,6 @@ var InternalServerError = class InternalServerError extends HttpError {
|
|
|
1082
1040
|
|
|
1083
1041
|
//#endregion
|
|
1084
1042
|
//#region src/Services/ErrorHandler/DefaultErrorHandlerProvider.ts
|
|
1085
|
-
var import_decorate$12 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1086
1043
|
/**
|
|
1087
1044
|
* Default error handler provider
|
|
1088
1045
|
*
|
|
@@ -1104,7 +1061,7 @@ var DefaultErrorHandlerProvider = class extends ErrorHandlerProvider {
|
|
|
1104
1061
|
return new FastResponse(JSON.stringify({ ...error?.cause ?? _internalError }, void 0, 2), { status });
|
|
1105
1062
|
}
|
|
1106
1063
|
};
|
|
1107
|
-
(
|
|
1064
|
+
__decorate([Inject(Logger)], DefaultErrorHandlerProvider.prototype, "gLogger", void 0);
|
|
1108
1065
|
|
|
1109
1066
|
//#endregion
|
|
1110
1067
|
//#region src/Services/Validation/ValidationProvider.ts
|
|
@@ -1266,7 +1223,6 @@ function defineConfig(config) {
|
|
|
1266
1223
|
|
|
1267
1224
|
//#endregion
|
|
1268
1225
|
//#region src/Middleware/ValidationMiddleware.ts
|
|
1269
|
-
var import_decorate$11 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1270
1226
|
/**
|
|
1271
1227
|
* Middleware for validating request data against a schema
|
|
1272
1228
|
* @class ValidationMiddleware
|
|
@@ -1299,8 +1255,8 @@ var ValidationMiddleware = class {
|
|
|
1299
1255
|
}
|
|
1300
1256
|
}
|
|
1301
1257
|
};
|
|
1302
|
-
(
|
|
1303
|
-
(
|
|
1258
|
+
__decorate([InjectOptional(Logger)], ValidationMiddleware.prototype, "gLogger", void 0);
|
|
1259
|
+
__decorate([InjectOptional(ValidationProvider)], ValidationMiddleware.prototype, "gValidationProvider", void 0);
|
|
1304
1260
|
|
|
1305
1261
|
//#endregion
|
|
1306
1262
|
//#region src/Utils/Utils.ts
|
|
@@ -1366,8 +1322,7 @@ var BodyDecorator = class extends BaseDecorator {
|
|
|
1366
1322
|
*/
|
|
1367
1323
|
created() {
|
|
1368
1324
|
const meta = initializeMetadata(this.prototype);
|
|
1369
|
-
|
|
1370
|
-
method.args.push({
|
|
1325
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
1371
1326
|
idx: this.propertyIndex,
|
|
1372
1327
|
type: "body",
|
|
1373
1328
|
validate: this.options?.validationSchema ? true : false,
|
|
@@ -1396,7 +1351,6 @@ function Body(options) {
|
|
|
1396
1351
|
|
|
1397
1352
|
//#endregion
|
|
1398
1353
|
//#region src/Decorators/Http/Connect.ts
|
|
1399
|
-
var import_decorate$10 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1400
1354
|
/**
|
|
1401
1355
|
* A decorator class for handling HTTP CONNECT requests.
|
|
1402
1356
|
*
|
|
@@ -1435,9 +1389,9 @@ var ConnectDecorator = class extends BaseDecorator {
|
|
|
1435
1389
|
});
|
|
1436
1390
|
}
|
|
1437
1391
|
};
|
|
1438
|
-
(
|
|
1439
|
-
(
|
|
1440
|
-
(
|
|
1392
|
+
__decorate([Inject(Router)], ConnectDecorator.prototype, "gRouter", void 0);
|
|
1393
|
+
__decorate([Inject(RequestHandler)], ConnectDecorator.prototype, "gRequestHandler", void 0);
|
|
1394
|
+
__decorate([Inject(MetadataResolver)], ConnectDecorator.prototype, "gMetadataResolver", void 0);
|
|
1441
1395
|
/**
|
|
1442
1396
|
* A factory function for creating a ConnectDecorator.
|
|
1443
1397
|
*
|
|
@@ -1474,7 +1428,6 @@ function Controller(path) {
|
|
|
1474
1428
|
|
|
1475
1429
|
//#endregion
|
|
1476
1430
|
//#region src/Decorators/Http/Delete.ts
|
|
1477
|
-
var import_decorate$9 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1478
1431
|
/**
|
|
1479
1432
|
* A decorator class for handling HTTP DELETE requests.
|
|
1480
1433
|
*
|
|
@@ -1513,9 +1466,9 @@ var DeleteDecorator = class extends BaseDecorator {
|
|
|
1513
1466
|
});
|
|
1514
1467
|
}
|
|
1515
1468
|
};
|
|
1516
|
-
(
|
|
1517
|
-
(
|
|
1518
|
-
(
|
|
1469
|
+
__decorate([Inject(Router)], DeleteDecorator.prototype, "gRouter", void 0);
|
|
1470
|
+
__decorate([Inject(RequestHandler)], DeleteDecorator.prototype, "gRequestHandler", void 0);
|
|
1471
|
+
__decorate([Inject(MetadataResolver)], DeleteDecorator.prototype, "gMetadataResolver", void 0);
|
|
1519
1472
|
/**
|
|
1520
1473
|
* A factory function for creating a DeleteDecorator.
|
|
1521
1474
|
*
|
|
@@ -1531,7 +1484,6 @@ function Delete(path) {
|
|
|
1531
1484
|
|
|
1532
1485
|
//#endregion
|
|
1533
1486
|
//#region src/Decorators/Http/Get.ts
|
|
1534
|
-
var import_decorate$8 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1535
1487
|
/**
|
|
1536
1488
|
* A decorator class for handling HTTP GET requests.
|
|
1537
1489
|
*
|
|
@@ -1570,9 +1522,9 @@ var GetDecorator = class extends BaseDecorator {
|
|
|
1570
1522
|
});
|
|
1571
1523
|
}
|
|
1572
1524
|
};
|
|
1573
|
-
(
|
|
1574
|
-
(
|
|
1575
|
-
(
|
|
1525
|
+
__decorate([Inject(Router)], GetDecorator.prototype, "gRouter", void 0);
|
|
1526
|
+
__decorate([Inject(RequestHandler)], GetDecorator.prototype, "gRequestHandler", void 0);
|
|
1527
|
+
__decorate([Inject(MetadataResolver)], GetDecorator.prototype, "gMetadataResolver", void 0);
|
|
1576
1528
|
/**
|
|
1577
1529
|
* A decorator function for handling HTTP GET requests.
|
|
1578
1530
|
*
|
|
@@ -1588,7 +1540,6 @@ function Get(path) {
|
|
|
1588
1540
|
|
|
1589
1541
|
//#endregion
|
|
1590
1542
|
//#region src/Decorators/Http/Head.ts
|
|
1591
|
-
var import_decorate$7 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1592
1543
|
/**
|
|
1593
1544
|
* A decorator class for handling HTTP HEAD requests.
|
|
1594
1545
|
*
|
|
@@ -1627,9 +1578,9 @@ var HeadDecorator = class extends BaseDecorator {
|
|
|
1627
1578
|
});
|
|
1628
1579
|
}
|
|
1629
1580
|
};
|
|
1630
|
-
(
|
|
1631
|
-
(
|
|
1632
|
-
(
|
|
1581
|
+
__decorate([Inject(Router)], HeadDecorator.prototype, "gRouter", void 0);
|
|
1582
|
+
__decorate([Inject(RequestHandler)], HeadDecorator.prototype, "gRequestHandler", void 0);
|
|
1583
|
+
__decorate([Inject(MetadataResolver)], HeadDecorator.prototype, "gMetadataResolver", void 0);
|
|
1633
1584
|
/**
|
|
1634
1585
|
* A factory function for creating a HeadDecorator.
|
|
1635
1586
|
*
|
|
@@ -1663,8 +1614,7 @@ var HeaderDecorator = class extends BaseDecorator {
|
|
|
1663
1614
|
*/
|
|
1664
1615
|
created() {
|
|
1665
1616
|
initializeMetadata(this.prototype);
|
|
1666
|
-
|
|
1667
|
-
method.args.push({
|
|
1617
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
1668
1618
|
idx: this.propertyIndex,
|
|
1669
1619
|
type: "header",
|
|
1670
1620
|
data: { name: this.options.name }
|
|
@@ -1705,8 +1655,7 @@ var HeadersDecorator = class extends BaseDecorator {
|
|
|
1705
1655
|
*/
|
|
1706
1656
|
created() {
|
|
1707
1657
|
initializeMetadata(this.prototype);
|
|
1708
|
-
|
|
1709
|
-
method.args.push({
|
|
1658
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
1710
1659
|
idx: this.propertyIndex,
|
|
1711
1660
|
type: "headers"
|
|
1712
1661
|
});
|
|
@@ -1726,7 +1675,6 @@ function Headers$1() {
|
|
|
1726
1675
|
|
|
1727
1676
|
//#endregion
|
|
1728
1677
|
//#region src/Decorators/Http/Options.ts
|
|
1729
|
-
var import_decorate$6 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1730
1678
|
/**
|
|
1731
1679
|
* A decorator class for handling HTTP OPTIONS requests.
|
|
1732
1680
|
*
|
|
@@ -1765,9 +1713,9 @@ var OptionsDecorator = class extends BaseDecorator {
|
|
|
1765
1713
|
});
|
|
1766
1714
|
}
|
|
1767
1715
|
};
|
|
1768
|
-
(
|
|
1769
|
-
(
|
|
1770
|
-
(
|
|
1716
|
+
__decorate([Inject(Router)], OptionsDecorator.prototype, "gRouter", void 0);
|
|
1717
|
+
__decorate([Inject(RequestHandler)], OptionsDecorator.prototype, "gRequestHandler", void 0);
|
|
1718
|
+
__decorate([Inject(MetadataResolver)], OptionsDecorator.prototype, "gMetadataResolver", void 0);
|
|
1771
1719
|
/**
|
|
1772
1720
|
* A factory function for creating an OptionsDecorator.
|
|
1773
1721
|
*
|
|
@@ -1783,7 +1731,6 @@ function Options(path) {
|
|
|
1783
1731
|
|
|
1784
1732
|
//#endregion
|
|
1785
1733
|
//#region src/Decorators/Http/Param.ts
|
|
1786
|
-
var import_decorate$5 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1787
1734
|
/**
|
|
1788
1735
|
* This class is responsible for managing parameter decorators.
|
|
1789
1736
|
*
|
|
@@ -1803,15 +1750,14 @@ var ParamDecorator = class extends BaseDecorator {
|
|
|
1803
1750
|
*/
|
|
1804
1751
|
created() {
|
|
1805
1752
|
initializeMetadata(this.prototype);
|
|
1806
|
-
|
|
1807
|
-
method.args.push({
|
|
1753
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
1808
1754
|
idx: this.propertyIndex,
|
|
1809
1755
|
type: "param",
|
|
1810
1756
|
data: { name: this.options.name }
|
|
1811
1757
|
});
|
|
1812
1758
|
}
|
|
1813
1759
|
};
|
|
1814
|
-
(
|
|
1760
|
+
__decorate([Inject(MetadataResolver)], ParamDecorator.prototype, "gMetadataResolver", void 0);
|
|
1815
1761
|
/**
|
|
1816
1762
|
* A factory function for creating a ParamDecorator.
|
|
1817
1763
|
*
|
|
@@ -1829,7 +1775,6 @@ function Param(name) {
|
|
|
1829
1775
|
|
|
1830
1776
|
//#endregion
|
|
1831
1777
|
//#region src/Decorators/Http/Patch.ts
|
|
1832
|
-
var import_decorate$4 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1833
1778
|
/**
|
|
1834
1779
|
* A decorator class for handling HTTP PATCH requests.
|
|
1835
1780
|
*
|
|
@@ -1868,9 +1813,9 @@ var PatchDecorator = class extends BaseDecorator {
|
|
|
1868
1813
|
});
|
|
1869
1814
|
}
|
|
1870
1815
|
};
|
|
1871
|
-
(
|
|
1872
|
-
(
|
|
1873
|
-
(
|
|
1816
|
+
__decorate([Inject(Router)], PatchDecorator.prototype, "gRouter", void 0);
|
|
1817
|
+
__decorate([Inject(RequestHandler)], PatchDecorator.prototype, "gRequestHandler", void 0);
|
|
1818
|
+
__decorate([Inject(MetadataResolver)], PatchDecorator.prototype, "gMetadataResolver", void 0);
|
|
1874
1819
|
/**
|
|
1875
1820
|
* A factory function for creating a PatchDecorator.
|
|
1876
1821
|
*
|
|
@@ -1886,7 +1831,6 @@ function Patch(path) {
|
|
|
1886
1831
|
|
|
1887
1832
|
//#endregion
|
|
1888
1833
|
//#region src/Decorators/Http/Post.ts
|
|
1889
|
-
var import_decorate$3 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1890
1834
|
/**
|
|
1891
1835
|
* A decorator class for handling HTTP POST requests.
|
|
1892
1836
|
*
|
|
@@ -1925,9 +1869,9 @@ var PostDecorator = class extends BaseDecorator {
|
|
|
1925
1869
|
});
|
|
1926
1870
|
}
|
|
1927
1871
|
};
|
|
1928
|
-
(
|
|
1929
|
-
(
|
|
1930
|
-
(
|
|
1872
|
+
__decorate([Inject(Router)], PostDecorator.prototype, "gRouter", void 0);
|
|
1873
|
+
__decorate([Inject(MetadataResolver)], PostDecorator.prototype, "gMetadataResolver", void 0);
|
|
1874
|
+
__decorate([Inject(RequestHandler)], PostDecorator.prototype, "gRequestHandler", void 0);
|
|
1931
1875
|
/**
|
|
1932
1876
|
* A factory function for creating a PostDecorator.
|
|
1933
1877
|
*
|
|
@@ -1943,7 +1887,6 @@ function Post(path) {
|
|
|
1943
1887
|
|
|
1944
1888
|
//#endregion
|
|
1945
1889
|
//#region src/Decorators/Http/Put.ts
|
|
1946
|
-
var import_decorate$2 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
1947
1890
|
/**
|
|
1948
1891
|
* A decorator class for handling HTTP PUT requests.
|
|
1949
1892
|
*
|
|
@@ -1982,9 +1925,9 @@ var PutDecorator = class extends BaseDecorator {
|
|
|
1982
1925
|
});
|
|
1983
1926
|
}
|
|
1984
1927
|
};
|
|
1985
|
-
(
|
|
1986
|
-
(
|
|
1987
|
-
(
|
|
1928
|
+
__decorate([Inject(Router)], PutDecorator.prototype, "gRouter", void 0);
|
|
1929
|
+
__decorate([Inject(RequestHandler)], PutDecorator.prototype, "gRequestHandler", void 0);
|
|
1930
|
+
__decorate([Inject(MetadataResolver)], PutDecorator.prototype, "gMetadataResolver", void 0);
|
|
1988
1931
|
/**
|
|
1989
1932
|
* A factory function for creating a PutDecorator.
|
|
1990
1933
|
*
|
|
@@ -2018,8 +1961,7 @@ var QueryParamDecorator = class extends BaseDecorator {
|
|
|
2018
1961
|
*/
|
|
2019
1962
|
created() {
|
|
2020
1963
|
const meta = initializeMetadata(this.prototype);
|
|
2021
|
-
|
|
2022
|
-
method.args.push({
|
|
1964
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
2023
1965
|
idx: this.propertyIndex,
|
|
2024
1966
|
type: "query-param",
|
|
2025
1967
|
data: { name: this.options.name },
|
|
@@ -2067,8 +2009,7 @@ var QueryParamsDecorator = class extends BaseDecorator {
|
|
|
2067
2009
|
*/
|
|
2068
2010
|
created() {
|
|
2069
2011
|
const meta = initializeMetadata(this.prototype);
|
|
2070
|
-
|
|
2071
|
-
method.args.push({
|
|
2012
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
2072
2013
|
idx: this.propertyIndex,
|
|
2073
2014
|
type: "query-params",
|
|
2074
2015
|
data: {},
|
|
@@ -2116,8 +2057,7 @@ var RequestDecorator = class extends BaseDecorator {
|
|
|
2116
2057
|
*/
|
|
2117
2058
|
created() {
|
|
2118
2059
|
initializeMetadata(this.prototype);
|
|
2119
|
-
|
|
2120
|
-
method.args.push({
|
|
2060
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
2121
2061
|
idx: this.propertyIndex,
|
|
2122
2062
|
type: "request"
|
|
2123
2063
|
});
|
|
@@ -2155,8 +2095,7 @@ var ResponseDecorator = class extends BaseDecorator {
|
|
|
2155
2095
|
*/
|
|
2156
2096
|
created() {
|
|
2157
2097
|
initializeMetadata(this.prototype);
|
|
2158
|
-
|
|
2159
|
-
method.args.push({
|
|
2098
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
2160
2099
|
idx: this.propertyIndex,
|
|
2161
2100
|
type: "response"
|
|
2162
2101
|
});
|
|
@@ -2176,7 +2115,6 @@ function Response$1() {
|
|
|
2176
2115
|
|
|
2177
2116
|
//#endregion
|
|
2178
2117
|
//#region src/Decorators/Http/Trace.ts
|
|
2179
|
-
var import_decorate$1 = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
2180
2118
|
/**
|
|
2181
2119
|
* A decorator class for handling HTTP TRACE requests.
|
|
2182
2120
|
*
|
|
@@ -2215,9 +2153,9 @@ var TraceDecorator = class extends BaseDecorator {
|
|
|
2215
2153
|
});
|
|
2216
2154
|
}
|
|
2217
2155
|
};
|
|
2218
|
-
(
|
|
2219
|
-
(
|
|
2220
|
-
(
|
|
2156
|
+
__decorate([Inject(Router)], TraceDecorator.prototype, "gRouter", void 0);
|
|
2157
|
+
__decorate([Inject(RequestHandler)], TraceDecorator.prototype, "gRequestHandler", void 0);
|
|
2158
|
+
__decorate([Inject(MetadataResolver)], TraceDecorator.prototype, "gMetadataResolver", void 0);
|
|
2221
2159
|
/**
|
|
2222
2160
|
* A factory function for creating a TraceDecorator.
|
|
2223
2161
|
*
|
|
@@ -2245,8 +2183,7 @@ var SetHeaderDecorator = class extends BaseDecorator {
|
|
|
2245
2183
|
*/
|
|
2246
2184
|
created() {
|
|
2247
2185
|
initializeMetadata(this.prototype);
|
|
2248
|
-
|
|
2249
|
-
method.actions.push({ handler: (req, res) => {
|
|
2186
|
+
initializeMetadataMethod(this.prototype, this.propertyName).actions.push({ handler: (req, res) => {
|
|
2250
2187
|
res.headers.delete(this.options.key);
|
|
2251
2188
|
res.headers.append(this.options.key, this.options.value);
|
|
2252
2189
|
return res;
|
|
@@ -2347,8 +2284,7 @@ var StatusDecorator = class extends BaseDecorator {
|
|
|
2347
2284
|
*/
|
|
2348
2285
|
created() {
|
|
2349
2286
|
initializeMetadata(this.prototype);
|
|
2350
|
-
|
|
2351
|
-
method.actions.push({ handler: () => ({ status: this.options.code }) });
|
|
2287
|
+
initializeMetadataMethod(this.prototype, this.propertyName).actions.push({ handler: () => ({ status: this.options.code }) });
|
|
2352
2288
|
}
|
|
2353
2289
|
};
|
|
2354
2290
|
/**
|
|
@@ -2371,8 +2307,7 @@ var RedirectDecorator = class extends BaseDecorator {
|
|
|
2371
2307
|
*/
|
|
2372
2308
|
created() {
|
|
2373
2309
|
initializeMetadata(this.prototype);
|
|
2374
|
-
|
|
2375
|
-
method.actions.push({ handler: () => {
|
|
2310
|
+
initializeMetadataMethod(this.prototype, this.propertyName).actions.push({ handler: () => {
|
|
2376
2311
|
return new FastResponse(void 0, {
|
|
2377
2312
|
status: this.options.code,
|
|
2378
2313
|
headers: { Location: this.options.location }
|
|
@@ -2420,8 +2355,7 @@ function Redirect(location, code = 301) {
|
|
|
2420
2355
|
function Middleware(middleware, opts) {
|
|
2421
2356
|
return function internalDecorator(target, propertyName) {
|
|
2422
2357
|
const ctx = propertyName ? target : target.prototype;
|
|
2423
|
-
|
|
2424
|
-
meta.__middlewares.push({
|
|
2358
|
+
initializeMetadata(ctx).__middlewares.push({
|
|
2425
2359
|
target: propertyName ?? "__global__",
|
|
2426
2360
|
priority: opts?.priority ?? 999,
|
|
2427
2361
|
middleware
|
|
@@ -2445,8 +2379,7 @@ var MultipartFormDataDecorator = class extends BaseDecorator {
|
|
|
2445
2379
|
*/
|
|
2446
2380
|
created() {
|
|
2447
2381
|
initializeMetadata(this.prototype);
|
|
2448
|
-
|
|
2449
|
-
method.args.push({
|
|
2382
|
+
initializeMetadataMethod(this.prototype, this.propertyName).args.push({
|
|
2450
2383
|
idx: this.propertyIndex,
|
|
2451
2384
|
type: "multipart-form-data"
|
|
2452
2385
|
});
|
|
@@ -2472,7 +2405,6 @@ function MultipartFormData() {
|
|
|
2472
2405
|
|
|
2473
2406
|
//#endregion
|
|
2474
2407
|
//#region src/Decorators/Hooks/Listen.ts
|
|
2475
|
-
var import_decorate = /* @__PURE__ */ __toESM(require_decorate(), 1);
|
|
2476
2408
|
/**
|
|
2477
2409
|
* This class is responsible for managing cache decorator.
|
|
2478
2410
|
*/
|
|
@@ -2493,7 +2425,7 @@ var ListenDecorator = class extends BaseDecorator {
|
|
|
2493
2425
|
this.gHooksService.off(this.fHook);
|
|
2494
2426
|
}
|
|
2495
2427
|
};
|
|
2496
|
-
(
|
|
2428
|
+
__decorate([Inject(HooksService)], ListenDecorator.prototype, "gHooksService", void 0);
|
|
2497
2429
|
/**
|
|
2498
2430
|
* This decorator stores metadata about hook listeners. It can be later used along with function
|
|
2499
2431
|
* applyEventListeners() to automatically register all listeners.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vercube/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.24",
|
|
4
4
|
"description": "Core module for Vercube framework",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -23,16 +23,17 @@
|
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@standard-schema/spec": "1.0.0",
|
|
26
|
-
"c12": "3.
|
|
26
|
+
"c12": "3.3.0",
|
|
27
27
|
"defu": "6.1.4",
|
|
28
28
|
"pathe": "2.0.3",
|
|
29
|
-
"rou3": "0.7.
|
|
29
|
+
"rou3": "0.7.5",
|
|
30
30
|
"srvx": "0.8.7",
|
|
31
|
-
"@vercube/di": "0.0.
|
|
32
|
-
"@vercube/logger": "0.0.
|
|
31
|
+
"@vercube/di": "0.0.24",
|
|
32
|
+
"@vercube/logger": "0.0.24"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"
|
|
35
|
+
"rolldown": "1.0.0-beta.39",
|
|
36
|
+
"zod": "4.1.11"
|
|
36
37
|
},
|
|
37
38
|
"publishConfig": {
|
|
38
39
|
"access": "public"
|