prostgles-server 4.2.549 → 4.2.550
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DboBuilder/TableHandler/TableHandler.d.ts +18 -5
- package/dist/DboBuilder/TableHandler/TableHandler.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/TableHandler.js +12 -6
- package/dist/DboBuilder/TableHandler/TableHandler.js.map +1 -1
- package/dist/DboBuilder/TableHandler/delete.d.ts +1 -1
- package/dist/DboBuilder/TableHandler/delete.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/delete.js +56 -13
- package/dist/DboBuilder/TableHandler/delete.js.map +1 -1
- package/dist/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.d.ts +21 -0
- package/dist/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.d.ts.map +1 -0
- package/dist/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.js +69 -0
- package/dist/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.js.map +1 -0
- package/dist/DboBuilder/TableHandler/insert/insert.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/insert/insert.js +21 -11
- package/dist/DboBuilder/TableHandler/insert/insert.js.map +1 -1
- package/dist/DboBuilder/TableHandler/insert/insertNestedRecords.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/insert/insertNestedRecords.js +1 -2
- package/dist/DboBuilder/TableHandler/insert/insertNestedRecords.js.map +1 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.js +2 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.js.map +1 -1
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.js +24 -95
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.js.map +1 -1
- package/dist/DboBuilder/TableHandler/update.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/update.js +20 -12
- package/dist/DboBuilder/TableHandler/update.js.map +1 -1
- package/dist/DboBuilder/TableHandler/updateBatch.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/updateBatch.js +13 -1
- package/dist/DboBuilder/TableHandler/updateBatch.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.js +5 -5
- package/dist/DboBuilder/ViewHandler/ViewHandler.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.js +20 -8
- package/dist/DboBuilder/ViewHandler/count.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/find.d.ts +0 -12
- package/dist/DboBuilder/ViewHandler/find.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/find.js +27 -75
- package/dist/DboBuilder/ViewHandler/find.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/getReturnTypeQuery.d.ts +14 -0
- package/dist/DboBuilder/ViewHandler/getReturnTypeQuery.d.ts.map +1 -0
- package/dist/DboBuilder/ViewHandler/getReturnTypeQuery.js +32 -0
- package/dist/DboBuilder/ViewHandler/getReturnTypeQuery.js.map +1 -0
- package/dist/DboBuilder/ViewHandler/size.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/size.js +23 -8
- package/dist/DboBuilder/ViewHandler/size.js.map +1 -1
- package/dist/DboBuilder/dboBuilderUtils.d.ts +1 -1
- package/dist/DboBuilder/dboBuilderUtils.d.ts.map +1 -1
- package/dist/DboBuilder/dboBuilderUtils.js +2 -2
- package/dist/DboBuilder/dboBuilderUtils.js.map +1 -1
- package/dist/DboBuilder/parseUpdateRules.js +1 -1
- package/dist/DboBuilder/parseUpdateRules.js.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.d.ts +34 -1
- package/dist/PublishParser/publishTypesAndUtils.d.ts.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.js.map +1 -1
- package/dist/TableConfig/TableConfig.d.ts +3 -15
- package/dist/TableConfig/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig/TableConfig.js.map +1 -1
- package/dist/TableConfig/getCreateSchemaQueries.d.ts +4 -28
- package/dist/TableConfig/getCreateSchemaQueries.d.ts.map +1 -1
- package/dist/TableConfig/getTableConfigSchemaQueries.d.ts +4 -28
- package/dist/TableConfig/getTableConfigSchemaQueries.d.ts.map +1 -1
- package/dist/utils/utils.d.ts +1 -0
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +3 -1
- package/dist/utils/utils.js.map +1 -1
- package/lib/DboBuilder/TableHandler/TableHandler.ts +21 -6
- package/lib/DboBuilder/TableHandler/delete.ts +83 -15
- package/lib/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.ts +88 -0
- package/lib/DboBuilder/TableHandler/insert/insert.ts +25 -11
- package/lib/DboBuilder/TableHandler/insert/insertNestedRecords.ts +1 -2
- package/lib/DboBuilder/TableHandler/onDeleteFromFileTable.ts +7 -5
- package/lib/DboBuilder/TableHandler/runInsertUpdateQuery.ts +34 -110
- package/lib/DboBuilder/TableHandler/update.ts +21 -12
- package/lib/DboBuilder/TableHandler/updateBatch.ts +15 -2
- package/lib/DboBuilder/ViewHandler/ViewHandler.ts +5 -5
- package/lib/DboBuilder/ViewHandler/count.ts +24 -9
- package/lib/DboBuilder/ViewHandler/find.ts +35 -96
- package/lib/DboBuilder/ViewHandler/getReturnTypeQuery.ts +50 -0
- package/lib/DboBuilder/ViewHandler/size.ts +26 -12
- package/lib/DboBuilder/dboBuilderUtils.ts +1 -1
- package/lib/DboBuilder/parseUpdateRules.ts +1 -1
- package/lib/PublishParser/publishTypesAndUtils.ts +42 -1
- package/lib/TableConfig/TableConfig.ts +4 -18
- package/lib/utils/utils.ts +2 -0
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type pgPromise from "pg-promise";
|
|
2
2
|
import type { AnyObject, DeleteParams, FieldFilter, InsertParams, Select, UpdateParams } from "prostgles-types";
|
|
3
3
|
import type { DB } from "../../Prostgles";
|
|
4
|
-
import type { InsertRule, ParsedTableRule, UpdateRule } from "../../PublishParser/PublishParser";
|
|
4
|
+
import type { DeleteRule, InsertRule, ParsedTableRule, UpdateRule } from "../../PublishParser/PublishParser";
|
|
5
5
|
import type TableConfigurator from "../../TableConfig/TableConfig";
|
|
6
6
|
import type { TableDefinition } from "../../TableConfig/TableConfig";
|
|
7
7
|
import type { DboBuilder, Filter, LocalParams, TableHandlers } from "../DboBuilder";
|
|
@@ -33,21 +33,28 @@ export declare class TableHandler extends ViewHandler {
|
|
|
33
33
|
joinPaths?: JoinPaths;
|
|
34
34
|
});
|
|
35
35
|
getFinalDBtx: (localParams: LocalParams | undefined) => TableHandlers | undefined;
|
|
36
|
+
getTransaction: (localParams: LocalParams | undefined) => {
|
|
37
|
+
dbTX: TableHandlers;
|
|
38
|
+
t: pgPromise.ITask<{}>;
|
|
39
|
+
} | undefined;
|
|
36
40
|
getHooksAndChecks: (command: {
|
|
41
|
+
name: "delete";
|
|
42
|
+
rule: undefined | DeleteRule;
|
|
43
|
+
} | {
|
|
37
44
|
name: "update";
|
|
38
45
|
rule: undefined | UpdateRule;
|
|
39
46
|
} | {
|
|
40
47
|
name: "insert";
|
|
41
48
|
rule: undefined | InsertRule;
|
|
42
|
-
}) => ({
|
|
43
|
-
readonly commands: Partial<Record<"insert" | "update", 1>>;
|
|
49
|
+
}, localParams: LocalParams | undefined) => ({
|
|
50
|
+
readonly commands: Partial<Record<"insert" | "update" | "delete", 1>>;
|
|
44
51
|
readonly changedFields?: string[];
|
|
45
52
|
readonly validate: (params: import("../../PublishParser/publishTypesAndUtils").ValidateRowArgsCommon<AnyObject, import("../DboBuilderTypes").DBHandlerServer> & {
|
|
46
53
|
localParams: undefined | LocalParams;
|
|
47
54
|
}) => Promise<void>;
|
|
48
55
|
readonly type: "afterEach";
|
|
49
56
|
} | {
|
|
50
|
-
readonly commands: Partial<Record<"insert" | "update", 1>>;
|
|
57
|
+
readonly commands: Partial<Record<"insert" | "update" | "delete", 1>>;
|
|
51
58
|
readonly changedFields?: string[];
|
|
52
59
|
readonly validate: (params: import("../../PublishParser/publishTypesAndUtils").ValidateRowsArgsCommon<AnyObject, import("../DboBuilderTypes").DBHandlerServer> & {
|
|
53
60
|
localParams: undefined | LocalParams;
|
|
@@ -63,12 +70,18 @@ export declare class TableHandler extends ViewHandler {
|
|
|
63
70
|
readonly validate?: undefined;
|
|
64
71
|
})[];
|
|
65
72
|
shouldWrapInTx: (command: {
|
|
73
|
+
name: "delete";
|
|
74
|
+
rule: undefined | DeleteRule;
|
|
75
|
+
} | {
|
|
66
76
|
name: "update";
|
|
67
77
|
rule: undefined | UpdateRule;
|
|
68
78
|
} | {
|
|
69
79
|
name: "insert";
|
|
70
80
|
rule: undefined | InsertRule;
|
|
71
|
-
}, localParams: LocalParams | undefined) =>
|
|
81
|
+
}, localParams: LocalParams | undefined) => {
|
|
82
|
+
shouldWrap: boolean;
|
|
83
|
+
hasAfterChecks: boolean;
|
|
84
|
+
};
|
|
72
85
|
getFinalDbo: (localParams: LocalParams | undefined) => TableHandlers;
|
|
73
86
|
parseUpdateRules: (filter: Filter, params?: UpdateParams | undefined, tableRules?: ParsedTableRule | undefined, localParams?: LocalParams | undefined) => Promise<{
|
|
74
87
|
fields: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHandler.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/TableHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EAEZ,MAAM,EACN,YAAY,EACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"TableHandler.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/TableHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,8 +27,14 @@ class TableHandler extends ViewHandler_1.ViewHandler {
|
|
|
27
27
|
getFinalDBtx = (localParams) => {
|
|
28
28
|
return localParams?.tx?.dbTX ?? this.tx?.dbTX;
|
|
29
29
|
};
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
getTransaction = (localParams) => {
|
|
31
|
+
return localParams?.tx || this.tx;
|
|
32
|
+
};
|
|
33
|
+
getHooksAndChecks = (command, localParams) => {
|
|
34
|
+
const { postValidate, checkFilter } = command.name === "delete" ? {} : (command.rule ?? {});
|
|
35
|
+
if (postValidate && !localParams) {
|
|
36
|
+
throw new Error("Unexpected: no localParams for postValidate");
|
|
37
|
+
}
|
|
32
38
|
const afterEachHooks = this.config?.hooks?.afterEach
|
|
33
39
|
?.map((hook) => {
|
|
34
40
|
const { commands } = hook;
|
|
@@ -61,12 +67,12 @@ class TableHandler extends ViewHandler_1.ViewHandler {
|
|
|
61
67
|
];
|
|
62
68
|
};
|
|
63
69
|
shouldWrapInTx = (command, localParams) => {
|
|
64
|
-
const
|
|
65
|
-
const hasAfterChecks = this.getHooksAndChecks(command).length > 0;
|
|
66
|
-
return !
|
|
70
|
+
const transaction = this.getTransaction(localParams);
|
|
71
|
+
const hasAfterChecks = this.getHooksAndChecks(command, localParams).length > 0;
|
|
72
|
+
return { shouldWrap: !transaction && hasAfterChecks, hasAfterChecks };
|
|
67
73
|
};
|
|
68
74
|
getFinalDbo = (localParams) => {
|
|
69
|
-
return this.
|
|
75
|
+
return this.getTransaction(localParams)?.dbTX ?? this.dboBuilder.dbo;
|
|
70
76
|
};
|
|
71
77
|
parseUpdateRules = parseUpdateRules_1.parseUpdateRules.bind(this);
|
|
72
78
|
update = update_1.update.bind(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHandler.js","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/TableHandler.ts"],"names":[],"mappings":";;;AAUA,qDAAoD;
|
|
1
|
+
{"version":3,"file":"TableHandler.js","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/TableHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type DeleteParams } from "prostgles-types";
|
|
2
2
|
import type { ParsedTableRule } from "../../PublishParser/PublishParser";
|
|
3
3
|
import type { Filter, LocalParams } from "../DboBuilder";
|
|
4
4
|
import type { TableHandler } from "./TableHandler";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/delete.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/delete.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,KAAK,YAAY,EAAoB,MAAM,iBAAiB,CAAC;AAChG,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAOzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,wBAAsB,OAAO,CAC3B,IAAI,EAAE,YAAY,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,EACrB,aAAa,CAAC,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,eAAe,EAC5B,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,GAAG,CAAC,CAsMd"}
|
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports._delete = _delete;
|
|
4
|
+
const prostgles_types_1 = require("prostgles-types");
|
|
4
5
|
const DboBuilder_1 = require("../DboBuilder");
|
|
5
|
-
const find_1 = require("../ViewHandler/find");
|
|
6
6
|
const onDeleteFromFileTable_1 = require("./onDeleteFromFileTable");
|
|
7
|
+
const getReturnTypeQuery_1 = require("../ViewHandler/getReturnTypeQuery");
|
|
8
|
+
const executeHooksCheckAndPostValidation_1 = require("./executeHooksCheckAndPostValidation");
|
|
7
9
|
async function _delete(filter, params, param3_unused, tableRules, localParams) {
|
|
8
10
|
const start = Date.now();
|
|
9
11
|
try {
|
|
10
12
|
const { returning } = params || {};
|
|
11
13
|
filter = filter || {};
|
|
12
14
|
this.checkFilter(filter);
|
|
15
|
+
const operation = { name: "delete", rule: tableRules?.delete };
|
|
16
|
+
const { hasAfterChecks, shouldWrap } = this.shouldWrapInTx(operation, localParams);
|
|
17
|
+
if (shouldWrap) {
|
|
18
|
+
return this.dboBuilder.getTX((t) => t[this.name]?.delete?.(filter, params, param3_unused, tableRules, localParams));
|
|
19
|
+
}
|
|
13
20
|
let forcedFilter = {}, filterFields = "*", returningFields = "*", validate;
|
|
14
|
-
const { testRule = false
|
|
21
|
+
const { testRule = false } = localParams || {};
|
|
15
22
|
if (tableRules) {
|
|
16
23
|
if (!tableRules.delete)
|
|
17
24
|
throw "delete rules missing";
|
|
@@ -59,15 +66,23 @@ async function _delete(filter, params, param3_unused, tableRules, localParams) {
|
|
|
59
66
|
});
|
|
60
67
|
queryWithoutRLS += filterOpts.where;
|
|
61
68
|
await validate?.(filterOpts.filter);
|
|
69
|
+
const FULL_ROW_KEY = "_prostgles_full_row";
|
|
70
|
+
const fullRowReturning = hasAfterChecks ? `to_jsonb(${this.escapedName}) as ${FULL_ROW_KEY}` : undefined;
|
|
62
71
|
let returningQuery = "";
|
|
63
72
|
if (returning !== undefined) {
|
|
64
73
|
queryType = "any";
|
|
65
74
|
if (!returningFields) {
|
|
66
|
-
throw "Returning
|
|
75
|
+
throw "Returning disallowed";
|
|
67
76
|
}
|
|
68
77
|
returningQuery = this.makeReturnQuery(await this.prepareReturning(returning, this.parseFieldFilter(returningFields)));
|
|
78
|
+
if (hasAfterChecks) {
|
|
79
|
+
returningQuery += `, ${fullRowReturning}`;
|
|
80
|
+
}
|
|
69
81
|
queryWithoutRLS += returningQuery;
|
|
70
82
|
}
|
|
83
|
+
else if (hasAfterChecks) {
|
|
84
|
+
queryWithoutRLS += ` RETURNING ${fullRowReturning}`;
|
|
85
|
+
}
|
|
71
86
|
// TODO - delete orphaned files
|
|
72
87
|
// if(this.dboBuilder.prostgles.opts.fileTable?.referencedTables?.[this.name]?.referenceColumns){
|
|
73
88
|
// if(!this.getFinalDBtx(localParams)){
|
|
@@ -76,8 +91,17 @@ async function _delete(filter, params, param3_unused, tableRules, localParams) {
|
|
|
76
91
|
// }
|
|
77
92
|
// }
|
|
78
93
|
const queryWithRLS = (0, DboBuilder_1.withUserRLS)(localParams, queryWithoutRLS);
|
|
79
|
-
|
|
80
|
-
|
|
94
|
+
const queryToReturn = await (0, getReturnTypeQuery_1.getReturnTypeQuery)({
|
|
95
|
+
handler: this,
|
|
96
|
+
localParams,
|
|
97
|
+
queryWithoutRLS,
|
|
98
|
+
queryWithRLS,
|
|
99
|
+
returnType: params?.returnType,
|
|
100
|
+
newQuery: undefined,
|
|
101
|
+
});
|
|
102
|
+
if (queryToReturn) {
|
|
103
|
+
return queryToReturn;
|
|
104
|
+
}
|
|
81
105
|
/**
|
|
82
106
|
* Delete file
|
|
83
107
|
*/
|
|
@@ -96,21 +120,40 @@ async function _delete(filter, params, param3_unused, tableRules, localParams) {
|
|
|
96
120
|
});
|
|
97
121
|
return result;
|
|
98
122
|
}
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
123
|
+
const dbHandler = this.getTransaction(localParams)?.t ?? this.db;
|
|
124
|
+
const isOneOrNone = (0, prostgles_types_1.includes)(["row", "value"], params?.returnType);
|
|
125
|
+
const queryPromise = isOneOrNone ?
|
|
126
|
+
dbHandler.oneOrNone(queryWithRLS).then((data) => (data ? [data] : []))
|
|
127
|
+
: dbHandler.any(queryWithRLS);
|
|
128
|
+
const deletedRows = await queryPromise.catch((err) => (0, DboBuilder_1.rejectWithPGClientError)(err, {
|
|
129
|
+
type: "tableMethod",
|
|
105
130
|
localParams,
|
|
106
|
-
|
|
131
|
+
view: this,
|
|
132
|
+
prostgles: this.dboBuilder.prostgles,
|
|
133
|
+
}));
|
|
134
|
+
if (hasAfterChecks) {
|
|
135
|
+
const fullRows = deletedRows.map((d) => {
|
|
136
|
+
const fullRow = d[FULL_ROW_KEY];
|
|
137
|
+
if (!fullRow)
|
|
138
|
+
throw "Missing full row for after checks";
|
|
139
|
+
return fullRow;
|
|
140
|
+
});
|
|
141
|
+
await (0, executeHooksCheckAndPostValidation_1.executeHooksCheckAndPostValidation)({
|
|
142
|
+
tableHandler: this,
|
|
143
|
+
operation,
|
|
144
|
+
localParams,
|
|
145
|
+
rows: fullRows,
|
|
146
|
+
data: [],
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
const originalReturnRows = deletedRows.map(({ [FULL_ROW_KEY]: _, ...originalReturn }) => originalReturn);
|
|
107
150
|
await this._log({
|
|
108
151
|
command: "delete",
|
|
109
152
|
localParams,
|
|
110
153
|
data: { filter, params },
|
|
111
154
|
duration: Date.now() - start,
|
|
112
155
|
});
|
|
113
|
-
return
|
|
156
|
+
return isOneOrNone ? originalReturnRows[0] : originalReturnRows;
|
|
114
157
|
}
|
|
115
158
|
catch (e) {
|
|
116
159
|
await this._log({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/delete.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { AnyObject } from "prostgles-types";
|
|
2
|
+
import type { DeleteRule, InsertRule, UpdateRule } from "../../PublishParser/PublishParser";
|
|
3
|
+
import type { LocalParams } from "../DboBuilder";
|
|
4
|
+
import type { TableHandler } from "./TableHandler";
|
|
5
|
+
export declare const executeHooksCheckAndPostValidation: ({ tableHandler, operation, data, localParams, rows, }: {
|
|
6
|
+
tableHandler: TableHandler;
|
|
7
|
+
operation: {
|
|
8
|
+
name: "delete";
|
|
9
|
+
rule: undefined | DeleteRule;
|
|
10
|
+
} | {
|
|
11
|
+
name: "update";
|
|
12
|
+
rule: undefined | UpdateRule;
|
|
13
|
+
} | {
|
|
14
|
+
name: "insert";
|
|
15
|
+
rule: undefined | InsertRule;
|
|
16
|
+
};
|
|
17
|
+
localParams: LocalParams | undefined;
|
|
18
|
+
data: AnyObject | AnyObject[];
|
|
19
|
+
rows: AnyObject[];
|
|
20
|
+
}) => Promise<void>;
|
|
21
|
+
//# sourceMappingURL=executeHooksCheckAndPostValidation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeHooksCheckAndPostValidation.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE5F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,eAAO,MAAM,kCAAkC,GAAU,uDAMtD;IACD,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EACL;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,SAAS,GAAG,UAAU,CAAA;KAAE,GAChD;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,SAAS,GAAG,UAAU,CAAA;KAAE,GAChD;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,SAAS,GAAG,UAAU,CAAA;KAAE,CAAC;IACrD,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAC9B,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB,kBAkEA,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.executeHooksCheckAndPostValidation = void 0;
|
|
4
|
+
const utils_1 = require("../../utils/utils");
|
|
5
|
+
const executeHooksCheckAndPostValidation = async ({ tableHandler, operation, data, localParams, rows, }) => {
|
|
6
|
+
const command = operation.name;
|
|
7
|
+
const transaction = tableHandler.getTransaction(localParams);
|
|
8
|
+
const hooks = tableHandler.getHooksAndChecks(operation, localParams);
|
|
9
|
+
let changedFieldsSet = undefined;
|
|
10
|
+
const getChangedFieldsSet = () => {
|
|
11
|
+
changedFieldsSet ??= new Set(((0, utils_1.isArray)(data) ? data : [data]).map((row) => Object.keys(row)).flat());
|
|
12
|
+
return changedFieldsSet;
|
|
13
|
+
};
|
|
14
|
+
const applicableHooks = hooks.filter((hook) => {
|
|
15
|
+
if (hook.type === "checkFilter")
|
|
16
|
+
return false;
|
|
17
|
+
if (hook.type === "postValidate")
|
|
18
|
+
return true;
|
|
19
|
+
const { commands, changedFields } = hook;
|
|
20
|
+
return (commands[command] &&
|
|
21
|
+
(!changedFields || changedFields.some((f) => getChangedFieldsSet().has(f))));
|
|
22
|
+
});
|
|
23
|
+
if (applicableHooks.length) {
|
|
24
|
+
if (!transaction) {
|
|
25
|
+
throw new Error("Unexpected: hooks/postValidate require a transaction dbo handler");
|
|
26
|
+
}
|
|
27
|
+
const txParams = {
|
|
28
|
+
tx: transaction.t,
|
|
29
|
+
dbx: transaction.dbTX,
|
|
30
|
+
};
|
|
31
|
+
for (const row of rows) {
|
|
32
|
+
const commonParams = {
|
|
33
|
+
row: row,
|
|
34
|
+
...txParams,
|
|
35
|
+
command,
|
|
36
|
+
data,
|
|
37
|
+
};
|
|
38
|
+
for (const hook of applicableHooks) {
|
|
39
|
+
if (hook.type === "afterEach") {
|
|
40
|
+
await hook.validate({
|
|
41
|
+
...commonParams,
|
|
42
|
+
localParams,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
else if (hook.type === "postValidate") {
|
|
46
|
+
if (!localParams)
|
|
47
|
+
throw new Error("Unexpected: no localParams for postValidate");
|
|
48
|
+
await hook.validate({
|
|
49
|
+
...commonParams,
|
|
50
|
+
localParams,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
for (const hook of applicableHooks) {
|
|
56
|
+
if (hook.type === "afterAll") {
|
|
57
|
+
await hook.validate({
|
|
58
|
+
...txParams,
|
|
59
|
+
command,
|
|
60
|
+
data: Array.isArray(data) ? data : [data],
|
|
61
|
+
rows,
|
|
62
|
+
localParams,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
exports.executeHooksCheckAndPostValidation = executeHooksCheckAndPostValidation;
|
|
69
|
+
//# sourceMappingURL=executeHooksCheckAndPostValidation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeHooksCheckAndPostValidation.js","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/executeHooksCheckAndPostValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/D,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,sCAAsC,CAAC;AAC9F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/D,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,sCAAsC,CAAC;AAC9F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAMpD,wBAAsB,MAAM,CAC1B,IAAI,EAAE,YAAY,EAClB,SAAS,GAAE,SAAS,GAAG,SAAS,EAAO,EACvC,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,eAAe,EAC5B,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,GAAG,CAAC,CAmQd"}
|
|
@@ -7,18 +7,19 @@ const DataValidator_1 = require("../DataValidator");
|
|
|
7
7
|
const insertTest_1 = require("../insertTest");
|
|
8
8
|
const runInsertUpdateQuery_1 = require("../runInsertUpdateQuery");
|
|
9
9
|
const insertNestedRecords_1 = require("./insertNestedRecords");
|
|
10
|
+
const getReturnTypeQuery_1 = require("../../ViewHandler/getReturnTypeQuery");
|
|
10
11
|
async function insert(rowOrRows = {}, insertParams, param3_unused, tableRules, localParams) {
|
|
11
12
|
const ACTION = "insert";
|
|
12
13
|
const start = Date.now();
|
|
13
14
|
try {
|
|
14
15
|
const { removeDisallowedFields = false } = insertParams ?? {};
|
|
15
|
-
const {
|
|
16
|
+
const { nestedInsert } = localParams ?? {};
|
|
16
17
|
const rule = tableRules?.[ACTION];
|
|
17
18
|
const { validate, allowedNestedInserts, requiredNestedInserts } = rule ?? {};
|
|
18
|
-
const finalDBtx = this.
|
|
19
|
-
/** Post validate and checkFilter require a transaction dbo handler because they
|
|
20
|
-
if (this.shouldWrapInTx({ name: ACTION, rule }, localParams)) {
|
|
21
|
-
return this.dboBuilder.getTX((
|
|
19
|
+
const finalDBtx = this.getTransaction(localParams);
|
|
20
|
+
/** Post validate and checkFilter require a transaction dbo handler because they need the action result */
|
|
21
|
+
if (this.shouldWrapInTx({ name: ACTION, rule }, localParams).shouldWrap) {
|
|
22
|
+
return this.dboBuilder.getTX((t) => t[this.name]?.[ACTION](rowOrRows, insertParams, param3_unused, tableRules, localParams));
|
|
22
23
|
}
|
|
23
24
|
const { testOnly, fields, forcedData, returningFields } = await insertTest_1.insertTest.bind(this)({
|
|
24
25
|
tableRules,
|
|
@@ -84,13 +85,13 @@ async function insert(rowOrRows = {}, insertParams, param3_unused, tableRules, l
|
|
|
84
85
|
}
|
|
85
86
|
return row;
|
|
86
87
|
}));
|
|
87
|
-
const
|
|
88
|
+
const preValidatedRowOrRows = isMultiInsert ? preValidatedRows : preValidatedRows[0];
|
|
88
89
|
/**
|
|
89
90
|
* If media it will: upload file and continue insert
|
|
90
91
|
* If nested insert it will: make separate inserts and not continue main insert
|
|
91
92
|
*/
|
|
92
93
|
const mediaOrNestedInsert = await insertNestedRecords_1.insertNestedRecords.bind(this)({
|
|
93
|
-
data:
|
|
94
|
+
data: preValidatedRowOrRows,
|
|
94
95
|
insertParams,
|
|
95
96
|
tableRules,
|
|
96
97
|
localParams,
|
|
@@ -119,7 +120,7 @@ async function insert(rowOrRows = {}, insertParams, param3_unused, tableRules, l
|
|
|
119
120
|
});
|
|
120
121
|
const validatedRows = validatedData.map((d) => d.validatedRow);
|
|
121
122
|
const allowedCols = Array.from(new Set(validatedData.flatMap((d) => d.allowedCols)));
|
|
122
|
-
const dbTx = finalDBtx || this.dboBuilder.dbo;
|
|
123
|
+
const dbTx = finalDBtx?.dbTX || this.dboBuilder.dbo;
|
|
123
124
|
const validationOptions = {
|
|
124
125
|
validate: validate,
|
|
125
126
|
localParams,
|
|
@@ -181,8 +182,17 @@ async function insert(rowOrRows = {}, insertParams, param3_unused, tableRules, l
|
|
|
181
182
|
}
|
|
182
183
|
const queryWithoutUserRLS = query;
|
|
183
184
|
const queryWithRLS = (0, DboBuilder_1.withUserRLS)(localParams, query);
|
|
184
|
-
|
|
185
|
-
|
|
185
|
+
const queryToReturn = await (0, getReturnTypeQuery_1.getReturnTypeQuery)({
|
|
186
|
+
handler: this,
|
|
187
|
+
localParams,
|
|
188
|
+
queryWithoutRLS: queryWithoutUserRLS,
|
|
189
|
+
queryWithRLS,
|
|
190
|
+
returnType: insertParams?.returnType,
|
|
191
|
+
newQuery: undefined,
|
|
192
|
+
});
|
|
193
|
+
if (queryToReturn) {
|
|
194
|
+
return queryToReturn;
|
|
195
|
+
}
|
|
186
196
|
if (this.dboBuilder.prostgles.opts.DEBUG_MODE) {
|
|
187
197
|
console.log(this.tx?.t.ctx.start, "insert in " + this.name, data);
|
|
188
198
|
}
|
|
@@ -192,7 +202,7 @@ async function insert(rowOrRows = {}, insertParams, param3_unused, tableRules, l
|
|
|
192
202
|
queryWithoutUserRLS,
|
|
193
203
|
tableHandler: this,
|
|
194
204
|
returningFields,
|
|
195
|
-
data:
|
|
205
|
+
data: preValidatedRowOrRows,
|
|
196
206
|
fields,
|
|
197
207
|
params: insertParams,
|
|
198
208
|
command: "insert",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insert.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insertNestedRecords.d.ts","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insertNestedRecords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIpD,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,EAAE,eAAe,GAAG,SAAS,CAAC;IACxC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,YAAY,EAClB,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,uBAAuB,GACvE,OAAO,CAAC;IACT,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACxC,CAAC,
|
|
1
|
+
{"version":3,"file":"insertNestedRecords.d.ts","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insertNestedRecords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIpD,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,EAAE,eAAe,GAAG,SAAS,CAAC;IACxC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,YAAY,EAClB,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,uBAAuB,GACvE,OAAO,CAAC;IACT,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACxC,CAAC,CA4FD"}
|
|
@@ -51,8 +51,7 @@ async function insertNestedRecords({ data, insertParams, tableRules, localParams
|
|
|
51
51
|
/**
|
|
52
52
|
* Make sure nested insert uses a transaction
|
|
53
53
|
*/
|
|
54
|
-
const dbTX = this.
|
|
55
|
-
const t = localParams?.tx?.t || this.tx?.t;
|
|
54
|
+
const { dbTX, t } = this.getTransaction(localParams) ?? {};
|
|
56
55
|
if (hasNestedInserts && (!dbTX || !t)) {
|
|
57
56
|
return {
|
|
58
57
|
insertResult: await this.dboBuilder.getTX((dbTX, _t) => dbTX[this.name].insert(data, insertParams, undefined, tableRules, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insertNestedRecords.js","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insertNestedRecords.ts"],"names":[],"mappings":";;AAkBA,
|
|
1
|
+
{"version":3,"file":"insertNestedRecords.js","sourceRoot":"","sources":["../../../../lib/DboBuilder/TableHandler/insert/insertNestedRecords.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onDeleteFromFileTable.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/onDeleteFromFileTable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"onDeleteFromFileTable.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/TableHandler/onDeleteFromFileTable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,KAAK,yBAAyB,GAAG;IAC/B,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC3C,cAAc,EAAE,SAAS,GAAG,MAAM,CAAC;IACnC,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,SAAS,CAAC;KACnB,CAAC;CACH,CAAC;AACF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,YAAY,EAClB,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,yBAAyB;QAY5D,MAAM;UAAQ,MAAM;4BAwC1C"}
|
|
@@ -3,8 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.onDeleteFromFileTable = onDeleteFromFileTable;
|
|
4
4
|
const prostgles_types_1 = require("prostgles-types");
|
|
5
5
|
async function onDeleteFromFileTable({ localParams, queryType, returningQuery, filterOpts }) {
|
|
6
|
-
if (!this.dboBuilder.prostgles.fileManager)
|
|
6
|
+
if (!this.dboBuilder.prostgles.fileManager) {
|
|
7
7
|
throw new Error("fileManager missing");
|
|
8
|
+
}
|
|
8
9
|
if (this.dboBuilder.prostgles.opts.fileTable?.delayedDelete) {
|
|
9
10
|
return this.dbHandler[queryType](`UPDATE ${(0, prostgles_types_1.asName)(this.name)} SET deleted = now() ${filterOpts.where} ${returningQuery ?? ""};`);
|
|
10
11
|
}
|