prostgles-server 3.0.64 → 3.0.67
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/AuthHandler.d.ts +11 -11
- package/dist/AuthHandler.d.ts.map +1 -1
- package/dist/DBSchemaBuilder.d.ts +3 -3
- package/dist/DBSchemaBuilder.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/Functions.d.ts +3 -3
- package/dist/DboBuilder/QueryBuilder/Functions.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts +3 -3
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler.d.ts +1 -1
- package/dist/DboBuilder/TableHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler.d.ts +5 -4
- package/dist/DboBuilder/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler.js +7 -134
- package/dist/DboBuilder/ViewHandler.js.map +1 -1
- package/dist/DboBuilder/delete.js +1 -1
- package/dist/DboBuilder/delete.js.map +1 -1
- package/dist/DboBuilder/insert.js +1 -1
- package/dist/DboBuilder/insert.js.map +1 -1
- package/dist/DboBuilder/insertDataParse.js +1 -1
- package/dist/DboBuilder/insertDataParse.js.map +1 -1
- package/dist/DboBuilder/runSQL.js +1 -1
- package/dist/DboBuilder/runSQL.js.map +1 -1
- package/dist/DboBuilder/subscribe.d.ts +11 -0
- package/dist/DboBuilder/subscribe.d.ts.map +1 -0
- package/dist/DboBuilder/subscribe.js +190 -0
- package/dist/DboBuilder/subscribe.js.map +1 -0
- package/dist/DboBuilder/update.js +1 -1
- package/dist/DboBuilder/update.js.map +1 -1
- package/dist/DboBuilder.d.ts +24 -24
- package/dist/DboBuilder.d.ts.map +1 -1
- package/dist/DboBuilder.js +1 -1
- package/dist/DboBuilder.js.map +1 -1
- package/dist/FileManager.d.ts +6 -6
- package/dist/FileManager.d.ts.map +1 -1
- package/dist/FileManager.js +17 -17
- package/dist/FileManager.js.map +1 -1
- package/dist/Filtering.d.ts +1 -1
- package/dist/Filtering.d.ts.map +1 -1
- package/dist/PostgresNotifListenManager.d.ts +1 -1
- package/dist/PostgresNotifListenManager.d.ts.map +1 -1
- package/dist/Prostgles.d.ts +14 -14
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +12 -12
- package/dist/Prostgles.js.map +1 -1
- package/dist/{PubSubManager.d.ts → PubSubManager/PubSubManager.d.ts} +24 -21
- package/dist/PubSubManager/PubSubManager.d.ts.map +1 -0
- package/dist/PubSubManager/PubSubManager.js +754 -0
- package/dist/PubSubManager/PubSubManager.js.map +1 -0
- package/dist/PubSubManager/initPubSubManager.d.ts +3 -0
- package/dist/PubSubManager/initPubSubManager.d.ts.map +1 -0
- package/dist/PubSubManager/initPubSubManager.js +616 -0
- package/dist/PubSubManager/initPubSubManager.js.map +1 -0
- package/dist/PublishParser.d.ts +32 -32
- package/dist/PublishParser.d.ts.map +1 -1
- package/dist/PublishParser.js +1 -1
- package/dist/PublishParser.js.map +1 -1
- package/dist/SchemaWatch.d.ts +1 -1
- package/dist/SchemaWatch.d.ts.map +1 -1
- package/dist/SyncReplication.d.ts +6 -6
- package/dist/SyncReplication.d.ts.map +1 -1
- package/dist/SyncReplication.js +1 -1
- package/dist/SyncReplication.js.map +1 -1
- package/dist/TableConfig.d.ts +21 -21
- package/dist/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig.js +13 -13
- package/dist/TableConfig.js.map +1 -1
- package/dist/shortestPath.d.ts +1 -1
- package/dist/shortestPath.d.ts.map +1 -1
- package/dist/validation.d.ts +9 -9
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +1 -1
- package/dist/validation.js.map +1 -1
- package/lib/DboBuilder/ViewHandler.d.ts +4 -3
- package/lib/DboBuilder/ViewHandler.d.ts.map +1 -1
- package/lib/DboBuilder/ViewHandler.js +7 -134
- package/lib/DboBuilder/ViewHandler.ts +15 -164
- package/lib/DboBuilder/delete.js +1 -1
- package/lib/DboBuilder/delete.ts +1 -1
- package/lib/DboBuilder/insert.js +1 -1
- package/lib/DboBuilder/insert.ts +1 -1
- package/lib/DboBuilder/insertDataParse.js +1 -1
- package/lib/DboBuilder/insertDataParse.ts +1 -1
- package/lib/DboBuilder/runSQL.js +1 -1
- package/lib/DboBuilder/runSQL.ts +1 -1
- package/lib/DboBuilder/subscribe.d.ts +11 -0
- package/lib/DboBuilder/subscribe.d.ts.map +1 -0
- package/lib/DboBuilder/subscribe.js +189 -0
- package/lib/DboBuilder/subscribe.ts +230 -0
- package/lib/DboBuilder/update.js +1 -1
- package/lib/DboBuilder/update.ts +1 -1
- package/lib/DboBuilder.d.ts +1 -1
- package/lib/DboBuilder.d.ts.map +1 -1
- package/lib/DboBuilder.js +1 -1
- package/lib/DboBuilder.ts +1 -1
- package/lib/Prostgles.js +1 -1
- package/lib/Prostgles.ts +1 -1
- package/lib/{PubSubManager.d.ts → PubSubManager/PubSubManager.d.ts} +20 -17
- package/lib/PubSubManager/PubSubManager.d.ts.map +1 -0
- package/lib/PubSubManager/PubSubManager.js +776 -0
- package/lib/PubSubManager/PubSubManager.ts +998 -0
- package/lib/PubSubManager/initPubSubManager.d.ts +3 -0
- package/lib/PubSubManager/initPubSubManager.d.ts.map +1 -0
- package/lib/PubSubManager/initPubSubManager.js +615 -0
- package/lib/PubSubManager/initPubSubManager.ts +630 -0
- package/lib/PublishParser.js +1 -1
- package/lib/PublishParser.ts +1 -1
- package/lib/SyncReplication.d.ts +1 -1
- package/lib/SyncReplication.d.ts.map +1 -1
- package/lib/SyncReplication.js +1 -1
- package/lib/SyncReplication.ts +1 -1
- package/lib/TableConfig.js +1 -1
- package/lib/TableConfig.ts +1 -1
- package/lib/validation.js +1 -1
- package/lib/validation.ts +1 -1
- package/package.json +6 -5
- package/tests/client/PID.txt +1 -1
- package/tests/server/package-lock.json +9 -7
- package/dist/PubSubManager.d.ts.map +0 -1
- package/dist/PubSubManager.js +0 -1398
- package/dist/PubSubManager.js.map +0 -1
- package/lib/PubSubManager.d.ts.map +0 -1
- package/lib/PubSubManager.js +0 -1420
- package/lib/PubSubManager.ts +0 -1655
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { AnyObject, asName, SubscribeParams } from "prostgles-types";
|
|
2
|
+
import { Filter, LocalParams, makeErr, parseError } from "../DboBuilder";
|
|
3
|
+
import { TableRule } from "../PublishParser";
|
|
4
|
+
import { log, omitKeys, ViewSubscriptionOptions } from "../PubSubManager/PubSubManager";
|
|
5
|
+
import { ViewHandler } from "./ViewHandler";
|
|
6
|
+
|
|
7
|
+
export type LocalFunc = (items: AnyObject[]) => any;
|
|
8
|
+
|
|
9
|
+
async function subscribe(this: ViewHandler, filter: Filter, params: SubscribeParams, localFunc: LocalFunc): Promise<{ unsubscribe: () => any }>
|
|
10
|
+
async function subscribe(this: ViewHandler, filter: Filter, params: SubscribeParams, localFunc: undefined, table_rules: TableRule | undefined, localParams: LocalParams): Promise<string>
|
|
11
|
+
async function subscribe(this: ViewHandler, filter: Filter, params: SubscribeParams, localFunc?: LocalFunc, table_rules?: TableRule, localParams?: LocalParams): Promise<{ unsubscribe: () => any } | string>
|
|
12
|
+
{
|
|
13
|
+
|
|
14
|
+
try {
|
|
15
|
+
// if (this.is_view) throw "Cannot subscribe to a view";
|
|
16
|
+
|
|
17
|
+
if (this.t) {
|
|
18
|
+
throw "subscribe not allowed within transactions";
|
|
19
|
+
}
|
|
20
|
+
if (!localParams && !localFunc) {
|
|
21
|
+
throw " missing data. provide -> localFunc | localParams { socket } ";
|
|
22
|
+
}
|
|
23
|
+
if (localParams?.socket && localFunc) {
|
|
24
|
+
console.error({ localParams, localFunc })
|
|
25
|
+
throw " Cannot have localFunc AND socket ";
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const { filterFields, forcedFilter } = table_rules?.select || {},
|
|
29
|
+
filterOpts = await this.prepareWhere({ filter, forcedFilter, addKeywords: false, filterFields, tableAlias: undefined, localParams, tableRule: table_rules }),
|
|
30
|
+
condition = filterOpts.where,
|
|
31
|
+
throttle = params?.throttle || 0,
|
|
32
|
+
selectParams = omitKeys(params || {}, ["throttle"]);
|
|
33
|
+
|
|
34
|
+
/** app_triggers condition field has an index which limits it's value.
|
|
35
|
+
* TODO: use condition md5 hash
|
|
36
|
+
* */
|
|
37
|
+
const filterSize = JSON.stringify(filter || {}).length;
|
|
38
|
+
if (filterSize * 4 > 2704) {
|
|
39
|
+
throw "filter too big. Might exceed the btree version 4 maximum 2704. Use a primary key or a $rowhash filter instead"
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
if (!localFunc) {
|
|
43
|
+
|
|
44
|
+
if (!this.dboBuilder.prostgles.isSuperUser) {
|
|
45
|
+
throw "Subscribe not possible. Must be superuser to add triggers 1856";
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return await this.find(filter, { ...selectParams, limit: 0 }, undefined, table_rules, localParams)
|
|
49
|
+
.then(async _isValid => {
|
|
50
|
+
|
|
51
|
+
let viewOptions: ViewSubscriptionOptions | undefined = undefined;
|
|
52
|
+
|
|
53
|
+
if (this.is_view) {
|
|
54
|
+
const viewName = this.name;
|
|
55
|
+
const viewNameEscaped = this.escapedName;
|
|
56
|
+
const { current_schema } = await this.db.oneOrNone("SELECT current_schema")
|
|
57
|
+
|
|
58
|
+
/** Get list of used columns and their parent tables */
|
|
59
|
+
let { def } = (await this.db.oneOrNone("SELECT pg_get_viewdef(${viewName}) as def", { viewName })) as { def: string };
|
|
60
|
+
def = def.trim();
|
|
61
|
+
if (def.endsWith(";")) {
|
|
62
|
+
def = def.slice(0, -1);
|
|
63
|
+
}
|
|
64
|
+
if (!def || typeof def !== "string") {
|
|
65
|
+
throw makeErr("Could get view definition");
|
|
66
|
+
}
|
|
67
|
+
const { fields } = await this.dboBuilder.dbo.sql!(`SELECT * FROM ( \n ${def} \n ) prostgles_subscribe_view_definition LIMIT 0`, {});
|
|
68
|
+
const tableColumns = fields.filter(f => f.tableName && f.columnName);
|
|
69
|
+
|
|
70
|
+
/** Create exists filters for each table */
|
|
71
|
+
const tableIds: string[] = Array.from(new Set(tableColumns.map(tc => tc.tableID!.toString())));
|
|
72
|
+
viewOptions = {
|
|
73
|
+
viewName,
|
|
74
|
+
definition: def,
|
|
75
|
+
relatedTables: []
|
|
76
|
+
}
|
|
77
|
+
viewOptions.relatedTables = await Promise.all(tableIds.map(async tableID => {
|
|
78
|
+
const table = this.dboBuilder.USER_TABLES?.find(t => t.relid === +tableID)!;
|
|
79
|
+
let tableCols = tableColumns.filter(tc => tc.tableID!.toString() === tableID);
|
|
80
|
+
|
|
81
|
+
/** If table has primary keys and they are all in this view then use only primary keys */
|
|
82
|
+
if (table?.pkey_columns?.every(pkey => tableCols.some(c => c.columnName === pkey))) {
|
|
83
|
+
tableCols = tableCols.filter(c => table?.pkey_columns?.includes(c.columnName!))
|
|
84
|
+
} else {
|
|
85
|
+
/** Exclude non comparable data types */
|
|
86
|
+
tableCols = tableCols.filter(c => !["json", "xml"].includes(c.udt_name))
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
const { relname: tableName, schemaname: tableSchema } = table;
|
|
90
|
+
|
|
91
|
+
if(tableCols.length){
|
|
92
|
+
|
|
93
|
+
const tableNameEscaped = tableSchema === current_schema ? table.relname : [tableSchema, tableName].map(v => JSON.stringify(v)).join(".");
|
|
94
|
+
|
|
95
|
+
const fullCondition = `EXISTS (
|
|
96
|
+
SELECT 1
|
|
97
|
+
FROM ${viewNameEscaped}
|
|
98
|
+
WHERE ${tableCols.map(c => `${tableNameEscaped}.${JSON.stringify(c.columnName)} = ${viewNameEscaped}.${JSON.stringify(c.name)}`).join(" AND \n")}
|
|
99
|
+
AND ${condition || "TRUE"}
|
|
100
|
+
)`;
|
|
101
|
+
|
|
102
|
+
try {
|
|
103
|
+
const { count } = await this.db.oneOrNone(`
|
|
104
|
+
WITH ${asName(tableName)} AS (
|
|
105
|
+
SELECT *
|
|
106
|
+
FROM ${asName(tableName)}
|
|
107
|
+
LIMIT 0
|
|
108
|
+
)
|
|
109
|
+
|
|
110
|
+
SELECT *
|
|
111
|
+
FROM (
|
|
112
|
+
${def}
|
|
113
|
+
) prostgles_view_ref_table_test
|
|
114
|
+
`);
|
|
115
|
+
|
|
116
|
+
const relatedTableSubscription = {
|
|
117
|
+
tableName: tableName!,
|
|
118
|
+
tableNameEscaped,
|
|
119
|
+
condition: fullCondition,
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
if(count.toString() === '0'){
|
|
123
|
+
return relatedTableSubscription;
|
|
124
|
+
}
|
|
125
|
+
} catch(e){
|
|
126
|
+
log(`Could not not override subscribed view (${this.name}) table (${tableName}). Will not check condition`, e);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return {
|
|
131
|
+
tableName: tableName,
|
|
132
|
+
tableNameEscaped: JSON.stringify(tableName),// [table.schemaname, table.relname].map(v => JSON.stringify(v)).join("."),
|
|
133
|
+
condition: "TRUE"
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
}))
|
|
137
|
+
|
|
138
|
+
/** Get list of remaining used inner tables */
|
|
139
|
+
const allUsedTables: { table_name: string; table_schema: string; }[] = await this.db.any(
|
|
140
|
+
"SELECT distinct table_name, table_schema FROM information_schema.view_column_usage WHERE view_name = ${viewName}",
|
|
141
|
+
{ viewName }
|
|
142
|
+
);
|
|
143
|
+
|
|
144
|
+
/** Remaining tables will have listeners on all records (condition = "TRUE") */
|
|
145
|
+
const remainingInnerTables = allUsedTables.filter(at => !tableColumns.some(dc => dc.tableName === at.table_name && dc.tableSchema === at.table_schema));
|
|
146
|
+
viewOptions.relatedTables = [
|
|
147
|
+
...viewOptions.relatedTables,
|
|
148
|
+
...remainingInnerTables.map(t => ({
|
|
149
|
+
tableName: t.table_name,
|
|
150
|
+
tableNameEscaped: [t.table_name, t.table_schema].map(v => JSON.stringify(v)).join("."),
|
|
151
|
+
condition: "TRUE"
|
|
152
|
+
}))
|
|
153
|
+
];
|
|
154
|
+
|
|
155
|
+
if (!viewOptions.relatedTables.length) {
|
|
156
|
+
throw "Could not subscribe to this view: no related tables found";
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
const { socket } = localParams ?? {};
|
|
161
|
+
const pubSubManager = await this.dboBuilder.getPubSubManager();
|
|
162
|
+
return pubSubManager.addSub({
|
|
163
|
+
table_info: this.tableOrViewInfo,
|
|
164
|
+
socket,
|
|
165
|
+
table_rules,
|
|
166
|
+
table_name: this.name,
|
|
167
|
+
condition: condition,
|
|
168
|
+
viewOptions,
|
|
169
|
+
func: undefined,
|
|
170
|
+
filter: { ...filter },
|
|
171
|
+
params: { ...selectParams },
|
|
172
|
+
socket_id: socket?.id,
|
|
173
|
+
throttle,
|
|
174
|
+
last_throttled: 0,
|
|
175
|
+
}).then(channelName => ({ channelName }));
|
|
176
|
+
}) as any;
|
|
177
|
+
} else {
|
|
178
|
+
const pubSubManager = await this.dboBuilder.getPubSubManager();
|
|
179
|
+
pubSubManager.addSub({
|
|
180
|
+
table_info: this.tableOrViewInfo,
|
|
181
|
+
socket: undefined,
|
|
182
|
+
table_rules,
|
|
183
|
+
condition,
|
|
184
|
+
func: localFunc,
|
|
185
|
+
filter: { ...filter },
|
|
186
|
+
params: { ...selectParams },
|
|
187
|
+
socket_id: undefined,
|
|
188
|
+
table_name: this.name,
|
|
189
|
+
throttle,
|
|
190
|
+
last_throttled: 0,
|
|
191
|
+
}).then(channelName => ({ channelName }));
|
|
192
|
+
const unsubscribe = async () => {
|
|
193
|
+
const pubSubManager = await this.dboBuilder.getPubSubManager();
|
|
194
|
+
pubSubManager.removeLocalSub(this.name, condition, localFunc)
|
|
195
|
+
};
|
|
196
|
+
let res: { unsubscribe: () => any } = Object.freeze({ unsubscribe })
|
|
197
|
+
return res;
|
|
198
|
+
}
|
|
199
|
+
} catch (e) {
|
|
200
|
+
if (localParams && localParams.testRule) throw e;
|
|
201
|
+
throw parseError(e, `dbo.${this.name}.subscribe()`);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
async function _subscribe(localFunc: LocalFunc): Promise<string>
|
|
207
|
+
async function _subscribe(localFunc: undefined, table_rules: TableRule, localParams: LocalParams): Promise<{ unsubscribe: () => any }>
|
|
208
|
+
async function _subscribe(localFunc: LocalFunc | undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<{ unsubscribe: () => any } | string> {
|
|
209
|
+
if(localFunc && !localParams){
|
|
210
|
+
return {
|
|
211
|
+
unsubscribe: () => {}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
if(localParams){
|
|
216
|
+
return ""
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
return {
|
|
220
|
+
unsubscribe: () => {}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
const d = async () => {
|
|
225
|
+
|
|
226
|
+
const res = await _subscribe(()=>{})
|
|
227
|
+
const res2 = await _subscribe(undefined, {}, {})
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
export { subscribe }
|
package/lib/DboBuilder/update.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.update = void 0;
|
|
4
4
|
const prostgles_types_1 = require("prostgles-types");
|
|
5
5
|
const DboBuilder_1 = require("../DboBuilder");
|
|
6
|
-
const PubSubManager_1 = require("../PubSubManager");
|
|
6
|
+
const PubSubManager_1 = require("../PubSubManager/PubSubManager");
|
|
7
7
|
const uploadFile_1 = require("./uploadFile");
|
|
8
8
|
async function update(filter, _newData, params, tableRules, localParams) {
|
|
9
9
|
const ACTION = "update";
|
package/lib/DboBuilder/update.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AnyObject, getKeys, isObject, unpatchText, UpdateParams } from "prostgles-types";
|
|
2
2
|
import { Filter, isPlainObject, LocalParams, makeErr, Media, parseError } from "../DboBuilder";
|
|
3
3
|
import { TableRule, ValidateRow } from "../PublishParser";
|
|
4
|
-
import { omitKeys, pickKeys } from "../PubSubManager";
|
|
4
|
+
import { omitKeys, pickKeys } from "../PubSubManager/PubSubManager";
|
|
5
5
|
import { TableHandler } from "./TableHandler";
|
|
6
6
|
import { isFile, uploadFile } from "./uploadFile"
|
|
7
7
|
|
package/lib/DboBuilder.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export declare type DBHandlerServer<TH = TableHandlers> = TH & Partial<DbJoinMak
|
|
|
44
44
|
import { FieldSpec } from "./DboBuilder/QueryBuilder/Functions";
|
|
45
45
|
import { Join, Prostgles, DB } from "./Prostgles";
|
|
46
46
|
import { PublishParser, PublishAllOrNothing } from "./PublishParser";
|
|
47
|
-
import { PubSubManager, BasicCallback } from "./PubSubManager";
|
|
47
|
+
import { PubSubManager, BasicCallback } from "./PubSubManager/PubSubManager";
|
|
48
48
|
import { JoinPaths, ViewHandler } from "./DboBuilder/ViewHandler";
|
|
49
49
|
declare type PGP = pgPromise.IMain<{}, pg.IClient>;
|
|
50
50
|
export declare const pgp: PGP;
|
package/lib/DboBuilder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DboBuilder.d.ts","sourceRoot":"","sources":["DboBuilder.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,GAAG,QAAQ,iCAAiC,CAAC,CAAC;AACvD,OAAO,EACH,UAAU,EAEV,WAAW,EAIX,uBAAuB,EACvB,WAAW,EACX,SAAS,IAAI,KAAK,EAClB,UAAU,EACV,SAAS,EAIqB,cAAc,EAC/C,MAAM,iBAAiB,CAAC;AAEzB,oBAAY,QAAQ,GAAG;IACnB,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,CAAC;IACD,UAAU,EAAE,MAAM,CAAC;CACtB,GAAG;IACA,aAAa,EAAE,MAAM,CAAC;CACzB,CAAC,CAAC;AAEH,oBAAY,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC;AAE9E,oBAAY,KAAK,GAAG;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC,CAAA;AAED,oBAAY,IAAI,CAAC,EAAE,GAAG,aAAa,IAAI;IACnC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;CACjF,CAAA;AACD,oBAAY,EAAE,CAAC,EAAE,GAAI,aAAa,IAAI;IAClC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;CACxC,CAAA;AAED,oBAAY,aAAa,GAAG;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;CACvD,CAAA;AAED,oBAAY,eAAe,CAAC,EAAE,GAAG,aAAa,IAC5C,EAAE,GACF,OAAO,CAAC,WAAW,CAAC,GAAG;IACrB,GAAG,CAAC,EAAE,UAAU,CAAA;CACjB,GAAG;IACF,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;CACZ,CAAA;AAmBH,OAAO,EAAE,SAAS,EAAG,MAAM,qCAAqC,CAAC;AACjE,OAAO,EACH,IAAI,EAAE,SAAS,EAAE,EAAE,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACH,aAAa,EAAE,mBAAmB,EACrC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAW,aAAa,EAAsB,MAAM,
|
|
1
|
+
{"version":3,"file":"DboBuilder.d.ts","sourceRoot":"","sources":["DboBuilder.ts"],"names":[],"mappings":"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"}
|
package/lib/DboBuilder.js
CHANGED
|
@@ -47,7 +47,7 @@ const prostgles_types_1 = require("prostgles-types");
|
|
|
47
47
|
// return []
|
|
48
48
|
// }
|
|
49
49
|
const utils_1 = require("./utils");
|
|
50
|
-
const PubSubManager_1 = require("./PubSubManager");
|
|
50
|
+
const PubSubManager_1 = require("./PubSubManager/PubSubManager");
|
|
51
51
|
const ViewHandler_1 = require("./DboBuilder/ViewHandler");
|
|
52
52
|
exports.pgp = pgPromise({
|
|
53
53
|
promiseLib: Bluebird
|
package/lib/DboBuilder.ts
CHANGED
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
import {
|
|
101
101
|
PublishParser, PublishAllOrNothing,
|
|
102
102
|
} from "./PublishParser";
|
|
103
|
-
import { PubSubManager, asValue, BasicCallback, pickKeys, omitKeys } from "./PubSubManager";
|
|
103
|
+
import { PubSubManager, asValue, BasicCallback, pickKeys, omitKeys } from "./PubSubManager/PubSubManager";
|
|
104
104
|
import { _delete } from "./DboBuilder/delete";
|
|
105
105
|
import { JoinPaths, ViewHandler } from "./DboBuilder/ViewHandler";
|
|
106
106
|
|
package/lib/Prostgles.js
CHANGED
|
@@ -41,7 +41,7 @@ console.log("Add a basic auth mode where user and sessions table are created");
|
|
|
41
41
|
const TableConfig_1 = __importDefault(require("./TableConfig"));
|
|
42
42
|
const utils_1 = require("./utils");
|
|
43
43
|
const DboBuilder_1 = require("./DboBuilder");
|
|
44
|
-
const PubSubManager_1 = require("./PubSubManager");
|
|
44
|
+
const PubSubManager_1 = require("./PubSubManager/PubSubManager");
|
|
45
45
|
const prostgles_types_1 = require("prostgles-types");
|
|
46
46
|
const PublishParser_1 = require("./PublishParser");
|
|
47
47
|
const DBEventsManager_1 = require("./DBEventsManager");
|
package/lib/Prostgles.ts
CHANGED
|
@@ -18,7 +18,7 @@ import TableConfigurator, { TableConfig } from "./TableConfig";
|
|
|
18
18
|
|
|
19
19
|
import { get } from "./utils";
|
|
20
20
|
import { DboBuilder, DBHandlerServer, isPlainObject, PRGLIOSocket } from "./DboBuilder";
|
|
21
|
-
import { PubSubManager, pickKeys, log } from "./PubSubManager";
|
|
21
|
+
import { PubSubManager, pickKeys, log } from "./PubSubManager/PubSubManager";
|
|
22
22
|
export { DBHandlerServer }
|
|
23
23
|
export type PGP = pgPromise.IMain<{}, pg.IClient>;
|
|
24
24
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { PostgresNotifListenManager } from "
|
|
3
|
-
import { TableOrViewInfo, TableInfo, DBHandlerServer, DboBuilder, PRGLIOSocket } from "
|
|
4
|
-
import { DB } from "
|
|
2
|
+
import { PostgresNotifListenManager } from "../PostgresNotifListenManager";
|
|
3
|
+
import { TableOrViewInfo, TableInfo, DBHandlerServer, DboBuilder, PRGLIOSocket } from "../DboBuilder";
|
|
4
|
+
import { DB } from "../Prostgles";
|
|
5
5
|
import { SelectParams, FieldFilter, WAL, AnyObject } from "prostgles-types";
|
|
6
|
-
import { ClientExpressData } from "
|
|
7
|
-
import { TableRule } from "
|
|
6
|
+
import { ClientExpressData } from "../SyncReplication";
|
|
7
|
+
import { TableRule } from "../PublishParser";
|
|
8
8
|
export declare const asValue: (v: any) => string;
|
|
9
9
|
export declare const DEFAULT_SYNC_BATCH_SIZE = 50;
|
|
10
10
|
export declare const log: (...args: any[]) => void;
|
|
@@ -43,6 +43,15 @@ declare type AddSyncParams = {
|
|
|
43
43
|
condition: string;
|
|
44
44
|
throttle?: number;
|
|
45
45
|
};
|
|
46
|
+
export declare type ViewSubscriptionOptions = {
|
|
47
|
+
viewName: string;
|
|
48
|
+
definition: string;
|
|
49
|
+
relatedTables: {
|
|
50
|
+
tableName: string;
|
|
51
|
+
tableNameEscaped: string;
|
|
52
|
+
condition: string;
|
|
53
|
+
}[];
|
|
54
|
+
};
|
|
46
55
|
declare type SubscriptionParams = {
|
|
47
56
|
socket_id?: string;
|
|
48
57
|
channel_name: string;
|
|
@@ -51,11 +60,7 @@ declare type SubscriptionParams = {
|
|
|
51
60
|
/**
|
|
52
61
|
* If this is a view then an array with all related tables will be
|
|
53
62
|
* */
|
|
54
|
-
|
|
55
|
-
tableName: string;
|
|
56
|
-
tableNameEscaped: string;
|
|
57
|
-
condition: string;
|
|
58
|
-
}[];
|
|
63
|
+
viewOptions?: ViewSubscriptionOptions;
|
|
59
64
|
parentSubParams: Omit<SubscriptionParams, "parentSubParams"> | undefined;
|
|
60
65
|
table_info: TableOrViewInfo;
|
|
61
66
|
table_rules?: TableRule;
|
|
@@ -109,7 +114,7 @@ export declare class PubSubManager {
|
|
|
109
114
|
preffix: string;
|
|
110
115
|
getFull: (appID?: string) => string;
|
|
111
116
|
};
|
|
112
|
-
|
|
117
|
+
appID?: string;
|
|
113
118
|
appCheckFrequencyMS: number;
|
|
114
119
|
appCheck?: ReturnType<typeof setInterval>;
|
|
115
120
|
static canCreate: (db: DB) => Promise<{
|
|
@@ -117,12 +122,12 @@ export declare class PubSubManager {
|
|
|
117
122
|
isSuperUs: boolean;
|
|
118
123
|
yes: boolean;
|
|
119
124
|
}>;
|
|
120
|
-
static create: (options: PubSubManagerOptions) => Promise<
|
|
125
|
+
static create: (options: PubSubManagerOptions) => Promise<any>;
|
|
121
126
|
destroyed: boolean;
|
|
122
127
|
destroy: () => void;
|
|
123
128
|
canContinue: () => boolean;
|
|
124
129
|
appChecking: boolean;
|
|
125
|
-
init:
|
|
130
|
+
init: any;
|
|
126
131
|
DB_OBJ_NAMES: {
|
|
127
132
|
trigger_add_remove_func: string;
|
|
128
133
|
data_watch_func: string;
|
|
@@ -161,9 +166,7 @@ export declare class PubSubManager {
|
|
|
161
166
|
addTrigger(params: {
|
|
162
167
|
table_name: string;
|
|
163
168
|
condition: string;
|
|
164
|
-
}): Promise<boolean>;
|
|
169
|
+
}, viewOptions?: ViewSubscriptionOptions): Promise<boolean>;
|
|
165
170
|
}
|
|
166
|
-
export
|
|
167
|
-
export declare function pickKeys<T extends AnyObject, Include extends keyof T>(obj: T, include?: Include[]): Pick<T, Include>;
|
|
168
|
-
export {};
|
|
171
|
+
export { pickKeys, omitKeys } from "prostgles-types";
|
|
169
172
|
//# sourceMappingURL=PubSubManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PubSubManager.d.ts","sourceRoot":"","sources":["PubSubManager.ts"],"names":[],"mappings":"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"}
|