prostgles-server 4.2.279 → 4.2.280

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 (79) hide show
  1. package/dist/Auth/AuthHandler.d.ts +11 -12
  2. package/dist/Auth/AuthHandler.d.ts.map +1 -1
  3. package/dist/Auth/AuthHandler.js +5 -46
  4. package/dist/Auth/AuthHandler.js.map +1 -1
  5. package/dist/Auth/AuthTypes.d.ts +3 -3
  6. package/dist/Auth/AuthTypes.d.ts.map +1 -1
  7. package/dist/Auth/getClientAuth.d.ts.map +1 -1
  8. package/dist/Auth/getClientAuth.js +1 -0
  9. package/dist/Auth/getClientAuth.js.map +1 -1
  10. package/dist/Auth/utils/getSidAndUserFromRequest.d.ts +0 -5
  11. package/dist/Auth/utils/getSidAndUserFromRequest.d.ts.map +1 -1
  12. package/dist/Auth/utils/getSidAndUserFromRequest.js +0 -58
  13. package/dist/Auth/utils/getSidAndUserFromRequest.js.map +1 -1
  14. package/dist/Auth/utils/handleGetUser.d.ts +5 -0
  15. package/dist/Auth/utils/handleGetUser.d.ts.map +1 -1
  16. package/dist/Auth/utils/handleGetUser.js +30 -2
  17. package/dist/Auth/utils/handleGetUser.js.map +1 -1
  18. package/dist/Auth/utils/setCookieAndGoToReturnURLIFSet.d.ts +18 -0
  19. package/dist/Auth/utils/setCookieAndGoToReturnURLIFSet.d.ts.map +1 -0
  20. package/dist/Auth/utils/setCookieAndGoToReturnURLIFSet.js +52 -0
  21. package/dist/Auth/utils/setCookieAndGoToReturnURLIFSet.js.map +1 -0
  22. package/dist/DboBuilder/DboBuilderTypes.d.ts +8 -6
  23. package/dist/DboBuilder/DboBuilderTypes.d.ts.map +1 -1
  24. package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts +2 -2
  25. package/dist/DboBuilder/ViewHandler/parseFieldFilter.d.ts +1 -1
  26. package/dist/DboBuilder/ViewHandler/parseFieldFilter.d.ts.map +1 -1
  27. package/dist/DboBuilder/ViewHandler/parseFieldFilter.js.map +1 -1
  28. package/dist/Filtering.d.ts +1 -1
  29. package/dist/Prostgles.d.ts +2 -4
  30. package/dist/Prostgles.d.ts.map +1 -1
  31. package/dist/Prostgles.js +34 -136
  32. package/dist/Prostgles.js.map +1 -1
  33. package/dist/ProstglesTypes.d.ts.map +1 -1
  34. package/dist/ProstglesTypes.js.map +1 -1
  35. package/dist/PubSubManager/notifListener.d.ts.map +1 -1
  36. package/dist/PubSubManager/notifListener.js +1 -1
  37. package/dist/PubSubManager/notifListener.js.map +1 -1
  38. package/dist/PublishParser/getFileTableRules.js +3 -3
  39. package/dist/PublishParser/getFileTableRules.js.map +1 -1
  40. package/dist/TableConfig/getSchemaDiffQueries.d.ts +2 -2
  41. package/dist/WebsocketAPI/getClientSchema.d.ts +5 -0
  42. package/dist/WebsocketAPI/getClientSchema.d.ts.map +1 -0
  43. package/dist/WebsocketAPI/getClientSchema.js +105 -0
  44. package/dist/WebsocketAPI/getClientSchema.js.map +1 -0
  45. package/dist/{onSocketConnected.d.ts → WebsocketAPI/onSocketConnected.d.ts} +2 -2
  46. package/dist/WebsocketAPI/onSocketConnected.d.ts.map +1 -0
  47. package/dist/{onSocketConnected.js → WebsocketAPI/onSocketConnected.js} +4 -4
  48. package/dist/WebsocketAPI/onSocketConnected.js.map +1 -0
  49. package/dist/WebsocketAPI/pushSocketSchema.d.ts +4 -0
  50. package/dist/WebsocketAPI/pushSocketSchema.d.ts.map +1 -0
  51. package/dist/WebsocketAPI/pushSocketSchema.js +40 -0
  52. package/dist/WebsocketAPI/pushSocketSchema.js.map +1 -0
  53. package/dist/initProstgles.d.ts.map +1 -1
  54. package/dist/initProstgles.js +5 -3
  55. package/dist/initProstgles.js.map +1 -1
  56. package/dist/runClientRequest.d.ts +1 -1
  57. package/dist/runClientRequest.d.ts.map +1 -1
  58. package/dist/runClientRequest.js +3 -1
  59. package/dist/runClientRequest.js.map +1 -1
  60. package/lib/Auth/AuthHandler.ts +9 -59
  61. package/lib/Auth/AuthTypes.ts +3 -3
  62. package/lib/Auth/getClientAuth.ts +1 -0
  63. package/lib/Auth/utils/getSidAndUserFromRequest.ts +2 -66
  64. package/lib/Auth/utils/handleGetUser.ts +31 -2
  65. package/lib/Auth/utils/setCookieAndGoToReturnURLIFSet.ts +62 -0
  66. package/lib/DboBuilder/DboBuilderTypes.ts +10 -7
  67. package/lib/DboBuilder/ViewHandler/parseFieldFilter.ts +5 -5
  68. package/lib/Prostgles.ts +43 -167
  69. package/lib/ProstglesTypes.ts +0 -1
  70. package/lib/PubSubManager/notifListener.ts +4 -3
  71. package/lib/PublishParser/getFileTableRules.ts +4 -4
  72. package/lib/WebsocketAPI/getClientSchema.ts +111 -0
  73. package/lib/{onSocketConnected.ts → WebsocketAPI/onSocketConnected.ts} +9 -8
  74. package/lib/WebsocketAPI/pushSocketSchema.ts +42 -0
  75. package/lib/initProstgles.ts +6 -3
  76. package/lib/runClientRequest.ts +4 -2
  77. package/package.json +1 -1
  78. package/dist/onSocketConnected.d.ts.map +0 -1
  79. package/dist/onSocketConnected.js.map +0 -1
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getClientSchema = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const runClientRequest_1 = require("../runClientRequest");
6
+ const version = require("../../package.json").version;
7
+ async function getClientSchema(clientReq) {
8
+ const result = await (0, prostgles_types_1.tryCatchV2)(async () => {
9
+ const clientInfo = clientReq.socket ?
10
+ { type: "socket", ...clientReq }
11
+ : { type: "http", ...clientReq };
12
+ const userData = await this.authHandler?.getSidAndUserFromRequest(clientInfo);
13
+ if (userData === "new-session-redirect") {
14
+ throw "new-session-redirect";
15
+ }
16
+ const { publishParser } = this;
17
+ let fullSchema;
18
+ let publishValidationError;
19
+ try {
20
+ if (!publishParser)
21
+ throw "publishParser undefined";
22
+ fullSchema = await publishParser.getSchemaFromPublish({
23
+ ...clientInfo,
24
+ userData,
25
+ });
26
+ }
27
+ catch (e) {
28
+ publishValidationError = e;
29
+ console.error(`\nProstgles Publish validation failed (after socket connected):\n ->`, e);
30
+ }
31
+ let rawSQL = false;
32
+ if (this.opts.publishRawSQL && typeof this.opts.publishRawSQL === "function") {
33
+ const { allowed } = await runClientRequest_1.clientCanRunSqlRequest.bind(this)(clientInfo);
34
+ rawSQL = allowed;
35
+ }
36
+ const { schema, tables, tableSchemaErrors } = fullSchema ?? {
37
+ schema: {},
38
+ tables: [],
39
+ tableSchemaErrors: {},
40
+ };
41
+ const joinTables2 = [];
42
+ if (this.opts.joins) {
43
+ const _joinTables2 = this.dboBuilder
44
+ .getAllJoinPaths()
45
+ .filter((jp) => ![jp.t1, jp.t2].find((t) => !schema[t] || !schema[t]?.findOne))
46
+ .map((jp) => [jp.t1, jp.t2].sort());
47
+ _joinTables2.map((jt) => {
48
+ if (!joinTables2.find((_jt) => _jt.join() === jt.join())) {
49
+ joinTables2.push(jt);
50
+ }
51
+ });
52
+ }
53
+ const methods = await publishParser?.getAllowedMethods(clientInfo, userData);
54
+ const methodSchema = !methods ?
55
+ []
56
+ : Object.entries(methods)
57
+ .map(([methodName, method]) => {
58
+ if ((0, prostgles_types_1.isObject)(method) && "run" in method) {
59
+ return {
60
+ name: methodName,
61
+ ...(0, prostgles_types_1.omitKeys)(method, ["run"]),
62
+ };
63
+ }
64
+ return methodName;
65
+ })
66
+ .sort((a, b) => {
67
+ const aName = (0, prostgles_types_1.isObject)(a) ? a.name : a;
68
+ const bName = (0, prostgles_types_1.isObject)(b) ? b.name : b;
69
+ return aName.localeCompare(bName);
70
+ });
71
+ const authInfo = await this.authHandler?.getClientAuth(clientReq);
72
+ if (authInfo === "new-session-redirect") {
73
+ throw "new-session-redirect";
74
+ }
75
+ const clientSchema = {
76
+ schema,
77
+ methods: methodSchema,
78
+ tableSchema: tables,
79
+ rawSQL,
80
+ joinTables: joinTables2,
81
+ tableSchemaErrors,
82
+ auth: authInfo?.auth,
83
+ version,
84
+ err: publishValidationError ? "Server Error: User publish validation failed." : undefined,
85
+ };
86
+ return {
87
+ publishValidationError,
88
+ clientSchema,
89
+ userData,
90
+ };
91
+ });
92
+ const sid = this.authHandler?.getSIDNoError(clientReq);
93
+ await this.opts.onLog?.({
94
+ type: "connect.getClientSchema",
95
+ duration: result.duration,
96
+ sid,
97
+ socketId: clientReq.socket?.id,
98
+ error: result.error || result.data?.publishValidationError,
99
+ });
100
+ if (result.hasError)
101
+ throw result.error;
102
+ return result.data.clientSchema;
103
+ }
104
+ exports.getClientSchema = getClientSchema;
105
+ //# sourceMappingURL=getClientSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getClientSchema.js","sourceRoot":"","sources":["../../lib/WebsocketAPI/getClientSchema.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AnyObject } from "prostgles-types";
2
- import type { Prostgles } from "./Prostgles";
3
- import { PRGLIOSocket } from "./DboBuilder/DboBuilderTypes";
2
+ import type { Prostgles } from "../Prostgles";
3
+ import { PRGLIOSocket } from "../DboBuilder/DboBuilderTypes";
4
4
  export declare function onSocketConnected(this: Prostgles, socket: PRGLIOSocket): Promise<void>;
