@forklaunch/express 1.2.31 → 1.2.33
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/lib/index.d.ts +48 -2062
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +9 -2
- package/lib/index.mjs +9 -2
- package/lib/src/cluster/bun.cluster.d.ts +4 -0
- package/lib/src/cluster/bun.cluster.d.ts.map +1 -0
- package/lib/src/cluster/bun.serve.shim.d.ts +55 -0
- package/lib/src/cluster/bun.serve.shim.d.ts.map +1 -0
- package/lib/src/cluster/bun.socket.shim.d.ts +81 -0
- package/lib/src/cluster/bun.socket.shim.d.ts.map +1 -0
- package/lib/src/cluster/node.cluster.d.ts +4 -0
- package/lib/src/cluster/node.cluster.d.ts.map +1 -0
- package/lib/src/expressApplication.d.ts +59 -0
- package/lib/src/expressApplication.d.ts.map +1 -0
- package/lib/src/expressRouter.d.ts +51 -0
- package/lib/src/expressRouter.d.ts.map +1 -0
- package/lib/src/handlers/checkout.d.ts +40 -0
- package/lib/src/handlers/checkout.d.ts.map +1 -0
- package/lib/src/handlers/copy.d.ts +89 -0
- package/lib/src/handlers/copy.d.ts.map +1 -0
- package/lib/src/handlers/delete.d.ts +59 -0
- package/lib/src/handlers/delete.d.ts.map +1 -0
- package/lib/src/handlers/get.d.ts +46 -0
- package/lib/src/handlers/get.d.ts.map +1 -0
- package/lib/src/handlers/head.d.ts +69 -0
- package/lib/src/handlers/head.d.ts.map +1 -0
- package/lib/src/handlers/link.d.ts +91 -0
- package/lib/src/handlers/link.d.ts.map +1 -0
- package/lib/src/handlers/lock.d.ts +90 -0
- package/lib/src/handlers/lock.d.ts.map +1 -0
- package/lib/src/handlers/m-search.d.ts +85 -0
- package/lib/src/handlers/m-search.d.ts.map +1 -0
- package/lib/src/handlers/merge.d.ts +101 -0
- package/lib/src/handlers/merge.d.ts.map +1 -0
- package/lib/src/handlers/middleware.d.ts +67 -0
- package/lib/src/handlers/middleware.d.ts.map +1 -0
- package/lib/src/handlers/mkcactivity.d.ts +76 -0
- package/lib/src/handlers/mkcactivity.d.ts.map +1 -0
- package/lib/src/handlers/mkcol.d.ts +76 -0
- package/lib/src/handlers/mkcol.d.ts.map +1 -0
- package/lib/src/handlers/move.d.ts +78 -0
- package/lib/src/handlers/move.d.ts.map +1 -0
- package/lib/src/handlers/notify.d.ts +75 -0
- package/lib/src/handlers/notify.d.ts.map +1 -0
- package/lib/src/handlers/options.d.ts +67 -0
- package/lib/src/handlers/options.d.ts.map +1 -0
- package/lib/src/handlers/patch.d.ts +86 -0
- package/lib/src/handlers/patch.d.ts.map +1 -0
- package/lib/src/handlers/post.d.ts +50 -0
- package/lib/src/handlers/post.d.ts.map +1 -0
- package/lib/src/handlers/propfind.d.ts +84 -0
- package/lib/src/handlers/propfind.d.ts.map +1 -0
- package/lib/src/handlers/proppatch.d.ts +84 -0
- package/lib/src/handlers/proppatch.d.ts.map +1 -0
- package/lib/src/handlers/purge.d.ts +63 -0
- package/lib/src/handlers/purge.d.ts.map +1 -0
- package/lib/src/handlers/put.d.ts +73 -0
- package/lib/src/handlers/put.d.ts.map +1 -0
- package/lib/src/handlers/report.d.ts +70 -0
- package/lib/src/handlers/report.d.ts.map +1 -0
- package/lib/src/handlers/search.d.ts +83 -0
- package/lib/src/handlers/search.d.ts.map +1 -0
- package/lib/src/handlers/subscribe.d.ts +75 -0
- package/lib/src/handlers/subscribe.d.ts.map +1 -0
- package/lib/src/handlers/trace.d.ts +59 -0
- package/lib/src/handlers/trace.d.ts.map +1 -0
- package/lib/src/handlers/unlink.d.ts +70 -0
- package/lib/src/handlers/unlink.d.ts.map +1 -0
- package/lib/src/handlers/unlock.d.ts +70 -0
- package/lib/src/handlers/unlock.d.ts.map +1 -0
- package/lib/src/handlers/unsubscribe.d.ts +71 -0
- package/lib/src/handlers/unsubscribe.d.ts.map +1 -0
- package/lib/src/middleware/async.middleware.d.ts +16 -0
- package/lib/src/middleware/async.middleware.d.ts.map +1 -0
- package/lib/src/middleware/content.parse.middleware.d.ts +13 -0
- package/lib/src/middleware/content.parse.middleware.d.ts.map +1 -0
- package/lib/src/middleware/enrichResponseTransmission.middleware.d.ts +27 -0
- package/lib/src/middleware/enrichResponseTransmission.middleware.d.ts.map +1 -0
- package/lib/src/types/export.types.d.ts +9 -0
- package/lib/src/types/export.types.d.ts.map +1 -0
- package/lib/src/types/express.types.d.ts +84 -0
- package/lib/src/types/express.types.d.ts.map +1 -0
- package/lib/src/types/expressOptions.types.d.ts +17 -0
- package/lib/src/types/expressOptions.types.d.ts.map +1 -0
- package/package.json +35 -34
- package/LICENSE +0 -21
- package/lib/index.d.mts +0 -2112
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proppatch.d.ts","sourceRoot":"","sources":["../../../src/handlers/proppatch.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AACH,eAAO,MAAM,SAAS,GACpB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a PURGE route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqQuery - The request query parameters type
|
|
15
|
+
* @template ReqHeaders - The request headers type
|
|
16
|
+
* @template ResHeaders - The response headers type
|
|
17
|
+
* @template LocalsObj - The locals object type
|
|
18
|
+
*
|
|
19
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
20
|
+
* @param {Path} path - The route path
|
|
21
|
+
* @param {ContractDetails<SV, 'purge', Name, Path, P, ResBodyMap, never, ReqQuery, ReqHeaders, ResHeaders, Request>} contractDetails - The contract details for the route
|
|
22
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, never, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Response, NextFunction>[]} handlers - The route handlers
|
|
23
|
+
*
|
|
24
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* purge(
|
|
29
|
+
* schemaValidator,
|
|
30
|
+
* '/cache/:id',
|
|
31
|
+
* {
|
|
32
|
+
* summary: 'Purge cache',
|
|
33
|
+
* description: 'Removes an item from the cache',
|
|
34
|
+
* tags: ['cache'],
|
|
35
|
+
* parameters: [
|
|
36
|
+
* {
|
|
37
|
+
* name: 'id',
|
|
38
|
+
* in: 'path',
|
|
39
|
+
* required: true,
|
|
40
|
+
* schema: { type: 'string' }
|
|
41
|
+
* }
|
|
42
|
+
* ],
|
|
43
|
+
* responses: {
|
|
44
|
+
* 204: {
|
|
45
|
+
* description: 'Cache item purged successfully'
|
|
46
|
+
* }
|
|
47
|
+
* }
|
|
48
|
+
* },
|
|
49
|
+
* async (req, res) => {
|
|
50
|
+
* const { id } = req.params;
|
|
51
|
+
* await purgeCacheItem(id);
|
|
52
|
+
* res.status(204).send();
|
|
53
|
+
* }
|
|
54
|
+
* );
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare const purge: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
58
|
+
_typedHandler: true;
|
|
59
|
+
_path: Path;
|
|
60
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
61
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=purge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../../src/handlers/purge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,eAAO,MAAM,KAAK,GAChB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a PUT route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqBody - The request body type
|
|
15
|
+
* @template ReqQuery - The request query parameters type
|
|
16
|
+
* @template ReqHeaders - The request headers type
|
|
17
|
+
* @template ResHeaders - The response headers type
|
|
18
|
+
* @template LocalsObj - The locals object type
|
|
19
|
+
* @template Auth - The authentication method type
|
|
20
|
+
*
|
|
21
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
22
|
+
* @param {Path} path - The route path
|
|
23
|
+
* @param {ContractDetails<SV, 'put', Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
24
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Response, NextFunction>[]} handlers - The route handlers
|
|
25
|
+
*
|
|
26
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* put(
|
|
31
|
+
* schemaValidator,
|
|
32
|
+
* '/users/:id',
|
|
33
|
+
* {
|
|
34
|
+
* summary: 'Update user',
|
|
35
|
+
* description: 'Updates a user by ID',
|
|
36
|
+
* tags: ['users'],
|
|
37
|
+
* pathParams: {
|
|
38
|
+
* id: { type: 'string' }
|
|
39
|
+
* },
|
|
40
|
+
* body: {
|
|
41
|
+
* type: 'object',
|
|
42
|
+
* properties: {
|
|
43
|
+
* name: { type: 'string' }
|
|
44
|
+
* }
|
|
45
|
+
* },
|
|
46
|
+
* responses: {
|
|
47
|
+
* 200: {
|
|
48
|
+
* description: 'User updated successfully',
|
|
49
|
+
* content: {
|
|
50
|
+
* 'application/json': {
|
|
51
|
+
* schema: {
|
|
52
|
+
* type: 'object',
|
|
53
|
+
* properties: {
|
|
54
|
+
* id: { type: 'string' },
|
|
55
|
+
* name: { type: 'string' }
|
|
56
|
+
* }
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* }
|
|
60
|
+
* }
|
|
61
|
+
* }
|
|
62
|
+
* },
|
|
63
|
+
* async (req, res) => {
|
|
64
|
+
* const { id } = req.params;
|
|
65
|
+
* const { name } = req.body;
|
|
66
|
+
* // Update user logic
|
|
67
|
+
* res.json({ id, name });
|
|
68
|
+
* }
|
|
69
|
+
* );
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare const put: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'put'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'put', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => import("@forklaunch/core/http").ExpressLikeTypedHandler<SV, Name, "put", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction, Auth>;
|
|
73
|
+
//# sourceMappingURL=put.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"put.d.ts","sourceRoot":"","sources":["../../../src/handlers/put.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,eAAO,MAAM,GAAG,GACd,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,EACnD,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE,0SAmBJ,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a REPORT route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqBody - The request body type
|
|
15
|
+
* @template ReqQuery - The request query parameters type
|
|
16
|
+
* @template ReqHeaders - The request headers type
|
|
17
|
+
* @template ResHeaders - The response headers type
|
|
18
|
+
* @template LocalsObj - The locals object type
|
|
19
|
+
*
|
|
20
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
21
|
+
* @param {Path} path - The route path
|
|
22
|
+
* @param {ContractDetails<SV, 'report', Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request>} contractDetails - The contract details for the route
|
|
23
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Response, NextFunction>[]} handlers - The route handlers
|
|
24
|
+
*
|
|
25
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* report(
|
|
30
|
+
* schemaValidator,
|
|
31
|
+
* '/reports/:id',
|
|
32
|
+
* {
|
|
33
|
+
* summary: 'Generate report',
|
|
34
|
+
* description: 'Generates a report for the specified resource',
|
|
35
|
+
* tags: ['reports'],
|
|
36
|
+
* pathParams: {
|
|
37
|
+
* id: { type: 'string' }
|
|
38
|
+
* },
|
|
39
|
+
* responses: {
|
|
40
|
+
* 200: {
|
|
41
|
+
* description: 'Report generated successfully',
|
|
42
|
+
* content: {
|
|
43
|
+
* 'application/json': {
|
|
44
|
+
* schema: {
|
|
45
|
+
* type: 'object',
|
|
46
|
+
* properties: {
|
|
47
|
+
* id: { type: 'string' },
|
|
48
|
+
* status: { type: 'string' }
|
|
49
|
+
* }
|
|
50
|
+
* }
|
|
51
|
+
* }
|
|
52
|
+
* }
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* },
|
|
56
|
+
* async (req, res) => {
|
|
57
|
+
* const { id } = req.params;
|
|
58
|
+
* // Generate report logic
|
|
59
|
+
* res.json({ id, status: 'completed' });
|
|
60
|
+
* }
|
|
61
|
+
* );
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
export declare const report: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
65
|
+
_typedHandler: true;
|
|
66
|
+
_path: Path;
|
|
67
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
68
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/handlers/report.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,eAAO,MAAM,MAAM,GACjB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a SEARCH route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type (must start with '/')
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqBody - The request body type
|
|
15
|
+
* @template ReqQuery - The request query parameters type
|
|
16
|
+
* @template ReqHeaders - The request headers type
|
|
17
|
+
* @template ResHeaders - The response headers type
|
|
18
|
+
* @template LocalsObj - The locals object type
|
|
19
|
+
* @template Auth - The authentication methods type
|
|
20
|
+
*
|
|
21
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
22
|
+
* @param {Path} path - The route path
|
|
23
|
+
* @param {ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
24
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Auth>} handlers - The route handlers
|
|
25
|
+
*
|
|
26
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* search(
|
|
31
|
+
* schemaValidator,
|
|
32
|
+
* '/search',
|
|
33
|
+
* {
|
|
34
|
+
* summary: 'Search resources',
|
|
35
|
+
* description: 'Searches for resources based on query parameters',
|
|
36
|
+
* tags: ['search'],
|
|
37
|
+
* query: {
|
|
38
|
+
* type: 'object',
|
|
39
|
+
* properties: {
|
|
40
|
+
* q: { type: 'string' },
|
|
41
|
+
* limit: { type: 'number' }
|
|
42
|
+
* }
|
|
43
|
+
* },
|
|
44
|
+
* responses: {
|
|
45
|
+
* 200: {
|
|
46
|
+
* description: 'Search results',
|
|
47
|
+
* content: {
|
|
48
|
+
* 'application/json': {
|
|
49
|
+
* schema: {
|
|
50
|
+
* type: 'object',
|
|
51
|
+
* properties: {
|
|
52
|
+
* results: {
|
|
53
|
+
* type: 'array',
|
|
54
|
+
* items: {
|
|
55
|
+
* type: 'object',
|
|
56
|
+
* properties: {
|
|
57
|
+
* id: { type: 'string' },
|
|
58
|
+
* title: { type: 'string' }
|
|
59
|
+
* }
|
|
60
|
+
* }
|
|
61
|
+
* }
|
|
62
|
+
* }
|
|
63
|
+
* }
|
|
64
|
+
* }
|
|
65
|
+
* }
|
|
66
|
+
* }
|
|
67
|
+
* }
|
|
68
|
+
* },
|
|
69
|
+
* async (req, res) => {
|
|
70
|
+
* const { q, limit } = req.query;
|
|
71
|
+
* // Search logic
|
|
72
|
+
* res.json({ results: [] });
|
|
73
|
+
* }
|
|
74
|
+
* );
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export declare const search: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
78
|
+
_typedHandler: true;
|
|
79
|
+
_path: Path;
|
|
80
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
81
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/handlers/search.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,eAAO,MAAM,MAAM,GACjB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a SUBSCRIBE route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqBody - The request body type
|
|
15
|
+
* @template ReqQuery - The request query parameters type
|
|
16
|
+
* @template ReqHeaders - The request headers type
|
|
17
|
+
* @template ResHeaders - The response headers type
|
|
18
|
+
* @template LocalsObj - The locals object type
|
|
19
|
+
* @template Auth - The authentication method type
|
|
20
|
+
*
|
|
21
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
22
|
+
* @param {Path} path - The route path
|
|
23
|
+
* @param {ContractDetails<SV, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
24
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Auth>} handlers - The route handlers
|
|
25
|
+
*
|
|
26
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* subscribe(
|
|
31
|
+
* schemaValidator,
|
|
32
|
+
* '/subscribe',
|
|
33
|
+
* {
|
|
34
|
+
* summary: 'Subscribe to updates',
|
|
35
|
+
* description: 'Subscribes to receive updates for a resource',
|
|
36
|
+
* tags: ['subscriptions'],
|
|
37
|
+
* body: {
|
|
38
|
+
* type: 'object',
|
|
39
|
+
* properties: {
|
|
40
|
+
* email: { type: 'string' },
|
|
41
|
+
* resourceId: { type: 'string' }
|
|
42
|
+
* }
|
|
43
|
+
* },
|
|
44
|
+
* responses: {
|
|
45
|
+
* 200: {
|
|
46
|
+
* description: 'Subscription created successfully',
|
|
47
|
+
* content: {
|
|
48
|
+
* 'application/json': {
|
|
49
|
+
* schema: {
|
|
50
|
+
* type: 'object',
|
|
51
|
+
* properties: {
|
|
52
|
+
* id: { type: 'string' },
|
|
53
|
+
* status: { type: 'string' }
|
|
54
|
+
* }
|
|
55
|
+
* }
|
|
56
|
+
* }
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* }
|
|
60
|
+
* },
|
|
61
|
+
* async (req, res) => {
|
|
62
|
+
* const { email, resourceId } = req.body;
|
|
63
|
+
* // Subscription logic
|
|
64
|
+
* res.json({ id: 'sub_123', status: 'active' });
|
|
65
|
+
* }
|
|
66
|
+
* );
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare const subscribe: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
70
|
+
_typedHandler: true;
|
|
71
|
+
_path: Path;
|
|
72
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
73
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=subscribe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["../../../src/handlers/subscribe.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,eAAO,MAAM,SAAS,GACpB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates a TRACE route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Name - The name of the route
|
|
11
|
+
* @template Path - The route path type
|
|
12
|
+
* @template P - The path parameters type
|
|
13
|
+
* @template ResBodyMap - The response body map type
|
|
14
|
+
* @template ReqBody - The request body type
|
|
15
|
+
* @template ReqQuery - The request query parameters type
|
|
16
|
+
* @template ReqHeaders - The request headers type
|
|
17
|
+
* @template ResHeaders - The response headers type
|
|
18
|
+
* @template LocalsObj - The locals object type
|
|
19
|
+
* @template Auth - The authentication method type
|
|
20
|
+
*
|
|
21
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
22
|
+
* @param {Path} path - The route path
|
|
23
|
+
* @param {ContractDetails<SV, 'trace', Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
24
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Response, NextFunction>[]} handlers - The route handlers
|
|
25
|
+
*
|
|
26
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* trace(
|
|
31
|
+
* schemaValidator,
|
|
32
|
+
* '/trace',
|
|
33
|
+
* {
|
|
34
|
+
* summary: 'Trace request',
|
|
35
|
+
* description: 'Traces the request path and returns diagnostic information',
|
|
36
|
+
* tags: ['diagnostics'],
|
|
37
|
+
* responses: {
|
|
38
|
+
* 200: {
|
|
39
|
+
* description: 'Trace information',
|
|
40
|
+
* content: {
|
|
41
|
+
* 'message/http': {
|
|
42
|
+
* schema: {
|
|
43
|
+
* type: 'string'
|
|
44
|
+
* }
|
|
45
|
+
* }
|
|
46
|
+
* }
|
|
47
|
+
* }
|
|
48
|
+
* }
|
|
49
|
+
* },
|
|
50
|
+
* async (req, res) => {
|
|
51
|
+
* // Trace logic
|
|
52
|
+
* res.set('Content-Type', 'message/http');
|
|
53
|
+
* res.send('TRACE /trace HTTP/1.1');
|
|
54
|
+
* }
|
|
55
|
+
* );
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare const trace: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'trace'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'trace', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => import("@forklaunch/core/http").ExpressLikeTypedHandler<SV, Name, "trace", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction, Auth>;
|
|
59
|
+
//# sourceMappingURL=trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/handlers/trace.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,eAAO,MAAM,KAAK,GAChB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,EACrD,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE,4SAmBJ,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates an UNLINK route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Path - The route path type (must start with '/')
|
|
11
|
+
* @template P - The path parameters type
|
|
12
|
+
* @template ResBodyMap - The response body map type
|
|
13
|
+
* @template ReqBody - The request body type
|
|
14
|
+
* @template ReqQuery - The request query parameters type
|
|
15
|
+
* @template ReqHeaders - The request headers type
|
|
16
|
+
* @template ResHeaders - The response headers type
|
|
17
|
+
* @template LocalsObj - The locals object type
|
|
18
|
+
* @template Auth - The authentication method type
|
|
19
|
+
*
|
|
20
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
21
|
+
* @param {Path} path - The route path
|
|
22
|
+
* @param {ContractDetails<SV, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
23
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Auth>} handlers - The route handlers
|
|
24
|
+
*
|
|
25
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* unlink(
|
|
30
|
+
* schemaValidator,
|
|
31
|
+
* '/resources/:id/link',
|
|
32
|
+
* {
|
|
33
|
+
* summary: 'Unlink resource',
|
|
34
|
+
* description: 'Removes a link between two resources',
|
|
35
|
+
* tags: ['resources'],
|
|
36
|
+
* pathParams: {
|
|
37
|
+
* id: { type: 'string' }
|
|
38
|
+
* },
|
|
39
|
+
* responses: {
|
|
40
|
+
* 200: {
|
|
41
|
+
* description: 'Resource unlinked successfully',
|
|
42
|
+
* content: {
|
|
43
|
+
* 'application/json': {
|
|
44
|
+
* schema: {
|
|
45
|
+
* type: 'object',
|
|
46
|
+
* properties: {
|
|
47
|
+
* id: { type: 'string' },
|
|
48
|
+
* status: { type: 'string' }
|
|
49
|
+
* }
|
|
50
|
+
* }
|
|
51
|
+
* }
|
|
52
|
+
* }
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* },
|
|
56
|
+
* async (req, res) => {
|
|
57
|
+
* const { id } = req.params;
|
|
58
|
+
* // Unlink logic
|
|
59
|
+
* res.json({ id, status: 'unlinked' });
|
|
60
|
+
* }
|
|
61
|
+
* );
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
export declare const unlink: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
65
|
+
_typedHandler: true;
|
|
66
|
+
_path: Path;
|
|
67
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
68
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=unlink.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unlink.d.ts","sourceRoot":"","sources":["../../../src/handlers/unlink.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,eAAO,MAAM,MAAM,GACjB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Body, ContractDetails, ExpressLikeSchemaHandler, HeadersObject, ParamsObject, QueryObject, ResolvedSessionObject, ResponsesObject, SchemaAuthMethods, SessionObject, VersionSchema } from '@forklaunch/core/http';
|
|
2
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import express from 'express-serve-static-core';
|
|
5
|
+
import { ParsedQs } from 'qs';
|
|
6
|
+
/**
|
|
7
|
+
* Creates an UNLOCK route handler with schema validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @template SV - The schema validator type
|
|
10
|
+
* @template Path - The route path type (must start with '/')
|
|
11
|
+
* @template P - The path parameters type
|
|
12
|
+
* @template ResBodyMap - The response body map type
|
|
13
|
+
* @template ReqBody - The request body type
|
|
14
|
+
* @template ReqQuery - The request query parameters type
|
|
15
|
+
* @template ReqHeaders - The request headers type
|
|
16
|
+
* @template ResHeaders - The response headers type
|
|
17
|
+
* @template LocalsObj - The locals object type
|
|
18
|
+
* @template Auth - The authentication method type
|
|
19
|
+
*
|
|
20
|
+
* @param {SV} schemaValidator - The schema validator instance
|
|
21
|
+
* @param {Path} path - The route path
|
|
22
|
+
* @param {ContractDetails<SV, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request, Auth>} contractDetails - The contract details for the route
|
|
23
|
+
* @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request, Auth>} handlers - The route handlers
|
|
24
|
+
*
|
|
25
|
+
* @returns {void} - Returns nothing, registers the route with Express
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* unlock(
|
|
30
|
+
* schemaValidator,
|
|
31
|
+
* '/resources/:id/lock',
|
|
32
|
+
* {
|
|
33
|
+
* summary: 'Unlock resource',
|
|
34
|
+
* description: 'Removes a lock from a resource',
|
|
35
|
+
* tags: ['resources'],
|
|
36
|
+
* pathParams: {
|
|
37
|
+
* id: { type: 'string' }
|
|
38
|
+
* },
|
|
39
|
+
* responses: {
|
|
40
|
+
* 200: {
|
|
41
|
+
* description: 'Resource unlocked successfully',
|
|
42
|
+
* content: {
|
|
43
|
+
* 'application/json': {
|
|
44
|
+
* schema: {
|
|
45
|
+
* type: 'object',
|
|
46
|
+
* properties: {
|
|
47
|
+
* id: { type: 'string' },
|
|
48
|
+
* status: { type: 'string' }
|
|
49
|
+
* }
|
|
50
|
+
* }
|
|
51
|
+
* }
|
|
52
|
+
* }
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* },
|
|
56
|
+
* async (req, res) => {
|
|
57
|
+
* const { id } = req.params;
|
|
58
|
+
* // Unlock logic
|
|
59
|
+
* res.json({ id, status: 'unlocked' });
|
|
60
|
+
* }
|
|
61
|
+
* );
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
export declare const unlock: <SV extends AnySchemaValidator, Name extends string, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>, const VersionedApi extends VersionSchema<SV, 'middleware'>, const Auth extends SchemaAuthMethods<SV, P, ReqBody, ReqQuery, ReqHeaders, VersionedApi, Request>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, Name, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request, Auth>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request, Response, NextFunction>[]) => {
|
|
65
|
+
_typedHandler: true;
|
|
66
|
+
_path: Path;
|
|
67
|
+
contractDetails: import("@forklaunch/core/http").MiddlewareContractDetails<SV, Name, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, VersionedApi, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Auth>;
|
|
68
|
+
handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, VersionedApi, ResolvedSessionObject<SV, Auth, SessionObject<SV>>, Request<express.ParamsDictionary, any, any, ParsedQs, Record<string, any>>, Response<any, Record<string, any>>, NextFunction>[];
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=unlock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unlock.d.ts","sourceRoot":"","sources":["../../../src/handlers/unlock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,wBAAwB,EACxB,aAAa,EAEb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,eAAO,MAAM,MAAM,GACjB,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,KAAK,CAAC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAC1D,KAAK,CAAC,IAAI,SAAS,iBAAiB,CAClC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,CACR,mBAEgB,EAAE,QACb,IAAI,mBACO,eAAe,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,CACL,eACY,wBAAwB,CACnC,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,EAClD,OAAO,EACP,QAAQ,EACR,YAAY,CACb,EAAE;;;;;CAmBJ,CAAC"}
|