@entity-access/server-pages 1.0.43 → 1.1.3

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 (60) hide show
  1. package/dist/Page.d.ts +6 -13
  2. package/dist/Page.d.ts.map +1 -1
  3. package/dist/Page.js +10 -44
  4. package/dist/Page.js.map +1 -1
  5. package/dist/ServerPages.d.ts.map +1 -1
  6. package/dist/ServerPages.js +14 -2
  7. package/dist/ServerPages.js.map +1 -1
  8. package/dist/core/CacheProperty.d.ts +5 -0
  9. package/dist/core/CacheProperty.d.ts.map +1 -0
  10. package/dist/core/CacheProperty.js +19 -0
  11. package/dist/core/CacheProperty.js.map +1 -0
  12. package/dist/core/Executor.d.ts +5 -0
  13. package/dist/core/Executor.d.ts.map +1 -0
  14. package/dist/core/Executor.js +13 -0
  15. package/dist/core/Executor.js.map +1 -0
  16. package/dist/core/RouteTree.d.ts.map +1 -1
  17. package/dist/core/RouteTree.js +15 -6
  18. package/dist/core/RouteTree.js.map +1 -1
  19. package/dist/core/SessionUser.d.ts +7 -5
  20. package/dist/core/SessionUser.d.ts.map +1 -1
  21. package/dist/core/SessionUser.js +36 -0
  22. package/dist/core/SessionUser.js.map +1 -1
  23. package/dist/core/Wrapped.d.ts +14 -16
  24. package/dist/core/Wrapped.d.ts.map +1 -1
  25. package/dist/core/Wrapped.js +157 -234
  26. package/dist/core/Wrapped.js.map +1 -1
  27. package/dist/decorators/Prepare.d.ts +14 -0
  28. package/dist/decorators/Prepare.d.ts.map +1 -0
  29. package/dist/decorators/Prepare.js +111 -0
  30. package/dist/decorators/Prepare.js.map +1 -0
  31. package/dist/routes/api/entity/index.d.ts.map +1 -1
  32. package/dist/routes/api/entity/index.js +9 -3
  33. package/dist/routes/api/entity/index.js.map +1 -1
  34. package/dist/routes/api/entity/model/get.d.ts.map +1 -1
  35. package/dist/routes/api/entity/model/get.js.map +1 -1
  36. package/dist/routes/api/entity/query/get.d.ts.map +1 -1
  37. package/dist/routes/api/entity/query/get.js +9 -3
  38. package/dist/routes/api/entity/query/get.js.map +1 -1
  39. package/dist/services/CookieService.d.ts.map +1 -1
  40. package/dist/services/CookieService.js +8 -0
  41. package/dist/services/CookieService.js.map +1 -1
  42. package/dist/tsconfig.tsbuildinfo +1 -1
  43. package/package.json +1 -1
  44. package/src/Page.tsx +11 -53
  45. package/src/ServerPages.ts +14 -2
  46. package/src/core/CacheProperty.ts +18 -0
  47. package/src/core/Executor.ts +16 -0
  48. package/src/core/RouteTree.ts +7 -2
  49. package/src/core/SessionUser.ts +21 -5
  50. package/src/core/Wrapped.ts +215 -269
  51. package/src/decorators/Prepare.ts +132 -0
  52. package/src/routes/api/entity/index.tsx +4 -1
  53. package/src/routes/api/entity/model/get.tsx +1 -1
  54. package/src/routes/api/entity/query/get.ts +4 -1
  55. package/src/services/CookieService.ts +9 -1
  56. package/dist/decorators/Authorize.d.ts +0 -2
  57. package/dist/decorators/Authorize.d.ts.map +0 -1
  58. package/dist/decorators/Authorize.js +0 -3
  59. package/dist/decorators/Authorize.js.map +0 -1
  60. package/src/decorators/Authorize.ts +0 -3
