remult 0.14.31 → 0.14.34

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