prostgles-server 2.0.200 → 2.0.203
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/delete.d.ts +5 -0
- package/dist/DboBuilder/delete.d.ts.map +1 -0
- package/dist/DboBuilder/delete.js +121 -0
- package/dist/DboBuilder/delete.js.map +1 -0
- package/dist/DboBuilder/insert.d.ts.map +1 -1
- package/dist/DboBuilder/insert.js +0 -4
- package/dist/DboBuilder/insert.js.map +1 -1
- package/dist/DboBuilder/insertDataParse.d.ts.map +1 -1
- package/dist/DboBuilder/insertDataParse.js +2 -43
- package/dist/DboBuilder/insertDataParse.js.map +1 -1
- package/dist/DboBuilder/update.d.ts +5 -0
- package/dist/DboBuilder/update.d.ts.map +1 -0
- package/dist/DboBuilder/update.js +114 -0
- package/dist/DboBuilder/update.js.map +1 -0
- package/dist/DboBuilder/uploadFile.d.ts +6 -0
- package/dist/DboBuilder/uploadFile.d.ts.map +1 -0
- package/dist/DboBuilder/uploadFile.js +48 -0
- package/dist/DboBuilder/uploadFile.js.map +1 -0
- package/dist/DboBuilder.d.ts +4 -2
- package/dist/DboBuilder.d.ts.map +1 -1
- package/dist/DboBuilder.js +12 -174
- package/dist/DboBuilder.js.map +1 -1
- package/dist/FileManager.d.ts.map +1 -1
- package/dist/FileManager.js +2 -0
- package/dist/FileManager.js.map +1 -1
- package/dist/PubSubManager.d.ts +2 -4
- package/dist/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager.js +12 -7
- package/dist/PubSubManager.js.map +1 -1
- package/dist/QueryBuilder.d.ts +5 -1
- package/dist/QueryBuilder.d.ts.map +1 -1
- package/lib/DboBuilder/delete.d.ts +5 -0
- package/lib/DboBuilder/delete.d.ts.map +1 -0
- package/lib/DboBuilder/delete.js +120 -0
- package/lib/DboBuilder/delete.ts +127 -0
- package/lib/DboBuilder/insert.d.ts.map +1 -1
- package/lib/DboBuilder/insert.js +0 -4
- package/lib/DboBuilder/insert.ts +0 -4
- package/lib/DboBuilder/insertDataParse.d.ts.map +1 -1
- package/lib/DboBuilder/insertDataParse.js +2 -43
- package/lib/DboBuilder/insertDataParse.ts +2 -46
- package/lib/DboBuilder/update.d.ts +5 -0
- package/lib/DboBuilder/update.d.ts.map +1 -0
- package/lib/DboBuilder/update.js +113 -0
- package/lib/DboBuilder/update.ts +129 -0
- package/lib/DboBuilder/uploadFile.d.ts +6 -0
- package/lib/DboBuilder/uploadFile.d.ts.map +1 -0
- package/lib/DboBuilder/uploadFile.js +47 -0
- package/lib/DboBuilder/uploadFile.ts +50 -0
- package/lib/DboBuilder.d.ts +4 -2
- package/lib/DboBuilder.d.ts.map +1 -1
- package/lib/DboBuilder.js +12 -174
- package/lib/DboBuilder.ts +16 -200
- package/lib/FileManager.d.ts.map +1 -1
- package/lib/FileManager.js +2 -0
- package/lib/FileManager.ts +1 -0
- package/lib/PubSubManager.d.ts +2 -4
- package/lib/PubSubManager.d.ts.map +1 -1
- package/lib/PubSubManager.js +12 -7
- package/lib/PubSubManager.ts +16 -10
- package/package.json +2 -2
- package/tests/client/PID.txt +1 -1
- package/tests/isomorphic_queries.d.ts.map +1 -1
- package/tests/isomorphic_queries.js +33 -1
- package/tests/isomorphic_queries.ts +39 -2
- package/tests/server/package-lock.json +3 -3
|
@@ -4,6 +4,7 @@ exports.insertDataParse = void 0;
|
|
|
4
4
|
const prostgles_types_1 = require("prostgles-types");
|
|
5
5
|
const DboBuilder_1 = require("../DboBuilder");
|
|
6
6
|
const PubSubManager_1 = require("../PubSubManager");
|
|
7
|
+
const uploadFile_1 = require("./uploadFile");
|
|
7
8
|
/**
|
|
8
9
|
* Used for doing referenced inserts within a single transaction
|
|
9
10
|
*/
|
|
@@ -75,53 +76,11 @@ async function insertDataParse(data, param2, param3_unused, tableRules, _localPa
|
|
|
75
76
|
if (preValidate) {
|
|
76
77
|
row = await preValidate(row);
|
|
77
78
|
}
|
|
78
|
-
const dataKeys = Object.keys(row);
|
|
79
79
|
const extraKeys = getExtraKeys(row);
|
|
80
80
|
const colInserts = getColumnInserts(row);
|
|
81
81
|
/* Upload file then continue insert */
|
|
82
82
|
if (this.is_media) {
|
|
83
|
-
|
|
84
|
-
throw "fileManager not set up";
|
|
85
|
-
const { data, name } = row;
|
|
86
|
-
if (dataKeys.length !== 2)
|
|
87
|
-
throw "Expecting only two properties: { name: string; data: File }";
|
|
88
|
-
// if(!Buffer.isBuffer(data)) throw "data is not of type Buffer"
|
|
89
|
-
if (!data)
|
|
90
|
-
throw "data not provided";
|
|
91
|
-
if (typeof name !== "string") {
|
|
92
|
-
throw "name is not of type string";
|
|
93
|
-
}
|
|
94
|
-
const media_id = (await this.db.oneOrNone("SELECT gen_random_uuid() as name")).name;
|
|
95
|
-
const nestedInsert = localParams?.nestedInsert;
|
|
96
|
-
const type = await this.dboBuilder.prostgles.fileManager.parseFile({ file: data, fileName: name, tableName: nestedInsert?.previousTable, colName: nestedInsert?.referencingColumn });
|
|
97
|
-
const media_name = `${media_id}.${type.ext}`;
|
|
98
|
-
let media = {
|
|
99
|
-
id: media_id,
|
|
100
|
-
name: media_name,
|
|
101
|
-
original_name: name,
|
|
102
|
-
extension: type.ext,
|
|
103
|
-
content_type: type.mime
|
|
104
|
-
};
|
|
105
|
-
if (validate) {
|
|
106
|
-
media = await validate(media);
|
|
107
|
-
}
|
|
108
|
-
const _media = await this.dboBuilder.prostgles.fileManager.uploadAsMedia({
|
|
109
|
-
item: {
|
|
110
|
-
data,
|
|
111
|
-
name: media.name ?? "????",
|
|
112
|
-
content_type: media.content_type
|
|
113
|
-
},
|
|
114
|
-
// imageCompression: {
|
|
115
|
-
// inside: {
|
|
116
|
-
// width: 1100,
|
|
117
|
-
// height: 630
|
|
118
|
-
// }
|
|
119
|
-
// }
|
|
120
|
-
});
|
|
121
|
-
return {
|
|
122
|
-
...media,
|
|
123
|
-
..._media,
|
|
124
|
-
};
|
|
83
|
+
return uploadFile_1.uploadFile.bind(this)(row, validate, localParams);
|
|
125
84
|
/* Potentially a nested join */
|
|
126
85
|
}
|
|
127
86
|
else if (extraKeys.length || colInserts.length) {
|
|
@@ -2,6 +2,7 @@ import { AnyObject, asName, FieldFilter, get, getKeys, InsertParams, isDefined,
|
|
|
2
2
|
import { DboBuilder, isPojoObject, LocalParams, makeErr, Media, parseError, pgp, TableHandler, TableHandlers } from "../DboBuilder";
|
|
3
3
|
import { TableRule } from "../PublishParser";
|
|
4
4
|
import { omitKeys } from "../PubSubManager";
|
|
5
|
+
import { isFile, uploadFile } from "./uploadFile";
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Used for doing referenced inserts within a single transaction
|
|
@@ -102,57 +103,12 @@ export async function insertDataParse(
|
|
|
102
103
|
row = await preValidate(row);
|
|
103
104
|
}
|
|
104
105
|
|
|
105
|
-
const dataKeys = Object.keys(row);
|
|
106
106
|
const extraKeys = getExtraKeys(row);
|
|
107
107
|
const colInserts = getColumnInserts(row);
|
|
108
108
|
|
|
109
109
|
/* Upload file then continue insert */
|
|
110
110
|
if (this.is_media) {
|
|
111
|
-
|
|
112
|
-
const { data, name } = row;
|
|
113
|
-
|
|
114
|
-
if (dataKeys.length !== 2) throw "Expecting only two properties: { name: string; data: File }";
|
|
115
|
-
|
|
116
|
-
// if(!Buffer.isBuffer(data)) throw "data is not of type Buffer"
|
|
117
|
-
if (!data) throw "data not provided"
|
|
118
|
-
if (typeof name !== "string") {
|
|
119
|
-
throw "name is not of type string"
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
const media_id = (await this.db.oneOrNone("SELECT gen_random_uuid() as name")).name;
|
|
123
|
-
const nestedInsert = localParams?.nestedInsert;
|
|
124
|
-
const type = await this.dboBuilder.prostgles.fileManager.parseFile({ file: data, fileName: name, tableName: nestedInsert?.previousTable, colName: nestedInsert?.referencingColumn });
|
|
125
|
-
const media_name = `${media_id}.${type.ext}`;
|
|
126
|
-
let media: Media = {
|
|
127
|
-
id: media_id,
|
|
128
|
-
name: media_name,
|
|
129
|
-
original_name: name,
|
|
130
|
-
extension: type.ext,
|
|
131
|
-
content_type: type.mime
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
if (validate) {
|
|
135
|
-
media = await validate(media);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
const _media: Media = await this.dboBuilder.prostgles.fileManager.uploadAsMedia({
|
|
139
|
-
item: {
|
|
140
|
-
data,
|
|
141
|
-
name: media.name ?? "????",
|
|
142
|
-
content_type: media.content_type as any
|
|
143
|
-
},
|
|
144
|
-
// imageCompression: {
|
|
145
|
-
// inside: {
|
|
146
|
-
// width: 1100,
|
|
147
|
-
// height: 630
|
|
148
|
-
// }
|
|
149
|
-
// }
|
|
150
|
-
});
|
|
151
|
-
|
|
152
|
-
return {
|
|
153
|
-
...media,
|
|
154
|
-
..._media,
|
|
155
|
-
};
|
|
111
|
+
return uploadFile.bind(this)(row, validate, localParams)
|
|
156
112
|
|
|
157
113
|
/* Potentially a nested join */
|
|
158
114
|
} else if (extraKeys.length || colInserts.length) {
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { AnyObject, UpdateParams } from "prostgles-types";
|
|
2
|
+
import { Filter, LocalParams, TableHandler } from "../DboBuilder";
|
|
3
|
+
import { TableRule } from "../PublishParser";
|
|
4
|
+
export declare function update(this: TableHandler, filter: Filter, _newData: AnyObject, params?: UpdateParams, tableRules?: TableRule, localParams?: LocalParams): Promise<AnyObject | void>;
|
|
5
|
+
//# sourceMappingURL=update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAiB,WAAW,EAA8B,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAI1D,wBAAsB,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA0HzL"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.update = void 0;
|
|
4
|
+
const prostgles_types_1 = require("prostgles-types");
|
|
5
|
+
const DboBuilder_1 = require("../DboBuilder");
|
|
6
|
+
const PubSubManager_1 = require("../PubSubManager");
|
|
7
|
+
const uploadFile_1 = require("./uploadFile");
|
|
8
|
+
async function update(filter, _newData, params, tableRules, localParams) {
|
|
9
|
+
try {
|
|
10
|
+
let oldFileDelete = () => { };
|
|
11
|
+
let newData = _newData;
|
|
12
|
+
if (this.is_media && (0, uploadFile_1.isFile)(newData) && (!tableRules || tableRules.insert)) {
|
|
13
|
+
let existingMediaId = !(!filter || !(0, prostgles_types_1.isObject)(filter) || (0, prostgles_types_1.getKeys)(filter).join() !== "id" || typeof filter.id !== "string") ? filter.id : undefined;
|
|
14
|
+
if (!existingMediaId) {
|
|
15
|
+
throw new Error(`Updating the file table with file data can only be done by providing a single id filter. E.g. { id: "9ea4e23c-2b1a-4e33-8ec0-c15919bb45ec"} `);
|
|
16
|
+
}
|
|
17
|
+
if (localParams?.testRule) {
|
|
18
|
+
newData = {};
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
const fileManager = this.dboBuilder.prostgles.fileManager;
|
|
22
|
+
if (!fileManager)
|
|
23
|
+
throw new Error("fileManager missing");
|
|
24
|
+
const validate = tableRules?.update?.validate ? async (row) => {
|
|
25
|
+
return tableRules?.update?.validate({ update: row, filter });
|
|
26
|
+
} : undefined;
|
|
27
|
+
let existingFile = await (localParams?.dbTX?.[this.name] || this).findOne({ id: existingMediaId });
|
|
28
|
+
if (!existingFile?.name)
|
|
29
|
+
throw new Error("Existing file record not found");
|
|
30
|
+
// oldFileDelete = () => fileManager.deleteFile(existingFile!.name!)
|
|
31
|
+
await fileManager.deleteFile(existingFile.name); //oldFileDelete();
|
|
32
|
+
const newFile = await uploadFile_1.uploadFile.bind(this)(newData, validate, localParams, existingFile.id);
|
|
33
|
+
newData = (0, PubSubManager_1.omitKeys)(newFile, ["id"]);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
else if (this.is_media && (0, prostgles_types_1.isObject)(newData) && typeof newData.name === "string") {
|
|
37
|
+
throw new Error("Cannot update the 'name' field of the file. It is used in interacting with the file");
|
|
38
|
+
}
|
|
39
|
+
const parsedRules = await this.parseUpdateRules(filter, newData, params, tableRules, localParams);
|
|
40
|
+
if (localParams?.testRule) {
|
|
41
|
+
return parsedRules;
|
|
42
|
+
}
|
|
43
|
+
const { fields, validateRow, forcedData, finalUpdateFilter, returningFields, forcedFilter, filterFields } = parsedRules;
|
|
44
|
+
let { returning, multi = true, onConflictDoNothing = false, fixIssues = false } = params || {};
|
|
45
|
+
const { returnQuery = false } = localParams ?? {};
|
|
46
|
+
if (params) {
|
|
47
|
+
const good_params = ["returning", "multi", "onConflictDoNothing", "fixIssues"];
|
|
48
|
+
const bad_params = Object.keys(params).filter(k => !good_params.includes(k));
|
|
49
|
+
if (bad_params && bad_params.length)
|
|
50
|
+
throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
|
|
51
|
+
}
|
|
52
|
+
const { data, allowedCols } = this.validateNewData({ row: newData, forcedData, allowedFields: fields, tableRules, fixIssues });
|
|
53
|
+
/* Patch data */
|
|
54
|
+
let patchedTextData = [];
|
|
55
|
+
this.columns.map(c => {
|
|
56
|
+
const d = data[c.name];
|
|
57
|
+
if (c.data_type === "text" && d && (0, DboBuilder_1.isPlainObject)(d) && !["from", "to"].find(key => typeof d[key] !== "number")) {
|
|
58
|
+
const unrecProps = Object.keys(d).filter(k => !["from", "to", "text", "md5"].includes(k));
|
|
59
|
+
if (unrecProps.length)
|
|
60
|
+
throw "Unrecognised params in textPatch field: " + unrecProps.join(", ");
|
|
61
|
+
patchedTextData.push({ ...d, fieldName: c.name });
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
if (patchedTextData && patchedTextData.length) {
|
|
65
|
+
if (tableRules && !tableRules.select)
|
|
66
|
+
throw "Select needs to be permitted to patch data";
|
|
67
|
+
const rows = await this.find(filter, { select: patchedTextData.reduce((a, v) => ({ ...a, [v.fieldName]: 1 }), {}) }, undefined, tableRules);
|
|
68
|
+
if (rows.length !== 1) {
|
|
69
|
+
throw "Cannot patch data within a filter that affects more/less than 1 row";
|
|
70
|
+
}
|
|
71
|
+
patchedTextData.map(p => {
|
|
72
|
+
data[p.fieldName] = (0, prostgles_types_1.unpatchText)(rows[0][p.fieldName], p);
|
|
73
|
+
});
|
|
74
|
+
// https://w3resource.com/PostgreSQL/overlay-function.p hp
|
|
75
|
+
// overlay(coalesce(status, '') placing 'hom' from 2 for 0)
|
|
76
|
+
}
|
|
77
|
+
let nData = { ...data };
|
|
78
|
+
let query = await this.colSet.getUpdateQuery(nData, allowedCols, validateRow);
|
|
79
|
+
query += (await this.prepareWhere({
|
|
80
|
+
filter,
|
|
81
|
+
forcedFilter,
|
|
82
|
+
filterFields,
|
|
83
|
+
localParams,
|
|
84
|
+
tableRule: tableRules
|
|
85
|
+
})).where;
|
|
86
|
+
if (onConflictDoNothing)
|
|
87
|
+
query += " ON CONFLICT DO NOTHING ";
|
|
88
|
+
let qType = "none";
|
|
89
|
+
if (returning) {
|
|
90
|
+
qType = multi ? "any" : "one";
|
|
91
|
+
query += this.makeReturnQuery(await this.prepareReturning(returning, this.parseFieldFilter(returningFields)));
|
|
92
|
+
}
|
|
93
|
+
if (returnQuery)
|
|
94
|
+
return query;
|
|
95
|
+
let result;
|
|
96
|
+
if (this.t) {
|
|
97
|
+
result = await (this.t)[qType](query).catch((err) => (0, DboBuilder_1.makeErr)(err, localParams, this, fields));
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
result = await this.db.tx(t => t[qType](query)).catch(err => (0, DboBuilder_1.makeErr)(err, localParams, this, fields));
|
|
101
|
+
}
|
|
102
|
+
/** TODO: Delete old file at the end in case new file update fails */
|
|
103
|
+
// await oldFileDelete();
|
|
104
|
+
return result;
|
|
105
|
+
}
|
|
106
|
+
catch (e) {
|
|
107
|
+
if (localParams && localParams.testRule)
|
|
108
|
+
throw e;
|
|
109
|
+
throw { err: (0, DboBuilder_1.parseError)(e), msg: `Issue with dbo.${this.name}.update(${JSON.stringify(filter || {}, null, 2)}, ${Array.isArray(_newData) ? "...DATA[]" : "...DATA"}, ${JSON.stringify(params || {}, null, 2)})` };
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
exports.update = update;
|
|
113
|
+
;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { AnyObject, getKeys, isObject, unpatchText, UpdateParams } from "prostgles-types";
|
|
2
|
+
import { Filter, isPlainObject, LocalParams, makeErr, Media, parseError, TableHandler } from "../DboBuilder";
|
|
3
|
+
import { TableRule, ValidateRow } from "../PublishParser";
|
|
4
|
+
import { omitKeys } from "../PubSubManager";
|
|
5
|
+
import { isFile, uploadFile } from "./uploadFile"
|
|
6
|
+
|
|
7
|
+
export async function update(this: TableHandler, filter: Filter, _newData: AnyObject, params?: UpdateParams, tableRules?: TableRule, localParams?: LocalParams): Promise<AnyObject | void> {
|
|
8
|
+
try {
|
|
9
|
+
|
|
10
|
+
let oldFileDelete = () => {};
|
|
11
|
+
|
|
12
|
+
let newData = _newData;
|
|
13
|
+
if(this.is_media && isFile(newData) && (!tableRules || tableRules.insert)){
|
|
14
|
+
let existingMediaId: string = !(!filter || !isObject(filter) || getKeys(filter).join() !== "id" || typeof (filter as any).id !== "string")? (filter as any).id : undefined
|
|
15
|
+
if(!existingMediaId){
|
|
16
|
+
throw new Error(`Updating the file table with file data can only be done by providing a single id filter. E.g. { id: "9ea4e23c-2b1a-4e33-8ec0-c15919bb45ec"} `);
|
|
17
|
+
}
|
|
18
|
+
if(localParams?.testRule){
|
|
19
|
+
newData = {};
|
|
20
|
+
} else {
|
|
21
|
+
const fileManager = this.dboBuilder.prostgles.fileManager
|
|
22
|
+
if(!fileManager) throw new Error("fileManager missing");
|
|
23
|
+
const validate: ValidateRow | undefined = tableRules?.update?.validate? async (row) => {
|
|
24
|
+
return tableRules?.update?.validate!({ update: row, filter })
|
|
25
|
+
} : undefined;
|
|
26
|
+
|
|
27
|
+
let existingFile: Media | undefined = await (localParams?.dbTX?.[this.name] as TableHandler || this).findOne({ id: existingMediaId });
|
|
28
|
+
|
|
29
|
+
if(!existingFile?.name) throw new Error("Existing file record not found");
|
|
30
|
+
|
|
31
|
+
// oldFileDelete = () => fileManager.deleteFile(existingFile!.name!)
|
|
32
|
+
await fileManager.deleteFile(existingFile!.name!); //oldFileDelete();
|
|
33
|
+
const newFile = await uploadFile.bind(this)(newData, validate, localParams, existingFile.id)
|
|
34
|
+
newData = omitKeys(newFile, ["id"]);
|
|
35
|
+
}
|
|
36
|
+
} else if(this.is_media && isObject(newData) && typeof newData.name === "string"){
|
|
37
|
+
throw new Error("Cannot update the 'name' field of the file. It is used in interacting with the file")
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const parsedRules = await this.parseUpdateRules(filter, newData, params, tableRules, localParams)
|
|
41
|
+
if (localParams?.testRule) {
|
|
42
|
+
return parsedRules;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const { fields, validateRow, forcedData, finalUpdateFilter, returningFields, forcedFilter, filterFields } = parsedRules;
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
let { returning, multi = true, onConflictDoNothing = false, fixIssues = false } = params || {};
|
|
49
|
+
const { returnQuery = false } = localParams ?? {};
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
if (params) {
|
|
53
|
+
const good_params = ["returning", "multi", "onConflictDoNothing", "fixIssues"];
|
|
54
|
+
const bad_params = Object.keys(params).filter(k => !good_params.includes(k));
|
|
55
|
+
if (bad_params && bad_params.length) throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const { data, allowedCols } = this.validateNewData({ row: newData, forcedData, allowedFields: fields, tableRules, fixIssues });
|
|
59
|
+
|
|
60
|
+
/* Patch data */
|
|
61
|
+
let patchedTextData: {
|
|
62
|
+
fieldName: string;
|
|
63
|
+
from: number;
|
|
64
|
+
to: number;
|
|
65
|
+
text: string;
|
|
66
|
+
md5: string
|
|
67
|
+
}[] = [];
|
|
68
|
+
this.columns.map(c => {
|
|
69
|
+
const d = data[c.name];
|
|
70
|
+
if (c.data_type === "text" && d && isPlainObject(d) && !["from", "to"].find(key => typeof d[key] !== "number")) {
|
|
71
|
+
const unrecProps = Object.keys(d).filter(k => !["from", "to", "text", "md5"].includes(k));
|
|
72
|
+
if (unrecProps.length) throw "Unrecognised params in textPatch field: " + unrecProps.join(", ");
|
|
73
|
+
patchedTextData.push({ ...d, fieldName: c.name } as (typeof patchedTextData)[number]);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
if (patchedTextData && patchedTextData.length) {
|
|
78
|
+
if (tableRules && !tableRules.select) throw "Select needs to be permitted to patch data";
|
|
79
|
+
const rows = await this.find(filter, { select: patchedTextData.reduce((a, v) => ({ ...a, [v.fieldName]: 1 }), {}) }, undefined, tableRules);
|
|
80
|
+
|
|
81
|
+
if (rows.length !== 1) {
|
|
82
|
+
throw "Cannot patch data within a filter that affects more/less than 1 row";
|
|
83
|
+
}
|
|
84
|
+
patchedTextData.map(p => {
|
|
85
|
+
data[p.fieldName] = unpatchText(rows[0][p.fieldName], p);
|
|
86
|
+
})
|
|
87
|
+
|
|
88
|
+
// https://w3resource.com/PostgreSQL/overlay-function.p hp
|
|
89
|
+
// overlay(coalesce(status, '') placing 'hom' from 2 for 0)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
let nData = { ...data };
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
let query = await this.colSet.getUpdateQuery(nData, allowedCols, validateRow)
|
|
96
|
+
query += (await this.prepareWhere({
|
|
97
|
+
filter,
|
|
98
|
+
forcedFilter,
|
|
99
|
+
filterFields,
|
|
100
|
+
localParams,
|
|
101
|
+
tableRule: tableRules
|
|
102
|
+
})).where;
|
|
103
|
+
if (onConflictDoNothing) query += " ON CONFLICT DO NOTHING ";
|
|
104
|
+
|
|
105
|
+
let qType: "none" | "any" | "one" = "none";
|
|
106
|
+
if (returning) {
|
|
107
|
+
qType = multi ? "any" : "one";
|
|
108
|
+
query += this.makeReturnQuery(await this.prepareReturning(returning, this.parseFieldFilter(returningFields)));
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
if (returnQuery) return query as unknown as void;
|
|
112
|
+
|
|
113
|
+
let result;
|
|
114
|
+
if (this.t) {
|
|
115
|
+
result = await (this.t)[qType](query).catch((err: any) => makeErr(err, localParams, this, fields));
|
|
116
|
+
} else {
|
|
117
|
+
result = await this.db.tx(t => (t as any)[qType](query)).catch(err => makeErr(err, localParams, this, fields));
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/** TODO: Delete old file at the end in case new file update fails */
|
|
121
|
+
// await oldFileDelete();
|
|
122
|
+
|
|
123
|
+
return result;
|
|
124
|
+
|
|
125
|
+
} catch (e) {
|
|
126
|
+
if (localParams && localParams.testRule) throw e;
|
|
127
|
+
throw { err: parseError(e), msg: `Issue with dbo.${this.name}.update(${JSON.stringify(filter || {}, null, 2)}, ${Array.isArray(_newData)? "...DATA[]": "...DATA"}, ${JSON.stringify(params || {}, null, 2)})` };
|
|
128
|
+
}
|
|
129
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AnyObject } from "prostgles-types";
|
|
2
|
+
import { LocalParams, Media, TableHandler } from "../DboBuilder";
|
|
3
|
+
import { ValidateRow } from "../PublishParser";
|
|
4
|
+
export declare const isFile: (row: AnyObject) => boolean;
|
|
5
|
+
export declare function uploadFile(this: TableHandler, row: AnyObject, validate: ValidateRow | undefined, localParams: LocalParams | undefined, mediaId?: string): Promise<Media>;
|
|
6
|
+
//# sourceMappingURL=uploadFile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploadFile.d.ts","sourceRoot":"","sources":["uploadFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAElE,eAAO,MAAM,MAAM,QAAS,SAAS,YAEpC,CAAA;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAyC9K"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.uploadFile = exports.isFile = void 0;
|
|
4
|
+
const prostgles_types_1 = require("prostgles-types");
|
|
5
|
+
const isFile = (row) => {
|
|
6
|
+
return Boolean(row && (0, prostgles_types_1.isObject)(row) && (0, prostgles_types_1.getKeys)(row).sort().join() === ["name", "data"].sort().join() && row.data && (typeof row.data === "string" || Buffer.isBuffer(row.data)) && typeof row.name === "string");
|
|
7
|
+
};
|
|
8
|
+
exports.isFile = isFile;
|
|
9
|
+
async function uploadFile(row, validate, localParams, mediaId) {
|
|
10
|
+
if (!this.dboBuilder.prostgles?.fileManager)
|
|
11
|
+
throw "fileManager not set up";
|
|
12
|
+
if (!(0, exports.isFile)(row))
|
|
13
|
+
throw "Expecting only two properties for file upload: { name: string; data: File | string | Buffer }; but got: " + (0, prostgles_types_1.getKeys)(row).map(k => `${k}: ${typeof data[k]}`).join(", ");
|
|
14
|
+
const { data, name } = row;
|
|
15
|
+
const media_id = mediaId ?? (await this.db.oneOrNone("SELECT gen_random_uuid() as name")).name;
|
|
16
|
+
const nestedInsert = localParams?.nestedInsert;
|
|
17
|
+
const type = await this.dboBuilder.prostgles.fileManager.parseFile({ file: data, fileName: name, tableName: nestedInsert?.previousTable, colName: nestedInsert?.referencingColumn });
|
|
18
|
+
const media_name = `${media_id}.${type.ext}`;
|
|
19
|
+
let media = {
|
|
20
|
+
id: media_id,
|
|
21
|
+
name: media_name,
|
|
22
|
+
original_name: name,
|
|
23
|
+
extension: type.ext,
|
|
24
|
+
content_type: type.mime
|
|
25
|
+
};
|
|
26
|
+
if (validate) {
|
|
27
|
+
media = await validate(media);
|
|
28
|
+
}
|
|
29
|
+
const _media = await this.dboBuilder.prostgles.fileManager.uploadAsMedia({
|
|
30
|
+
item: {
|
|
31
|
+
data,
|
|
32
|
+
name: media.name ?? "????",
|
|
33
|
+
content_type: media.content_type
|
|
34
|
+
},
|
|
35
|
+
// imageCompression: {
|
|
36
|
+
// inside: {
|
|
37
|
+
// width: 1100,
|
|
38
|
+
// height: 630
|
|
39
|
+
// }
|
|
40
|
+
// }
|
|
41
|
+
});
|
|
42
|
+
return {
|
|
43
|
+
...media,
|
|
44
|
+
..._media,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
exports.uploadFile = uploadFile;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { AnyObject, getKeys, isObject } from "prostgles-types"
|
|
2
|
+
import { LocalParams, Media, TableHandler } from "../DboBuilder";
|
|
3
|
+
import { ValidateRow, ValidateUpdateRow } from "../PublishParser";
|
|
4
|
+
|
|
5
|
+
export const isFile = (row: AnyObject) => {
|
|
6
|
+
return Boolean(row && isObject(row) && getKeys(row).sort().join() === ["name", "data"].sort().join() && row.data && (typeof row.data === "string" || Buffer.isBuffer(row.data)) && typeof row.name === "string")
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export async function uploadFile(this: TableHandler, row: AnyObject, validate: ValidateRow | undefined, localParams: LocalParams | undefined, mediaId?: string): Promise<Media> {
|
|
10
|
+
if (!this.dboBuilder.prostgles?.fileManager) throw "fileManager not set up";
|
|
11
|
+
|
|
12
|
+
if (!isFile(row)) throw "Expecting only two properties for file upload: { name: string; data: File | string | Buffer }; but got: " + getKeys(row).map(k => `${k}: ${typeof data[k]}`).join(", ");
|
|
13
|
+
const { data, name } = row;
|
|
14
|
+
|
|
15
|
+
const media_id = mediaId ?? (await this.db.oneOrNone("SELECT gen_random_uuid() as name")).name;
|
|
16
|
+
const nestedInsert = localParams?.nestedInsert;
|
|
17
|
+
const type = await this.dboBuilder.prostgles.fileManager.parseFile({ file: data, fileName: name, tableName: nestedInsert?.previousTable, colName: nestedInsert?.referencingColumn });
|
|
18
|
+
const media_name = `${media_id}.${type.ext}`;
|
|
19
|
+
let media: Media = {
|
|
20
|
+
id: media_id,
|
|
21
|
+
name: media_name,
|
|
22
|
+
original_name: name,
|
|
23
|
+
extension: type.ext,
|
|
24
|
+
content_type: type.mime
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (validate) {
|
|
28
|
+
media = await validate(media);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const _media: Media = await this.dboBuilder.prostgles.fileManager.uploadAsMedia({
|
|
32
|
+
item: {
|
|
33
|
+
data,
|
|
34
|
+
name: media.name ?? "????",
|
|
35
|
+
content_type: media.content_type as any
|
|
36
|
+
},
|
|
37
|
+
// imageCompression: {
|
|
38
|
+
// inside: {
|
|
39
|
+
// width: 1100,
|
|
40
|
+
// height: 630
|
|
41
|
+
// }
|
|
42
|
+
// }
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
...media,
|
|
47
|
+
..._media,
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
}
|
package/lib/DboBuilder.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export declare type Media = {
|
|
|
13
13
|
"name"?: string;
|
|
14
14
|
"original_name"?: string;
|
|
15
15
|
"etag"?: string;
|
|
16
|
+
deleted?: string | null;
|
|
17
|
+
deleted_from_storage?: string | null;
|
|
16
18
|
};
|
|
17
19
|
export declare type TxCB = {
|
|
18
20
|
(t: TableHandlers, _t: pgPromise.ITask<{}>): (any | void);
|
|
@@ -95,11 +97,11 @@ export declare type Aggregation = {
|
|
|
95
97
|
alias: string;
|
|
96
98
|
getQuery: (alias: string) => string;
|
|
97
99
|
};
|
|
98
|
-
export declare type Filter =
|
|
100
|
+
export declare type Filter = AnyObject | {
|
|
99
101
|
$and: Filter[];
|
|
100
102
|
} | {
|
|
101
103
|
$or: Filter[];
|
|
102
|
-
}
|
|
104
|
+
};
|
|
103
105
|
export declare type JoinInfo = {
|
|
104
106
|
expectOne?: boolean;
|
|
105
107
|
paths: {
|
package/lib/DboBuilder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DboBuilder.d.ts","sourceRoot":"","sources":["DboBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DboBuilder.d.ts","sourceRoot":"","sources":["DboBuilder.ts"],"names":[],"mappings":"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"}
|