package/dist/Page.d.ts CHANGED
@@ -31,29 +31,22 @@ export default class Page {
31
31
  static canHandle(pageContext: IRouteCheck): boolean | Promise<boolean>;
32
32
  request: WrappedRequest;
33
33
  response: WrappedResponse;
34
- get query(): {
35
- [key: string]: string;
36
- };
37
- get asyncJsonBody(): Promise<any>;
38
- get asyncForm(): Promise<import("./core/Wrapped.js").IFormData>;
39
- get asyncParams(): Promise<any>;
40
- get asyncSessionUser(): Promise<SessionUser>;
34
+ get query(): any;
35
+ get body(): any;
36
+ get form(): import("./core/Wrapped.js").IFormData;
37
+ get sessionUser(): SessionUser;
41
38
  get url(): string;
42
39
  get method(): string;
43
40
  signal: AbortSignal;
44
41
  currentPath: string[];
45
42
  childPath: string[];
46
- /**
47
- * List of all paths that were tried before executing this page.
48
- */
49
- notFoundPath: string[];
50
43
  filePath: string;
51
44
  cacheControl: string;
52
45
  disposables: Disposable[];
53
46
  private formDataPromise;
54
47
  constructor();
55
- all(): IPageResult | Promise<IPageResult>;
56
- readFormData(): Promise<IFormData>;
48
+ reportError(error: any): void;
49
+ run(): IPageResult | Promise<IPageResult>;
57
50
  protected content(body: string, status?: number, contentType?: string): Content;
58
51
  protected json(o: any, indent?: number): Content;
59
52
  protected redirect(location: string): Redirect;
@@ -1 +1 @@
1
- {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":";AAGA,OAAO,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E,eAAO,MAAM,MAAM,eAAmB,CAAC;AAGvC,MAAM,WAAW,WAAW;IACxB,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC;IACjC,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IAErB,MAAM,CAAC,CAAC,MAAM,CAAC,UAAQ;IAGvB;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,GAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,OAAO,EAAE,cAAc,CAAC;IAExB,QAAQ,EAAE,eAAe,CAAC;IAE1B,IAAI,KAAK;;MAER;IAED,IAAI,aAAa,iBAEhB;IAED,IAAI,SAAS,mDAEZ;IAED,IAAI,WAAW,iBAEd;IAED,IAAI,gBAAgB,yBAEnB;IAED,IAAI,GAAG,WAEN;IAED,IAAI,MAAM,WAET;IAED,MAAM,EAAE,WAAW,CAAC;IAEpB,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,MAAM,CAAC;IAErB,WAAW,EAAE,UAAU,EAAE,CAAM;IAE/B,OAAO,CAAC,eAAe,CAAqB;;IAM5C,GAAG,IAAI,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAIzC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAqClC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAM,EAAE,WAAW,SAAc;IAIvE,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,SAAI;IAOjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAInC,SAAS,CAAC,QAAQ,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAchD,SAAS,CAAC,WAAW,CAAC,KAAK,KAAA,EAAE,MAAM,SAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAczE"}
1
+ {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":";AAGA,OAAO,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E,eAAO,MAAM,MAAM,eAAmB,CAAC;AAGvC,MAAM,WAAW,WAAW;IACxB,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC;IACjC,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IAErB,MAAM,CAAC,CAAC,MAAM,CAAC,UAAQ;IAGvB;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,GAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,OAAO,EAAE,cAAc,CAAC;IAExB,QAAQ,EAAE,eAAe,CAAC;IAE1B,IAAI,KAAK,IAAI,GAAG,CAEf;IAED,IAAI,IAAI,IAAI,GAAG,CAEd;IAED,IAAI,IAAI,0CAEP;IAED,IAAI,WAAW,gBAEd;IAED,IAAI,GAAG,WAEN;IAED,IAAI,MAAM,WAET;IAED,MAAM,EAAE,WAAW,CAAC;IAEpB,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,MAAM,CAAC;IAErB,WAAW,EAAE,UAAU,EAAE,CAAM;IAE/B,OAAO,CAAC,eAAe,CAAqB;;IAM5C,WAAW,CAAC,KAAK,KAAA;IAIjB,GAAG,IAAI,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAIzC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAM,EAAE,WAAW,SAAc;IAIvE,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,SAAI;IAOjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAInC,SAAS,CAAC,QAAQ,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAchD,SAAS,CAAC,WAAW,CAAC,KAAK,KAAA,EAAE,MAAM,SAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAczE"}
package/dist/Page.js CHANGED
@@ -1,9 +1,7 @@
1
1
  var _a;
2
- import busboy from "busboy";
3
2
  import HtmlDocument from "./html/HtmlDocument.js";
4
3
  import XNode from "./html/XNode.js";
5
4
  import Content, { Redirect } from "./Content.js";
6
- import TempFolder from "./core/TempFolder.js";
7
5
  export const isPage = Symbol("isPage");
8
6
  /**
9
7
  * Page should not contain any reference to underlying request/response objects.
@@ -20,17 +18,14 @@ class Page {
20
18
  get query() {
21
19
  return this.request?.query;
22
20
  }
23
- get asyncJsonBody() {
24
- return this.request?.asyncJsonBody;
21
+ get body() {
22
+ return this.request?.body;
25
23
  }
26
- get asyncForm() {
27
- return this.request?.asyncForm;
24
+ get form() {
25
+ return this.request?.form;
28
26
  }
29
- get asyncParams() {
30
- return this.request?.asyncParams;
31
- }
32
- get asyncSessionUser() {
33
- return this.request?.asyncSessionUser;
27
+ get sessionUser() {
28
+ return this.request?.sessionUser;
34
29
  }
35
30
  get url() {
36
31
  return this.request?.URL.toString();
@@ -42,40 +37,11 @@ class Page {
42
37
  this.disposables = [];
43
38
  this.cacheControl = "no-cache, no-store, max-age=0";
44
39
  }
45
- all() {
46
- return this.notFound();
40
+ reportError(error) {
41
+ console.error(error);
47
42
  }
48
- readFormData() {
49
- return this.formDataPromise ??= (async () => {
50
- let tempFolder;
51
- const result = {
52
- fields: {},
53
- files: []
54
- };
55
- const req = this.request;
56
- const bb = busboy({ headers: req.headers, defParamCharset: "utf8" });
57
- const tasks = [];
58
- await new Promise((resolve, reject) => {
59
- bb.on("field", (name, value) => {
60
- result.fields[name] = value;
61
- });
62
- bb.on("file", (name, file, info) => {
63
- if (!tempFolder) {
64
- tempFolder = new TempFolder();
65
- this.disposables.push(tempFolder);
66
- }
67
- const tf = tempFolder.get(info.filename, info.mimeType);
68
- tasks.push(tf.writeAll(file).then(() => {
69
- result.files.push(tf);
70
- }));
71
- });
72
- bb.on("error", reject);
73
- bb.on("close", resolve);
74
- req.pipe(bb);
75
- });
76
- await Promise.all(tasks);
77
- return result;
78
- })();
43
+ run() {
44
+ return this.notFound();
79
45
  }
80
46
  content(body, status = 200, contentType = "text/html") {
81
47
  return Content.create({ body, status, contentType });
package/dist/Page.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,MAAM,iBAAiB,CAAC;AACpC,OAAO,OAAO,EAAE,EAAe,QAAQ,EAAE,MAAM,cAAc,CAAC;AAO9D,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAgBvC;;GAEG;AACH,MAAqB,IAAI;IAKrB;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,WAAwB;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAMD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;IAC9B,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;IAC9B,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC;IACrC,CAAC;IAED,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;IAgBD;QAJA,gBAAW,GAAiB,EAAE,CAAC;QAK3B,IAAI,CAAC,YAAY,GAAG,+BAA+B,CAAC;IACxD,CAAC;IAED,WAAW,CAAC,KAAK;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,GAAG;QACC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAES,OAAO,CAAC,IAAY,EAAE,MAAM,GAAG,GAAG,EAAE,WAAW,GAAG,WAAW;QACnE,OAAO,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACzD,CAAC;IAES,IAAI,CAAC,CAAM,EAAE,MAAM,GAAG,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM;YAClB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC;YACtC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC1D,CAAC;IAES,QAAQ,CAAC,QAAgB;QAC/B,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAES,QAAQ;QACd,OAAO,OAAO,CAAC,IAAI,CAAC,aAAC,YAAY;YACzB;gBACI,wCAAwB,CACrB;YACP;;gBAEI;oBAAM,IAAI,CAAC,GAAG;iCAAiB,CAC5B,CACI,EACf,GAAG,CACN,CAAC;IACN,CAAC;IAES,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG;QACrC,OAAO,OAAO,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,aAAC,YAAY;gBACX;oBACI,2CAA2B,CACxB;gBACP;;oBAEI,0BAAM,KAAK,CAAC,KAAK,IAAI,KAAK,CAAO,CAC9B,CACI;YACnB,MAAM;SACT,CAAC,CAAC;IACP,CAAC;;KA5GO,MAAM;AAAP,QAAQ,GAAG,IAAI,AAAP,CAAQ;eAFN,IAAI"}
@@ -1 +1 @@
1
- {"version":3,"file":"ServerPages.d.ts","sourceRoot":"","sources":["../src/ServerPages.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAqB,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAOhG,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAgC,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAIxF,MAAM,CAAC,OAAO,OAAO,WAAW;WAEd,MAAM,CAAC,qBAAqB,GAAE,eAAuC;IAKnF,OAAO,CAAC,IAAI,CAA8B;IAE1C;;;;OAIG;IACI,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY;IASlD,oBAAoB;IAI3B;;;OAGG;IACU,KAAK,CAAC,EACf,mBAA0B,EAC1B,IAAW,EACX,QAAiB,EACjB,mBAA2B,EAC3B,WAAW,EACX,WAAW,EACX,IAAI,EACP,EAAC;QACE,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC;QAC1C,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,aAAa,KAAK,IAAI,KAAK,IAAI,CAAC;QACjG,WAAW,CAAC,EAAE,YAAY,CAAA;KAC7B;cA+De,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;CA+E9C"}
1
+ {"version":3,"file":"ServerPages.d.ts","sourceRoot":"","sources":["../src/ServerPages.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAqB,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAOhG,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAgC,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAQxF,MAAM,CAAC,OAAO,OAAO,WAAW;WAEd,MAAM,CAAC,qBAAqB,GAAE,eAAuC;IAKnF,OAAO,CAAC,IAAI,CAA8B;IAE1C;;;;OAIG;IACI,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY;IASlD,oBAAoB;IAI3B;;;OAGG;IACU,KAAK,CAAC,EACf,mBAA0B,EAC1B,IAAW,EACX,QAAiB,EACjB,mBAA2B,EAC3B,WAAW,EACX,WAAW,EACX,IAAI,EACP,EAAC;QACE,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC;QAC1C,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,aAAa,KAAK,IAAI,KAAK,IAAI,CAAC;QACjG,WAAW,CAAC,EAAE,YAAY,CAAA;KAC7B;cA+De,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;CAuF9C"}
@@ -57,6 +57,10 @@ import SocketService from "./socket/SocketService.js";
57
57
  import { Wrapped } from "./core/Wrapped.js";
58
58
  import AcmeCertificateService from "./ssl/AcmeCertificateService.js";
59
59
  import ChallengeServer from "./ssl/ChallengeServer.js";
60
+ import SessionUser from "./core/SessionUser.js";
61
+ import CookieService from "./services/CookieService.js";
62
+ import TokenService from "./services/TokenService.js";
63
+ import Executor from "./core/Executor.js";
60
64
  RegisterSingleton;
61
65
  export default class ServerPages {
62
66
  constructor() {
@@ -157,7 +161,15 @@ export default class ServerPages {
157
161
  resp.setHeader("cache-control", "no-cache");
158
162
  const scope = __addDisposableResource(env_1, ServiceProvider.createScope(this), false);
159
163
  let sent = false;
160
- const acceptJson = req.accepts().some((s) => /\/json$/i.test(s));
164
+ const user = scope.resolve(SessionUser);
165
+ user.resp = resp;
166
+ user.authorize = async () => {
167
+ const cookieService = scope.resolve(CookieService);
168
+ const tokenService = scope.resolve(TokenService);
169
+ await cookieService.createSessionUserFromCookie(tokenService.authCookieName, req.remoteIPAddress);
170
+ user.isAuthorized = true;
171
+ };
172
+ const acceptJson = req.accepts("json");
161
173
  try {
162
174
  const path = req.path.split("/").filter((x) => x);
163
175
  const method = req.method;
@@ -175,7 +187,7 @@ export default class ServerPages {
175
187
  page.childPath = childPath;
176
188
  page.request = req;
177
189
  page.response = resp;
178
- const content = await page.all();
190
+ const content = await Executor.run(page);
179
191
  resp.setHeader("cache-control", page.cacheControl);
180
192
  resp.removeHeader("etag");
181
193
  sent = true;
@@ -1 +1 @@
1
- {"version":3,"file":"ServerPages.js","sourceRoot":"","sources":["../src/ServerPages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServerPages.js","sourceRoot":"","sources":["../src/ServerPages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const CacheProperty: {
2
+ value: (target: any, name: string, value: any) => any;
3
+ get: (target: any, name: string, get: Function) => any;
4
+ };
5
+ //# sourceMappingURL=CacheProperty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CacheProperty.d.ts","sourceRoot":"","sources":["../../src/core/CacheProperty.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;oBACN,GAAG,QAAQ,MAAM,SAAS,GAAG;kBAQ/B,GAAG,QAAQ,MAAM,OAAO,QAAQ;CAQjD,CAAC"}
@@ -0,0 +1,19 @@
1
+ export const CacheProperty = {
2
+ value: (target, name, value) => {
3
+ Object.defineProperty(target, name, {
4
+ value,
5
+ enumerable: true,
6
+ configurable: true
7
+ });
8
+ return value;
9
+ },
10
+ get: (target, name, get) => {
11
+ Object.defineProperty(target, name, {
12
+ get: get,
13
+ enumerable: true,
14
+ configurable: true
15
+ });
16
+ return get.call(target);
17
+ }
18
+ };
19
+ //# sourceMappingURL=CacheProperty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CacheProperty.js","sourceRoot":"","sources":["../../src/core/CacheProperty.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,KAAK,EAAE,CAAC,MAAW,EAAE,IAAY,EAAE,KAAU,EAAE,EAAE;QAC7C,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE;YAChC,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,GAAG,EAAE,CAAC,MAAW,EAAE,IAAY,EAAE,GAAa,EAAE,EAAE;QAC9C,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE;YAChC,GAAG,EAAE,GAAU;YACf,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import Page from "../Page.js";
2
+ export default class Executor {
3
+ static run(c: Page): Promise<import("../Content.js").IPageResult>;
4
+ }
5
+ //# sourceMappingURL=Executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Executor.d.ts","sourceRoot":"","sources":["../../src/core/Executor.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,MAAM,CAAC,OAAO,OAAO,QAAQ;WAEL,GAAG,CAAC,CAAC,EAAE,IAAI;CAUlC"}
@@ -0,0 +1,13 @@
1
+ import { prepareSymbol } from "../decorators/Prepare.js";
2
+ export default class Executor {
3
+ static async run(c) {
4
+ let ps = c.constructor[prepareSymbol];
5
+ if (ps) {
6
+ for (const iterator of ps) {
7
+ await iterator();
8
+ }
9
+ }
10
+ return c.run();
11
+ }
12
+ }
13
+ //# sourceMappingURL=Executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Executor.js","sourceRoot":"","sources":["../../src/core/Executor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,QAAQ;IAElB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAO;QAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACtC,IAAI,EAAE,EAAE,CAAC;YACL,KAAK,MAAM,QAAQ,IAAI,EAAE,EAAE,CAAC;gBACxB,MAAM,QAAQ,EAAE,CAAC;YACrB,CAAC;QACL,CAAC;QACD,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC;CAEJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"RouteTree.d.ts","sourceRoot":"","sources":["../../src/core/RouteTree.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAU,MAAM,YAAY,CAAC;AAIjD,MAAM,WAAW,aAAa;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;CAChC;AAID,MAAM,CAAC,OAAO,OAAO,SAAS;aAME,IAAI,EAAE,MAAM;IAJxC,OAAO,CAAC,QAAQ,CAA+B;IAE/C,OAAO,CAAC,OAAO,CAAgB;gBAEH,IAAI,GAAE,MAAY;IAI9C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IASvB,QAAQ,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA6BzF,QAAQ,CAAC,MAAM,EAAE,MAAM;CA4DjC"}
1
+ {"version":3,"file":"RouteTree.d.ts","sourceRoot":"","sources":["../../src/core/RouteTree.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAU,MAAM,YAAY,CAAC;AAKjD,MAAM,WAAW,aAAa;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;CAChC;AAID,MAAM,CAAC,OAAO,OAAO,SAAS;aAME,IAAI,EAAE,MAAM;IAJxC,OAAO,CAAC,QAAQ,CAA+B;IAE/C,OAAO,CAAC,OAAO,CAAgB;gBAEH,IAAI,GAAE,MAAY;IAI9C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IASvB,QAAQ,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA6BzF,QAAQ,CAAC,MAAM,EAAE,MAAM;CAgEjC"}
@@ -4,6 +4,7 @@ import Page from "../Page.js";
4
4
  import { isPage } from "../Page.js";
5
5
  import { pathToFileURL } from "url";
6
6
  import Content from "../Content.js";
7
+ import { prepareSymbol } from "../decorators/Prepare.js";
7
8
  export default class RouteTree {
8
9
  constructor(path = "/") {
9
10
  this.path = path;
@@ -79,16 +80,24 @@ export default class RouteTree {
79
80
  const handler = pathToFileURL(join(folder, iterator.name)).toString();
80
81
  console.log(`Registering Route ${this.path} with ${handler}`);
81
82
  const promise = (async () => {
83
+ var _a, _b;
82
84
  const { default: pageClass } = await import(handler);
83
85
  if (pageClass[isPage]) {
84
86
  return pageClass;
85
87
  }
86
- return class extends Page {
87
- async all() {
88
- const r = await pageClass.call(this);
89
- return Content.create(r);
90
- }
91
- };
88
+ const c = (_b = class extends Page {
89
+ constructor() {
90
+ super(...arguments);
91
+ this[_a] = pageClass[prepareSymbol];
92
+ }
93
+ async run() {
94
+ const r = await pageClass.call(this);
95
+ return Content.create(r);
96
+ }
97
+ },
98
+ _a = prepareSymbol,
99
+ _b);
100
+ return c;
92
101
  })();
93
102
  (this.handler ??= {})[name] = promise;
94
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RouteTree.js","sourceRoot":"","sources":["../../src/core/RouteTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RouteTree.js","sourceRoot":"","sources":["../../src/core/RouteTree.ts"],"names":[],"mappings":"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"}
@@ -5,23 +5,23 @@ export default class SessionUser {
5
5
  /**
6
6
  * SessionID saved in database for current session.
7
7
  */
8
- sessionID: number;
8
+ get sessionID(): number | null;
9
9
  /**
10
10
  * UserID
11
11
  */
12
- userID?: number;
12
+ get userID(): number | null;
13
13
  /**
14
14
  * Logged in user name
15
15
  */
16
- userName?: string;
16
+ get userName(): string;
17
17
  /**
18
18
  * Application Roles, user is associated with.
19
19
  */
20
- roles?: string[];
20
+ get roles(): string[];
21
21
  /**
22
22
  * Expiry date, after which this session is invalid
23
23
  */
24
- expiry?: Date;
24
+ get expiry(): Date;
25
25
  /**
26
26
  * If set to true, session is no longer valid.
27
27
  */
@@ -29,7 +29,9 @@ export default class SessionUser {
29
29
  ipAddress: string;
30
30
  get isAdmin(): boolean;
31
31
  resp: WrappedResponse;
32
+ private isAuthorized;
32
33
  protected tokenService: TokenService;
34
+ authorize(): Promise<void>;
33
35
  isInRole(role: roles): boolean;
34
36
  ensureLoggedIn(): void;
35
37
  ensureRole(role: roles): void;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionUser.d.ts","sourceRoot":"","sources":["../../src/core/SessionUser.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C,MAAM,MAAM,KAAK,GAAG,eAAe,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,CAAC;AAGzE,MAAM,CAAC,OAAO,OAAO,WAAW;IAE5B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,SAAS,EAAE,MAAM,CAAC;IAElB,IAAI,OAAO,YAEV;IAEM,IAAI,EAAE,eAAe,CAAC;IAG7B,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAErC,QAAQ,CAAC,IAAI,EAAE,KAAK;IAIpB,cAAc;IAMd,UAAU,CAAC,IAAI,EAAE,KAAK;IAOtB,aAAa;IAIP,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;IAYzD,eAAe;CAMlB"}
1
+ {"version":3,"file":"SessionUser.d.ts","sourceRoot":"","sources":["../../src/core/SessionUser.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C,MAAM,MAAM,KAAK,GAAG,eAAe,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,CAAC;AAGzE,MAAM,CAAC,OAAO,OAAO,WAAW;IAE5B;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,CAE1B;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,EAAE,CAEpB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,IAAI,CAEjB;IAED;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,SAAS,EAAE,MAAM,CAAC;IAElB,IAAI,OAAO,YAEV;IAEM,IAAI,EAAE,eAAe,CAAC;IAE7B,OAAO,CAAC,YAAY,CAAS;IAG7B,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAExB,SAAS;IAItB,QAAQ,CAAC,IAAI,EAAE,KAAK;IAIpB,cAAc;IAMd,UAAU,CAAC,IAAI,EAAE,KAAK;IAOtB,aAAa;IAIP,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;IAYzD,eAAe;CAMlB"}
@@ -13,9 +13,45 @@ import DateTime from "@entity-access/entity-access/dist/types/DateTime.js";
13
13
  import TokenService from "../services/TokenService.js";
14
14
  const secure = (process.env["SOCIAL_MAIL_AUTH_COOKIE_SECURE"] ?? "true") === "true";
15
15
  let SessionUser = class SessionUser {
16
+ constructor() {
17
+ this.isAuthorized = false;
18
+ }
19
+ /**
20
+ * SessionID saved in database for current session.
21
+ */
22
+ get sessionID() {
23
+ throw new Error("Please call Authorize first");
24
+ }
25
+ /**
26
+ * UserID
27
+ */
28
+ get userID() {
29
+ throw new Error("Please call Authorize first");
30
+ }
31
+ /**
32
+ * Logged in user name
33
+ */
34
+ get userName() {
35
+ throw new Error("Please call Authorize first");
36
+ }
37
+ /**
38
+ * Application Roles, user is associated with.
39
+ */
40
+ get roles() {
41
+ throw new Error("Please call Authorize first");
42
+ }
43
+ /**
44
+ * Expiry date, after which this session is invalid
45
+ */
46
+ get expiry() {
47
+ throw new Error("Please call Authorize first");
48
+ }
16
49
  get isAdmin() {
17
50
  return this.roles?.includes("Administrator") ?? false;
18
51
  }
52
+ async authorize() {
53
+ this.isAuthorized = true;
54
+ }
19
55
  isInRole(role) {
20
56
  return this.roles?.includes(role) ?? false;
21
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SessionUser.js","sourceRoot":"","sources":["../../src/core/SessionUser.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,iBAAiB,MAAM,+DAA+D,CAAC;AAC9F,OAAO,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,YAA6B,MAAM,6BAA6B,CAAC;AAGxE,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC;AAKrE,IAAM,WAAW,GAAjB,MAAM,WAAW;IAkC5B,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC;IAC1D,CAAC;IAOD,QAAQ,CAAC,IAAW;QAChB,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC/C,CAAC;IAED,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,iBAAiB,EAAE,CAAC;QAClC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,IAAW;QAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QACD,MAAM,IAAI,iBAAiB,EAAE,CAAC;IAClC,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAqC;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC;QACjJ,IAAI,CAAC,IAAI,EAAE,MAAM,CACb,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,EAAE;YACX,MAAM;YACN,QAAQ,EAAE,IAAI;YACd,MAAM;SACT,CAAC,CAAC;IACX,CAAC;IAED,eAAe;QACX,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,EAAE;YACtD,MAAM;YACN,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAzCa;IADT,MAAM;8BACiB,YAAY;iDAAC;AAzCpB,WAAW;IAD/B,cAAc;GACM,WAAW,CAkF/B;eAlFoB,WAAW"}
1
+ {"version":3,"file":"SessionUser.js","sourceRoot":"","sources":["../../src/core/SessionUser.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,iBAAiB,MAAM,+DAA+D,CAAC;AAC9F,OAAO,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,YAA6B,MAAM,6BAA6B,CAAC;AAGxE,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC;AAKrE,IAAM,WAAW,GAAjB,MAAM,WAAW;IAAjB;QAkDH,iBAAY,GAAG,KAAK,CAAC;IAgDjC,CAAC;IAhGG;;OAEG;IACH,IAAI,SAAS;QACT,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACN,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACL,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACN,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IASD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC;IAC1D,CAAC;IASM,KAAK,CAAC,SAAS;QAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,QAAQ,CAAC,IAAW;QAChB,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC/C,CAAC;IAED,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,iBAAiB,EAAE,CAAC;QAClC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,IAAW;QAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QACD,MAAM,IAAI,iBAAiB,EAAE,CAAC;IAClC,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAqC;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC;QACjJ,IAAI,CAAC,IAAI,EAAE,MAAM,CACb,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,EAAE;YACX,MAAM;YACN,QAAQ,EAAE,IAAI;YACd,MAAM;SACT,CAAC,CAAC;IACX,CAAC;IAED,eAAe;QACX,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,EAAE;YACtD,MAAM;YACN,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AA7Ca;IADT,MAAM;8BACiB,YAAY;iDAAC;AArDpB,WAAW;IAD/B,cAAc;GACM,WAAW,CAkG/B;eAlGoB,WAAW"}
@@ -6,8 +6,8 @@ import { IncomingMessage, ServerResponse } from "http";
6
6
  import { Http2ServerRequest, Http2ServerResponse } from "http2";
7
7
  import SessionUser from "./SessionUser.js";
8
8
  import { LocalFile } from "./LocalFile.js";
9
- import { ServiceProvider } from "@entity-access/entity-access/dist/di/di.js";
10
9
  type UnwrappedRequest = IncomingMessage | Http2ServerRequest;
10
+ type UnwrappedResponse = ServerResponse | Http2ServerResponse;
11
11
  export interface IFormData {
12
12
  fields: {
13
13
  [key: string]: string;
@@ -15,12 +15,15 @@ export interface IFormData {
15
15
  files: LocalFile[];
16
16
  }
17
17
  export interface IWrappedRequest {
18
+ headers?: any;
19
+ disposables?: Disposable[];
20
+ response?: WrappedResponse;
18
21
  get host(): string;
19
22
  get path(): string;
20
- get asyncSessionUser(): Promise<SessionUser>;
21
- get asyncJsonBody(): Promise<any>;
22
- get asyncForm(): Promise<IFormData>;
23
- get asyncParams(): Promise<any>;
23
+ get sessionUser(): SessionUser;
24
+ get body(): any;
25
+ get form(): IFormData;
26
+ get params(): any;
24
27
  get query(): {
25
28
  [key: string]: string;
26
29
  };
@@ -33,8 +36,10 @@ export interface IWrappedRequest {
33
36
  accepts(...types: string[]): boolean;
34
37
  }
35
38
  export interface IWrappedResponse {
39
+ request?: WrappedRequest;
36
40
  asyncEnd(): any;
37
41
  asyncWrite(buffer: Buffer): Promise<void>;
42
+ setHeader(name: string, value: string): any;
38
43
  send(data: Buffer | string | Blob, status?: number): Promise<void>;
39
44
  sendRedirect(url: string, permanent?: boolean): void;
40
45
  cookie(name: string, value: string, options?: {
@@ -54,18 +59,11 @@ export interface IWrappedResponse {
54
59
  lastModified?: boolean;
55
60
  }): Promise<void>;
56
61
  }
57
- export type WrappedRequest = UnwrappedRequest & IWrappedRequest & {
58
- scope: ServiceProvider;
59
- response: WrappedResponse;
60
- disposables: Disposable[];
61
- };
62
- type UnwrappedResponse = ServerResponse | Http2ServerResponse;
63
- export type WrappedResponse = UnwrappedResponse & IWrappedResponse & {
64
- request: WrappedRequest;
65
- };
62
+ export type WrappedRequest = IWrappedRequest & UnwrappedRequest;
63
+ export type WrappedResponse = IWrappedResponse & UnwrappedResponse;
66
64
  export declare const Wrapped: {
67
- request: (req: UnwrappedRequest) => WrappedRequest;
68
- response: (req: WrappedRequest, res: UnwrappedResponse) => WrappedResponse;
65
+ request: (req: UnwrappedRequest) => UnwrappedRequest;
66
+ response: (req: WrappedRequest, res: UnwrappedResponse) => UnwrappedResponse;
69
67
  };
70
68
  export {};
71
69
  //# sourceMappingURL=Wrapped.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wrapped.d.ts","sourceRoot":"","sources":["../../src/core/Wrapped.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wrapped.d.ts","sourceRoot":"","sources":["../../src/core/Wrapped.ts"],"names":[],"mappings":"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"}