@storic/cloudflare 0.3.2 → 0.4.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/README.md CHANGED
@@ -30,12 +30,12 @@ import { CloudflareJsEvaluator, WorkerLoaderBinding } from "@storic/cloudflare";
30
30
  export default {
31
31
  async fetch(request: Request, env: Env) {
32
32
  const StoreLive = Store.layer.pipe(
33
- Layer.provide(Layer.mergeAll(
34
- SqlLive,
35
- CloudflareJsEvaluator.layer.pipe(
36
- Layer.provide(WorkerLoaderBinding.layer(env.EVALUATOR)),
33
+ Layer.provide(
34
+ Layer.mergeAll(
35
+ SqlLive,
36
+ CloudflareJsEvaluator.layer.pipe(Layer.provide(WorkerLoaderBinding.layer(env.EVALUATOR))),
37
37
  ),
38
- )),
38
+ ),
39
39
  );
40
40
 
41
41
  // use StoreLive ...
@@ -61,9 +61,9 @@ let __result;
61
61
  let __error;
62
62
 
63
63
  try {
64
- __result = ((a, b) => (a + b))(10, 20);
64
+ __result = ((a, b) => a + b)(10, 20);
65
65
  } catch (e) {
66
- __error = (e instanceof Error && e.message) ? e.message : String(e);
66
+ __error = e instanceof Error && e.message ? e.message : String(e);
67
67
  }
68
68
 
69
69
  export default {
@@ -73,19 +73,13 @@ export default {
73
73
  }
74
74
  const t = typeof __result;
75
75
  if (t === "function" || t === "symbol" || t === "undefined") {
76
- return Response.json(
77
- { error: "Result is not JSON-serializable: got " + t },
78
- { status: 400 },
79
- );
76
+ return Response.json({ error: "Result is not JSON-serializable: got " + t }, { status: 400 });
80
77
  }
81
78
  try {
82
79
  return Response.json({ result: __result });
83
80
  } catch (e) {
84
- const msg = (e instanceof Error && e.message) ? e.message : String(e);
85
- return Response.json(
86
- { error: "Result is not JSON-serializable: " + msg },
87
- { status: 400 },
88
- );
81
+ const msg = e instanceof Error && e.message ? e.message : String(e);
82
+ return Response.json({ error: "Result is not JSON-serializable: " + msg }, { status: 400 });
89
83
  }
90
84
  },
91
85
  };
package/dist/index.d.ts CHANGED
@@ -11,6 +11,6 @@
11
11
  export { doStoragePersistence } from "./persistence.ts";
12
12
  export { StoricDO, StoricObject } from "./storic-object.ts";
13
13
  export { sqlStorageLayer } from "./sql-storage-client.ts";
14
- export { Store, Persistence, defineLens, SchemaRegistry, getTag, } from "@storic/core";
14
+ export { Store, Persistence, defineLens, SchemaRegistry, getTag } from "@storic/core";
15
15
  export type { AnyTaggedStruct, EntityRecord, Lens, StoreConfig, PersistenceShape, PersistenceRecord, StoredRecord, IndexSpec, InitSpec, QueryParams, } from "@storic/core";
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,cAAc,EACd,MAAM,GACP,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,eAAe,EACf,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,GACZ,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtF,YAAY,EACV,eAAe,EACf,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,GACZ,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -13,5 +13,5 @@ export { doStoragePersistence } from "./persistence.js";
13
13
  export { StoricDO, StoricObject } from "./storic-object.js";
14
14
  export { sqlStorageLayer } from "./sql-storage-client.js";
15
15
  // ─── Re-export core for convenience ─────────────────────────────────────────
16
- export { Store, Persistence, defineLens, SchemaRegistry, getTag, } from "@storic/core";
16
+ export { Store, Persistence, defineLens, SchemaRegistry, getTag } from "@storic/core";
17
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+EAA+E;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,+EAA+E;AAC/E,OAAO,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,cAAc,EACd,MAAM,GACP,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+EAA+E;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,+EAA+E;AAC/E,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sql-storage-client.d.ts","sourceRoot":"","sources":["../src/sql-storage-client.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAOtC,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAC;AAoExD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,kEAiC3B,CAAC"}
1
+ {"version":3,"file":"sql-storage-client.d.ts","sourceRoot":"","sources":["../src/sql-storage-client.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAOtC,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAC;AAsExD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,kEA8B3B,CAAC"}
@@ -14,7 +14,7 @@ import * as Fiber from "effect/Fiber";
14
14
  import * as Stream from "effect/Stream";
15
15
  import * as Reactivity from "effect/unstable/reactivity/Reactivity";
16
16
  import * as Client from "effect/unstable/sql/SqlClient";
17
- import { SqlError } from "effect/unstable/sql/SqlError";
17
+ import { SqlError, classifySqliteError } from "effect/unstable/sql/SqlError";
18
18
  import * as Statement from "effect/unstable/sql/Statement";
19
19
  const ATTR_DB_SYSTEM_NAME = "db.system.name";
20
20
  // ─── SqlStorage Connection ──────────────────────────────────────────────────
@@ -28,7 +28,9 @@ const ATTR_DB_SYSTEM_NAME = "db.system.name";
28
28
  function makeSqlStorageConnection(sql) {
29
29
  const run = (query, params = []) => Effect.try({
30
30
  try: () => sql.exec(query, ...params).toArray(),
31
- catch: (cause) => new SqlError({ cause, message: "Failed to execute statement" }),
31
+ catch: (cause) => new SqlError({
32
+ reason: classifySqliteError(cause, { message: "Failed to execute statement" }),
33
+ }),
32
34
  });
33
35
  const runValues = (query, params = []) => Effect.try({
34
36
  try: () => {
@@ -40,13 +42,13 @@ function makeSqlStorageConnection(sql) {
40
42
  }
41
43
  return rows;
42
44
  },
43
- catch: (cause) => new SqlError({ cause, message: "Failed to execute statement" }),
45
+ catch: (cause) => new SqlError({
46
+ reason: classifySqliteError(cause, { message: "Failed to execute statement" }),
47
+ }),
44
48
  });
45
49
  return identity({
46
50
  execute(query, params, transformRows) {
47
- return transformRows
48
- ? Effect.map(run(query, params), transformRows)
49
- : run(query, params);
51
+ return transformRows ? Effect.map(run(query, params), transformRows) : run(query, params);
50
52
  },
51
53
  executeRaw(query, params) {
52
54
  return run(query, params);
@@ -1 +1 @@
1
- {"version":3,"file":"sql-storage-client.js","sourceRoot":"","sources":["../src/sql-storage-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-storage-client.js","sourceRoot":"","sources":["../src/sql-storage-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"storic-object.d.ts","sourceRoot":"","sources":["../src/storic-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,8BAAsB,QAAQ,CAC5B,GAAG,GAAG,OAAO,EACb,KAAK,GAAG,EAAE,CACV,SAAQ,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC;IACjC;;;OAGG;IACH,QAAQ,KAAK,MAAM,IAAI,WAAW,CAAC;IAEnC,OAAO,CAAC,QAAQ,CAA+C;IAE/D,YAAY,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAkB5C;IAED;;OAEG;IACH,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAElE;CACF;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,iBAAW,CAAC"}
1
+ {"version":3,"file":"storic-object.d.ts","sourceRoot":"","sources":["../src/storic-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,8BAAsB,QAAQ,CAAC,GAAG,GAAG,OAAO,EAAE,KAAK,GAAG,EAAE,CAAE,SAAQ,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC;IACzF;;;OAGG;IACH,QAAQ,KAAK,MAAM,IAAI,WAAW,CAAC;IAEnC,OAAO,CAAC,QAAQ,CAA+C;IAE/D,YAAY,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAkB5C;IAED;;OAEG;IACH,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAElE;CACF;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,iBAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"storic-object.js","sourceRoot":"","sources":["../src/storic-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,OAAgB,QAGpB,SAAQ,aAAyB;IAOzB,QAAQ,CAA+C;IAE/D,YAAY,GAAuB,EAAE,GAAQ;QAC3C,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEhB,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,KAAK,IAAI,EAAE;YACxC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAEpE,8DAA8D;YAC9D,gDAAgD;YAChD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9C,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC/B,KAAK,CAAC,KAAK,CACZ,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAEhD,oDAAoD;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACO,GAAG,CAAO,MAAkC;QACpD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"storic-object.js","sourceRoot":"","sources":["../src/storic-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,OAAgB,QAAoC,SAAQ,aAAyB;IAOjF,QAAQ,CAA+C;IAE/D,YAAY,GAAuB,EAAE,GAAQ;QAC3C,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEhB,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,KAAK,IAAI,EAAE;YACxC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAEpE,8DAA8D;YAC9D,gDAAgD;YAChD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9C,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC/B,KAAK,CAAC,KAAK,CACZ,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAEhD,oDAAoD;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACO,GAAG,CAAO,MAAkC;QACpD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,15 @@
1
1
  {
2
2
  "name": "@storic/cloudflare",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "https://github.com/just-be-dev/storic.git",
7
+ "directory": "packages/cloudflare"
8
+ },
9
+ "files": [
10
+ "dist",
11
+ "src"
12
+ ],
4
13
  "type": "module",
5
14
  "main": "./dist/index.js",
6
15
  "types": "./dist/index.d.ts",
@@ -10,10 +19,9 @@
10
19
  "types": "./dist/index.d.ts"
11
20
  }
12
21
  },
13
- "files": [
14
- "dist",
15
- "src"
16
- ],
22
+ "publishConfig": {
23
+ "access": "public"
24
+ },
17
25
  "scripts": {
18
26
  "build": "tsgo --build",
19
27
  "check": "tsgo --noEmit",
@@ -21,9 +29,9 @@
21
29
  "test:e2e": "bun test e2e/e2e.test.ts --timeout 60000"
22
30
  },
23
31
  "dependencies": {
24
- "@storic/core": "0.3.1",
25
- "@storic/sql": "0.2.1",
26
- "effect": "4.0.0-beta.29"
32
+ "@storic/core": "0.4.0",
33
+ "@storic/sql": "0.3.0",
34
+ "effect": "4.0.0-beta.43"
27
35
  },
28
36
  "devDependencies": {
29
37
  "@cloudflare/workers-types": "^4.20260307.1",
@@ -31,13 +39,5 @@
31
39
  "@types/node": "^22.0.0",
32
40
  "@typescript/native-preview": "latest",
33
41
  "wrangler": "^4.71.0"
34
- },
35
- "publishConfig": {
36
- "access": "public"
37
- },
38
- "repository": {
39
- "type": "git",
40
- "url": "https://github.com/just-be-dev/storic.git",
41
- "directory": "packages/cloudflare"
42
42
  }
43
43
  }
package/src/index.ts CHANGED
@@ -15,13 +15,7 @@ export { StoricDO, StoricObject } from "./storic-object.ts";
15
15
  export { sqlStorageLayer } from "./sql-storage-client.ts";
16
16
 
17
17
  // ─── Re-export core for convenience ─────────────────────────────────────────
18
- export {
19
- Store,
20
- Persistence,
21
- defineLens,
22
- SchemaRegistry,
23
- getTag,
24
- } from "@storic/core";
18
+ export { Store, Persistence, defineLens, SchemaRegistry, getTag } from "@storic/core";
25
19
  export type {
26
20
  AnyTaggedStruct,
27
21
  EntityRecord,
@@ -15,7 +15,7 @@ import * as Stream from "effect/Stream";
15
15
  import * as Reactivity from "effect/unstable/reactivity/Reactivity";
16
16
  import * as Client from "effect/unstable/sql/SqlClient";
17
17
  import type { Connection } from "effect/unstable/sql/SqlConnection";
18
- import { SqlError } from "effect/unstable/sql/SqlError";
18
+ import { SqlError, classifySqliteError } from "effect/unstable/sql/SqlError";
19
19
  import * as Statement from "effect/unstable/sql/Statement";
20
20
 
21
21
  const ATTR_DB_SYSTEM_NAME = "db.system.name";
@@ -37,7 +37,9 @@ function makeSqlStorageConnection(sql: SqlStorage): Connection {
37
37
  Effect.try({
38
38
  try: () => sql.exec(query, ...params).toArray(),
39
39
  catch: (cause) =>
40
- new SqlError({ cause, message: "Failed to execute statement" }),
40
+ new SqlError({
41
+ reason: classifySqliteError(cause, { message: "Failed to execute statement" }),
42
+ }),
41
43
  });
42
44
 
43
45
  const runValues = (
@@ -55,14 +57,14 @@ function makeSqlStorageConnection(sql: SqlStorage): Connection {
55
57
  return rows;
56
58
  },
57
59
  catch: (cause) =>
58
- new SqlError({ cause, message: "Failed to execute statement" }),
60
+ new SqlError({
61
+ reason: classifySqliteError(cause, { message: "Failed to execute statement" }),
62
+ }),
59
63
  });
60
64
 
61
65
  return identity<Connection>({
62
66
  execute(query, params, transformRows) {
63
- return transformRows
64
- ? Effect.map(run(query, params), transformRows)
65
- : run(query, params);
67
+ return transformRows ? Effect.map(run(query, params), transformRows) : run(query, params);
66
68
  },
67
69
  executeRaw(query, params) {
68
70
  return run(query, params);
@@ -102,9 +104,7 @@ function makeSqlStorageConnection(sql: SqlStorage): Connection {
102
104
  * }
103
105
  * ```
104
106
  */
105
- export const sqlStorageLayer = (
106
- sql: SqlStorage,
107
- ): Layer.Layer<Client.SqlClient> => {
107
+ export const sqlStorageLayer = (sql: SqlStorage): Layer.Layer<Client.SqlClient> => {
108
108
  const connection = makeSqlStorageConnection(sql);
109
109
  const compiler = Statement.makeCompilerSqlite();
110
110
 
@@ -117,9 +117,8 @@ export const sqlStorageLayer = (
117
117
  const fiber = Fiber.getCurrent()!;
118
118
  const scope = ServiceMap.getUnsafe(fiber.services, Scope.Scope);
119
119
  return Effect.as(
120
- Effect.tap(
121
- restore(semaphore.take(1)),
122
- () => Scope.addFinalizer(scope, semaphore.release(1)),
120
+ Effect.tap(restore(semaphore.take(1)), () =>
121
+ Scope.addFinalizer(scope, semaphore.release(1)),
123
122
  ),
124
123
  connection,
125
124
  );
@@ -35,10 +35,7 @@ import { doStoragePersistence } from "./persistence.ts";
35
35
  * }
36
36
  * ```
37
37
  */
38
- export abstract class StoricDO<
39
- Env = unknown,
40
- Props = {},
41
- > extends DurableObject<Env, Props> {
38
+ export abstract class StoricDO<Env = unknown, Props = {}> extends DurableObject<Env, Props> {
42
39
  /**
43
40
  * Override this getter to provide the Storic configuration.
44
41
  * Schemas and lenses are defined here, outside the DO's storage concerns.