@proteinjs/db 1.54.0 → 1.54.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../generated/test/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../generated/test/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,+BAA6B;AAC7B,6BAA2B;AAC3B,iCAA+B;AAC/B,iCAA+B;AAC/B,8BAA4B;AAC5B,gCAA8B;AAG9B,4BAA4B;AAE5B,IAAM,WAAW,GAAG,ohqJAAohqJ,CAAC;AAGziqJ,4BAA4B;AAE5B,0FAAgF;AAChF,yCAAwC;AACxC,0FAA+E;AAC/E,0FAAgF;AAChF,0FAA+E;AAC/E,0FAAgF;AAChF,0FAA+E;AAC/E,0FAA2E;AAC3E,0FAA8E;AAC9E,0FAAmF;AACnF,2FAAkF;AAClF,2FAA6E;AAC7E,2FAA2E;AAC3E,2FAA4E;AAC5E,2FAA4E;AAC5E,2FAA8E;AAC9E,sFAAyE;AACzE,wEAA0E;AAC1E,wEAA8E;AAC9E,4GAAiG;AACjG,4GAAwF;AACxF,4GAAwF;AACxF,4GAA8F;AAC9F,4FAA0F;AAC1F,gGAA4F;AAC5F,gGAA2F;AAC3F,gGAAuF;AACvF,gGAAkG;AAClG,gGAAwF;AACxF,gGAAyF;AACzF,wFAA8E;AAC9E,wFAAqF;AACrF,wFAAiF;AACjF,sFAA4F;AAC5F,sFAAgG;AAChG,mCAAkC;AAClC,iEAAgE;AAChE,6DAA4D;AAC5D,qFAAoF;AACpF,sFAAqF;AACrF,oGAAmG;AACnG,2DAA0D;AAC1D,qEAAoE;AACpE,2FAA0F;AAC1F,iFAAgF;AAChF,yEAAwE;AACxE,kEAAiE;AACjE,6EAA4E;AAE5E,IAAM,WAAW,GAAG;IACnB,8BAA8B,EAAE,wCAAc;IAC9C,qBAAqB,EAAE,aAAK;IAC5B,6BAA6B,EAAE,uCAAa;IAC5C,8BAA8B,EAAE,wCAAc;IAC9C,6BAA6B,EAAE,uCAAa;IAC5C,8BAA8B,EAAE,wCAAc;IAC9C,6BAA6B,EAAE,uCAAa;IAC5C,yBAAyB,EAAE,mCAAS;IACpC,4BAA4B,EAAE,sCAAY;IAC1C,iCAAiC,EAAE,2CAAiB;IACpD,gCAAgC,EAAE,2CAAgB;IAClD,2BAA2B,EAAE,sCAAW;IACxC,yBAAyB,EAAE,oCAAS;IACpC,0BAA0B,EAAE,qCAAU;IACtC,0BAA0B,EAAE,qCAAU;IACtC,4BAA4B,EAAE,uCAAY;IAC1C,yBAAyB,EAAE,iCAAS;IACpC,iCAAiC,EAAE,kCAAiB;IACpD,qCAAqC,EAAE,sCAAqB;IAC5D,sCAAsC,EAAE,yDAAsB;IAC9D,6BAA6B,EAAE,gDAAa;IAC5C,6BAA6B,EAAE,gDAAa;IAC5C,mCAAmC,EAAE,sDAAmB;IACxD,uCAAuC,EAAE,kDAAuB;IAChE,uCAAuC,EAAE,oDAAuB;IAChE,sCAAsC,EAAE,mDAAsB;IAC9D,kCAAkC,EAAE,+CAAkB;IACtD,6CAA6C,EAAE,0DAA6B;IAC5E,mCAAmC,EAAE,gDAAmB;IACxD,oCAAoC,EAAE,iDAAoB;IAC1D,6BAA6B,EAAE,sCAAa;IAC5C,oCAAoC,EAAE,6CAAoB;IAC1D,gCAAgC,EAAE,yCAAgB;IAClD,4CAA4C,EAAE,oDAA4B;IAC1E,gDAAgD,EAAE,wDAAgC;IAClF,kBAAkB,EAAE,OAAE;IACtB,iCAAiC,EAAE,qCAAiB;IACpD,+BAA+B,EAAE,iCAAe;IAChD,2CAA2C,EAAE,yDAA2B;IACxE,sCAAsC,EAAE,+CAAsB;IAC9D,6CAA6C,EAAE,6DAA6B;IAC5E,yBAAyB,EAAE,qBAAS;IACpC,8BAA8B,EAAE,+BAAc;IAC9C,wCAAwC,EAAE,mDAAwB;IAClE,mCAAmC,EAAE,yCAAmB;IACxD,+BAA+B,EAAE,iCAAe;IAChD,8BAA8B,EAAE,+BAAc;IAC9C,iCAAiC,EAAE,qCAAiB;CACpD,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,mDAAiC"}
@@ -13,7 +13,9 @@ export type TransactionRunOptions = {
13
13
  * Ids of rows the operations depend on that may not exist yet: the row an update or a
14
14
  * membership update targets while its insert is still in flight, the permission source a
15
15
  * child row attaches to while the root's own insert (and the owner grant that commits with
16
- * it) is still landing. Every id must be a row the operations themselves reference. The
16
+ * it) is still landing, any row an insert names through one of its table's reference columns
17
+ * while that row is still being born. Every id must be a row the operations themselves
18
+ * reference (an insert references every row its reference columns name). The
17
19
  * runner waits, bounded, for each to exist AND be visible to the caller before running the