5
5
  export declare function makeSocketError(cb: (err: AnyObject) => void, err: any): void;
6
6
  //# sourceMappingURL=onSocketConnected.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onSocketConnected.d.ts","sourceRoot":"","sources":["../../lib/WebsocketAPI/onSocketConnected.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO7D,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,iBA0I5E;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,EAAE,GAAG,EAAE,GAAG,QAErE"}
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.makeSocketError = exports.onSocketConnected = void 0;
4
4
  const prostgles_types_1 = require("prostgles-types");
5
- const runClientRequest_1 = require("./runClientRequest");
6
- const dboBuilderUtils_1 = require("./DboBuilder/dboBuilderUtils");
7
- const AuthHandler_1 = require("./Auth/AuthHandler");
5
+ const runClientRequest_1 = require("../runClientRequest");
6
+ const dboBuilderUtils_1 = require("../DboBuilder/dboBuilderUtils");
7
+ const AuthHandler_1 = require("../Auth/AuthHandler");
8
8
  async function onSocketConnected(socket) {
9
9
  if (!this.db || !this.dbo)
10
10
  throw new Error("db/dbo missing");
@@ -18,7 +18,7 @@ async function onSocketConnected(socket) {
18
18
  try {
19
19
  const getUser = async () => {
20
20
  if (!this.authHandler)
21
- throw "authHandler missing";
21
+ return { sid: undefined, user: undefined };
22
22
  const res = await this.authHandler.getSidAndUserFromRequest({ socket });
23
23
  if (res === "new-session-redirect") {
24
24
  socket.emit(prostgles_types_1.CHANNELS.AUTHGUARD, {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onSocketConnected.js","sourceRoot":"","sources":["../../lib/WebsocketAPI/onSocketConnected.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { PRGLIOSocket } from "../DboBuilder/DboBuilderTypes";
2
+ import { Prostgles } from "../Prostgles";
3
+ export declare function pushSocketSchema(this: Prostgles, socket: PRGLIOSocket): Promise<void>;
4
+ //# sourceMappingURL=pushSocketSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pushSocketSchema.d.ts","sourceRoot":"","sources":["../../lib/WebsocketAPI/pushSocketSchema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,iBAmC3E"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pushSocketSchema = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const runClientRequest_1 = require("../runClientRequest");
6
+ const onSocketConnected_1 = require("./onSocketConnected");
7
+ const dboBuilderUtils_1 = require("../DboBuilder/dboBuilderUtils");
8
+ async function pushSocketSchema(socket) {
9
+ try {
10
+ const clientSchema = await this.getClientSchema({ socket });
11
+ socket.prostgles = clientSchema;
12
+ if (clientSchema.rawSQL) {
13
+ socket.removeAllListeners(prostgles_types_1.CHANNELS.SQL);
14
+ socket.on(prostgles_types_1.CHANNELS.SQL, (sqlRequestData, cb = (..._callback) => {
15
+ /* Empty */
16
+ }) => {
17
+ runClientRequest_1.runClientSqlRequest
18
+ .bind(this)(sqlRequestData, { socket })
19
+ .then((res) => {
20
+ cb(null, res);
21
+ })
22
+ .catch((err) => {
23
+ (0, onSocketConnected_1.makeSocketError)(cb, err);
24
+ });
25
+ });
26
+ }
27
+ await this.dboBuilder.prostgles.opts.onLog?.({
28
+ type: "debug",
29
+ command: "pushSocketSchema",
30
+ duration: -1,
31
+ data: { socketId: socket.id, clientSchema },
32
+ });
33
+ socket.emit(prostgles_types_1.CHANNELS.SCHEMA, clientSchema);
34
+ }
35
+ catch (err) {
36
+ socket.emit(prostgles_types_1.CHANNELS.SCHEMA, { err: (0, dboBuilderUtils_1.getErrorAsObject)(err) });
37
+ }
38
+ }
39
+ exports.pushSocketSchema = pushSocketSchema;
40
+ //# sourceMappingURL=pushSocketSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pushSocketSchema.js","sourceRoot":"","sources":["../../lib/WebsocketAPI/pushSocketSchema.ts"],"names":[],"mappings":";;;AAAA,qDAA4D;AAG5D,0DAA0D;AAC1D,2DAAsD;AACtD,mEAAiE;AAC1D,KAAK,UAAU,gBAAgB,CAAkB,MAAoB;IAC1E,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC;QAChC,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,CAAC,kBAAkB,CAAC,0BAAQ,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,CAAC,EAAE,CACP,0BAAQ,CAAC,GAAG,EACZ,CACE,cAA0B,EAC1B,KAAK,CAAC,GAAG,SAAc,EAAE,EAAE;gBACzB,WAAW;YACb,CAAC,EACD,EAAE;gBACF,sCAAmB;qBAChB,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;qBACtC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBACZ,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAChB,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,IAAA,mCAAe,EAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3B,CAAC,CAAC,CAAC;YACP,CAAC,CACF,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3C,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,CAAC,CAAC;YACZ,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE;SAC5C,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,0BAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,0BAAQ,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAA,kCAAgB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAnCD,4CAmCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"initProstgles.d.ts","sourceRoot":"","sources":["../lib/initProstgles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAiB,MAAM,+BAA+B,CAAC;AAM3E;;GAEG;AACH,MAAM,MAAM,YAAY;AACtB;;GAEG;AACH,MAAM,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAChD,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC,SAAS,CAAC;AAE5C,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAClD,MAAM,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAErD,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,oBAAoB,EACpB,WAAW,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,MAAM,CAClE,CAAC;AACF,MAAM,MAAM,YAAY,GACpB;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CACzE,GACD;IACE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,aAAa,CAAC;CAC/C,CAAC;AAEN,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,GAAG,EAAE,eAAe,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,mBAAmB,GAAG;IACnD,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,GAAG,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,aAAa,CAAC;IAClB,GAAG,EAAE,EAAE,CAAC;IACR,GAAG,EAAE,GAAG,CAAC;IACT,EAAE,CAAC,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,QAAA,MAAM,oBAAoB,UAA0D,CAAC;AAErF,eAAO,MAAM,aAAa,SAClB,SAAS,WACN,oBAAoB,UACrB,YAAY,KACnB,QAAQ,UAAU,CAqLpB,CAAC"}
1
+ {"version":3,"file":"initProstgles.d.ts","sourceRoot":"","sources":["../lib/initProstgles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAiB,MAAM,+BAA+B,CAAC;AAM3E;;GAEG;AACH,MAAM,MAAM,YAAY;AACtB;;GAEG;AACH,MAAM,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAChD,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC,SAAS,CAAC;AAE5C,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAClD,MAAM,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAErD,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,oBAAoB,EACpB,WAAW,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,MAAM,CAClE,CAAC;AACF,MAAM,MAAM,YAAY,GACpB;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CACzE,GACD;IACE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,aAAa,CAAC;CAC/C,CAAC;AAEN,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,GAAG,EAAE,eAAe,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,mBAAmB,GAAG;IACnD,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,GAAG,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,aAAa,CAAC;IAClB,GAAG,EAAE,EAAE,CAAC;IACR,GAAG,EAAE,GAAG,CAAC;IACT,EAAE,CAAC,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,QAAA,MAAM,oBAAoB,UAA0D,CAAC;AAErF,eAAO,MAAM,aAAa,SAClB,SAAS,WACN,oBAAoB,UACrB,YAAY,KACnB,QAAQ,UAAU,CAwLpB,CAAC"}
@@ -17,8 +17,9 @@ const initProstgles = async function (onReady, reason) {
17
17
  this.opts.restApi?.expressApp ??
18
18
  this.opts.auth?.loginSignupConfig?.app;
19
19
  /** Crucial in ensuring the runtime version of express works as expected */
20
- if (expressApp)
20
+ if (expressApp) {
21
21
  await (0, removeExpressRoute_1.removeExpressRoutesTest)(expressApp);
22
+ }
22
23
  if (!this.db) {
23
24
  let existingAppName = "";
24
25
  let connString = "";
@@ -37,7 +38,7 @@ const initProstgles = async function (onReady, reason) {
37
38
  existingAppName =
38
39
  url.searchParams.get("application_name") ?? url.searchParams.get("ApplicationName") ?? "";
39
40
  }
40
- catch (e) { }
41
+ catch { }
41
42
  }
42
43
  const conObj = typeof this.opts.dbConnection === "string" ?
43
44
  { connectionString: this.opts.dbConnection }
@@ -45,7 +46,8 @@ const initProstgles = async function (onReady, reason) {
45
46
  const application_name = `prostgles ${this.appId} ${existingAppName}`;
46
47
  /* 1. Connect to db */
47
48
  const { db, pgp } = getDbConnection({
48
- ...this.opts,
49
+ onQuery: this.opts.onQuery,
50
+ DEBUG_MODE: this.opts.DEBUG_MODE,
49
51
  dbConnection: { ...conObj, application_name },
50
52
  onNotice: (notice) => {
51
53
  if (this.opts.onNotice)
@@ -1 +1 @@
1
- {"version":3,"file":"initProstgles.js","sourceRoot":"","sources":["../lib/initProstgles.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AAExC,qDAAmD;AACnD,uDAAoD;AAEpD,2CAAyE;AAEzE,iEAA2E;AAC3E,2DAAwD;AACxD,mCAAgC;AAChC,yDAAsD;AACtD,wEAA0E;AA+D1E,MAAM,oBAAoB,GAAG,CAAC,MAAM,CAAgD,CAAC;AAE9E,MAAM,aAAa,GAAG,KAAK,WAEhC,OAA6B,EAC7B,MAAoB;IAEpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACpB,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU;QAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU;QAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,CAAC;IAEzC,2EAA2E;IAC3E,IAAI,UAAU;QAAE,MAAM,IAAA,4CAAuB,EAAC,UAAU,CAAC,CAAC;IAE1D,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC/C,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QACtC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;YACnD,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAClE,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;gBAChC,eAAe;oBACb,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC9F,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GACV,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC;YAC1C,EAAE,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QAC3B,MAAM,gBAAgB,GAAG,aAAa,IAAI,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC;QAEtE,sBAAsB;QACtB,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,eAAe,CAAC;YAClC,GAAG,IAAI,CAAC,IAAI;YACZ,YAAY,EAAE,EAAE,GAAG,MAAM,EAAE,gBAAgB,EAAE;YAC7C,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnB,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACnD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,MAAM,IAAA,0BAAc,EAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;IAEf,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAI,CAAC;IAEtB,IAAI,CAAC;QACH,yCAAyC;QACzC,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,CAAC;QACvB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,CAAC,WAAW,GAAG,MAAM,yBAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE7D,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC/D,CAAC;YAED,2BAA2B;YAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;YAEvB,IAAI,CAAC,aAAa,GAAG,IAAI,6BAAa,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEnD,uCAAuC;YACvC,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,2CAA2C,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,2CAA2C;QAC3C,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,CAAC;gBACN,GAAG,EAAE,IAAI,CAAC,GAAI;gBACd,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM;gBAC9B,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,GAAoB;YAC7B,GAAG,EAAE,EAAE;YACP,GAAG;YACH,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;YAChB,WAAW,EAAE,IAAI,CAAC,gBAAgB;YAClC,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxB,IAAA,yBAAO,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7B,YAAY;oBACZ,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC;gBAEH,IAAI,WAAW,IAAI,OAAO,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC7B,CAAC;gBACD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;oBACzB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,CAAC;gBACD,IAAI,aAAa,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;oBACxB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1B,CAAC;gBACD,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;oBACtB,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;gBAED,IAAI,IAAA,yBAAO,EAAC,OAAO,CAAC;oBAAE,OAAO;gBAE7B;;;mBAGG;gBACH,IACE,IAAA,yBAAO,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CACpC,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,UAAU,CAAC,CACvD,EACD,CAAC;oBACD,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;YAC3D,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACjB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;wBACjC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;oBACxD,CAAC,CAAC,CAAC;oBAEH,mDAAmD;oBACnD,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAC1D,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;4BAC3D,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;oBACH,CAAC;oBACD,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACtD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBAChC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,CAAC;gBACxC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;gBACrB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;gBACpB,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAA,aAAK,EAAC,IAAI,CAAC,CAAC;gBAClB,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,eAAe,GAAI,CAAW,CAAC,QAAQ,EAAE,CAAC;IAClD,CAAC;AACH,CAAC,CAAC;AAzLW,QAAA,aAAa,iBAyLxB;AAMF,MAAM,eAAe,GAAG,UAAU,EAChC,YAAY,EACZ,OAAO,EACP,UAAU,EACV,QAAQ,GACY;IACpB,MAAM,cAAc,GAGlB,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,SAAS;QACX,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACb,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IAEN,MAAM,GAAG,GAAQ,SAAS,CAAC;QACzB,GAAG,CAAC,cAAc,CAAC,CAAC;YAClB;gBACE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,CAAC;gBAC9C,KAAK,EAAE,cAAc;aACtB;YACH,CAAC,CAAC,EAAE,CAAC;QACL,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC,CAAC;YAC1B;gBACE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE;oBACrC,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC;oBAC1B,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;wBAClD,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,GAAG;4BAC/B,IAAI,QAAQ,EAAE,CAAC;gCACb,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;4BAC9B,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;4BAC1C,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;wBACjD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG;4BAC9B,IAAI,QAAQ,EAAE,CAAC;gCACb,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;4BAC9B,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;4BACzC,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACN,CAAC,CAAC;IACH,4BAA4B;IAE5B,iGAAiG;IACjG,0CAA0C;IAE1C;;;;;;OAMG;IACH,2EAA2E;IAC3E,wEAAwE;IACxE,oDAAoD;IACpD,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B;IACrG,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B;IACpG,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;IAEzE,mBAAmB;IACnB,+CAA+C;IAC/C,IAAI;IAEJ,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,YAAY,CAAC;QACrB,GAAG;KACJ,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"initProstgles.js","sourceRoot":"","sources":["../lib/initProstgles.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export declare const clientCanRunSqlRequest: (this: Prostgles, clientReq: AuthCl
18
18
  reqInfo: AuthClientRequest;
19
19
  clientReq?: undefined;
20
20
  }>;
21
- export declare const runClientSqlRequest: (this: Prostgles, reqData: SQLRequest, clientReq: AuthClientRequest) => Promise<import("prostgles-types").SQLResult<"values" | "rows" | "row" | "value" | "statement" | "statement-no-rls" | "statement-where" | "default-with-rollback" | "noticeSubscription" | "arrayMode" | "stream" | undefined>>;
21
+ export declare const runClientSqlRequest: (this: Prostgles, reqData: SQLRequest, clientReq: AuthClientRequest) => Promise<import("prostgles-types").SQLResult<"values" | "row" | "rows" | "value" | "statement" | "noticeSubscription" | "stream" | "statement-no-rls" | "statement-where" | "default-with-rollback" | "arrayMode" | undefined>>;
22
22
  type ArgsMethod = {
23
23
  method: string;
24
24
  params?: any[];
@@ -1 +1 @@
1
- {"version":3,"file":"runClientRequest.d.ts","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAKV,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA2BxC,KAAK,IAAI,GAAG;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;CACb,CAAC;AAUF,eAAO,MAAM,gBAAgB,SACrB,SAAS,QACT,IAAI,aACC,iBAAiB,mCA4E7B,CAAC;AAKF,eAAO,MAAM,sBAAsB,SAC3B,SAAS,aACJ,iBAAiB;;;;;;;;EAgB7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,SACxB,SAAS,WACN,UAAU,aACR,iBAAiB,mOAS7B,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;CAChB,CAAC;AACF,eAAO,MAAM,eAAe,SACpB,SAAS,WACN,UAAU,aACR,iBAAiB,iBAmB7B,CAAC"}
1
+ {"version":3,"file":"runClientRequest.d.ts","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAKV,KAAK,SAAS,EAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA2BxC,KAAK,IAAI,GAAG;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;CACb,CAAC;AAUF,eAAO,MAAM,gBAAgB,SACrB,SAAS,QACT,IAAI,aACC,iBAAiB,mCA6E7B,CAAC;AAKF,eAAO,MAAM,sBAAsB,SAC3B,SAAS,aACJ,iBAAiB;;;;;;;;EAgB7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,SACxB,SAAS,WACN,UAAU,aACR,iBAAiB,mOAS7B,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;CAChB,CAAC;AACF,eAAO,MAAM,eAAe,SACpB,SAAS,WACN,UAAU,aACR,iBAAiB,iBAmB7B,CAAC"}
@@ -52,7 +52,9 @@ const runClientRequest = async function (args, clientReq) {
52
52
  const sessionUser = !clientInfo?.user ?
53
53
  undefined
54
54
  : {
55
- ...(0, parseFieldFilter_1.parseFieldFilter)(clientInfo.sessionFields ?? [], false, Object.keys(clientInfo.user)),
55
+ ...(0, parseFieldFilter_1.parseFieldFilter)(
56
+ //@ts-ignore
57
+ clientInfo.sessionFields ?? [], false, (0, prostgles_types_1.getKeys)(clientInfo.user)),
56
58
  ...(0, prostgles_types_1.pickKeys)(clientInfo.user, ["id", "type"]),
57
59
  };
58
60
  const localParams = {
@@ -1 +1 @@
1
- {"version":3,"file":"runClientRequest.js","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runClientRequest.js","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":";;;AAAA,qDAQyB;AAIzB,gFAA6E;AAC7E,gDAAgD;AAIhD,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,WAAW,EAAE,CAAC;IACd,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;CAC8E,CAAC;AAExF,MAAM,kBAAkB,GAAG,IAAA,yBAAO,EAAC,aAAa,CAAC,CAAC;AAClD,MAAM,oBAAoB,GAAG;IAC3B,WAAW;IACX,cAAc;IACd,MAAM;CACsC,CAAC;AAkBxC,MAAM,gBAAgB,GAAG,KAAK,WAEnC,IAAU,EACV,SAA4B;IAE5B,gGAAgG;IAChG,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,uCAAuC,CAAC;IAChD,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACjF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,mBAAmB,CAAC,EAAE,CAAC;QAC/D,MAAM,oBAAoB,mBAAmB,uBAAuB,kBAAkB,GAAG,CAAC;IAC5F,CAAC;IACD,MAAM,OAAO,GAAG,mBAAyC,CAAC;IAC1D,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC;QACzE,MAAM,CACJ,8EAA8E;YAC9E,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAChC,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC/E,IAAI,UAAU,KAAK,sBAAsB,EAAE,CAAC;QAC1C,MAAM,UAAU,CAAC;IACnB,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,uBAAuB,CACjE,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EACjC,UAAU,CACX,CAAC;IAEF,uEAAuE;IACvE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,kCAAkC,SAAS,IAAI,OAAO,GAAG,CAAC;IAClE,CAAC;IAED,MAAM,WAAW,GACf,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjB,SAAS;QACX,CAAC,CAAC;YACE,GAAG,IAAA,mCAAgB;YACjB,YAAY;YACZ,UAAU,CAAC,aAAa,IAAI,EAAE,EAC9B,KAAK,EACL,IAAA,yBAAO,EAAC,UAAU,CAAC,IAAI,CAAC,CACzB;YACD,GAAI,IAAA,0BAAQ,EAAC,UAAU,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAc;SAC3D,CAAC;IACN,MAAM,WAAW,GAAgB;QAC/B,SAAS;QACT,eAAe,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;KACvC,CAAC;IACF,IAAI,MAAM,IAAK,MAAsB,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,MAAM,IAAA,kBAAS,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,SAAS,EAAE,CAAC;YACd,WAAW,CAAC,WAAW,GAAI,MAAsB,CAAC,WAAW,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,+CAA+C,CAAC;QACxD,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,YAAY;QAAE,MAAM,qBAAqB,SAAS,WAAW,CAAC;IAEjG;;OAEG;IACH,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAEf,CAAC;IAC/C,IAAI,CAAC,YAAY;QAAE,MAAM,2CAA2C,OAAO,EAAE,CAAC;IAC9E,OAAQ,IAAI,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,OAAO,CAAgD,CAClF,MAAM,EACN,MAAM,EACN,MAAM,EACN,UAAU,EACV,WAAW,CACa,CAAC;IAC3B,oCAAoC;IACpC,sIAAsI;IACtI,iBAAiB;AACnB,CAAC,CAAC;AAhFW,QAAA,gBAAgB,oBAgF3B;AAEF,wFAAwF;AACxF,uFAAuF;AAEhF,MAAM,sBAAsB,GAAG,KAAK,WAEzC,SAA4B;IAE5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,qBAAqB,CAAC;QAC9B,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvF,MAAM,GAAG,GAAG,aAAa,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;QAC9E,OAAO,OAAO,CAAC,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,SAAS,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;IACnE,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,SAAS,EAAE,CAAC;IAClC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACzC,CAAC,CAAC;AAlBW,QAAA,sBAAsB,0BAkBjC;AAEK,MAAM,mBAAmB,GAAG,KAAK,WAEtC,OAAmB,EACnB,SAA4B;IAE5B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,8BAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,4BAA4B,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG;QAAE,MAAM,qCAAqC,CAAC;IAChE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAZW,QAAA,mBAAmB,uBAY9B;AAMK,MAAM,eAAe,GAAG,KAAK,WAElC,OAAmB,EACnB,SAA4B;IAE5B,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAElF,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;QAC3B,MAAM,4BAA4B,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,KAAK,GACT,CACE,OAAO,SAAS,KAAK,UAAU;QAC/B,OAAQ,SAAsC,CAAC,IAAI,KAAK,UAAU,CACnE,CAAC,CAAC;QACA,SAA6C;QAChD,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;IAClB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAtBW,QAAA,eAAe,mBAsB1B"}
@@ -1,17 +1,19 @@
1
1
  import { AnyObject, CHANNELS } from "prostgles-types";
2
2
  import { PRGLIOSocket } from "../DboBuilder/DboBuilder";
3
- import { removeExpressRoute } from "./utils/removeExpressRoute";
4
3
  import { DB, DBHandlerServer, Prostgles } from "../Prostgles";
5
- import { AuthClientRequest, AuthConfig, BasicSession, ExpressReq } from "./AuthTypes";
6
- import { LoginResponseHandler } from "./endpoints/setLoginRequestHandler";
4
+ import { AuthClientRequest, AuthConfig, BasicSession } from "./AuthTypes";
7
5
  import { getClientAuth } from "./getClientAuth";
8
- import { getBasicSessionErrorCode, login } from "./login";
6
+ import { login } from "./login";
9
7
  import { setupAuthRoutes } from "./setupAuthRoutes";
10
8
  import { getClientRequestIPsInfo } from "./utils/getClientRequestIPsInfo";
11
- import { getReturnUrl } from "./utils/getReturnUrl";
12
9
  import { getSidAndUserFromRequest } from "./utils/getSidAndUserFromRequest";
13
10
  import { getUserOrError } from "./utils/getUserOrError";
14
11
  import { handleGetUserThrottled } from "./utils/handleGetUser";
12
+ import { removeExpressRoute } from "./utils/removeExpressRoute";
13
+ import {
14
+ setCookieAndGoToReturnURLIFSet,
15
+ validateSessionAndSetCookie,
16
+ } from "./utils/setCookieAndGoToReturnURLIFSet";
15
17
 
16
18
  export { getClientRequestIPsInfo, removeExpressRoute };
17
19
  export const HTTP_FAIL_CODES = {
@@ -85,60 +87,8 @@ export class AuthHandler {
85
87
  });
86
88
  };
87
89
 
88
- validateSessionAndSetCookie = (
89
- cookie: { sid: string; expires: number },
90
- requestHandler: { req: ExpressReq; res: LoginResponseHandler }
91
- ) => {
92
- const sessionErrorCode = getBasicSessionErrorCode(cookie);
93
- if (sessionErrorCode) {
94
- const { res } = requestHandler;
95
- res.status(HTTP_FAIL_CODES.UNAUTHORIZED).json({
96
- success: false,
97
- code: sessionErrorCode,
98
- });
99
- return;
100
- }
101
- return this.setCookieAndGoToReturnURLIFSet(cookie, requestHandler);
102
- };
103
-
104
- setCookieAndGoToReturnURLIFSet = (
105
- cookie: { sid: string; expires: number },
106
- requestHandler: { req: ExpressReq; res: LoginResponseHandler }
107
- ) => {
108
- const { sid, expires } = cookie;
109
- const { res, req } = requestHandler;
110
- if (!sid) {
111
- throw "no sid";
112
- }
113
-
114
- const maxAgeOneDay = 60 * 60 * 24; // 24 hours;
115
- type CookieExpirationOptions = { maxAge: number } | { expires: Date };
116
- let cookieDuration: CookieExpirationOptions = {
117
- maxAge: maxAgeOneDay,
118
- };
119
-
120
- if (expires && Number.isFinite(expires) && !isNaN(+new Date(expires))) {
121
- cookieDuration = { expires: new Date(expires) };
122
- const days = (+cookieDuration.expires - Date.now()) / (24 * 60 * 60e3);
123
- if (days >= 400) {
124
- console.warn(`Cookie expiration is higher than the Chrome 400 day limit: ${days}days`);
125
- }
126
- }
127
-
128
- const cookieOpts = {
129
- ...cookieDuration,
130
- // The cookie only accessible by the web server
131
- httpOnly: true,
132
- //signed: true
133
- secure: true,
134
- sameSite: "strict" as const,
135
- ...(this.opts.loginSignupConfig?.cookieOptions ?? {}),
136
- };
137
- const cookieData = sid;
138
- res.cookie(this.sidKeyName, cookieData, cookieOpts);
139
- const successURL = getReturnUrl(req) || "/";
140
- res.redirect(successURL);
141
- };
90
+ setCookieAndGoToReturnURLIFSet = setCookieAndGoToReturnURLIFSet.bind(this);
91
+ validateSessionAndSetCookie = validateSessionAndSetCookie.bind(this);
142
92
  handleGetUser = handleGetUserThrottled.bind(this);
143
93
  getUserOrError = getUserOrError.bind(this);
144
94
 
@@ -22,14 +22,14 @@ import {
22
22
  ClientSchema,
23
23
  } from "prostgles-types";
24
24
  import { DBOFullyTyped } from "../DBSchemaBuilder";
25
- import { PRGLIOSocket } from "../DboBuilder/DboBuilderTypes";
25
+ import { PRGLIOSocket, type CachedSession } from "../DboBuilder/DboBuilderTypes";
26
26
  import { DB } from "../Prostgles";
27
27
  import OAuth2Strategy from "passport-oauth2";
28
28
  import { AUTH_ROUTES_AND_PARAMS } from "./AuthHandler";
29
29
 
30
30
  type Awaitable<T> = T | Promise<T>;
31
31
 
32
- export type ExpressReq = Request;
32
+ export type ExpressReq = Request & CachedSession;
33
33
  export type ExpressRes = Response;
34
34
 
35
35
  export type LoginClientInfo = {
@@ -314,7 +314,7 @@ export type AuthConfig<S = void, SUser extends SessionUser = SessionUser> = {
314
314
  * - publish - userData and/or sid (in testing) are passed to the publish function
315
315
  * - auth.expressConfig.use - express middleware to get user data and
316
316
  * undefined sid is allowed to enable public users
317
- * - websocket authguard - allows connected SPA client to check if on protected route and needs to reload to ne redirected to login
317
+ * - websocket authguard - when session expires tells the client to reload to be redirected to login
318
318
  */
319
319
  getUser: (
320
320
  sid: string | undefined,
@@ -86,6 +86,7 @@ export async function getClientAuth(
86
86
  return userData;
87
87
  }
88
88
  const auth: AuthSocketSchema = {
89
+ //@ts-ignore
89
90
  providers: getOAuthProviders(loginWithOAuth),
90
91
  signupWithEmailAndPassword: signupWithEmailAndPassword && {
91
92
  minPasswordLength: signupWithEmailAndPassword.minPasswordLength ?? 8,
@@ -1,77 +1,13 @@
1
1
  import { isObject } from "prostgles-types";
2
- import { DBOFullyTyped } from "../../DBSchemaBuilder";
3
- import { AuthHandler, getClientRequestIPsInfo } from "../AuthHandler";
4
- import { AuthClientRequest, AuthResultWithSID } from "../AuthTypes";
5
- import { throttledAuthCall } from "./throttledReject";
2
+ import { AuthHandler } from "../AuthHandler";
3
+ import { AuthClientRequest } from "../AuthTypes";
6
4
  import type { GetUserOrRedirected } from "./handleGetUser";
7
5
 
8
- /**
9
- * For a given sid return the user data if available using the auth handler's getUser method.
10
- * Use socket session cache if configured in Auth
11
- * Used in Publish Parser and AuthHandler
12
- */
13
6
  export async function getSidAndUserFromRequest(
14
7
  this: AuthHandler,
15
8
  clientReq: AuthClientRequest
16
9
  ): Promise<GetUserOrRedirected> {
17
- /**
18
- * Get cached session if available
19
- */
20
- const getSessionForCaching = this.opts.cacheSession?.getSession;
21
- if (clientReq.socket && getSessionForCaching && clientReq.socket.__prglCache) {
22
- const { session, userData } = clientReq.socket.__prglCache;
23
- const isValid = this.isNonExpiredSocketSession(clientReq.socket, session);
24
- if (isValid) {
25
- return {
26
- ...userData,
27
- sid: session.sid,
28
- };
29
- } else
30
- return {
31
- sid: session.sid,
32
- };
33
- }
34
-
35
- /**
36
- * Get sid from request and fetch user data
37
- */
38
10
  const authStart = Date.now();
39
- // const result = await throttledAuthCall(async () => {
40
- // const clientInfoOrErr = await this.opts.getUser(
41
- // this.getValidatedSid(clientReq),
42
- // this.dbo as DBOFullyTyped,
43
- // this.db,
44
- // getClientRequestIPsInfo(clientReq),
45
- // clientReq
46
- // );
47
- // if (clientInfoOrErr && (typeof clientInfoOrErr === "string" || "success" in clientInfoOrErr))
48
- // throw clientInfoOrErr;
49
- // const clientInfo = clientInfoOrErr;
50
-
51
- // if (clientInfo && "type" in clientInfo) {
52
- // if (!("httpReq" in clientReq) || !clientReq.httpReq) throw "httpReq missing";
53
- // const { httpReq, res } = clientReq;
54
- // this.setCookieAndGoToReturnURLIFSet(clientInfo.session, { req: httpReq, res });
55
- // return;
56
- // }
57
-
58
- // const sid = this.getValidatedSid(clientReq);
59
- // if (getSessionForCaching && clientReq.socket && sid) {
60
- // const session = await getSessionForCaching(sid, this.dbo as DBOFullyTyped, this.db);
61
- // if (session && session.expires && clientInfo?.user) {
62
- // clientReq.socket.__prglCache = {
63
- // userData: clientInfo,
64
- // session,
65
- // };
66
- // }
67
- // }
68
-
69
- // if (clientInfo?.user && sid) {
70
- // return { sid, ...clientInfo };
71
- // }
72
-
73
- // return { sid, preferredLogin: !clientInfo?.user ? clientInfo?.preferredLogin : undefined };
74
- // }, 100);
75
11
  const result = await this.handleGetUser(clientReq);
76
12
  if (isObject(result) && result.error) {
77
13
  throw result.error;
@@ -6,11 +6,34 @@ import { throttledAuthCall } from "./throttledReject";
6
6
 
7
7
  export type GetUserOrRedirected = AuthResultWithSID | "new-session-redirect";
8
8
 
9
+ /**
10
+ * For a given request return the user data if available using the auth handler's getUser method.
11
+ * Use cache data if configured in Auth
12
+ * Used in Publish Parser and AuthHandler
13
+ */
9
14
  export async function handleGetUserThrottled(
10
15
  this: AuthHandler,
11
16
  clientReq: AuthClientRequest
12
17
  ): Promise<GetUserOrRedirected> {
13
18
  const getSessionForCaching = this.opts.cacheSession?.getSession;
19
+
20
+ /** Get cached session if available */
21
+ const __prglCache =
22
+ !this.opts.cacheSession ? undefined : (clientReq.httpReq ?? clientReq.socket).__prglCache;
23
+ if (clientReq.socket && __prglCache) {
24
+ const { userData, session } = __prglCache;
25
+ const isValid = this.isNonExpiredSocketSession(clientReq.socket, session);
26
+ if (isValid) {
27
+ return {
28
+ ...userData,
29
+ sid: session.sid,
30
+ };
31
+ } else
32
+ return {
33
+ sid: session.sid,
34
+ };
35
+ }
36
+
14
37
  const result = await throttledAuthCall(async () => {
15
38
  const clientInfoOrErr = await this.opts.getUser(
16
39
  this.getValidatedSid(clientReq),
@@ -36,14 +59,20 @@ export async function handleGetUserThrottled(
36
59
  return "new-session-redirect" as const;
37
60
  }
38
61
 
62
+ /** Set cached session data */
39
63
  const sid = this.getValidatedSid(clientReq);
40
- if (getSessionForCaching && clientReq.socket && sid) {
64
+ if (getSessionForCaching && sid) {
41
65
  const session = await getSessionForCaching(sid, this.dbo as DBOFullyTyped, this.db);
42
66
  if (session && session.expires && clientInfo?.user) {
43
- clientReq.socket.__prglCache = {
67
+ const __prglCache = {
44
68
  userData: clientInfo,
45
69
  session,
46
70
  };
71
+ if (clientReq.socket) {
72
+ clientReq.socket.__prglCache = __prglCache;
73
+ } else {
74
+ clientReq.httpReq.__prglCache = __prglCache;
75
+ }
47
76
  }
48
77
  }
49
78