@forklaunch/core 0.1.15 → 0.1.17
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/http/interfaces/forklaunchExpress.application.interface.d.ts +4 -1
- package/dist/http/interfaces/forklaunchExpress.application.interface.d.ts.map +1 -1
- package/dist/http/interfaces/forklaunchExpress.application.interface.js +5 -5
- package/dist/http/interfaces/forklaunchExpress.router.interface.d.ts +3 -1
- package/dist/http/interfaces/forklaunchExpress.router.interface.d.ts.map +1 -1
- package/dist/http/interfaces/forklaunchExpress.router.interface.js +14 -16
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
@@ -1,6 +1,9 @@
|
|
1
1
|
import { AnySchemaValidator } from '@forklaunch/validator';
|
2
|
+
import { ForklaunchRouter } from '../types';
|
2
3
|
export declare abstract class ForklaunchExpressLikeApplication<SV extends AnySchemaValidator, Server> {
|
3
|
-
|
4
|
+
readonly schemaValidator: SV;
|
5
|
+
readonly internal: Server;
|
6
|
+
routers: ForklaunchRouter<SV>[];
|
4
7
|
/**
|
5
8
|
* Creates an instance of the Application class.
|
6
9
|
*
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"forklaunchExpress.application.interface.d.ts","sourceRoot":"","sources":["../../../http/interfaces/forklaunchExpress.application.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
1
|
+
{"version":3,"file":"forklaunchExpress.application.interface.d.ts","sourceRoot":"","sources":["../../../http/interfaces/forklaunchExpress.application.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,8BAAsB,gCAAgC,CACpD,EAAE,SAAS,kBAAkB,EAC7B,MAAM;IAUJ,QAAQ,CAAC,eAAe,EAAE,EAAE;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAT3B,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAM;IAErC;;;;OAIG;gBAEQ,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,MAAM;IAG3B,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IACtC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;CAC1C"}
|
@@ -1,14 +1,14 @@
|
|
1
1
|
export class ForklaunchExpressLikeApplication {
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
schemaValidator;
|
3
|
+
internal;
|
4
|
+
routers = [];
|
5
5
|
/**
|
6
6
|
* Creates an instance of the Application class.
|
7
7
|
*
|
8
8
|
* @param {SV} schemaValidator - The schema validator.
|
9
9
|
*/
|
10
10
|
constructor(schemaValidator, internal) {
|
11
|
-
this
|
12
|
-
this
|
11
|
+
this.schemaValidator = schemaValidator;
|
12
|
+
this.internal = internal;
|
13
13
|
}
|
14
14
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { AnySchemaValidator } from '@forklaunch/validator';
|
2
|
-
import { Body, ForklaunchSchemaMiddlewareHandler, HeadersObject, HttpContractDetails, LiveTypeFunction, ParamsObject, PathParamHttpContractDetails, QueryObject, ResponsesObject } from '../types';
|
2
|
+
import { Body, ForklaunchRoute, ForklaunchSchemaMiddlewareHandler, HeadersObject, HttpContractDetails, LiveTypeFunction, ParamsObject, PathParamHttpContractDetails, QueryObject, ResponsesObject } from '../types';
|
3
3
|
interface ExpressLikeRouter<RouterFunction> {
|
4
4
|
use: (...args: (string | RouterFunction)[]) => this;
|
5
5
|
get(path: string, ...handlers: RouterFunction[]): void;
|
@@ -11,6 +11,8 @@ interface ExpressLikeRouter<RouterFunction> {
|
|
11
11
|
export declare abstract class ForklaunchExpressLikeRouter<SV extends AnySchemaValidator, BasePath extends `/${string}`, RouterFunction, Internal extends ExpressLikeRouter<RouterFunction>> {
|
12
12
|
#private;
|
13
13
|
readonly internal: Internal;
|
14
|
+
readonly routes: ForklaunchRoute<SV>[];
|
15
|
+
readonly basePath: BasePath;
|
14
16
|
constructor(basePath: BasePath, internal: Internal);
|
15
17
|
/**
|
16
18
|
* Registers middleware to the router.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"forklaunchExpress.router.interface.d.ts","sourceRoot":"","sources":["../../../http/interfaces/forklaunchExpress.router.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAU3D,OAAO,EACL,IAAI,
|
1
|
+
{"version":3,"file":"forklaunchExpress.router.interface.d.ts","sourceRoot":"","sources":["../../../http/interfaces/forklaunchExpress.router.interface.ts"],"names":[],"mappings":"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"}
|
@@ -1,13 +1,11 @@
|
|
1
1
|
import { enrichRequestDetails, parseReqHeaders, parseRequestAuth, parseRequestBody, parseRequestParams, parseRequestQuery } from '../middleware';
|
2
2
|
export class ForklaunchExpressLikeRouter {
|
3
3
|
internal;
|
4
|
-
|
5
|
-
|
6
|
-
#internal;
|
4
|
+
routes = [];
|
5
|
+
basePath;
|
7
6
|
constructor(basePath, internal) {
|
8
7
|
this.internal = internal;
|
9
|
-
this
|
10
|
-
this.#internal = internal;
|
8
|
+
this.basePath = basePath;
|
11
9
|
}
|
12
10
|
/**
|
13
11
|
* Resolves middlewares based on the contract details.
|
@@ -94,7 +92,7 @@ export class ForklaunchExpressLikeRouter {
|
|
94
92
|
// * @returns {string} - The extracted SDK path.
|
95
93
|
// * @throws {Error} - Throws an error if the path is not defined.
|
96
94
|
// */
|
97
|
-
//
|
95
|
+
// extractSdkPath(path: string | RegExp | (string | RegExp)[]): string {
|
98
96
|
// let sdkPath = path;
|
99
97
|
// if (Array.isArray(path)) {
|
100
98
|
// sdkPath = path.pop() || path[0];
|
@@ -199,8 +197,8 @@ export class ForklaunchExpressLikeRouter {
|
|
199
197
|
*/
|
200
198
|
get(path, contractDetails, ...functions) {
|
201
199
|
const controllerFunction = this.#extractControllerFunction(functions);
|
202
|
-
this
|
203
|
-
basePath: this
|
200
|
+
this.routes.push({
|
201
|
+
basePath: this.basePath,
|
204
202
|
path,
|
205
203
|
method: 'GET',
|
206
204
|
contractDetails
|
@@ -226,8 +224,8 @@ export class ForklaunchExpressLikeRouter {
|
|
226
224
|
post(path, contractDetails, ...functions) {
|
227
225
|
// : LiveType<SV, P, ResBodyMap, ReqBody, ReqQuery> {
|
228
226
|
const controllerFunction = this.#extractControllerFunction(functions);
|
229
|
-
this
|
230
|
-
basePath: this
|
227
|
+
this.routes.push({
|
228
|
+
basePath: this.basePath,
|
231
229
|
path,
|
232
230
|
method: 'POST',
|
233
231
|
contractDetails
|
@@ -252,8 +250,8 @@ export class ForklaunchExpressLikeRouter {
|
|
252
250
|
*/
|
253
251
|
put(path, contractDetails, ...functions) {
|
254
252
|
const controllerFunction = this.#extractControllerFunction(functions);
|
255
|
-
this
|
256
|
-
basePath: this
|
253
|
+
this.routes.push({
|
254
|
+
basePath: this.basePath,
|
257
255
|
path,
|
258
256
|
method: 'PUT',
|
259
257
|
contractDetails
|
@@ -278,8 +276,8 @@ export class ForklaunchExpressLikeRouter {
|
|
278
276
|
*/
|
279
277
|
patch(path, contractDetails, ...functions) {
|
280
278
|
const controllerFunction = this.#extractControllerFunction(functions);
|
281
|
-
this
|
282
|
-
basePath: this
|
279
|
+
this.routes.push({
|
280
|
+
basePath: this.basePath,
|
283
281
|
path,
|
284
282
|
method: 'PATCH',
|
285
283
|
contractDetails
|
@@ -304,8 +302,8 @@ export class ForklaunchExpressLikeRouter {
|
|
304
302
|
*/
|
305
303
|
delete(path, contractDetails, ...functions) {
|
306
304
|
const controllerFunction = this.#extractControllerFunction(functions);
|
307
|
-
this
|
308
|
-
basePath: this
|
305
|
+
this.routes.push({
|
306
|
+
basePath: this.basePath,
|
309
307
|
path,
|
310
308
|
method: 'DELETE',
|
311
309
|
contractDetails
|