18
20
  * operations; a row that never appears fails the request with a plain clause — never a
19
21
  * silent zero-row write, never a hang.
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionRunnerService.d.ts","sourceRoot":"","sources":["../../../src/services/TransactionRunnerService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,eAAO,MAAM,2BAA2B,gCAEvC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,wBAAyB,SAAQ,OAAO;IACvD,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E"}
1
+ {"version":3,"file":"TransactionRunnerService.d.ts","sourceRoot":"","sources":["../../../src/services/TransactionRunnerService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,eAAO,MAAM,2BAA2B,gCAEvC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,wBAAyB,SAAQ,OAAO;IACvD,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E"}
@@ -43,13 +43,21 @@ export declare class TransactionRunner implements TransactionRunnerService {
43
43
  */
44
44
  private awaitRows;
45
45
  /**
46
- * The rows the operations reference, by id → the table(s) they are read from: the permission
47
- * source a row attaches to (an insert whose `permissionSource` is another row), the row an
48
- * update / preserving update / membership update / delete targets. The rows the operations
49
- * insert themselves are not dependencies.
46
+ * The rows the operations reference, by id → the table(s) they are read from. An insert
47
+ * references every row its table's reference columns name (`rowsTheInsertReferences`) — the
48
+ * permission source a row attaches to is one of these, a row named through any other reference
49
+ * column another. An update / preserving update / membership update / delete references the row
50
+ * it targets. The rows the operations insert themselves are not dependencies.
50
51
  */
51
52
  private static rowsTheOperationsReference;
52
- /** The table a permission source lives in: the insert's own table when it names the same one. */
53
+ /**
54
+ * The rows an inserted record names through its table's reference columns: for each column
55
+ * whose value carries an id, that id and the table it lives in — a `ReferenceColumn`'s declared
56
+ * table; for a `DynamicReferenceColumn`, the table its paired table-name column carries on the
57
+ * record (a client's queued insert ran the column's default), else the reference's own.
58
+ */
59
+ private static rowsTheInsertReferences;
60
+ /** The table a referenced row lives in: the insert's own table when it names the same one. */
53
61
  private static tableNamed;
54
62
  }
55
63
  //# sourceMappingURL=TransactionRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionRunner.d.ts","sourceRoot":"","sources":["../../../src/transaction/TransactionRunner.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EAEtB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,eAAO,MAAM,oBAAoB,yBAC6E,CAAC;AAE/G;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,YAAW,wBAAwB;IACzD,eAAe;;;;MAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAO;IAEnD,OAAO,CAAC,MAAM,CAA+C;IAEvD,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAchF;;;;;;;;;;;;;;OAcG;YACW,SAAS;IAkEvB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgDzC,iGAAiG;IACjG,OAAO,CAAC,MAAM,CAAC,UAAU;CAG1B"}
1
+ {"version":3,"file":"TransactionRunner.d.ts","sourceRoot":"","sources":["../../../src/transaction/TransactionRunner.ts"],"names":[],"mappings":"AASA,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EAEtB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,eAAO,MAAM,oBAAoB,yBAC6E,CAAC;AAE/G;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,YAAW,wBAAwB;IACzD,eAAe;;;;MAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAO;IAEnD,OAAO,CAAC,MAAM,CAA+C;IAEvD,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAchF;;;;;;;;;;;;;;OAcG;YACW,SAAS;IAkEvB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IA4CzC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAgCtC,8FAA8F;IAC9F,OAAO,CAAC,MAAM,CAAC,UAAU;CAG1B"}
@@ -38,8 +38,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.TransactionRunner = exports.getTransactionRunner = void 0;
40
40
  var logger_1 = require("@proteinjs/logger");
41
+ var util_1 = require("@proteinjs/util");
41
42
  var Db_1 = require("../Db");
42
43
  var Table_1 = require("../Table");
44
+ // After Table: Columns ↔ Table ↔ Record load in a cycle that resolves only when Record is entered
45
+ // before Columns (Record constructs its columns at module load); a module that enters Columns
46
+ // first — as this one would when it is the first module loaded — leaves those constructors undefined.
47
+ var Columns_1 = require("../Columns");
43
48
  var TransactionContextFactory_1 = require("./TransactionContextFactory");
44
49
  var TransactionRunnerService_1 = require("../services/TransactionRunnerService");
45
50
  var getTransactionRunner = function () {
@@ -229,13 +234,14 @@ var TransactionRunner = /** @class */ (function () {
229
234
  });
230
235
  };
231
236
  /**
232
- * The rows the operations reference, by id → the table(s) they are read from: the permission
233
- * source a row attaches to (an insert whose `permissionSource` is another row), the row an
234
- * update / preserving update / membership update / delete targets. The rows the operations
235
- * insert themselves are not dependencies.
237
+ * The rows the operations reference, by id → the table(s) they are read from. An insert
238
+ * references every row its table's reference columns name (`rowsTheInsertReferences`) — the
239
+ * permission source a row attaches to is one of these, a row named through any other reference
240
+ * column another. An update / preserving update / membership update / delete references the row
241
+ * it targets. The rows the operations insert themselves are not dependencies.
236
242
  */
237
243
  TransactionRunner.rowsTheOperationsReference = function (ops) {
238
- var _a, _b, _c;
244
+ var _a, _b;
239
245
  var inserted = [];
240
246
  var referenced = new Map();
241
247
  var reference = function (table, id) {
@@ -260,19 +266,18 @@ var TransactionRunner = /** @class */ (function () {
260
266
  if (record === null || record === void 0 ? void 0 : record.id) {
261
267
  inserted.push(record.id);
262
268
  }
263
- var source = record === null || record === void 0 ? void 0 : record.permissionSource;
264
- if ((source === null || source === void 0 ? void 0 : source._id) && source._id !== (record === null || record === void 0 ? void 0 : record.id)) {
265
- var sourceTableName = (_a = record === null || record === void 0 ? void 0 : record.permissionSourceTable) !== null && _a !== void 0 ? _a : source._table;
266
- reference(sourceTableName ? TransactionRunner.tableNamed(sourceTableName, table) : table, source._id);
269
+ for (var _c = 0, _d = TransactionRunner.rowsTheInsertReferences(table, record); _c < _d.length; _c++) {
270
+ var row = _d[_c];
271
+ reference(TransactionRunner.tableNamed(row.tableName, table), row.id);
267
272
  }
268
273
  }
269
274
  else if (op.name === 'update' || op.name === 'updatePreserving') {
270
275
  var record = args[1];
271
276
  var query = args[2];
272
- reference(table, (_b = record === null || record === void 0 ? void 0 : record.id) !== null && _b !== void 0 ? _b : (query && typeof query === 'object' && 'id' in query ? query.id : undefined));
277
+ reference(table, (_a = record === null || record === void 0 ? void 0 : record.id) !== null && _a !== void 0 ? _a : (query && typeof query === 'object' && 'id' in query ? query.id : undefined));
273
278
  }
274
279
  else if (op.name === 'updateArrayMembership') {
275
- reference(table, (_c = args[1]) === null || _c === void 0 ? void 0 : _c.recordId);
280
+ reference(table, (_b = args[1]) === null || _b === void 0 ? void 0 : _b.recordId);
276
281
  }
277
282
  else if (op.name === 'delete') {
278
283
  var query = args[1];
@@ -282,7 +287,38 @@ var TransactionRunner = /** @class */ (function () {
282
287
  inserted.forEach(function (id) { return referenced.delete(id); });
283
288
  return referenced;
284
289
  };
285
- /** The table a permission source lives in: the insert's own table when it names the same one. */
290
+ /**
291
+ * The rows an inserted record names through its table's reference columns: for each column
292
+ * whose value carries an id, that id and the table it lives in — a `ReferenceColumn`'s declared
293
+ * table; for a `DynamicReferenceColumn`, the table its paired table-name column carries on the
294
+ * record (a client's queued insert ran the column's default), else the reference's own.
295
+ */
296
+ TransactionRunner.rowsTheInsertReferences = function (table, record) {
297
+ if (!table || !record) {
298
+ return [];
299
+ }
300
+ var rows = [];
301
+ for (var _i = 0, _a = Object.entries(table.columns); _i < _a.length; _i++) {
302
+ var _b = _a[_i], field = _b[0], column = _b[1];
303
+ var value = record[field];
304
+ if (!value || typeof value._id !== 'string') {
305
+ continue;
306
+ }
307
+ var tableName = void 0;
308
+ if ((0, util_1.isInstanceOf)(column, Columns_1.ReferenceColumn)) {
309
+ tableName = column.referenceTable;
310
+ }
311
+ else if ((0, util_1.isInstanceOf)(column, Columns_1.DynamicReferenceColumn)) {
312
+ var tableNameField = (0, Table_1.getColumnPropertyName)(table, column.dynamicRefTableColName);
313
+ tableName = (tableNameField && record[tableNameField]) || value._table;
314
+ }
315
+ if (typeof tableName === 'string' && tableName) {
316
+ rows.push({ id: value._id, tableName: tableName });
317
+ }
318
+ }
319
+ return rows;
320
+ };
321
+ /** The table a referenced row lives in: the insert's own table when it names the same one. */
286
322
  TransactionRunner.tableNamed = function (tableName, inserting) {
287
323
  return inserting && inserting.name === tableName ? inserting : (0, Table_1.tableByName)(tableName);
288
324
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionRunner.js","sourceRoot":"","sources":["../../../src/transaction/TransactionRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionRunner.js","sourceRoot":"","sources":["../../../src/transaction/TransactionRunner.ts"],"names":[],"mappings":"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"}