remult 0.14.29 → 0.14.32
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/esm/graphql.d.ts +2 -2
- package/esm/remult-express.d.ts +4 -9
- package/esm/remult-express.js +3 -2
- package/esm/remult-fastify.d.ts +2 -2
- package/esm/remult-fastify.js +6 -11
- package/esm/remult-fresh.d.ts +17 -0
- package/esm/remult-fresh.js +36 -0
- package/esm/remult-middleware.d.ts +4 -3
- package/esm/remult-middleware.js +1 -0
- package/esm/server/expressBridge.d.ts +10 -53
- package/esm/server/expressBridge.js +253 -131
- package/esm/server/index.d.ts +1 -3
- package/esm/server/index.js +1 -3
- package/esm/src/backend-tests/test-http-server.backend-spec.js +3 -5
- package/esm/src/context.d.ts +1 -6
- package/graphql.d.ts +2 -2
- package/package.json +8 -4
- package/readme.md +2 -2
- package/remult-express.d.ts +4 -9
- package/remult-express.js +3 -2
- package/remult-fastify.d.ts +2 -2
- package/remult-fastify.js +6 -11
- package/remult-fresh.d.ts +17 -0
- package/remult-fresh.js +58 -0
- package/remult-middleware.d.ts +4 -3
- package/remult-middleware.js +2 -1
- package/server/expressBridge.d.ts +10 -53
- package/server/expressBridge.js +361 -212
- package/server/index.d.ts +1 -3
- package/server/index.js +2 -6
- package/src/backend-tests/test-http-server.backend-spec.js +3 -5
- package/src/context.d.ts +1 -6
package/remult-fresh.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.remultFresh = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var expressBridge_1 = require("./server/expressBridge");
|
|
6
|
+
function remultFresh(options, response) {
|
|
7
|
+
var _this = this;
|
|
8
|
+
var server = expressBridge_1.buildRemultServer(options);
|
|
9
|
+
var orig = server.handle;
|
|
10
|
+
return Object.assign(server, {
|
|
11
|
+
freshHandler: function (req, ctx) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
12
|
+
var theReq, _a, _b, init, res;
|
|
13
|
+
return tslib_1.__generator(this, function (_c) {
|
|
14
|
+
switch (_c.label) {
|
|
15
|
+
case 0:
|
|
16
|
+
theReq = {
|
|
17
|
+
method: req.method,
|
|
18
|
+
url: req.url,
|
|
19
|
+
body: undefined
|
|
20
|
+
};
|
|
21
|
+
_a = req.method.toLocaleLowerCase();
|
|
22
|
+
switch (_a) {
|
|
23
|
+
case "put": return [3 /*break*/, 1];
|
|
24
|
+
case "post": return [3 /*break*/, 1];
|
|
25
|
+
}
|
|
26
|
+
return [3 /*break*/, 3];
|
|
27
|
+
case 1:
|
|
28
|
+
_b = theReq;
|
|
29
|
+
return [4 /*yield*/, req.json()];
|
|
30
|
+
case 2:
|
|
31
|
+
_b.body = _c.sent();
|
|
32
|
+
return [3 /*break*/, 3];
|
|
33
|
+
case 3:
|
|
34
|
+
init = {};
|
|
35
|
+
return [4 /*yield*/, orig(theReq)];
|
|
36
|
+
case 4:
|
|
37
|
+
res = _c.sent();
|
|
38
|
+
if (res) {
|
|
39
|
+
init.status = res.statusCode;
|
|
40
|
+
if (res.data) {
|
|
41
|
+
return [2 /*return*/, response.json(res.data, init)];
|
|
42
|
+
}
|
|
43
|
+
else
|
|
44
|
+
return [2 /*return*/, new response(undefined, init)];
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return [2 /*return*/, ctx.next()];
|
|
48
|
+
}
|
|
49
|
+
;
|
|
50
|
+
return [2 /*return*/];
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}); }
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
exports.remultFresh = remultFresh;
|
|
57
|
+
;
|
|
58
|
+
;
|
package/remult-middleware.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { GenericRequest,
|
|
2
|
-
export declare function remultMiddleware(options?:
|
|
3
|
-
export interface RemultMiddleware extends
|
|
1
|
+
import { GenericRequest, GenericMiddleware, GenericResponse, GenericRouter, buildRemultServer, RemultServerOptions, SpecificRoute, RemultServer } from './server/expressBridge';
|
|
2
|
+
export declare function remultMiddleware(options?: RemultServerOptions): RemultMiddleware;
|
|
3
|
+
export interface RemultMiddleware extends GenericMiddleware, RemultServer {
|
|
4
4
|
handle(req: GenericRequest, gRes?: GenericResponse): Promise<MiddlewareResponse>;
|
|
5
5
|
}
|
|
6
6
|
export interface MiddlewareResponse {
|
|
7
7
|
data?: any;
|
|
8
8
|
statusCode?: number;
|
|
9
9
|
}
|
|
10
|
+
export { GenericRequest, GenericMiddleware as GenericRequestHandler, GenericResponse, GenericRouter, buildRemultServer, RemultServerOptions as RemultMiddlewareOptions, SpecificRoute, RemultServer };
|
package/remult-middleware.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.remultMiddleware = void 0;
|
|
3
|
+
exports.buildRemultServer = exports.remultMiddleware = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var expressBridge_1 = require("./server/expressBridge");
|
|
6
|
+
Object.defineProperty(exports, "buildRemultServer", { enumerable: true, get: function () { return expressBridge_1.buildRemultServer; } });
|
|
6
7
|
function remultMiddleware(options) {
|
|
7
8
|
var m = new middleware();
|
|
8
9
|
var server = expressBridge_1.buildRemultServer(m, options);
|
|
@@ -1,37 +1,39 @@
|
|
|
1
1
|
import { queuedJobInfoResponse } from '../src/server-action';
|
|
2
2
|
import { DataProvider } from '../src/data-interfaces';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { DataApiRequest } from '../src/data-api';
|
|
4
|
+
import { Remult, UserInfo } from '../src/context';
|
|
5
5
|
import { ClassType } from '../classType';
|
|
6
6
|
import { Repository } from '../src/remult3';
|
|
7
7
|
import { IdEntity } from '../src/id-entity';
|
|
8
|
-
export declare type
|
|
8
|
+
export declare type RemultServerOptions = {
|
|
9
9
|
/** Sets a database connection for Remult.
|
|
10
10
|
*
|
|
11
11
|
* @see [Connecting to a Database](https://remult.dev/docs/databases.html).
|
|
12
12
|
*/
|
|
13
13
|
dataProvider?: DataProvider | Promise<DataProvider> | (() => Promise<DataProvider | undefined>);
|
|
14
|
-
disableAutoApi?: boolean;
|
|
15
14
|
queueStorage?: QueueStorage;
|
|
16
15
|
initRequest?: (remult: Remult, origReq: GenericRequest) => Promise<void>;
|
|
16
|
+
getUser?: (request: GenericRequest) => Promise<UserInfo>;
|
|
17
17
|
initApi?: (remult: Remult) => void | Promise<void>;
|
|
18
18
|
logApiEndPoints?: boolean;
|
|
19
19
|
defaultGetLimit?: number;
|
|
20
20
|
entities?: ClassType<any>[];
|
|
21
21
|
controllers?: ClassType<any>[];
|
|
22
|
-
bodyParser?: boolean;
|
|
23
22
|
rootPath?: string;
|
|
24
23
|
};
|
|
25
|
-
export declare function buildRemultServer(
|
|
24
|
+
export declare function buildRemultServer(options: RemultServerOptions): RemultServer;
|
|
26
25
|
export declare type GenericRequestHandler = (req: GenericRequest, res: GenericResponse, next: VoidFunction) => void;
|
|
27
|
-
export interface
|
|
26
|
+
export interface ServerHandleResponse {
|
|
27
|
+
data?: any;
|
|
28
|
+
statusCode: number;
|
|
28
29
|
}
|
|
29
30
|
export interface RemultServer {
|
|
30
31
|
getRemult(req: GenericRequest): Promise<Remult>;
|
|
31
32
|
openApiDoc(options: {
|
|
32
33
|
title: string;
|
|
33
34
|
}): any;
|
|
34
|
-
|
|
35
|
+
registerRouter(r: GenericRouter): void;
|
|
36
|
+
handle(req: GenericRequest, gRes?: GenericResponse): Promise<ServerHandleResponse | undefined>;
|
|
35
37
|
}
|
|
36
38
|
export declare type GenericRouter = {
|
|
37
39
|
route(path: string): SpecificRoute;
|
|
@@ -48,8 +50,6 @@ export interface GenericRequest {
|
|
|
48
50
|
body?: any;
|
|
49
51
|
query?: any;
|
|
50
52
|
params?: any;
|
|
51
|
-
user?: UserInfo;
|
|
52
|
-
auth?: UserInfo;
|
|
53
53
|
}
|
|
54
54
|
export interface GenericResponse {
|
|
55
55
|
json(data: any): any;
|
|
@@ -57,53 +57,11 @@ export interface GenericResponse {
|
|
|
57
57
|
setStatus?(statusCode: number): GenericResponse;
|
|
58
58
|
end(): any;
|
|
59
59
|
}
|
|
60
|
-
declare class ExpressBridge {
|
|
61
|
-
private app;
|
|
62
|
-
queue: inProcessQueueHandler;
|
|
63
|
-
initRequest: (remult: Remult, origReq: GenericRequest) => Promise<void>;
|
|
64
|
-
dataProvider: DataProvider | Promise<DataProvider>;
|
|
65
|
-
openApiDoc(options: {
|
|
66
|
-
title: string;
|
|
67
|
-
version?: string;
|
|
68
|
-
}): any;
|
|
69
|
-
backendMethodsOpenApi: {
|
|
70
|
-
path: string;
|
|
71
|
-
allowed: AllowedForInstance<any>;
|
|
72
|
-
tag: string;
|
|
73
|
-
}[];
|
|
74
|
-
constructor(app: GenericRouter, queue: inProcessQueueHandler, initRequest: (remult: Remult, origReq: GenericRequest) => Promise<void>, dataProvider: DataProvider | Promise<DataProvider>);
|
|
75
|
-
logApiEndPoints: boolean;
|
|
76
|
-
private firstArea;
|
|
77
|
-
addArea(rootUrl: string): SiteArea;
|
|
78
|
-
getRemult(req?: GenericRequest): Promise<Remult>;
|
|
79
|
-
}
|
|
80
|
-
export declare class SiteArea {
|
|
81
|
-
private bridge;
|
|
82
|
-
private app;
|
|
83
|
-
private rootUrl;
|
|
84
|
-
private logApiEndpoints;
|
|
85
|
-
constructor(bridge: ExpressBridge, app: GenericRouter, rootUrl: string, logApiEndpoints: boolean);
|
|
86
|
-
add(key: string, dataApiFactory: ((req: Remult) => DataApi)): void;
|
|
87
|
-
process(what: (remult: Remult, myReq: DataApiRequest, myRes: DataApiResponse, origReq: GenericRequest) => Promise<void>): (req: GenericRequest, res: GenericResponse) => Promise<void>;
|
|
88
|
-
getRemult(req: GenericRequest): Promise<Remult>;
|
|
89
|
-
initQueue(): void;
|
|
90
|
-
addAction(action: {
|
|
91
|
-
__register: (reg: (url: string, queue: boolean, allowed: AllowedForInstance<any>, what: ((data: any, req: Remult, res: DataApiResponse) => void)) => void) => void;
|
|
92
|
-
}): void;
|
|
93
|
-
}
|
|
94
60
|
export declare class ExpressRequestBridgeToDataApiRequest implements DataApiRequest {
|
|
95
61
|
private r;
|
|
96
62
|
get(key: string): any;
|
|
97
63
|
constructor(r: GenericRequest);
|
|
98
64
|
}
|
|
99
|
-
declare class inProcessQueueHandler {
|
|
100
|
-
private storage;
|
|
101
|
-
constructor(storage: QueueStorage);
|
|
102
|
-
submitJob(url: string, req: Remult, body: any): Promise<string>;
|
|
103
|
-
mapQueuedAction(url: string, what: (data: any, r: Remult, res: ApiActionResponse) => void): void;
|
|
104
|
-
actions: Map<string, (data: any, r: Remult, res: ApiActionResponse) => void>;
|
|
105
|
-
getJobInfo(queuedJobId: string): Promise<queuedJobInfo>;
|
|
106
|
-
}
|
|
107
65
|
export interface queuedJobInfo {
|
|
108
66
|
info: queuedJobInfoResponse;
|
|
109
67
|
userId: string;
|
|
@@ -138,4 +96,3 @@ export declare class JobsInQueueEntity extends IdEntity {
|
|
|
138
96
|
error: boolean;
|
|
139
97
|
progress: number;
|
|
140
98
|
}
|
|
141
|
-
export {};
|