@proteinjs/db 1.25.2 → 1.27.0

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.
Files changed (63) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE +21 -0
  3. package/dist/generated/index.js +7 -7
  4. package/dist/generated/index.js.map +1 -1
  5. package/dist/generated/test/index.js +5 -5
  6. package/dist/generated/test/index.js.map +1 -1
  7. package/dist/index.d.ts +2 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +2 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/src/Db.d.ts +66 -6
  12. package/dist/src/Db.d.ts.map +1 -1
  13. package/dist/src/Db.js +242 -30
  14. package/dist/src/Db.js.map +1 -1
  15. package/dist/src/MigrationRunner.d.ts.map +1 -1
  16. package/dist/src/MigrationRunner.js +6 -0
  17. package/dist/src/MigrationRunner.js.map +1 -1
  18. package/dist/src/UpdatePreserving.d.ts +34 -0
  19. package/dist/src/UpdatePreserving.d.ts.map +1 -0
  20. package/dist/src/UpdatePreserving.js +72 -0
  21. package/dist/src/UpdatePreserving.js.map +1 -0
  22. package/dist/src/auth/TableAuth.d.ts +9 -0
  23. package/dist/src/auth/TableAuth.d.ts.map +1 -1
  24. package/dist/src/auth/TableAuth.js +36 -5
  25. package/dist/src/auth/TableAuth.js.map +1 -1
  26. package/dist/src/auth/TableServiceAuth.d.ts +7 -0
  27. package/dist/src/auth/TableServiceAuth.d.ts.map +1 -1
  28. package/dist/src/auth/TableServiceAuth.js +34 -0
  29. package/dist/src/auth/TableServiceAuth.js.map +1 -1
  30. package/dist/src/reference/ArrayMembershipOps.d.ts +69 -0
  31. package/dist/src/reference/ArrayMembershipOps.d.ts.map +1 -0
  32. package/dist/src/reference/ArrayMembershipOps.js +146 -0
  33. package/dist/src/reference/ArrayMembershipOps.js.map +1 -0
  34. package/dist/src/services/DbService.d.ts +38 -0
  35. package/dist/src/services/DbService.d.ts.map +1 -1
  36. package/dist/src/services/DbService.js.map +1 -1
  37. package/dist/src/transaction/Transaction.d.ts +19 -2
  38. package/dist/src/transaction/Transaction.d.ts.map +1 -1
  39. package/dist/src/transaction/Transaction.js +38 -0
  40. package/dist/src/transaction/Transaction.js.map +1 -1
  41. package/dist/src/transaction/TransactionContextFactory.d.ts +18 -1
  42. package/dist/src/transaction/TransactionContextFactory.d.ts.map +1 -1
  43. package/dist/test/ArrayMembershipOps.test.d.ts +2 -0
  44. package/dist/test/ArrayMembershipOps.test.d.ts.map +1 -0
  45. package/dist/test/ArrayMembershipOps.test.js +147 -0
  46. package/dist/test/ArrayMembershipOps.test.js.map +1 -0
  47. package/dist/test/TableServiceAuth.test.js +108 -4
  48. package/dist/test/TableServiceAuth.test.js.map +1 -1
  49. package/generated/index.ts +18 -21
  50. package/generated/test/index.ts +41 -44
  51. package/index.ts +2 -0
  52. package/package.json +6 -5
  53. package/src/Db.ts +202 -24
  54. package/src/MigrationRunner.ts +6 -0
  55. package/src/UpdatePreserving.ts +89 -0
  56. package/src/auth/TableAuth.ts +17 -4
  57. package/src/auth/TableServiceAuth.ts +36 -1
  58. package/src/reference/ArrayMembershipOps.ts +155 -0
  59. package/src/services/DbService.ts +38 -0
  60. package/src/transaction/Transaction.ts +52 -2
  61. package/src/transaction/TransactionContextFactory.ts +19 -1
  62. package/test/ArrayMembershipOps.test.ts +160 -0
  63. package/test/TableServiceAuth.test.ts +148 -4
