@proteinjs/db-transaction-context 0.3.0 → 0.5.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.4.0](https://github.com/proteinjs/db/compare/@proteinjs/db-transaction-context@0.3.0...@proteinjs/db-transaction-context@0.4.0) (2026-08-08)
7
+
8
+
9
+ ### Features
10
+
11
+ * stateless transactions — ambient resolution at call time + ended-context tombstone ([b073491](https://github.com/proteinjs/db/commit/b0734917ff9d3643b09c3d1498b694ff626f55ca))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [0.2.37](https://github.com/proteinjs/db/compare/@proteinjs/db-transaction-context@0.2.36...@proteinjs/db-transaction-context@0.2.37) (2026-07-28)
7
18
 
8
19
  **Note:** Version bump only for package @proteinjs/db-transaction-context
@@ -19,7 +19,7 @@ require("@proteinjs/db");
19
19
  require("@proteinjs/logger");
20
20
  require("@proteinjs/reflection");
21
21
  /** Generate Source Graph */
22
- var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"value\":{\"packageName\":\"@proteinjs/db-transaction-context\",\"name\":\"TransactionContext\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/transaction-context/src/TransactionContext.ts\",\"qualifiedName\":\"@proteinjs/db-transaction-context/TransactionContext\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"storage\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getTransactionContext\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runInContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"transaction\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\"}],\"edges\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"w\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"value\":\"implements interface\"}]}";
22
+ var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"value\":{\"packageName\":\"@proteinjs/db-transaction-context\",\"name\":\"TransactionContext\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/transaction-context/src/TransactionContext.ts\",\"qualifiedName\":\"@proteinjs/db-transaction-context/TransactionContext\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"storage\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getTransactionContext\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runInContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\"}],\"edges\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"w\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"value\":\"implements interface\"}]}";
23
23
  /** Generate Source Links */
24
24
  var TransactionContext_1 = require("../src/TransactionContext");
25
25
  var sourceLinks = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,yBAAuB;AACvB,6BAA2B;AAC3B,iCAA+B;AAG/B,4BAA4B;AAE5B,IAAM,WAAW,GAAG,+uEAA+uE,CAAC;AAGpwE,4BAA4B;AAE5B,gEAA+D;AAE/D,IAAM,WAAW,GAAG;IACnB,sDAAsD,EAAE,uCAAkB;CAC1E,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,yBAAuB;AACvB,6BAA2B;AAC3B,iCAA+B;AAG/B,4BAA4B;AAE5B,IAAM,WAAW,GAAG,2yEAA2yE,CAAC;AAGh0E,4BAA4B;AAE5B,gEAA+D;AAE/D,IAAM,WAAW,GAAG;IACnB,sDAAsD,EAAE,uCAAkB;CAC1E,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
@@ -2,6 +2,6 @@ import { DefaultTransactionContextFactory, TransactionContextData } from '@prote
2
2
  export declare class TransactionContext implements DefaultTransactionContextFactory {
3
3
  private static readonly storage;
4
4
  getTransactionContext(): TransactionContextData;
5
- runInContext<T>(transaction: any, fn: () => Promise<T>): Promise<T>;
5
+ runInContext<T>(context: TransactionContextData, fn: () => Promise<T>): Promise<T>;
6
6
  }
7
7
  //# sourceMappingURL=TransactionContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionContext.d.ts","sourceRoot":"","sources":["../../src/TransactionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGzF,qBAAa,kBAAmB,YAAW,gCAAgC;IACzE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAmD;IAElF,qBAAqB,IAAI,sBAAsB;IAK/C,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAYpE"}
1
+ {"version":3,"file":"TransactionContext.d.ts","sourceRoot":"","sources":["../../src/TransactionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGzF,qBAAa,kBAAmB,YAAW,gCAAgC;IACzE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAmD;IAElF,qBAAqB,IAAI,sBAAsB;IAK/C,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAYnF"}
@@ -45,10 +45,10 @@ var TransactionContext = /** @class */ (function () {
45
45
  var context = TransactionContext.storage.getStore() || { currentTransaction: undefined };
46
46
  return context;
47
47
  };
48
- TransactionContext.prototype.runInContext = function (transaction, fn) {
48
+ TransactionContext.prototype.runInContext = function (context, fn) {
49
49
  var _this = this;
50
50
  return new Promise(function (resolve, reject) {
51
- TransactionContext.storage.run({ currentTransaction: transaction }, function () { return __awaiter(_this, void 0, void 0, function () {
51
+ TransactionContext.storage.run(context, function () { return __awaiter(_this, void 0, void 0, function () {
52
52
  var result, error_1;
53
53
  return __generator(this, function (_a) {
54
54
  switch (_a.label) {
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionContext.js","sourceRoot":"","sources":["../../src/TransactionContext.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAAgD;AAEhD;IAAA;IAoBA,CAAC;IAjBC,kDAAqB,GAArB;QACE,IAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;QAC3F,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yCAAY,GAAZ,UAAgB,WAAgB,EAAE,EAAoB;QAAtD,iBAWC;QAVC,OAAO,IAAI,OAAO,CAAI,UAAC,OAAO,EAAE,MAAM;YACpC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,kBAAkB,EAAE,WAAW,EAAE,EAAE;;;;;;4BAEjD,qBAAM,EAAE,EAAE,EAAA;;4BAAnB,MAAM,GAAG,SAAU;4BACzB,OAAO,CAAC,MAAM,CAAC,CAAC;;;;4BAEhB,MAAM,CAAC,OAAK,CAAC,CAAC;;;;;iBAEjB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAlBuB,0BAAO,GAAG,IAAI,+BAAiB,EAA0B,CAAC;IAmBpF,yBAAC;CAAA,AApBD,IAoBC;AApBY,gDAAkB"}
1
+ {"version":3,"file":"TransactionContext.js","sourceRoot":"","sources":["../../src/TransactionContext.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAAgD;AAEhD;IAAA;IAoBA,CAAC;IAjBC,kDAAqB,GAArB;QACE,IAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;QAC3F,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yCAAY,GAAZ,UAAgB,OAA+B,EAAE,EAAoB;QAArE,iBAWC;QAVC,OAAO,IAAI,OAAO,CAAI,UAAC,OAAO,EAAE,MAAM;YACpC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;;;;;;4BAErB,qBAAM,EAAE,EAAE,EAAA;;4BAAnB,MAAM,GAAG,SAAU;4BACzB,OAAO,CAAC,MAAM,CAAC,CAAC;;;;4BAEhB,MAAM,CAAC,OAAK,CAAC,CAAC;;;;;iBAEjB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAlBuB,0BAAO,GAAG,IAAI,+BAAiB,EAA0B,CAAC;IAmBpF,yBAAC;CAAA,AApBD,IAoBC;AApBY,gDAAkB"}
@@ -7,7 +7,7 @@ import '@proteinjs/reflection';
7
7
 
8
8
  /** Generate Source Graph */
9
9
 
10
- const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"value\":{\"packageName\":\"@proteinjs/db-transaction-context\",\"name\":\"TransactionContext\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/transaction-context/src/TransactionContext.ts\",\"qualifiedName\":\"@proteinjs/db-transaction-context/TransactionContext\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"storage\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getTransactionContext\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runInContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"transaction\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\"}],\"edges\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"w\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"value\":\"implements interface\"}]}";
10
+ const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"value\":{\"packageName\":\"@proteinjs/db-transaction-context\",\"name\":\"TransactionContext\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/transaction-context/src/TransactionContext.ts\",\"qualifiedName\":\"@proteinjs/db-transaction-context/TransactionContext\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"storage\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getTransactionContext\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runInContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\"}],\"edges\":[{\"v\":\"@proteinjs/db-transaction-context/TransactionContext\",\"w\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"value\":\"implements interface\"}]}";
11
11
 
12
12
 
13
13
  /** Generate Source Links */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proteinjs/db-transaction-context",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "Db transaction context",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -21,7 +21,7 @@
21
21
  "watch": "reflection-watch"
22
22
  },
23
23
  "dependencies": {
24
- "@proteinjs/db": "^1.26.0",
24
+ "@proteinjs/db": "^1.28.0",
25
25
  "@proteinjs/logger": "^1.0.21",
26
26
  "@proteinjs/reflection": "^1.1.12"
27
27
  },
@@ -9,9 +9,9 @@ export class TransactionContext implements DefaultTransactionContextFactory {
9
9
  return context;
10
10
  }
11
11
 
12
- runInContext<T>(transaction: any, fn: () => Promise<T>): Promise<T> {
12
+ runInContext<T>(context: TransactionContextData, fn: () => Promise<T>): Promise<T> {
13
13
  return new Promise<T>((resolve, reject) => {
14
- TransactionContext.storage.run({ currentTransaction: transaction }, async () => {
14
+ TransactionContext.storage.run(context, async () => {
15
15
  try {
16
16
  const result = await fn();
17
17
  resolve(result);