prostgles-types 4.0.113 → 4.0.115

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/util.js CHANGED
@@ -14,7 +14,7 @@ const pickKeys = (obj, keys = [], onlyIfDefined = true) => {
14
14
  }
15
15
  if (obj && keys.length) {
16
16
  let res = {};
17
- keys.forEach(k => {
17
+ keys.forEach((k) => {
18
18
  if (onlyIfDefined && obj[k] === undefined) {
19
19
  }
20
20
  else {
@@ -27,11 +27,11 @@ const pickKeys = (obj, keys = [], onlyIfDefined = true) => {
27
27
  };
28
28
  exports.pickKeys = pickKeys;
29
29
  function omitKeys(obj, exclude) {
30
- return (0, exports.pickKeys)(obj, getKeys(obj).filter(k => !exclude.includes(k)));
30
+ return (0, exports.pickKeys)(obj, getKeys(obj).filter((k) => !exclude.includes(k)));
31
31
  }
32
32
  exports.omitKeys = omitKeys;
33
33
  function filter(array, arrFilter) {
34
- return array.filter(d => Object.entries(arrFilter).every(([k, v]) => d[k] === v));
34
+ return array.filter((d) => Object.entries(arrFilter).every(([k, v]) => d[k] === v));
35
35
  }
36
36
  exports.filter = filter;
37
37
  function find(array, arrFilter) {
@@ -39,79 +39,81 @@ function find(array, arrFilter) {
39
39
  }
40
40
  exports.find = find;
41
41
  function includes(array, elem) {
42
- return array.some(v => v === elem);
42
+ return array.some((v) => v === elem);
43
43
  }
44
44
  exports.includes = includes;
45
45
  function stableStringify(data, opts) {
46
46
  if (!opts)
47
47
  opts = {};
48
- if (typeof opts === 'function')
48
+ if (typeof opts === "function")
49
49
  opts = { cmp: opts };
50
- var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;
51
- var cmp = opts.cmp && (function (f) {
52
- return function (node) {
53
- return function (a, b) {
54
- var aobj = { key: a, value: node[a] };
55
- var bobj = { key: b, value: node[b] };
56
- return f(aobj, bobj);
50
+ var cycles = typeof opts.cycles === "boolean" ? opts.cycles : false;
51
+ var cmp = opts.cmp &&
52
+ (function (f) {
53
+ return function (node) {
54
+ return function (a, b) {
55
+ var aobj = { key: a, value: node[a] };
56
+ var bobj = { key: b, value: node[b] };
57
+ return f(aobj, bobj);
58
+ };
57
59
  };
58
- };
59
- })(opts.cmp);
60
+ })(opts.cmp);
60
61
  var seen = [];
61
62
  return (function stringify(node) {
62
- if (node && node.toJSON && typeof node.toJSON === 'function') {
63
+ if (node && node.toJSON && typeof node.toJSON === "function") {
63
64
  node = node.toJSON();
64
65
  }
65
66
  if (node === undefined)
66
67
  return;
67
- if (typeof node == 'number')
68
- return isFinite(node) ? '' + node : 'null';
69
- if (typeof node !== 'object')
68
+ if (typeof node == "number")
69
+ return isFinite(node) ? "" + node : "null";
70
+ if (typeof node !== "object")
70
71
  return JSON.stringify(node);
71
72
  var i, out;
72
73
  if (Array.isArray(node)) {
73
- out = '[';
74
+ out = "[";
74
75
  for (i = 0; i < node.length; i++) {
75
76
  if (i)
76
- out += ',';
77
- out += stringify(node[i]) || 'null';
77
+ out += ",";
78
+ out += stringify(node[i]) || "null";
78
79
  }
79
- return out + ']';
80
+ return out + "]";
80
81
  }
81
82
  if (node === null)
82
- return 'null';
83
+ return "null";
83
84
  if (seen.indexOf(node) !== -1) {
84
85
  if (cycles)
85
- return JSON.stringify('__cycle__');
86
- throw new TypeError('Converting circular structure to JSON');
86
+ return JSON.stringify("__cycle__");
87
+ throw new TypeError("Converting circular structure to JSON");
87
88
  }
88
89
  var seenIndex = seen.push(node) - 1;
89
90
  var keys = Object.keys(node).sort(cmp && cmp(node));
90
- out = '';
91
+ out = "";
91
92
  for (i = 0; i < keys.length; i++) {
92
93
  var key = keys[i];
93
94
  var value = stringify(node[key]);
94
95
  if (!value)
95
96
  continue;
96
97
  if (out)
97
- out += ',';
98
- out += JSON.stringify(key) + ':' + value;
98
+ out += ",";
99
+ out += JSON.stringify(key) + ":" + value;
99
100
  }
100
101
  seen.splice(seenIndex, 1);
101
- return '{' + out + '}';
102
+ return "{" + out + "}";
102
103
  })(data);
103
104
  }
104
105
  exports.stableStringify = stableStringify;
105
- ;
106
106
  function getTextPatch(oldStr, newStr) {
107
+ /* Big change, no point getting diff */
107
108
  if (!oldStr || !newStr || !oldStr.trim().length || !newStr.trim().length)
108
109
  return newStr;
110
+ /* Return no change if matching */
109
111
  if (oldStr === newStr)
110
112
  return {
111
113
  from: 0,
112
114
  to: 0,
113
115
  text: "",
114
- md5: (0, md5_1.md5)(newStr)
116
+ md5: (0, md5_1.md5)(newStr),
115
117
  };
116
118
  function findLastIdx(direction = 1) {
117
119
  let idx = direction < 1 ? -1 : 0, found = false;
@@ -130,7 +132,7 @@ function getTextPatch(oldStr, newStr) {
130
132
  from,
131
133
  to,
132
134
  text: newStr.slice(from, toNew),
133
- md5: (0, md5_1.md5)(newStr)
135
+ md5: (0, md5_1.md5)(newStr),
134
136
  };
135
137
  }
136
138
  exports.getTextPatch = getTextPatch;
@@ -142,29 +144,53 @@ function unpatchText(original, patch) {
142
144
  return text;
143
145
  let res = original.slice(0, from) + text + original.slice(to);
144
146
  if (md5Hash && (0, md5_1.md5)(res) !== md5Hash)
145
- throw "Patch text error: Could not match md5 hash: (original/result) \n" + original + "\n" + res;
147
+ throw ("Patch text error: Could not match md5 hash: (original/result) \n" + original + "\n" + res);
146
148
  return res;
147
149
  }
148
150
  exports.unpatchText = unpatchText;
151
+ /**
152
+ * Used to throttle and combine updates sent to server
153
+ * This allows a high rate of optimistic updates on the client
154
+ */
149
155
  class WAL {
150
156
  constructor(args) {
157
+ /**
158
+ * Instantly merged records for prepared for update
159
+ */
151
160
  this.changed = {};
161
+ /**
162
+ * Batch of records (removed from this.changed) that are currently being sent
163
+ */
152
164
  this.sending = {};
165
+ /**
166
+ * Historic data used to reduce data pushes from server to client
167
+ */
153
168
  this.sentHistory = {};
154
169
  this.callbacks = [];
155
170
  this.sort = (a, b) => {
156
171
  const { orderBy } = this.options;
157
172
  if (!orderBy || !a || !b)
158
173
  return 0;
159
- return orderBy.map(ob => {
174
+ return (orderBy
175
+ .map((ob) => {
176
+ /* TODO: add fullData to changed items + ensure orderBy is in select */
160
177
  if (!(ob.fieldName in a) || !(ob.fieldName in b)) {
161
178
  throw `Replication error: \n some orderBy fields missing from data`;
162
179
  }
163
180
  let v1 = ob.asc ? a[ob.fieldName] : b[ob.fieldName], v2 = ob.asc ? b[ob.fieldName] : a[ob.fieldName];
164
- let vNum = +v1 - +v2, vStr = v1 < v2 ? -1 : v1 == v2 ? 0 : 1;
165
- return (ob.tsDataType === "number" && Number.isFinite(vNum)) ? vNum : vStr;
166
- }).find(v => v) || 0;
181
+ let vNum = +v1 - +v2, vStr = v1 < v2 ? -1
182
+ : v1 == v2 ? 0
183
+ : 1;
184
+ return ob.tsDataType === "number" && Number.isFinite(vNum) ? vNum : vStr;
185
+ })
186
+ .find((v) => v) || 0);
167
187
  };
188
+ /**
189
+ * Used by server to avoid unnecessary data push to client.
190
+ * This can happen due to the same data item having been previously pushed by the client
191
+ * @param item data item
192
+ * @returns boolean
193
+ */
168
194
  this.isInHistory = (item) => {
169
195
  if (!item)
170
196
  throw "Provide item";
@@ -185,7 +211,7 @@ class WAL {
185
211
  this.addData = (data) => {
186
212
  if (isEmpty(this.changed) && this.options.onSendStart)
187
213
  this.options.onSendStart();
188
- data.map(d => {
214
+ data.map((d) => {
189
215
  var _a;
190
216
  const { initial, current, delta } = { ...d };
191
217
  if (!current)
@@ -195,11 +221,11 @@ class WAL {
195
221
  (_a = this.changed)[idStr] ?? (_a[idStr] = { initial, current, delta });
196
222
  this.changed[idStr].current = {
197
223
  ...this.changed[idStr].current,
198
- ...current
224
+ ...current,
199
225
  };
200
226
  this.changed[idStr].delta = {
201
227
  ...this.changed[idStr].delta,
202
- ...delta
228
+ ...delta,
203
229
  };
204
230
  });
205
231
  this.sendItems();
@@ -208,27 +234,35 @@ class WAL {
208
234
  this.isSendingTimeout = undefined;
209
235
  this.willDeleteHistory = undefined;
210
236
  this.sendItems = async () => {
211
- const { DEBUG_MODE, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2 } = this.options;
212
- if (this.isSendingTimeout || this.sending && !isEmpty(this.sending))
237
+ const { DEBUG_MODE, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2, } = this.options;
238
+ // Sending data. stop here
239
+ if (this.isSendingTimeout || (this.sending && !isEmpty(this.sending)))
213
240
  return;
241
+ // Nothing to send. stop here
214
242
  if (!this.changed || isEmpty(this.changed))
215
243
  return;
244
+ // Prepare batch to send
216
245
  let batchItems = [], walBatch = [], batchObj = {};
246
+ /**
247
+ * Prepare and remove a batch from this.changed
248
+ */
217
249
  Object.keys(this.changed)
218
250
  .sort((a, b) => this.sort(this.changed[a].current, this.changed[b].current))
219
251
  .slice(0, batch_size)
220
- .map(key => {
252
+ .map((key) => {
221
253
  let item = { ...this.changed[key] };
222
254
  this.sending[key] = { ...item };
223
255
  walBatch.push({ ...item });
256
+ /* Used for history */
224
257
  batchObj[key] = { ...item.current };
225
258
  delete this.changed[key];
226
259
  });
227
- batchItems = walBatch.map(d => {
260
+ batchItems = walBatch.map((d) => {
228
261
  let result = {};
229
- Object.keys(d.current).map(k => {
262
+ Object.keys(d.current).map((k) => {
230
263
  const oldVal = d.initial?.[k];
231
264
  const newVal = d.current[k];
265
+ /** Send only id fields and delta */
232
266
  if ([this.options.synced_field, ...this.options.id_fields].includes(k) ||
233
267
  !areEqual(oldVal, newVal)) {
234
268
  result[k] = newVal;
@@ -239,6 +273,7 @@ class WAL {
239
273
  if (DEBUG_MODE) {
240
274
  console.log(this.options.id, " SENDING lr->", batchItems[batchItems.length - 1]);
241
275
  }
276
+ // Throttle next data send
242
277
  if (!this.isSendingTimeout) {
243
278
  this.isSendingTimeout = setTimeout(() => {
244
279
  this.isSendingTimeout = undefined;
@@ -250,12 +285,19 @@ class WAL {
250
285
  let error;
251
286
  this.isOnSending = true;
252
287
  try {
253
- await onSend(batchItems, walBatch);
288
+ /* Deleted data should be sent normally through await db.table.delete(...) */
289
+ await onSend(batchItems, walBatch); //, deletedData);
290
+ /**
291
+ * Keep history if required
292
+ */
254
293
  if (historyAgeSeconds) {
255
294
  this.sentHistory = {
256
295
  ...this.sentHistory,
257
296
  ...batchObj,
258
297
  };
298
+ /**
299
+ * Delete history after some time
300
+ */
259
301
  if (!this.willDeleteHistory) {
260
302
  this.willDeleteHistory = setTimeout(() => {
261
303
  this.willDeleteHistory = undefined;
@@ -269,15 +311,16 @@ class WAL {
269
311
  console.error("WAL onSend failed:", err, batchItems, walBatch);
270
312
  }
271
313
  this.isOnSending = false;
314
+ /* Fire any callbacks */
272
315
  if (this.callbacks.length) {
273
316
  const ids = Object.keys(this.sending);
274
317
  this.callbacks.forEach((c, i) => {
275
- c.idStrs = c.idStrs.filter(id => ids.includes(id));
318
+ c.idStrs = c.idStrs.filter((id) => ids.includes(id));
276
319
  if (!c.idStrs.length) {
277
320
  c.cb(error);
278
321
  }
279
322
  });
280
- this.callbacks = this.callbacks.filter(cb => cb.idStrs.length);
323
+ this.callbacks = this.callbacks.filter((cb) => cb.idStrs.length);
281
324
  }
282
325
  this.sending = {};
283
326
  if (DEBUG_MODE) {
@@ -294,11 +337,10 @@ class WAL {
294
337
  this.options = { ...args };
295
338
  if (!this.options.orderBy) {
296
339
  const { synced_field, id_fields } = args;
297
- this.options.orderBy = [synced_field, ...id_fields.sort()]
298
- .map(fieldName => ({
340
+ this.options.orderBy = [synced_field, ...id_fields.sort()].map((fieldName) => ({
299
341
  fieldName,
300
342
  tsDataType: fieldName === synced_field ? "number" : "string",
301
- asc: true
343
+ asc: true,
302
344
  }));
303
345
  }
304
346
  }
@@ -310,18 +352,21 @@ class WAL {
310
352
  return result;
311
353
  }
312
354
  getIdStr(d) {
313
- return this.options.id_fields.sort().map(key => `${d[key] || ""}`).join(".");
355
+ return this.options.id_fields
356
+ .sort()
357
+ .map((key) => `${d[key] || ""}`)
358
+ .join(".");
314
359
  }
315
360
  getIdObj(d) {
316
361
  let res = {};
317
- this.options.id_fields.sort().map(key => {
362
+ this.options.id_fields.sort().map((key) => {
318
363
  res[key] = d[key];
319
364
  });
320
365
  return res;
321
366
  }
322
367
  getDeltaObj(d) {
323
368
  let res = {};
324
- Object.keys(d).map(key => {
369
+ Object.keys(d).map((key) => {
325
370
  if (!this.options.id_fields.includes(key)) {
326
371
  res[key] = d[key];
327
372
  }
@@ -330,13 +375,13 @@ class WAL {
330
375
  }
331
376
  }
332
377
  exports.WAL = WAL;
333
- ;
334
378
  function isEmpty(obj) {
335
379
  for (var v in obj)
336
380
  return false;
337
381
  return true;
338
382
  }
339
383
  exports.isEmpty = isEmpty;
384
+ /* Get nested property from an object */
340
385
  function get(obj, propertyPath) {
341
386
  let p = propertyPath, o = obj;
342
387
  if (!obj)
@@ -369,12 +414,18 @@ function isObject(obj) {
369
414
  return Boolean(obj && typeof obj === "object" && !Array.isArray(obj));
370
415
  }
371
416
  exports.isObject = isObject;
372
- function isDefined(v) { return v !== undefined && v !== null; }
417
+ function isDefined(v) {
418
+ return v !== undefined && v !== null;
419
+ }
373
420
  exports.isDefined = isDefined;
374
421
  function getKeys(o) {
375
422
  return Object.keys(o);
376
423
  }
377
424
  exports.getKeys = getKeys;
425
+ /**
426
+ * @deprecated
427
+ * use tryCatchV2 instead
428
+ */
378
429
  const tryCatch = async (func) => {
379
430
  const startTime = Date.now();
380
431
  try {
@@ -425,6 +476,7 @@ exports.tryCatchV2 = tryCatchV2;
425
476
  const getJoinHandlers = (tableName) => {
426
477
  const getJoinFunc = (isLeft, expectsOne) => {
427
478
  return (filter, select, options = {}) => {
479
+ // return makeJoin(isLeft, filter, select, expectsOne? { ...options, limit: 1 } : options);
428
480
  return {
429
481
  [isLeft ? "$leftJoin" : "$innerJoin"]: options.path ?? tableName,
430
482
  filter,
@@ -442,24 +494,29 @@ const getJoinHandlers = (tableName) => {
442
494
  };
443
495
  exports.getJoinHandlers = getJoinHandlers;
444
496
  const reverseJoinOn = (on) => {
445
- return on.map(constraint => Object.fromEntries(Object.entries(constraint)
446
- .map(([left, right]) => [right, left])));
497
+ return on.map((constraint) => Object.fromEntries(Object.entries(constraint).map(([left, right]) => [right, left])));
447
498
  };
448
499
  exports.reverseJoinOn = reverseJoinOn;
500
+ /**
501
+ * result = [
502
+ * { table, on: parsedPath[0] }
503
+ * ...parsedPath.map(p => ({ table: p.table, on: reversedOn(parsedPath[i+1].on) }))
504
+ * ]
505
+ */
449
506
  const reverseParsedPath = (parsedPath, table) => {
450
- const newPPath = [
451
- { table, on: [{}] },
452
- ...(parsedPath ?? [])
453
- ];
454
- return newPPath.map((pp, i) => {
507
+ const newPPath = [{ table, on: [{}] }, ...(parsedPath ?? [])];
508
+ return newPPath
509
+ .map((pp, i) => {
455
510
  const nextPath = newPPath[i + 1];
456
511
  if (!nextPath)
457
512
  return undefined;
458
513
  return {
459
514
  table: pp.table,
460
- on: (0, exports.reverseJoinOn)(nextPath.on)
515
+ on: (0, exports.reverseJoinOn)(nextPath.on),
461
516
  };
462
- }).filter(isDefined).reverse();
517
+ })
518
+ .filter(isDefined)
519
+ .reverse();
463
520
  };
464
521
  exports.reverseParsedPath = reverseParsedPath;
465
522
  //# sourceMappingURL=util.js.map
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
package/lib/auth.ts CHANGED
@@ -1,12 +1,11 @@
1
- export type IdentityProvider =
2
- | "google"
3
- | "microsoft"
4
- | "github"
5
- | "apple"
6
- | "facebook"
7
- | "twitter"
8
- | "linkedin"
9
- ;
1
+ export type IdentityProvider =
2
+ | "google"
3
+ | "microsoft"
4
+ | "github"
5
+ | "apple"
6
+ | "facebook"
7
+ | "twitter"
8
+ | "linkedin";
10
9
 
11
10
  export type UserLike = {
12
11
  id: string;
@@ -21,7 +20,6 @@ export type EmailSignupType = "withPassword" | "withMagicLink";
21
20
  * Auth object sent from server to client
22
21
  */
23
22
  export type AuthSocketSchema = {
24
-
25
23
  /**
26
24
  * User data as returned from server auth.getClientUser
27
25
  * if undefined, the client is not logged in
@@ -32,7 +30,7 @@ export type AuthSocketSchema = {
32
30
  * Identity providers enabled on the server
33
31
  * if undefined, the server does not support social login
34
32
  */
35
- providers: Partial<Record<IdentityProvider, { url: string; }>> | undefined;
33
+ providers: Partial<Record<IdentityProvider, { url: string }>> | undefined;
36
34
 
37
35
  /**
38
36
  * Email login methods enabled on the server
@@ -42,11 +40,11 @@ export type AuthSocketSchema = {
42
40
  /**
43
41
  * Email registration methods enabled on the server
44
42
  */
45
- register: { type: EmailSignupType; url: string; } | undefined;
43
+ register: { type: EmailSignupType; url: string } | undefined;
46
44
 
47
45
  /**
48
46
  * If server auth publicRoutes is set up and AuthGuard is not explicitly disabled ( disableSocketAuthGuard: true ):
49
47
  * on each connect/reconnect the client pathname is checked and page reloaded if it's not a public page and the client is not logged in
50
48
  */
51
49
  pathGuard?: boolean;
52
- };
50
+ };