prostgles-server 4.2.311 → 4.2.312

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.
@@ -1 +1 @@
1
- {"version":3,"file":"getJSONBSchemaTSTypes.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/getJSONBSchemaTSTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAKlF,KAAK,OAAO,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,KAAK,CAAC,WAAW,EACzB,OAAO,EAAE,OAAO,EAChB,YAAY,oBAAK,EACjB,MAAM,EAAE,WAAW,EAAE,GACpB,MAAM,CAOR;AAED,eAAO,MAAM,eAAe,WAClB,WAAW,EAAE,gBACP,MAAM,SAAS,+DAI5B,MAuGF,CAAC"}
1
+ {"version":3,"file":"getJSONBSchemaTSTypes.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/getJSONBSchemaTSTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAKlF,KAAK,OAAO,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,KAAK,CAAC,WAAW,EACzB,OAAO,EAAE,OAAO,EAChB,YAAY,oBAAK,EACjB,MAAM,EAAE,WAAW,EAAE,GACpB,MAAM,CAOR;AAED,eAAO,MAAM,eAAe,WAClB,WAAW,EAAE,gBACP,MAAM,SAAS,+DAI5B,MA0GF,CAAC"}
@@ -12,8 +12,49 @@ exports.getJSONBSchemaTSTypes = getJSONBSchemaTSTypes;
12
12
  const getJSONBTSTypes = (tables, rawFieldType, isOneOf = false, innerLeading = "", depth = 0) => {
13
13
  const fieldType = (0, JSONBValidation_1.getFieldTypeObj)(rawFieldType);
14
14
  const nullType = fieldType.nullable ? `null | ` : "";
15
- /** Primitives */
16
- if (typeof fieldType.type === "string") {
15
+ if (fieldType.lookup) {
16
+ const l = fieldType.lookup;
17
+ if (l.type === "data-def") {
18
+ return `${fieldType.nullable ? `null |` : ""} ${(0, exports.getJSONBTSTypes)(tables, {
19
+ type: {
20
+ table: "string",
21
+ column: "string",
22
+ filter: { record: {}, optional: true },
23
+ isArray: { type: "boolean", optional: true },
24
+ searchColumns: { type: "string[]", optional: true },
25
+ isFullRow: {
26
+ optional: true,
27
+ type: {
28
+ displayColumns: { type: "string[]", optional: true },
29
+ },
30
+ },
31
+ showInRowCard: { optional: true, record: {} },
32
+ },
33
+ })}`;
34
+ }
35
+ const isSChema = l.type === "schema";
36
+ let type = isSChema ?
37
+ l.object === "table" ?
38
+ "string"
39
+ : `{ "table": string; "column": string; }`
40
+ : "";
41
+ if (!isSChema) {
42
+ const cols = tables.find((t) => t.name === l.table)?.columns;
43
+ if (!l.isFullRow) {
44
+ type = (0, DboBuilder_1.postgresToTsType)(cols?.find((c) => c.name === l.column)?.udt_name ?? "text");
45
+ }
46
+ else {
47
+ type =
48
+ !cols ? "any" : (`{ ${cols.map((c) => `${JSON.stringify(c.name)}: ${c.is_nullable ? "null | " : ""} ${(0, DboBuilder_1.postgresToTsType)(c.udt_name)}; `).join(" ")} }`);
49
+ }
50
+ }
51
+ return `${fieldType.nullable ? `null | ` : ""}${type}${l.isArray ? "[]" : ""}`;
52
+ }
53
+ else if (typeof fieldType.type === "string") {
54
+ if (fieldType.type.toLowerCase().includes("lookup")) {
55
+ throw new Error(`getJSONBTSTypes: Lookup type not handled correctly`);
56
+ }
57
+ /** Primitives */
17
58
  const correctType = fieldType.type
18
59
  .replace("integer", "number")
19
60
  .replace("time", "string")
@@ -68,44 +109,6 @@ const getJSONBTSTypes = (tables, rawFieldType, isOneOf = false, innerLeading = "
68
109
  const getRecord = (v) => (partial ? `Partial<Record<${v}>>` : `Record<${v}>`);
69
110
  return `${fieldType.nullable ? `null |` : ""} ${getRecord(`${keysEnum?.map((v) => (0, PubSubManagerUtils_1.asValue)(v)).join(" | ") ?? "string"}, ${!values ? "any" : (0, exports.getJSONBTSTypes)(tables, values, true, undefined, depth + 1)}`)}`;
70
111
  }
71
- else if (fieldType.lookup) {
72
- const l = fieldType.lookup;
73
- if (l.type === "data-def") {
74
- return `${fieldType.nullable ? `null |` : ""} ${(0, exports.getJSONBTSTypes)(tables, {
75
- type: {
76
- table: "string",
77
- column: "string",
78
- filter: { record: {}, optional: true },
79
- isArray: { type: "boolean", optional: true },
80
- searchColumns: { type: "string[]", optional: true },
81
- isFullRow: {
82
- optional: true,
83
- type: {
84
- displayColumns: { type: "string[]", optional: true },
85
- },
86
- },
87
- showInRowCard: { optional: true, record: {} },
88
- },
89
- })}`;
90
- }
91
- const isSChema = l.type === "schema";
92
- let type = isSChema ?
93
- l.object === "table" ?
94
- "string"
95
- : `{ "table": string; "column": string; }`
96
- : "";
97
- if (!isSChema) {
98
- const cols = tables.find((t) => t.name === l.table)?.columns;
99
- if (!l.isFullRow) {
100
- type = (0, DboBuilder_1.postgresToTsType)(cols?.find((c) => c.name === l.column)?.udt_name ?? "text");
101
- }
102
- else {
103
- type =
104
- !cols ? "any" : (`{ ${cols.map((c) => `${JSON.stringify(c.name)}: ${c.is_nullable ? "null | " : ""} ${(0, DboBuilder_1.postgresToTsType)(c.udt_name)}; `).join(" ")} }`);
105
- }
106
- }
107
- return `${fieldType.nullable ? `null | ` : ""}${type}${l.isArray ? "[]" : ""}`;
108
- }
109
112
  else
110
113
  throw "Unexpected getSchemaTSTypes: " + JSON.stringify({ fieldType }, null, 2);
111
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"getJSONBSchemaTSTypes.js","sourceRoot":"","sources":["../../lib/JSONBValidation/getJSONBSchemaTSTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getJSONBSchemaTSTypes.js","sourceRoot":"","sources":["../../lib/JSONBValidation/getJSONBSchemaTSTypes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getClientHandlers.d.ts","sourceRoot":"","sources":["../../lib/WebsocketAPI/getClientHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAKZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,eAAO,MAAM,iBAAiB,wBACjB,SAAS,aACT,iBAAiB;;mBAGb,OAAO,MAAM,EAAE,MAAM,CAAC;EAuCtC,CAAC;AACF,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"getClientHandlers.d.ts","sourceRoot":"","sources":["../../lib/WebsocketAPI/getClientHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAKZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,eAAO,MAAM,iBAAiB,wBACjB,SAAS,aACT,iBAAiB;;mBAGb,OAAO,MAAM,EAAE,MAAM,CAAC;EA8CtC,CAAC;AACF,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -15,8 +15,14 @@ const getClientHandlers = async (prostgles, clientReq) => {
15
15
  }));
16
16
  return [table.name, handlers];
17
17
  }));
18
+ const txNotAllowed = {
19
+ tx: () => {
20
+ throw new Error("Transactions are not allowed in client handlers");
21
+ },
22
+ };
18
23
  const clientDb = {
19
24
  ...tableHandlers,
25
+ ...txNotAllowed,
20
26
  sql,
21
27
  };
22
28
  const clientMethods = Object.fromEntries(clientSchema.methods.map((method) => {
@@ -1 +1 @@
1
- {"version":3,"file":"getClientHandlers.js","sourceRoot":"","sources":["../../lib/WebsocketAPI/getClientHandlers.ts"],"names":[],"mappings":";;;AAAA,qDAOyB;AAIzB,0DAA6F;AAC7F,uDAAoD;AAE7C,MAAM,iBAAiB,GAAG,KAAK,EACpC,SAAoB,EACpB,SAA4B,EAI3B,EAAE;IACH,MAAM,YAAY,GAChB,SAAS,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,MAAM,iCAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACpF,MAAM,GAAG,GAA2B,CAAC,CAAC,KAAa,EAAE,MAAgB,EAAE,OAAoB,EAAE,EAAE,CAC7F,sCAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,CAAe,CAAC;IAC5F,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CACtC,SAAS,CAAC,UAAU,CAAC,aAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,YAAY,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACtB,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,MAAe,EAAE,MAAe,EAAE,EAAE,CACnE,mCAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAC9B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAC1D,SAAS,CACV,CAAC;YACJ,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC,CACH,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC,CAAC,CACH,CAAC;IACF,MAAM,QAAQ,GAAG;QACf,GAAG,aAAa;QAChB,GAAG;KACuB,CAAC;IAE7B,MAAM,aAAa,GAA2B,MAAM,CAAC,WAAW,CAC9D,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACrE,OAAO;YACL,UAAU;YACV,CAAC,GAAG,MAAa,EAAE,EAAE,CACnB,kCAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC;SAC7E,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;AACrC,CAAC,CAAC;AA5CW,QAAA,iBAAiB,qBA4C5B;AAGF,MAAM,WAAW,GAAG,IAAA,yBAAO,EAAC;IAC1B,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,CAAC;CACuB,CAAC,CAAC;AAE1C,MAAM,YAAY,GAAG,IAAA,yBAAO,EAAC;IAC3B,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,WAAW,EAAE,CAAC;CACqD,CAAC,CAAC"}
1
+ {"version":3,"file":"getClientHandlers.js","sourceRoot":"","sources":["../../lib/WebsocketAPI/getClientHandlers.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,52 @@ export const getJSONBTSTypes = (
28
28
  ): string => {
29
29
  const fieldType = getFieldTypeObj(rawFieldType);
30
30
  const nullType = fieldType.nullable ? `null | ` : "";
31
+ if (fieldType.lookup) {
32
+ const l = fieldType.lookup;
33
+ if (l.type === "data-def") {
34
+ return `${fieldType.nullable ? `null |` : ""} ${getJSONBTSTypes(tables, {
35
+ type: {
36
+ table: "string",
37
+ column: "string",
38
+ filter: { record: {}, optional: true },
39
+ isArray: { type: "boolean", optional: true },
40
+ searchColumns: { type: "string[]", optional: true },
41
+ isFullRow: {
42
+ optional: true,
43
+ type: {
44
+ displayColumns: { type: "string[]", optional: true },
45
+ },
46
+ },
47
+ showInRowCard: { optional: true, record: {} },
48
+ },
49
+ })}`;
50
+ }
51
+
52
+ const isSChema = l.type === "schema";
53
+ let type =
54
+ isSChema ?
55
+ l.object === "table" ?
56
+ "string"
57
+ : `{ "table": string; "column": string; }`
58
+ : "";
59
+ if (!isSChema) {
60
+ const cols = tables.find((t) => t.name === l.table)?.columns;
61
+ if (!l.isFullRow) {
62
+ type = postgresToTsType(cols?.find((c) => c.name === l.column)?.udt_name ?? "text");
63
+ } else {
64
+ type =
65
+ !cols ? "any" : (
66
+ `{ ${cols.map((c) => `${JSON.stringify(c.name)}: ${c.is_nullable ? "null | " : ""} ${postgresToTsType(c.udt_name)}; `).join(" ")} }`
67
+ );
68
+ }
69
+ }
70
+ return `${fieldType.nullable ? `null | ` : ""}${type}${l.isArray ? "[]" : ""}`;
71
+ } else if (typeof fieldType.type === "string") {
72
+ if (fieldType.type.toLowerCase().includes("lookup")) {
73
+ throw new Error(`getJSONBTSTypes: Lookup type not handled correctly`);
74
+ }
31
75
 
32
- /** Primitives */
33
- if (typeof fieldType.type === "string") {
76
+ /** Primitives */
34
77
  const correctType = fieldType.type
35
78
  .replace("integer", "number")
36
79
  .replace("time", "string")
@@ -87,46 +130,6 @@ export const getJSONBTSTypes = (
87
130
  // TODO: ensure props with undefined values are not allowed in the TS type (strict union)
88
131
  const getRecord = (v: string) => (partial ? `Partial<Record<${v}>>` : `Record<${v}>`);
89
132
  return `${fieldType.nullable ? `null |` : ""} ${getRecord(`${keysEnum?.map((v) => asValue(v)).join(" | ") ?? "string"}, ${!values ? "any" : getJSONBTSTypes(tables, values, true, undefined, depth + 1)}`)}`;
90
- } else if (fieldType.lookup) {
91
- const l = fieldType.lookup;
92
- if (l.type === "data-def") {
93
- return `${fieldType.nullable ? `null |` : ""} ${getJSONBTSTypes(tables, {
94
- type: {
95
- table: "string",
96
- column: "string",
97
- filter: { record: {}, optional: true },
98
- isArray: { type: "boolean", optional: true },
99
- searchColumns: { type: "string[]", optional: true },
100
- isFullRow: {
101
- optional: true,
102
- type: {
103
- displayColumns: { type: "string[]", optional: true },
104
- },
105
- },
106
- showInRowCard: { optional: true, record: {} },
107
- },
108
- })}`;
109
- }
110
-
111
- const isSChema = l.type === "schema";
112
- let type =
113
- isSChema ?
114
- l.object === "table" ?
115
- "string"
116
- : `{ "table": string; "column": string; }`
117
- : "";
118
- if (!isSChema) {
119
- const cols = tables.find((t) => t.name === l.table)?.columns;
120
- if (!l.isFullRow) {
121
- type = postgresToTsType(cols?.find((c) => c.name === l.column)?.udt_name ?? "text");
122
- } else {
123
- type =
124
- !cols ? "any" : (
125
- `{ ${cols.map((c) => `${JSON.stringify(c.name)}: ${c.is_nullable ? "null | " : ""} ${postgresToTsType(c.udt_name)}; `).join(" ")} }`
126
- );
127
- }
128
- }
129
- return `${fieldType.nullable ? `null | ` : ""}${type}${l.isArray ? "[]" : ""}`;
130
133
  } else throw "Unexpected getSchemaTSTypes: " + JSON.stringify({ fieldType }, null, 2);
131
134
  };
132
135
 
@@ -39,8 +39,15 @@ export const getClientHandlers = async <S = void>(
39
39
  return [table.name, handlers];
40
40
  })
41
41
  );
42
+
43
+ const txNotAllowed: {} = {
44
+ tx: () => {
45
+ throw new Error("Transactions are not allowed in client handlers");
46
+ },
47
+ };
42
48
  const clientDb = {
43
49
  ...tableHandlers,
50
+ ...txNotAllowed,
44
51
  sql,
45
52
  } as DBOFullyTyped<S, false>;
46
53
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-server",
3
- "version": "4.2.311",
3
+ "version": "4.2.312",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",