@@ -1 +1 @@
1
- {"version":3,"file":"Db.js","sourceRoot":"","sources":["../../src/Db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Db.js","sourceRoot":"","sources":["../../src/Db.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationRunner.d.ts","sourceRoot":"","sources":["../../src/MigrationRunner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAA6B,MAAM,mCAAmC,CAAC;AAEtG,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,eAAO,MAAM,kBAAkB,uBACyE,CAAC;AAEzG,qBAAa,eAAgB,YAAW,sBAAsB;IAC5D,OAAO,CAAC,MAAM,CAA+C;IACtD,eAAe,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAEhD;IAEI,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B7C,OAAO,CAAC,QAAQ;CA4BjB"}
1
+ {"version":3,"file":"MigrationRunner.d.ts","sourceRoot":"","sources":["../../src/MigrationRunner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAA6B,MAAM,mCAAmC,CAAC;AAEtG,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,eAAO,MAAM,kBAAkB,uBACyE,CAAC;AAEzG,qBAAa,eAAgB,YAAW,sBAAsB;IAC5D,OAAO,CAAC,MAAM,CAA+C;IACtD,eAAe,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAQhD;IAEI,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B7C,OAAO,CAAC,QAAQ;CA4BjB"}
@@ -51,6 +51,12 @@ var MigrationRunner = /** @class */ (function () {
51
51
  function MigrationRunner() {
52
52
  this.logger = new logger_1.Logger({ name: this.constructor.name });
53
53
  this.serviceMetadata = {
54
+ // Explicit, not implicit: running migrations is admin-only. Omitting the auth block would
55
+ // fall back to the same default-deny (admin role), but every service is required to declare
56
+ // its auth intent explicitly.
57
+ auth: {
58
+ roles: ['admin'],
59
+ },
54
60
  doNotAwait: true,
55
61
  };
56
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationRunner.js","sourceRoot":"","sources":["../../src/MigrationRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA8C;AAC9C,2BAA6B;AAE7B,8DAA6D;AAC7D,4EAAsG;AACtG,0DAAoE;AAEpE,4CAA2C;AAEpC,IAAM,kBAAkB,GAAG;IAChC,OAAA,OAAO,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC,CAAE,IAAA,kDAAyB,GAAsB;AAAtG,CAAsG,CAAC;AAD5F,QAAA,kBAAkB,sBAC0E;AAEzG;IAAA;QACU,WAAM,GAAG,IAAI,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,oBAAe,GAA+B;YACnD,UAAU,EAAE,IAAI;SACjB,CAAC;IA2DJ,CAAC;IAzDO,sCAAY,GAAlB,UAAmB,EAAU;;;;;;wBACrB,cAAc,GAAqB,IAAI,+BAAc,EAAE,CAAC;wBACxD,SAAS,GAAG,IAAI,mCAAgB,EAAE,CAAC,eAAe,CAAY,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC7F,IAAI,CAAC,SAAS,EAAE;4BACd,MAAM,IAAI,KAAK,CAAC,yDAAkD,EAAE,CAAE,CAAC,CAAC;yBACzE;wBAEK,EAAE,GAAG,IAAA,UAAK,GAAE,CAAC;wBACnB,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;wBAC7B,SAAS,CAAC,SAAS,GAAG,IAAA,eAAM,GAAE,CAAC;wBAC/B,qBAAM,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,EAAA;;wBAA1C,SAA0C,CAAC;wBAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,6BAAsB,SAAS,CAAC,EAAE,eAAK,SAAS,CAAC,WAAW,CAAE,EAAE,CAAC,CAAC;;;;wBAE5F,KAAA,SAAS,CAAA;wBAAU,qBAAM,SAAS,CAAC,GAAG,EAAE,EAAA;;wBAAxC,GAAU,MAAM,GAAG,SAAqB,CAAC;wBACzC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;;;;wBAE7B,SAAS,CAAC,cAAc,GAAG,OAAK,CAAC,OAAO,CAAC;wBACzC,SAAS,CAAC,YAAY,GAAG,OAAK,CAAC,KAAK,CAAC;wBACrC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;;;wBAE7B,SAAS,CAAC,OAAO,GAAG,IAAA,eAAM,GAAE,CAAC;;;wBAE/B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;wBAC3E,qBAAM,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,EAAA;;wBAA1C,SAA0C,CAAC;wBAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;4BACf,OAAO,EAAE,WAAI,SAAS,CAAC,MAAM,gBAAM,SAAS,CAAC,QAAQ,2CAAiC,SAAS,CAAC,EAAE,eAAK,SAAS,CAAC,WAAW,CAAE;yBAC/H,CAAC,CAAC;;;;;KACJ;IAEO,kCAAQ,GAAhB,UAAiB,KAAa,EAAE,GAAW;QACzC,IAAM,QAAQ,GAAG,eAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,IAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,IAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnC,IAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnC,IAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAE7C,IAAI,IAAI,GAAG,CAAC,EAAE;YACZ,KAAK,CAAC,IAAI,CAAC,UAAG,IAAI,iBAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;SACjD;QACD,IAAI,KAAK,GAAG,CAAC,EAAE;YACb,KAAK,CAAC,IAAI,CAAC,UAAG,KAAK,kBAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;SACpD;QACD,IAAI,OAAO,GAAG,CAAC,EAAE;YACf,KAAK,CAAC,IAAI,CAAC,UAAG,OAAO,iBAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;SACvD;QACD,IAAI,OAAO,GAAG,CAAC,EAAE;YACf,KAAK,CAAC,IAAI,CAAC,UAAG,OAAO,iBAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;SACvD;QACD,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE;YAC3D,KAAK,CAAC,IAAI,CAAC,UAAG,YAAY,QAAK,CAAC,CAAC;SAClC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACH,sBAAC;AAAD,CAAC,AA/DD,IA+DC;AA/DY,0CAAe"}
1
+ {"version":3,"file":"MigrationRunner.js","sourceRoot":"","sources":["../../src/MigrationRunner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Support for `Db.updatePreserving` / `Transaction.updatePreserving`: an update
3
+ * whose payload carries a column value the writer only PARTIALLY owns — the
4
+ * listed sub-paths belong to other writers, so their committed values are
5
+ * preserved (overlaid into the payload read-modify-write) instead of being
6
+ * clobbered by whatever stale copy the writer's snapshot happened to hold.
7
+ *
8
+ * The motivating case: a structural editor operation changes non-text fields of
9
+ * a JSON object column (styling, child overrides) while a debounced text save
10
+ * owns the object's text content. The structural payload's `content` is stale
11
+ * by construction (text syncs into the record at save time, not per keystroke);
12
+ * writing it would erase a concurrently committed text save. Preserving
13
+ * `content` from the committed row makes the two writers commute.
14
+ */
15
+ export type PreservedPath = {
16
+ /** Property name of the column whose payload value should have paths preserved. */
17
+ columnPropertyName: string;
18
+ /** Dot-separated paths inside the column value (plain-JSON columns only). */
19
+ paths: string[];
20
+ /**
21
+ * Only overlay a committed value whose `typeof` matches. Guards shape
22
+ * transitions: when the op legitimately changes the column's SHAPE (e.g. a
23
+ * text object becoming a composite wrapper), a committed value of a
24
+ * different type must not be dragged into the new shape.
25
+ */
26
+ whenType?: 'string' | 'number' | 'boolean' | 'object';
27
+ };
28
+ /**
29
+ * Overlay committed values at `paths` into a clone of `incomingValue`.
30
+ * Pure: returns the (possibly cloned) value to write. Only plain-JSON values
31
+ * are supported (the clone is JSON-based).
32
+ */
33
+ export declare function overlayPreservedPaths(committedValue: unknown, incomingValue: unknown, paths: string[], whenType?: PreservedPath['whenType']): unknown;
34
+ //# sourceMappingURL=UpdatePreserving.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdatePreserving.d.ts","sourceRoot":"","sources":["../../src/UpdatePreserving.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,mFAAmF;IACnF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6EAA6E;IAC7E,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;CACvD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,cAAc,EAAE,OAAO,EACvB,aAAa,EAAE,OAAO,EACtB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,GACnC,OAAO,CAwBT"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /**
3
+ * Support for `Db.updatePreserving` / `Transaction.updatePreserving`: an update
4
+ * whose payload carries a column value the writer only PARTIALLY owns — the
5
+ * listed sub-paths belong to other writers, so their committed values are
6
+ * preserved (overlaid into the payload read-modify-write) instead of being
7
+ * clobbered by whatever stale copy the writer's snapshot happened to hold.
8
+ *
9
+ * The motivating case: a structural editor operation changes non-text fields of
10
+ * a JSON object column (styling, child overrides) while a debounced text save
11
+ * owns the object's text content. The structural payload's `content` is stale
12
+ * by construction (text syncs into the record at save time, not per keystroke);
13
+ * writing it would erase a concurrently committed text save. Preserving
14
+ * `content` from the committed row makes the two writers commute.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.overlayPreservedPaths = void 0;
18
+ /**
19
+ * Overlay committed values at `paths` into a clone of `incomingValue`.
20
+ * Pure: returns the (possibly cloned) value to write. Only plain-JSON values
21
+ * are supported (the clone is JSON-based).
22
+ */
23
+ function overlayPreservedPaths(committedValue, incomingValue, paths, whenType) {
24
+ if (incomingValue == null || committedValue == null) {
25
+ return incomingValue;
26
+ }
27
+ var result;
28
+ for (var _i = 0, paths_1 = paths; _i < paths_1.length; _i++) {
29
+ var path = paths_1[_i];
30
+ var committedAtPath = deepGet(committedValue, path);
31
+ if (committedAtPath === undefined) {
32
+ continue;
33
+ }
34
+ if (whenType && typeof committedAtPath !== whenType) {
35
+ continue;
36
+ }
37
+ if (deepGet(result !== null && result !== void 0 ? result : incomingValue, path) === committedAtPath) {
38
+ continue;
39
+ }
40
+ if (result === undefined) {
41
+ result = JSON.parse(JSON.stringify(incomingValue));
42
+ }
43
+ deepSet(result, path, committedAtPath);
44
+ }
45
+ return result === undefined ? incomingValue : result;
46
+ }
47
+ exports.overlayPreservedPaths = overlayPreservedPaths;
48
+ function deepGet(value, path) {
49
+ var current = value;
50
+ for (var _i = 0, _a = path.split('.'); _i < _a.length; _i++) {
51
+ var key = _a[_i];
52
+ if (current == null || typeof current !== 'object') {
53
+ return undefined;
54
+ }
55
+ current = current[key];
56
+ }
57
+ return current;
58
+ }
59
+ function deepSet(value, path, pathValue) {
60
+ var keys = path.split('.');
61
+ var current = value;
62
+ for (var i = 0; i < keys.length - 1; i++) {
63
+ var next = current === null || current === void 0 ? void 0 : current[keys[i]];
64
+ if (next == null || typeof next !== 'object') {
65
+ // The incoming value doesn't have this path's parent — nothing to preserve into.
66
+ return;
67
+ }
68
+ current = next;
69
+ }
70
+ current[keys[keys.length - 1]] = pathValue;
71
+ }
72
+ //# sourceMappingURL=UpdatePreserving.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdatePreserving.js","sourceRoot":"","sources":["../../src/UpdatePreserving.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAgBH;;;;GAIG;AACH,SAAgB,qBAAqB,CACnC,cAAuB,EACvB,aAAsB,EACtB,KAAe,EACf,QAAoC;IAEpC,IAAI,aAAa,IAAI,IAAI,IAAI,cAAc,IAAI,IAAI,EAAE;QACnD,OAAO,aAAa,CAAC;KACtB;IAED,IAAI,MAA2B,CAAC;IAChC,KAAmB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE;QAArB,IAAM,IAAI,cAAA;QACb,IAAM,eAAe,GAAG,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,eAAe,KAAK,SAAS,EAAE;YACjC,SAAS;SACV;QACD,IAAI,QAAQ,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE;YACnD,SAAS;SACV;QACD,IAAI,OAAO,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,aAAa,EAAE,IAAI,CAAC,KAAK,eAAe,EAAE;YAC9D,SAAS;SACV;QACD,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;SACpD;QACD,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;KACxC;IAED,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;AACvD,CAAC;AA7BD,sDA6BC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,IAAY;IAC3C,IAAI,OAAO,GAAQ,KAAK,CAAC;IACzB,KAAkB,UAAe,EAAf,KAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAf,cAAe,EAAf,IAAe,EAAE;QAA9B,IAAM,GAAG,SAAA;QACZ,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAClD,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;KACxB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,IAAY,EAAE,SAAkB;IAC/D,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO,GAAQ,KAAK,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACxC,IAAM,IAAI,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5C,iFAAiF;YACjF,OAAO;SACR;QACD,OAAO,GAAG,IAAI,CAAC;KAChB;IACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAC7C,CAAC"}
@@ -16,6 +16,15 @@ export type TableOperationsAuth = {
16
16
  update?: Identity;
17
17
  delete?: Identity;
18
18
  };
19
+ /**
20
+ * A table-auth denial. The message names the table and operation and is safe to show the caller
21
+ * (it only echoes what they asked for). Name-tagged rather than relying on instanceof — the
22
+ * prototype chain is unreliable across package compile targets (same reason ServiceRouter's
23
+ * isServiceError checks `name`).
24
+ */
25
+ export declare class TableAuthError extends Error {
26
+ constructor(message: string);
27
+ }
19
28
  /**
20
29
  * Util to check which table operations a user can perform
21
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TableAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/TableAuth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,eAAe,GAAG,MAAM,EAAE,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,SAAS;IAoBjB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAM/D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAMhE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAMhE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;CAKjE"}
1
+ {"version":3,"file":"TableAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/TableAuth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,eAAe,GAAG,MAAM,EAAE,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,SAAS;IAoBjB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAM/D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAMhE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;IAMhE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAE,IAAI,GAAG,SAAgB,GAAG,IAAI;CAKjE"}
@@ -1,7 +1,38 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TableAuth = void 0;
18
+ exports.TableAuth = exports.TableAuthError = void 0;
4
19
  var user_auth_1 = require("@proteinjs/user-auth");
20
+ /**
21
+ * A table-auth denial. The message names the table and operation and is safe to show the caller
22
+ * (it only echoes what they asked for). Name-tagged rather than relying on instanceof — the
23
+ * prototype chain is unreliable across package compile targets (same reason ServiceRouter's
24
+ * isServiceError checks `name`).
25
+ */
26
+ var TableAuthError = /** @class */ (function (_super) {
27
+ __extends(TableAuthError, _super);
28
+ function TableAuthError(message) {
29
+ var _this = _super.call(this, message) || this;
30
+ _this.name = 'TableAuthError';
31
+ return _this;
32
+ }
33
+ return TableAuthError;
34
+ }(Error));
35
+ exports.TableAuthError = TableAuthError;
5
36
  /**
6
37
  * Util to check which table operations a user can perform
7
38
  */
@@ -23,25 +54,25 @@ var TableAuth = /** @class */ (function () {
23
54
  TableAuth.prototype.canQuery = function (table, api) {
24
55
  if (api === void 0) { api = 'db'; }
25
56
  if (!this.canAccess(table, api, 'query')) {
26
- throw new Error("User is not authorized to query table: ".concat(table.name));
57
+ throw new TableAuthError("User is not authorized to query table: ".concat(table.name));
27
58
  }
28
59
  };
29
60
  TableAuth.prototype.canInsert = function (table, api) {
30
61
  if (api === void 0) { api = 'db'; }
31
62
  if (!this.canAccess(table, api, 'insert')) {
32
- throw new Error("User is not authorized to insert records into table: ".concat(table.name));
63
+ throw new TableAuthError("User is not authorized to insert records into table: ".concat(table.name));
33
64
  }
34
65
  };
35
66
  TableAuth.prototype.canUpdate = function (table, api) {
36
67
  if (api === void 0) { api = 'db'; }
37
68
  if (!this.canAccess(table, api, 'update')) {
38
- throw new Error("User is not authorized to update records in table: ".concat(table.name));
69
+ throw new TableAuthError("User is not authorized to update records in table: ".concat(table.name));
39
70
  }
40
71
  };
41
72
  TableAuth.prototype.canDelete = function (table, api) {
42
73
  if (api === void 0) { api = 'db'; }
43
74
  if (!this.canAccess(table, api, 'delete')) {
44
- throw new Error("User is not authorized to delete records from table: ".concat(table.name));
75
+ throw new TableAuthError("User is not authorized to delete records from table: ".concat(table.name));
45
76
  }
46
77
  };
47
78
  return TableAuth;
@@ -1 +1 @@
1
- {"version":3,"file":"TableAuth.js","sourceRoot":"","sources":["../../../src/auth/TableAuth.ts"],"names":[],"mappings":";;;AAAA,kDAAgD;AAsBhD;;GAEG;AACH;IAAA;IA4CA,CAAC;IA3CS,6BAAS,GAAjB,UACE,KAAiB,EACjB,GAAqB,EACrB,SAAmD;QAEnD,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;YACpD,OAAO,oBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAClC;QAED,OAAO,CACL,SAAS,CAAC,GAAG,KAAK,QAAQ;YAC1B,SAAS,CAAC,SAAS,CAAC,KAAK,QAAQ;YACjC,CAAC,SAAS,CAAC,GAAG,KAAK,eAAe,IAAI,oBAAQ,CAAC,UAAU,EAAE,CAAC;YAC5D,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,eAAe,IAAI,oBAAQ,CAAC,UAAU,EAAE,CAAC;YACnE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,oBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAClF,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,oBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAa,EAAE,cAAc,CAAC,CAAC,CAC7G,CAAC;IACJ,CAAC;IAED,4BAAQ,GAAR,UAAS,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACtD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,iDAA0C,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SACzE;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,+DAAwD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SACvF;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,6DAAsD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SACrF;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,+DAAwD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SACvF;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AA5CD,IA4CC;AA5CY,8BAAS"}
1
+ {"version":3,"file":"TableAuth.js","sourceRoot":"","sources":["../../../src/auth/TableAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAgD;AAsBhD;;;;;GAKG;AACH;IAAoC,kCAAK;IACvC,wBAAY,OAAe;QAA3B,YACE,kBAAM,OAAO,CAAC,SAEf;QADC,KAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;;IAC/B,CAAC;IACH,qBAAC;AAAD,CAAC,AALD,CAAoC,KAAK,GAKxC;AALY,wCAAc;AAO3B;;GAEG;AACH;IAAA;IA4CA,CAAC;IA3CS,6BAAS,GAAjB,UACE,KAAiB,EACjB,GAAqB,EACrB,SAAmD;QAEnD,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;YACpD,OAAO,oBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAClC;QAED,OAAO,CACL,SAAS,CAAC,GAAG,KAAK,QAAQ;YAC1B,SAAS,CAAC,SAAS,CAAC,KAAK,QAAQ;YACjC,CAAC,SAAS,CAAC,GAAG,KAAK,eAAe,IAAI,oBAAQ,CAAC,UAAU,EAAE,CAAC;YAC5D,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,eAAe,IAAI,oBAAQ,CAAC,UAAU,EAAE,CAAC;YACnE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,oBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAClF,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,oBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAa,EAAE,cAAc,CAAC,CAAC,CAC7G,CAAC;IACJ,CAAC;IAED,4BAAQ,GAAR,UAAS,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACtD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;YACxC,MAAM,IAAI,cAAc,CAAC,iDAA0C,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SAClF;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,cAAc,CAAC,+DAAwD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SAChG;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,cAAc,CAAC,6DAAsD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SAC9F;IACH,CAAC;IAED,6BAAS,GAAT,UAAU,KAAiB,EAAE,GAA4B;QAA5B,oBAAA,EAAA,UAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;YACzC,MAAM,IAAI,cAAc,CAAC,+DAAwD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;SAChG;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AA5CD,IA4CC;AA5CY,8BAAS"}
@@ -8,5 +8,12 @@ export declare class TableServiceAuth {
8
8
  * specific, actionable error. Server-side `Db` usage never runs this check.
9
9
  */
10
10
  private checkServiceProtectedColumns;
11
+ /**
12
+ * `updateArrayMembership`'s payload names its target column (`columnPropertyName`) instead of
13
+ * carrying record fields, so the record-shaped protected-column check above can't see the
14
+ * write. Membership ops always SET real membership — there is no null-clearing form — so
15
+ * targeting a protected column is rejected outright.
16
+ */
17
+ private checkArrayMembershipProtectedColumn;
11
18
  }
12
19
  //# sourceMappingURL=TableServiceAuth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableServiceAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/TableServiceAuth.ts"],"names":[],"mappings":"AAKA,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAA+C;IAE7D,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO;IAoCnD;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;CAarC"}
1
+ {"version":3,"file":"TableServiceAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/TableServiceAuth.ts"],"names":[],"mappings":"AAKA,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAA+C;IAE7D,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO;IAoDnD;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAcpC;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;CAY5C"}
@@ -27,6 +27,17 @@ var TableServiceAuth = /** @class */ (function () {
27
27
  tableAuth.canUpdate(table, 'service');
28
28
  this.checkServiceProtectedColumns(table, args[1]);
29
29
  }
30
+ else if (methodName === 'updateArrayMembership') {
31
+ // An update in RMW clothing: gated exactly like `update`. Row visibility is enforced
32
+ // inside the operation itself — scoped/column query injection runs on the server-side
33
+ // read-modify-write, so a caller can only touch rows they could already update.
34
+ tableAuth.canUpdate(table, 'service');
35
+ this.checkArrayMembershipProtectedColumn(table, args[1]);
36
+ }
37
+ else if (methodName === 'updatePreserving') {
38
+ tableAuth.canUpdate(table, 'service');
39
+ this.checkServiceProtectedColumns(table, args[1]);
40
+ }
30
41
  else if (methodName === 'delete') {
31
42
  tableAuth.canDelete(table, 'service');
32
43
  }
@@ -42,6 +53,13 @@ var TableServiceAuth = /** @class */ (function () {
42
53
  if ((error === null || error === void 0 ? void 0 : error.name) === 'ServiceError') {
43
54
  throw error;
44
55
  }
56
+ // A table-auth denial is equally client-safe (it only names the table/operation the caller
57
+ // asked for). Cross the wire verbatim so the caller sees "not authorized to query table:
58
+ // session" rather than the generic run-service denial — a denied query must be
59
+ // distinguishable from an empty one at the surface that shows it.
60
+ if ((error === null || error === void 0 ? void 0 : error.name) === 'TableAuthError') {
61
+ throw new service_1.ServiceError(error.message);
62
+ }
45
63
  this.logger.error({ message: "Failed evaluating auth for method: ".concat(methodName), error: error });
46
64
  return false;
47
65
  }
@@ -67,6 +85,22 @@ var TableServiceAuth = /** @class */ (function () {
67
85
  }
68
86
  }
69
87
  };
88
+ /**
89
+ * `updateArrayMembership`'s payload names its target column (`columnPropertyName`) instead of
90
+ * carrying record fields, so the record-shaped protected-column check above can't see the
91
+ * write. Membership ops always SET real membership — there is no null-clearing form — so
92
+ * targeting a protected column is rejected outright.
93
+ */
94
+ TableServiceAuth.prototype.checkArrayMembershipProtectedColumn = function (table, update) {
95
+ var _a;
96
+ var protectedColumns = (_a = table.auth) === null || _a === void 0 ? void 0 : _a.serviceProtectedColumns;
97
+ if (!(protectedColumns === null || protectedColumns === void 0 ? void 0 : protectedColumns.length) || !update || typeof update !== 'object') {
98
+ return;
99
+ }
100
+ if (protectedColumns.includes(update.columnPropertyName)) {
101
+ throw new service_1.ServiceError("Column '".concat(update.columnPropertyName, "' cannot be written via the db service on table: ").concat(table.name));
102
+ }
103
+ };
70
104
  return TableServiceAuth;
71
105
  }());
72
106
  exports.TableServiceAuth = TableServiceAuth;
@@ -1 +1 @@
1
- {"version":3,"file":"TableServiceAuth.js","sourceRoot":"","sources":["../../../src/auth/TableServiceAuth.ts"],"names":[],"mappings":";;;AAAA,4CAA2C;AAC3C,8CAAkD;AAClD,kCAA0C;AAC1C,yCAAwC;AAExC;IAAA;QACU,WAAM,GAAG,IAAI,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;IAyD/D,CAAC;IAvDC,oCAAS,GAAT,UAAU,UAAkB,EAAE,IAAW;QACvC,IAAI;YACF,IAAM,KAAK,GAA2B,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAA,eAAO,EAAC,KAAK,CAAC,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACrE;YAED,IAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;YAClC,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,IAAI,OAAO,IAAI,UAAU,IAAI,aAAa,EAAE;gBAChF,SAAS,CAAC,QAAQ,CAAC,KAAmB,EAAE,SAAS,CAAC,CAAC;aACpD;iBAAM,IAAI,UAAU,KAAK,QAAQ,EAAE;gBAClC,SAAS,CAAC,SAAS,CAAC,KAAmB,EAAE,SAAS,CAAC,CAAC;gBACpD,IAAI,CAAC,4BAA4B,CAAC,KAAmB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACjE;iBAAM,IAAI,UAAU,KAAK,QAAQ,EAAE;gBAClC,SAAS,CAAC,SAAS,CAAC,KAAmB,EAAE,SAAS,CAAC,CAAC;gBACpD,IAAI,CAAC,4BAA4B,CAAC,KAAmB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACjE;iBAAM,IAAI,UAAU,KAAK,QAAQ,EAAE;gBAClC,SAAS,CAAC,SAAS,CAAC,KAAmB,EAAE,SAAS,CAAC,CAAC;aACrD;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,uEAAgE,UAAU,CAAE,CAAC,CAAC;aAC/F;SACF;QAAC,OAAO,KAAU,EAAE;YACnB,yFAAyF;YACzF,qFAAqF;YACrF,uFAAuF;YACvF,uFAAuF;YACvF,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,cAAc,EAAE;gBAClC,MAAM,KAAK,CAAC;aACb;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,6CAAsC,UAAU,CAAE,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;YAC1F,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,uDAA4B,GAApC,UAAqC,KAAiB,EAAE,MAAW;;QACjE,IAAM,gBAAgB,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,uBAAuB,CAAC;QAC7D,IAAI,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,MAAM,CAAA,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YACtE,OAAO;SACR;QAED,KAAqB,UAAgB,EAAhB,qCAAgB,EAAhB,8BAAgB,EAAhB,IAAgB,EAAE;YAAlC,IAAM,MAAM,yBAAA;YACf,IAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;gBACzC,MAAM,IAAI,sBAAY,CAAC,kBAAW,MAAM,8DAAoD,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC;aAC3G;SACF;IACH,CAAC;IACH,uBAAC;AAAD,CAAC,AA1DD,IA0DC;AA1DY,4CAAgB"}
1
+ {"version":3,"file":"TableServiceAuth.js","sourceRoot":"","sources":["../../../src/auth/TableServiceAuth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Commutative membership operations for `ReferenceArrayColumn` values.
3
+ *
4
+ * Motivation (the write-side lost-update class): a client writer that persists a
5
+ * reference-array column as a FULL ID LIST snapshots its in-memory state — when two
6
+ * such writes race (fire-and-forget issuance + driver-level abort/retry can commit
7
+ * an earlier-issued transaction later), the last commit wins wholesale and erases
8
+ * the other writer's committed membership change. Expressing membership changes as
9
+ * ops (add/remove/move) applied read-modify-write against COMMITTED truth inside a
10
+ * transaction makes concurrent writes converge instead of clobber:
11
+ * `remove(x)` + `remove(y)` in any commit order removes both; `add(x)` + `add(y)`
12
+ * keeps both.
13
+ *
14
+ * `applyArrayMembershipOps` is the single applier used by `Db.updateArrayMembership`
15
+ * (server-side RMW) — and by any test that needs the committed rule as importable
16
+ * truth. `computeArrayMembershipOps` derives the minimal op set from a
17
+ * before/after id-list pair, for callers whose op layer only knows list states.
18
+ */
19
+ export type ArrayMembershipOp =
20
+ /** Insert `id` after `afterId` (`null` = at the head). If `id` is already present it is repositioned. */
21
+ {
22
+ op: 'add';
23
+ id: string;
24
+ afterId: string | null;
25
+ }
26
+ /** Remove `id`. No-op when absent. */
27
+ | {
28
+ op: 'remove';
29
+ id: string;
30
+ }
31
+ /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */
32
+ | {
33
+ op: 'move';
34
+ id: string;
35
+ afterId: string | null;
36
+ };
37
+ export type ArrayMembershipUpdate = {
38
+ /** The record whose array column is being updated. */
39
+ recordId: string;
40
+ /** Property name of the `ReferenceArrayColumn` on the table. */
41
+ columnPropertyName: string;
42
+ /** Ops applied in order against the committed id list. */
43
+ ops: ArrayMembershipOp[];
44
+ };
45
+ /**
46
+ * Apply membership ops to an id list. Pure; returns a new array and whether it
47
+ * differs from the input.
48
+ *
49
+ * Anchor resolution (`afterId`) against a diverged committed list is
50
+ * convergence-by-anchor: a missing anchor appends at the end (the anchor was
51
+ * concurrently removed — the element still lands in the list, order is
52
+ * best-effort), `afterId: null` inserts at the head.
53
+ */
54
+ export declare function applyArrayMembershipOps(currentIds: string[], ops: ArrayMembershipOp[]): {
55
+ ids: string[];
56
+ changed: boolean;
57
+ };
58
+ /**
59
+ * Compute the op set that transforms `beforeIds` into `afterIds`.
60
+ *
61
+ * Removes first, then a single walk of `afterIds` emitting `add` for new
62
+ * elements and `move` for surviving elements whose relative order changed.
63
+ * Moves are minimized via the longest increasing subsequence of surviving
64
+ * elements (elements on the LIS stay put; everything else moves). Replaying
65
+ * the result on `beforeIds` yields exactly `afterIds`; replaying it on a
66
+ * DIVERGED committed list converges by anchor instead of clobbering.
67
+ */
68
+ export declare function computeArrayMembershipOps(beforeIds: string[], afterIds: string[]): ArrayMembershipOp[];
69
+ //# sourceMappingURL=ArrayMembershipOps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayMembershipOps.d.ts","sourceRoot":"","sources":["../../../src/reference/ArrayMembershipOps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,iBAAiB;AAC3B,yGAAyG;AACvG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE;AACnD,sCAAsC;GACpC;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE;AAC9B,oHAAoH;GAClH;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEvD,MAAM,MAAM,qBAAqB,GAAG;IAClC,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0DAA0D;IAC1D,GAAG,EAAE,iBAAiB,EAAE,CAAC;CAC1B,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAAE,EACpB,GAAG,EAAE,iBAAiB,EAAE,GACvB;IAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAmCrC;AAED;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CA8BtG"}